summaryrefslogtreecommitdiff
path: root/svx
diff options
context:
space:
mode:
authorDaniel <danielfaleirosilva@gmail.com>2018-03-24 00:13:26 -0300
committerSamuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>2018-03-28 08:57:51 +0200
commitbdd7abf56676732f8ce4fd04bea5c72758f1ec3b (patch)
tree0fa318b0f9a67a62055abda66b3301766140a17b /svx
parent1c1160967acf49cffae8921f3ab8361821bbaaaf (diff)
tdf#63438 Toggle highlight color to no fill if the same value is active
Change-Id: I7553bc7bffeb0a8d1275aadc44bf2813564087b5 Reviewed-on: https://gerrit.libreoffice.org/51794 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Diffstat (limited to 'svx')
-rw-r--r--svx/source/tbxctrls/tbcontrl.cxx9
1 files changed, 8 insertions, 1 deletions
diff --git a/svx/source/tbxctrls/tbcontrl.cxx b/svx/source/tbxctrls/tbcontrl.cxx
index 6ec04a941513..c817027dedad 100644
--- a/svx/source/tbxctrls/tbcontrl.cxx
+++ b/svx/source/tbxctrls/tbcontrl.cxx
@@ -2753,6 +2753,7 @@ com_sun_star_comp_svx_FontNameToolBoxControl_get_implementation(
SvxColorToolBoxControl::SvxColorToolBoxControl( const css::uno::Reference<css::uno::XComponentContext>& rContext ) :
ImplInheritanceHelper( rContext, nullptr, OUString() ),
m_bSplitButton(true),
+ m_bIsNoFill(false),
m_nSlotId(0),
m_aColorSelectFunction(PaletteManager::DispatchColorCommand)
{
@@ -2876,6 +2877,9 @@ VclPtr<vcl::Window> SvxColorToolBoxControl::createPopupWindow( vcl::Window* pPar
IMPL_LINK(SvxColorToolBoxControl, SelectedHdl, const NamedColor&, rColor, void)
{
+ if (m_xBtnUpdater->GetCurrentColor() != rColor.first)
+ m_bIsNoFill = false;
+
m_xBtnUpdater->Update(rColor.first);
if (m_xPaletteManager)
m_xPaletteManager->SetLastColor(rColor.first);
@@ -2938,8 +2942,11 @@ void SvxColorToolBoxControl::execute(sal_Int16 /*nSelectModifier*/)
Color aColor = m_xPaletteManager->GetLastColor();
auto aArgs( comphelper::InitPropertySequence( {
- { m_aCommandURL.copy(5), css::uno::makeAny( m_xPaletteManager->GetLastColor() ) }
+ { m_aCommandURL.copy(5), css::uno::makeAny( COL_TRANSPARENT ) }
} ) );
+ if (!m_bIsNoFill)
+ aArgs[0].Value <<= sal_Int32( m_xPaletteManager->GetLastColor() );
+ m_bIsNoFill = !m_bIsNoFill;
dispatchCommand( aCommand, aArgs );
OUString sColorName = ("#" + aColor.AsRGBHexString().toAsciiUpperCase());