summaryrefslogtreecommitdiff
path: root/cui
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2016-12-12 21:24:20 +0100
committerEike Rathke <erack@redhat.com>2016-12-12 21:24:30 +0100
commit429be969b39867d6d9f36978c9ac15b601e78ba6 (patch)
treedd25b3c723c7b3354f794a040f8b192fcaf1a4b7 /cui
parentb17b413ea2c3902a219e2e35a949e924436d34f8 (diff)
Resolves: tdf#101588, do not prevent color de-selection tdf#96382 follow-up
Comparing colors to determine whether to set one in the result item set does not work if the color previously was set before SaveValue() was called unconditionally even for the "undetermined" color state. Actually we want to know whether the user selected a color instead. Change-Id: I508f791684ebd79ba4af9cb654f9aa0bb25bff5d
Diffstat (limited to 'cui')
-rw-r--r--cui/source/tabpages/backgrnd.cxx8
1 files changed, 6 insertions, 2 deletions
diff --git a/cui/source/tabpages/backgrnd.cxx b/cui/source/tabpages/backgrnd.cxx
index 5b40f396b040..9938b36714e6 100644
--- a/cui/source/tabpages/backgrnd.cxx
+++ b/cui/source/tabpages/backgrnd.cxx
@@ -684,7 +684,7 @@ bool SvxBackgroundTabPage::FillItemSet( SfxItemSet* rCoreSet )
{
// Brush-treatment:
if ( rOldItem.GetColor() != aBgdColor ||
- (SfxItemState::DEFAULT >= eOldItemState && m_pBackgroundColorSet->GetSavedValue() != m_pBackgroundColorSet->GetSelectItemId()))
+ (SfxItemState::DEFAULT >= eOldItemState && !m_pBackgroundColorSet->IsNoSelection()))
{
bModified = true;
rCoreSet->Put( SvxBrushItem( aBgdColor, nWhich ) );
@@ -1423,9 +1423,13 @@ void SvxBackgroundTabPage::FillControls_Impl( const SvxBrushItem& rBgdAttr,
}
else
{
+ bool bNoSelection = m_pBackgroundColorSet->IsNoSelection();
m_pBackgroundColorSet->SelectItem( nCol );
+ m_pBackgroundColorSet->SaveValue();
+ // The actual selection is user set, not what we preset.
+ if (bNoSelection)
+ m_pBackgroundColorSet->SetNoSelection();
}
- m_pBackgroundColorSet->SaveValue();
m_pPreviewWin1->NotifyChange( aBgdColor );