From f9cf597411f8126595747e4f567b45f0893bad05 Mon Sep 17 00:00:00 2001 From: Rye Mutt <rye@alchemyviewer.org> Date: Sat, 6 Jan 2024 01:45:09 -0500 Subject: [PATCH] Fix chat alert color editor --- indra/newview/llcolorswatch.cpp | 18 ++++++++++++++++++ indra/newview/llcolorswatch.h | 7 +++++++ 2 files changed, 25 insertions(+) diff --git a/indra/newview/llcolorswatch.cpp b/indra/newview/llcolorswatch.cpp index 036ff170743..4955ea8d147 100644 --- a/indra/newview/llcolorswatch.cpp +++ b/indra/newview/llcolorswatch.cpp @@ -128,10 +128,25 @@ BOOL LLColorSwatchCtrl::handleUnicodeCharHere(llwchar uni_char) return LLUICtrl::handleUnicodeCharHere(uni_char); } +// [SL:KB] - Patch: Control-ColorSwatchCtrl | Checked: 2012-08-28 (Catznip-3.3) +BOOL LLColorSwatchCtrl::isDirty() const +{ + return (mColor != mPrevColor); +} + +void LLColorSwatchCtrl::resetDirty() +{ + mPrevColor = mColor; +} +// [/SL:KB] + // forces color of this swatch and any associated floater to the input value, if currently invalid void LLColorSwatchCtrl::setOriginal(const LLColor4& color) { mColor = color; +// [SL:KB] - Patch: Control-ColorSwatchCtrl | Checked: 2012-08-28 (Catznip-3.3) + mPrevColor = mColor; +// [/SL:KB] LLFloaterColorPicker* pickerp = (LLFloaterColorPicker*)mPickerHandle.get(); if (pickerp) { @@ -142,6 +157,9 @@ void LLColorSwatchCtrl::setOriginal(const LLColor4& color) void LLColorSwatchCtrl::set(const LLColor4& color, BOOL update_picker, BOOL from_event) { mColor = color; +// [SL:KB] - Patch: Control-ColorSwatchCtrl | Checked: 2012-08-28 (Catznip-3.3) + mPrevColor = mColor; +// [/SL:KB] LLFloaterColorPicker* pickerp = (LLFloaterColorPicker*)mPickerHandle.get(); if (pickerp && update_picker) { diff --git a/indra/newview/llcolorswatch.h b/indra/newview/llcolorswatch.h index d8b48927228..32cde80c051 100644 --- a/indra/newview/llcolorswatch.h +++ b/indra/newview/llcolorswatch.h @@ -75,6 +75,10 @@ class LLColorSwatchCtrl final /*virtual*/ LLSD getValue() const { return mColor.getValue(); } const LLColor4& get() { return mColor; } +// [SL:KB] - Patch: Control-ColorSwatchCtrl | Checked: 2012-08-28 (Catznip-3.3) + /*virtual*/ BOOL isDirty() const; // Returns TRUE if user changed value at all + /*virtual*/ void resetDirty(); // Clear dirty state +// [/SL:KB] void set(const LLColor4& color, BOOL update_picker = FALSE, BOOL from_event = FALSE); void setOriginal(const LLColor4& color); @@ -103,6 +107,9 @@ class LLColorSwatchCtrl final protected: bool mValid; LLColor4 mColor; +// [SL:KB] - Patch: Control-ColorSwatchCtrl | Checked: 2012-08-28 (Catznip-3.3) + LLColor4 mPrevColor; +// [/SL:KB] LLUIColor mBorderColor; LLTextBox* mCaption; LLHandle<LLFloater> mPickerHandle; -- GitLab