summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/ardour_ui.cc6
-rw-r--r--gtk2_ardour/ardour_ui.h2
-rw-r--r--gtk2_ardour/ardour_ui_ed.cc6
3 files changed, 10 insertions, 4 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index fcccca3fe6..999726c438 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -471,6 +471,10 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], const char* localedir)
Config->ParameterChanged.connect ( forever_connections, MISSING_INVALIDATOR, boost::bind(&ARDOUR_UI::set_flat_buttons, this), gui_context() );
set_flat_buttons();
+ theme_changed.connect (sigc::mem_fun(*this, &ARDOUR_UI::on_theme_changed));
+ UIConfiguration::instance().ColorsChanged.connect (sigc::mem_fun (*this, &ARDOUR_UI::on_theme_changed));
+ UIConfiguration::instance().DPIReset.connect (sigc::mem_fun (*this, &ARDOUR_UI::on_theme_changed));
+
/* lets get this party started */
setup_gtk_ardour_enums ();
@@ -539,8 +543,6 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], const char* localedir)
_process_thread = new ProcessThread ();
_process_thread->init ();
- UIConfiguration::instance().DPIReset.connect (sigc::mem_fun (*this, &ARDOUR_UI::resize_text_widgets));
-
attach_to_engine ();
}
diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h
index eb71cb87a0..39c0546a7e 100644
--- a/gtk2_ardour/ardour_ui.h
+++ b/gtk2_ardour/ardour_ui.h
@@ -844,7 +844,7 @@ private:
ArdourLogLevel _log_not_acknowledged;
- void resize_text_widgets ();
+ void on_theme_changed ();
bool xrun_button_release (GdkEventButton* ev);
diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc
index 3062836f34..b7bf68ce28 100644
--- a/gtk2_ardour/ardour_ui_ed.cc
+++ b/gtk2_ardour/ardour_ui_ed.cc
@@ -75,6 +75,7 @@
#include "ardour/session.h"
#include "ardour/profile.h"
#include "ardour/audioengine.h"
+#include "ardour/lv2_plugin.h"
#include "control_protocol/control_protocol.h"
@@ -889,8 +890,11 @@ ARDOUR_UI::save_ardour_state ()
}
void
-ARDOUR_UI::resize_text_widgets ()
+ARDOUR_UI::on_theme_changed ()
{
+ LV2Plugin::set_global_ui_background_color (UIConfiguration::instance().color ("gtk_background"));
+ LV2Plugin::set_global_ui_foreground_color (UIConfiguration::instance().color ("gtk_foreground"));
+ LV2Plugin::set_global_ui_scale_factor (UIConfiguration::instance().get_ui_scale());
}
void