OSC do not recalc select if still valid
This commit is contained in:
parent
3a6d7ba321
commit
293326cd94
@ -4437,9 +4437,14 @@ OSC::_strip_select (boost::shared_ptr<Stripable> s, lo_address addr)
|
||||
return -1;
|
||||
}
|
||||
OSCSurface *sur = get_surface(addr, true);
|
||||
boost::shared_ptr<Stripable> old_sel = sur->select;
|
||||
boost::weak_ptr<Stripable> o_sel = sur->select;
|
||||
boost::shared_ptr<Stripable> old_sel= o_sel.lock ();
|
||||
|
||||
if (!s) {
|
||||
// expand doesn't point to a stripable, turn it off and use select
|
||||
// we got a null strip check that old strip is valid
|
||||
if (old_sel && sur->expand_enable) {
|
||||
s = old_sel;
|
||||
} else {
|
||||
sur->expand = 0;
|
||||
sur->expand_enable = false;
|
||||
if (ControlProtocol::first_selected_stripable()) {
|
||||
@ -4449,6 +4454,7 @@ OSC::_strip_select (boost::shared_ptr<Stripable> s, lo_address addr)
|
||||
}
|
||||
_select = s;
|
||||
}
|
||||
}
|
||||
if (s != old_sel) {
|
||||
sur->select = s;
|
||||
if (sur->custom_mode >= GroupOnly) {
|
||||
|
Loading…
Reference in New Issue
Block a user