diff --git a/src/gui/widgets/timeline/timeline-header-container.cpp b/src/gui/widgets/timeline/timeline-header-container.cpp index 97df83cb6..4497be6bc 100644 --- a/src/gui/widgets/timeline/timeline-header-container.cpp +++ b/src/gui/widgets/timeline/timeline-header-container.cpp @@ -179,12 +179,7 @@ bool TimelineHeaderContainer::on_button_press_event ( bool TimelineHeaderContainer::on_button_release_event ( GdkEventButton* event) { - TimelineLayoutHelper &layout = timelineWidget.layoutHelper; - - // Has the user been dragging? - if(layout.get_dragging_track()) - layout.end_dragging_track(); - + end_drag(); return Container::on_button_release_event(event); } @@ -409,6 +404,24 @@ TimelineHeaderContainer::begin_drag() // Raise all the header widgets so they float above the widgets not // being dragged raise_recursive(layout.get_dragging_track_iter()); + + // Set the cursor to a hand + REQUIRE(gdkWindow); + gdkWindow->set_cursor(Gdk::Cursor(Gdk::HAND1)); +} + +void +TimelineHeaderContainer::end_drag() +{ + TimelineLayoutHelper &layout = timelineWidget.layoutHelper; + + // Has the user been dragging? + if(layout.get_dragging_track()) + layout.end_dragging_track(); + + // Reset the arrow as a cursor + REQUIRE(gdkWindow); + gdkWindow->set_cursor(Gdk::Cursor(Gdk::ARROW)); } void diff --git a/src/gui/widgets/timeline/timeline-header-container.hpp b/src/gui/widgets/timeline/timeline-header-container.hpp index be2250bab..fe1006b1d 100644 --- a/src/gui/widgets/timeline/timeline-header-container.hpp +++ b/src/gui/widgets/timeline/timeline-header-container.hpp @@ -184,6 +184,8 @@ private: boost::shared_ptr model_track); void begin_drag(); + + void end_drag(); /** * Recusively raises all the header widget windows in a branch to the