summaryrefslogtreecommitdiff
path: root/gtk2_ardour/ardour_ui.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2007-01-03 18:48:27 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2007-01-03 18:48:27 +0000
commitfd42bffae71ae2bb521ace2145f238a76d9cf764 (patch)
tree4cea59c328ea2bb8449d73fa455abd257281857a /gtk2_ardour/ardour_ui.cc
parent758e2e6a934c6df4f576395599e6d9a23c1a6882 (diff)
prevent massive, multiple, pointless keybindings saves during startup
git-svn-id: svn://localhost/ardour2/trunk@1263 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/ardour_ui.cc')
-rw-r--r--gtk2_ardour/ardour_ui.cc14
1 files changed, 13 insertions, 1 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index 9692c89218..67d1554b40 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -165,6 +165,9 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], string rcfile)
last_speed_displayed = -1.0f;
keybindings_path = ARDOUR::find_config_file ("ardour.bindings");
+ can_save_keybindings = false;
+ Glib::signal_idle().connect (mem_fun (*this, &ARDOUR_UI::first_idle));
+
last_configure_time.tv_sec = 0;
last_configure_time.tv_usec = 0;
@@ -2423,5 +2426,14 @@ ARDOUR_UI::set_keybindings_path (string path)
void
ARDOUR_UI::save_keybindings ()
{
- AccelMap::save (keybindings_path);
+ if (can_save_keybindings) {
+ AccelMap::save (keybindings_path);
+ }
+}
+
+bool
+ARDOUR_UI::first_idle ()
+{
+ can_save_keybindings = true;
+ return false;
}