Fix 1914874: update the timeline scrollbars' major step size when zooming time in...
[synfig.git] / synfig-studio / trunk / src / gtkmm / canvasview.cpp
index 31d3153..ed139af 100644 (file)
@@ -2004,6 +2004,7 @@ static bool _close_instance(etl::handle<Instance> instance)
 bool
 CanvasView::close_instance()
 {
+#ifdef SINGLE_THREADED
        if (get_work_area()->get_updating())
        {
                get_work_area()->stop_updating(true); // stop and mark as cancelled
@@ -2014,6 +2015,7 @@ CanvasView::close_instance()
                        250);
        }
        else
+#endif
                Glib::signal_timeout().connect(
                        sigc::bind(sigc::ptr_fun(_close_instance),
                                           (etl::handle<Instance>)get_instance()),
@@ -2157,10 +2159,10 @@ CanvasView::on_layer_toggle(synfig::Layer::Handle layer)
 }
 
 void
-CanvasView::popup_param_menu(synfigapp::ValueDesc value_desc, float location)
+CanvasView::popup_param_menu(synfigapp::ValueDesc value_desc, float location, bool bezier)
 {
        parammenu.items().clear();
-       get_instance()->make_param_menu(&parammenu,get_canvas(),value_desc,location);
+       get_instance()->make_param_menu(&parammenu,get_canvas(),value_desc,location,bezier);
 
        parammenu.popup(3,gtk_get_current_event_time());
 }
@@ -2418,6 +2420,7 @@ CanvasView::time_zoom_in()
        time_window_adjustment().set_page_size(time_window_adjustment().get_page_size()*0.75);
        if (time_window_adjustment().get_page_size() < min_page_size)
                time_window_adjustment().set_page_size(min_page_size);
+       time_window_adjustment().set_page_increment(time_window_adjustment().get_page_size());
        time_window_adjustment().changed();
 
        refresh_time_window();
@@ -2432,6 +2435,7 @@ CanvasView::time_zoom_out()
        time_window_adjustment().set_page_size(time_window_adjustment().get_page_size()/0.75);
        if (time_window_adjustment().get_page_size() > length)
                time_window_adjustment().set_page_size(length);
+       time_window_adjustment().set_page_increment(time_window_adjustment().get_page_size());
        time_window_adjustment().changed();
 
        refresh_time_window();