fix drawing of zero-length notes
[ardour.git] / gtk2_ardour / ardour_ui_ed.cc
index 800eedde2d76a78ae69c7bd727a699d32178a5d9..e6a6dc09c727b6b7523506d3fd23502920a6dec3 100644 (file)
@@ -171,7 +171,7 @@ ARDOUR_UI::install_actions ()
 
        /* the real actions */
 
-       act = ActionManager::register_action (main_actions, X_("New"), _("New..."),  hide_return (sigc::mem_fun(*this, &ARDOUR_UI::start_session_load)));
+       act = ActionManager::register_action (main_actions, X_("New"), _("New..."),  hide_return (sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::start_session_load), true)));
 
        ActionManager::register_action (main_actions, X_("Open"), _("Open..."),  sigc::mem_fun(*this, &ARDOUR_UI::open_session));
        ActionManager::register_action (main_actions, X_("Recent"), _("Recent..."),  sigc::mem_fun(*this, &ARDOUR_UI::open_recent_session));
@@ -484,6 +484,7 @@ ARDOUR_UI::install_actions ()
        ActionManager::transport_sensitive_actions.push_back (act);
 
        act = ActionManager::register_toggle_action (main_actions, X_("ToggleLatencyCompensation"), _("Disable Latency Compensation"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_latency_switch));
+       ActionManager::session_sensitive_actions.push_back (act);
 
        act = ActionManager::register_action (main_actions, X_("MonitorMenu"), _("Monitor Section")); /* just the submenu item */
        ActionManager::session_sensitive_actions.push_back (act);
@@ -873,7 +874,9 @@ ARDOUR_UI::save_ardour_state ()
                        _session->add_instant_xml (location_ui->ui().get_state ());
                }
                if (virtual_keyboard_window) {
-                       _session->add_instant_xml (virtual_keyboard_window->get_state());
+                       XMLNode& vkstate (virtual_keyboard_window->get_state());
+                       vkstate.add_child_nocopy (virtual_keyboard_window.get_state ());
+                       _session->add_instant_xml (vkstate);
                }
        } else {
                Config->add_instant_xml (main_window_node);
@@ -885,7 +888,9 @@ ARDOUR_UI::save_ardour_state ()
                        Config->add_instant_xml (location_ui->ui().get_state ());
                }
                if (virtual_keyboard_window) {
-                       Config->add_instant_xml (virtual_keyboard_window->get_state());
+                       XMLNode& vkstate (virtual_keyboard_window->get_state());
+                       vkstate.add_child_nocopy (virtual_keyboard_window.get_state ());
+                       _session->add_instant_xml (vkstate);
                }
        }