diff options
| author | Martin Owens <doctormo@gmail.com> | 2016-03-29 00:49:42 +0000 |
|---|---|---|
| committer | Martin Owens <doctormo@gmail.com> | 2016-03-29 00:49:42 +0000 |
| commit | 401c2f70ce1ffcdf7a041c27df8c06e19f42e847 (patch) | |
| tree | 63bc18ece8bf0b487790a6ccecefff939b4eae07 /src | |
| parent | Translations. zh_CN translation update. (diff) | |
| download | inkscape-401c2f70ce1ffcdf7a041c27df8c06e19f42e847.tar.gz inkscape-401c2f70ce1ffcdf7a041c27df8c06e19f42e847.zip | |
Fix bugs with the colour selector self-signaling on change.
Fixed bugs:
- https://launchpad.net/bugs/1462907
- https://launchpad.net/bugs/1249618
(bzr r14747)
Diffstat (limited to 'src')
| -rw-r--r-- | src/ui/selected-color.cpp | 1 | ||||
| -rw-r--r-- | src/ui/widget/color-wheel-selector.cpp | 8 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/ui/selected-color.cpp b/src/ui/selected-color.cpp index 8c37ee7e0..846d50a5b 100644 --- a/src/ui/selected-color.cpp +++ b/src/ui/selected-color.cpp @@ -139,7 +139,6 @@ void SelectedColor::setHeld(bool held) { if (released) { signal_released.emit(); - signal_changed.emit(); } _updating = false; } diff --git a/src/ui/widget/color-wheel-selector.cpp b/src/ui/widget/color-wheel-selector.cpp index ed3400bb5..cac812640 100644 --- a/src/ui/widget/color-wheel-selector.cpp +++ b/src/ui/widget/color-wheel-selector.cpp @@ -246,21 +246,23 @@ void ColorWheelSelector::_wheelChanged(GimpColorWheel *wheel, ColorWheelSelector guint32 end = color.toRGBA32(0xff); wheelSelector->_slider->setColors(start, mid, end); - wheelSelector->_color.preserveICC(); + wheelSelector->_updating = true; wheelSelector->_color.setHeld(gimp_color_wheel_is_adjusting(wheel)); wheelSelector->_color.setColor(color); + wheelSelector->_updating = false; } void ColorWheelSelector::_updateDisplay() { + if(_updating) { return; } + #ifdef DUMP_CHANGE_INFO g_message("ColorWheelSelector::_colorChanged( this=%p, %f, %f, %f, %f)", this, _color.color().v.c[0], _color.color().v.c[1], _color.color().v.c[2], alpha); #endif - bool oldval = _updating; _updating = true; { float hsv[3] = { 0, 0, 0 }; @@ -276,7 +278,7 @@ void ColorWheelSelector::_updateDisplay() ColorScales::setScaled(_alpha_adjustment->gobj(), _color.alpha()); - _updating = oldval; + _updating = false; } |
