add const_cast to avoid compiler warnings from apple gcc
[ardour.git] / gtk2_ardour / editor_mixer.cc
index 67e749de50171773f140088195516aabd6010dcf..d1d5ad9cf4f7204220eb33002c199161b445773d 100644 (file)
@@ -42,6 +42,7 @@
 #include "mixer_strip.h"
 #include "mixer_ui.h"
 #include "selection.h"
+#include "ui_config.h"
 
 #include "i18n.h"
 
@@ -77,11 +78,16 @@ Editor::show_editor_mixer (bool yn)
        show_editor_mixer_when_tracks_arrive = false;
 
        if (yn) {
-               Glib::RefPtr<Gdk::Window> win = get_window ();
+               Gtk::Window* toplevel = current_toplevel();
+               Glib::RefPtr<Gdk::Window> win;
                Glib::RefPtr<Gdk::Screen> screen;
-               
+
+               if (toplevel) {
+                       win = toplevel->get_window();
+               }
+
                if (win) {
-                        screen = win->get_screen();
+                       screen = win->get_screen();
                } else {
                        screen = Gdk::Screen::get_default();
                }
@@ -166,7 +172,6 @@ void
 Editor::ensure_all_elements_drawn ()
 {
        controls_layout.queue_draw ();
-       ruler_label_event_box.queue_draw ();
        time_bars_event_box.queue_draw ();
 }
 #endif
@@ -184,6 +189,7 @@ Editor::create_editor_mixer ()
        current_mixer_strip->WidthChanged.connect (sigc::mem_fun(*this, &Editor::ensure_all_elements_drawn));
 #endif
        current_mixer_strip->set_embedded (true);
+
 }
 
 void
@@ -283,7 +289,7 @@ Editor::track_mixer_selection ()
 void
 Editor::follow_mixer_selection ()
 {
-       if (!ARDOUR::Config->get_link_editor_and_mixer_selection() || _following_mixer_selection) {
+       if (_following_mixer_selection) {
                return;
        }