diff --git a/aegisub/src/dialog_colorpicker.cpp b/aegisub/src/dialog_colorpicker.cpp
index 313648379e8fc56300e8fad72a2f433e9976683d..742339b24ae8c3d1b947bf0752dc295262e59ba0 100644
--- a/aegisub/src/dialog_colorpicker.cpp
+++ b/aegisub/src/dialog_colorpicker.cpp
@@ -1058,7 +1058,9 @@ void DialogColorPicker::OnAlphaSliderChange(wxCommandEvent &) {
 }
 
 void DialogColorPicker::OnRecentSelect(wxThreadEvent &evt) {
-	SetColor(evt.GetPayload<agi::Color>());
+	agi::Color new_color = evt.GetPayload<agi::Color>();
+	new_color.a = cur_color.a;
+	SetColor(new_color);
 }
 
 void DialogColorPicker::OnDropperMouse(wxMouseEvent &evt) {