Fix link icons on macOS.
[dcpomatic.git] / src / wx / video_panel.cc
index ce6b08f26f408f112e2b40d150ca3ec88f09eb7d..5d67bc99cc989e3c518cc942a52f50d1a69c83a1 100644 (file)
@@ -89,9 +89,13 @@ VideoPanel::VideoPanel (ContentPanel* p)
        int const crop_width = 128;
        int const link_width = 32;
        int const link_height = 64;
+#elif defined(__WXGTK20__)
+       int const crop_width = 56;
+       int const link_width = 24;
+       int const link_height = 32;
 #elif defined(DCPOMATIC_OSX)
        int const crop_width = 56;
-       int const link_width = 19;
+       int const link_width = 23;
        int const link_height = 28;
 #else
        int const crop_width = 56;
@@ -708,20 +712,29 @@ VideoPanel::scale_custom_edit_clicked ()
 void
 VideoPanel::left_right_link_clicked ()
 {
-       right_crop_changed ();
+       if (_left_changed_last) {
+               left_crop_changed ();
+       } else {
+               right_crop_changed ();
+       }
 }
 
 
 void
 VideoPanel::top_bottom_link_clicked ()
 {
-       bottom_crop_changed ();
+       if (_top_changed_last) {
+               top_crop_changed ();
+       } else {
+               bottom_crop_changed ();
+       }
 }
 
 
 void
 VideoPanel::left_crop_changed ()
 {
+       _left_changed_last = true;
        if (_left_right_link->GetValue()) {
                for (auto i: _parent->selected_video()) {
                        i->video->set_right_crop (i->video->left_crop());
@@ -733,6 +746,7 @@ VideoPanel::left_crop_changed ()
 void
 VideoPanel::right_crop_changed ()
 {
+       _left_changed_last = false;
        if (_left_right_link->GetValue()) {
                for (auto i: _parent->selected_video()) {
                        i->video->set_left_crop (i->video->right_crop());
@@ -744,6 +758,7 @@ VideoPanel::right_crop_changed ()
 void
 VideoPanel::top_crop_changed ()
 {
+       _top_changed_last = true;
        if (_top_bottom_link->GetValue()) {
                for (auto i: _parent->selected_video()) {
                        i->video->set_bottom_crop (i->video->top_crop());
@@ -755,6 +770,7 @@ VideoPanel::top_crop_changed ()
 void
 VideoPanel::bottom_crop_changed ()
 {
+       _top_changed_last = false;
        if (_top_bottom_link->GetValue()) {
                for (auto i: _parent->selected_video()) {
                        i->video->set_top_crop (i->video->bottom_crop());