cui/source/tabpages/backgrnd.cxx | 4 +++- include/svtools/valueset.hxx | 3 +++ svtools/source/control/valueset.cxx | 1 + 3 files changed, 7 insertions(+), 1 deletion(-)
New commits: commit e5246a6b679cfd15ba9ec6db23448066f34c7c08 Author: Oliver Specht <oliver.spe...@cib.de> Date: Thu Dec 10 12:22:07 2015 +0100 tdf#96382: background color is not applied unintentionally background color attribute should only be applied in a dialog if the user selects it Change-Id: Idf03840f7332a8cdbbfd616ce47ac26b3602d840 Reviewed-on: https://gerrit.libreoffice.org/20592 Reviewed-by: Oliver Specht <oliver.spe...@cib.de> Tested-by: Oliver Specht <oliver.spe...@cib.de> diff --git a/cui/source/tabpages/backgrnd.cxx b/cui/source/tabpages/backgrnd.cxx index d85a6a8..6504b11 100644 --- a/cui/source/tabpages/backgrnd.cxx +++ b/cui/source/tabpages/backgrnd.cxx @@ -598,6 +598,7 @@ void SvxBackgroundTabPage::ResetFromWallpaperItem( const SfxItemSet& rSet ) aBgdColor = pBgdAttr->GetColor(); sal_uInt16 nCol = GetItemId_Impl(*m_pBackgroundColorSet, aBgdColor); m_pBackgroundColorSet->SelectItem( nCol ); + m_pBackgroundColorSet->SaveValue(); m_pPreviewWin1->NotifyChange( aBgdColor ); } } @@ -682,7 +683,7 @@ bool SvxBackgroundTabPage::FillItemSet( SfxItemSet* rCoreSet ) { // Brush-treatment: if ( rOldItem.GetColor() != aBgdColor || - (SfxItemState::DEFAULT >= eOldItemState && !m_pBackgroundColorSet->IsNoSelection())) + (SfxItemState::DEFAULT >= eOldItemState && m_pBackgroundColorSet->GetSavedValue() != m_pBackgroundColorSet->GetSelectItemId())) { bModified = true; rCoreSet->Put( SvxBrushItem( aBgdColor, nWhich ) ); @@ -1423,6 +1424,7 @@ void SvxBackgroundTabPage::FillControls_Impl( const SvxBrushItem& rBgdAttr, { m_pBackgroundColorSet->SelectItem( nCol ); } + m_pBackgroundColorSet->SaveValue(); m_pPreviewWin1->NotifyChange( aBgdColor ); diff --git a/include/svtools/valueset.hxx b/include/svtools/valueset.hxx index 30aaffe..e4fac32 100644 --- a/include/svtools/valueset.hxx +++ b/include/svtools/valueset.hxx @@ -212,6 +212,7 @@ private: long mnUserItemWidth; long mnUserItemHeight; sal_uInt16 mnSelItemId; + sal_uInt16 mnSavedItemId; sal_uInt16 mnHighItemId; sal_uInt16 mnCols; sal_uInt16 mnCurCol; @@ -349,6 +350,8 @@ public: { return mnSelItemId; } + void SaveValue() { mnSavedItemId = GetSelectItemId(); } + sal_Int32 GetSavedValue() const { return mnSavedItemId; } bool IsItemSelected( sal_uInt16 nItemId ) const { return !mbNoSelection && (nItemId == mnSelItemId); diff --git a/svtools/source/control/valueset.cxx b/svtools/source/control/valueset.cxx index b62d6ce..e6481b9 100644 --- a/svtools/source/control/valueset.cxx +++ b/svtools/source/control/valueset.cxx @@ -69,6 +69,7 @@ void ValueSet::ImplInit() mnUserItemHeight = 0; mnFirstLine = 0; mnSelItemId = 0; + mnSavedItemId = 0; mnHighItemId = 0; mnCols = 0; mnCurCol = 0; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits