upgrade to ffmpeg 4.2, rework mask for speedup
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / colorpicker.C
index b910b9f4cab42dc2d5ce6a201815b4be97ee5396..57601d7e7bbb7e5dab408d2829c005af9623d2ee 100644 (file)
@@ -311,7 +311,9 @@ void ColorWindow::update_display()
 
 int ColorWindow::handle_event()
 {
+       unlock_window();
        thread->handle_new_color(rgb888(), alpha8());
+       lock_window("ColorWindow::handle_event");
        return 1;
 }
 
@@ -1275,9 +1277,10 @@ void ColorButtonPicker::update(int color, int alpha)
 
 int ColorButtonPicker::handle_new_color(int color, int alpha)
 {
-       update(color, alpha);
-       color_button->handle_new_color(color, alpha);
-       return 1;
+       color_button->lock_window("ColorButtonPicker::handle_new_color");
+       color_button->update_gui(color, alpha);
+       color_button->unlock_window();
+       return color_button->handle_new_color(color, alpha);
 }
 
 void ColorButtonPicker::update_gui()
@@ -1290,6 +1293,7 @@ void ColorButtonPicker::update_gui()
 void ColorButtonPicker::update_gui(int color, int alpha)
 {
        ColorPicker::update_gui(color, alpha);
+       color_button->handle_new_color(color, alpha);
 }
 
 ColorButtonThread::ColorButtonThread(ColorButton *color_button)