summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_ops.cc
diff options
context:
space:
mode:
authornick_m <mainsbridge@gmail.com>2016-04-09 03:21:13 +1000
committernick_m <mainsbridge@gmail.com>2016-05-27 23:38:14 +1000
commit618a391346763603ef8e1d77f17a7fb6a6538772 (patch)
tree3bfd1563fd5bb6e763f19c32016fafba9ac7ebc3 /gtk2_ardour/editor_ops.cc
parentec29f5d64cd59f27f2953cb3363c2bb9c4a21eb2 (diff)
Preformance - reinstate EditorRegions::freeze_tree_model ().
Diffstat (limited to 'gtk2_ardour/editor_ops.cc')
-rw-r--r--gtk2_ardour/editor_ops.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc
index b8e308c57e..960b7b3123 100644
--- a/gtk2_ardour/editor_ops.cc
+++ b/gtk2_ardour/editor_ops.cc
@@ -153,6 +153,8 @@ Editor::redo (uint32_t n)
void
Editor::split_regions_at (framepos_t where, RegionSelection& regions)
{
+ bool frozen = false;
+
RegionSelection pre_selected_regions = selection->regions;
bool working_on_selection = !pre_selected_regions.empty();
@@ -180,6 +182,8 @@ Editor::split_regions_at (framepos_t where, RegionSelection& regions)
} else {
snap_to (where);
+ frozen = true;
+ EditorFreeze(); /* Emit Signal */
}
for (RegionSelection::iterator a = regions.begin(); a != regions.end(); ) {
@@ -247,6 +251,10 @@ Editor::split_regions_at (framepos_t where, RegionSelection& regions)
(*c).disconnect ();
}
+ if (frozen){
+ EditorThaw(); /* Emit Signal */
+ }
+
if (working_on_selection) {
// IFF we were working on selected regions, try to reinstate the other region selections that existed before the freeze/thaw.