X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fsplash.cc;h=c2522472752988262abb18d77f93ef1657bd7016;hb=0f233a86d1a7211275d8f39b2aad7c08d8279b16;hp=409749d0628c06f78c2cfc26b8223ea707be3df5;hpb=c829c10a74475ef6157408aa0e234b2a0fd43917;p=ardour.git diff --git a/gtk2_ardour/splash.cc b/gtk2_ardour/splash.cc index 409749d062..c252247275 100644 --- a/gtk2_ardour/splash.cc +++ b/gtk2_ardour/splash.cc @@ -25,6 +25,8 @@ #include "ardour/ardour.h" #include "ardour/filesystem_paths.h" +#include "gtkmm2ext/utils.h" + #ifdef check #undef check #endif @@ -45,7 +47,7 @@ Splash* Splash::the_splash = 0; Splash::Splash () { assert (the_splash == 0); - + std::string splash_file; if (!find_file (ardour_data_search_path(), "splash.png", splash_file)) { @@ -104,7 +106,7 @@ Splash::pop_back_for (Gtk::Window& win) /* April 2013: window layering on OS X is a bit different to X Window. at present, the "restack()" functionality in GDK will only operate on windows in the same "level" (e.g. two normal top level windows, or two utility windows) and will not - work across them. The splashscreen is on its own "StatusWindowLevel" so restacking + work across them. The splashscreen is on its own "StatusWindowLevel" so restacking is not going to work. So for OS X, we just hide ourselves. @@ -144,11 +146,11 @@ bool Splash::on_button_release_event (GdkEventButton* ev) { RefPtr window = get_window(); - + if (!window || ev->window != window->gobj()) { return false; } - + hide (); return true; } @@ -174,9 +176,9 @@ Splash::expose (GdkEventExpose* ev) window->draw_layout (white, 10, pixbuf->get_height() - 30, layout); - /* this must execute AFTER the GDK idle update mechanism + /* this must execute AFTER the GDK idle update mechanism */ - + if (expose_is_the_one) { Glib::signal_idle().connect (sigc::mem_fun (this, &Splash::idle_after_expose), GDK_PRIORITY_REDRAW+2); @@ -202,15 +204,15 @@ void Splash::display () { bool was_mapped = is_mapped (); - + if (!was_mapped) { expose_done = false; expose_is_the_one = false; - } + } pop_front (); present (); - + if (!was_mapped) { while (!expose_done) { gtk_main_iteration (); @@ -223,14 +225,14 @@ void Splash::message (const string& msg) { string str (""); - str += Glib::Markup::escape_text (msg).c_str(); + str += Gtkmm2ext::markup_escape_text (msg); str += ""; show (); layout->set_markup (str); Glib::RefPtr win = darea.get_window(); - + if (win) { expose_done = false;