MAINT-1401 FIXED Pressing 'Cancel' button in 'Color picker' dialog changes color of prim to the previous
parent
68e41999d5
commit
6901fea203
|
|
@ -292,7 +292,7 @@ void LLColorSwatchCtrl::onColorChanged ( void* data, EColorPickOp pick_op )
|
|||
subject->mColor.mV[VALPHA] ); // keep current alpha
|
||||
subject->mColor = updatedColor;
|
||||
subject->setControlValue(updatedColor.getValue());
|
||||
|
||||
pickerp->setRevertOnCancel(TRUE);
|
||||
if (pick_op == COLOR_CANCEL && subject->mOnCancelCallback)
|
||||
{
|
||||
subject->mOnCancelCallback( subject, LLSD());
|
||||
|
|
|
|||
|
|
@ -173,6 +173,7 @@ void LLFloaterColorPicker::showUI ()
|
|||
openFloater(getKey());
|
||||
setVisible ( TRUE );
|
||||
setFocus ( TRUE );
|
||||
setRevertOnCancel(FALSE);
|
||||
|
||||
// HACK: if system color picker is required - close the SL one we made and use default system dialog
|
||||
if ( gSavedSettings.getBOOL ( "UseDefaultColorPicker" ) )
|
||||
|
|
@ -390,7 +391,10 @@ void LLFloaterColorPicker::onClickCancel ( void* data )
|
|||
|
||||
if ( self )
|
||||
{
|
||||
self->cancelSelection ();
|
||||
if(self->getRevertOnCancel())
|
||||
{
|
||||
self->cancelSelection ();
|
||||
}
|
||||
self->closeFloater();
|
||||
}
|
||||
}
|
||||
|
|
@ -447,8 +451,7 @@ void LLFloaterColorPicker::onImmediateCheck( LLUICtrl* ctrl, void* data)
|
|||
if (self)
|
||||
{
|
||||
gSavedSettings.setBOOL("ApplyColorImmediately", self->mApplyImmediateCheck->get());
|
||||
|
||||
if (self->mApplyImmediateCheck->get())
|
||||
if (self->mApplyImmediateCheck->get() && self->isColorChanged())
|
||||
{
|
||||
LLColorSwatchCtrl::onColorChanged ( self->getSwatch (), LLColorSwatchCtrl::COLOR_CHANGE );
|
||||
}
|
||||
|
|
@ -473,6 +476,11 @@ F32 LLFloaterColorPicker::getSwatchTransparency()
|
|||
return getTransparencyType() == TT_ACTIVE ? 1.f : LLFloater::getCurrentTransparency();
|
||||
}
|
||||
|
||||
BOOL LLFloaterColorPicker::isColorChanged()
|
||||
{
|
||||
return ((getOrigR() != getCurR()) || (getOrigG() != getCurG()) || (getOrigB() != getCurB()));
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
void LLFloaterColorPicker::draw()
|
||||
|
|
|
|||
|
|
@ -104,6 +104,11 @@ class LLFloaterColorPicker
|
|||
void setMouseDownInSwatch (BOOL mouse_down_in_swatch);
|
||||
BOOL getMouseDownInSwatch () { return mMouseDownInSwatch; }
|
||||
|
||||
void setRevertOnCancel (BOOL revertOnCancel) { mRevertOnCancel = revertOnCancel; };
|
||||
BOOL getRevertOnCancel () { return mRevertOnCancel; }
|
||||
|
||||
BOOL isColorChanged ();
|
||||
|
||||
// called when text entries (RGB/HSL etc.) are changed by user
|
||||
void onTextEntryChanged ( LLUICtrl* ctrl );
|
||||
|
||||
|
|
@ -144,6 +149,8 @@ class LLFloaterColorPicker
|
|||
BOOL mMouseDownInHueRegion;
|
||||
BOOL mMouseDownInSwatch;
|
||||
|
||||
BOOL mRevertOnCancel;
|
||||
|
||||
const S32 mRGBViewerImageLeft;
|
||||
const S32 mRGBViewerImageTop;
|
||||
const S32 mRGBViewerImageWidth;
|
||||
|
|
|
|||
Loading…
Reference in New Issue