fdo#77683 the color in the toolbar buttons doesn't change.

The color in the toolbar buttons doesn't change when we use the Floating
Font/Background/Highlight Color Toolbar.
This problem seems happen sometimes,not always.

This patch modifies that SvxColorExtToolBoxControl::StateChanged()
in /svx/source/tbxctrls/tbcontrol.cxx handles SFX_ITEM_DEFAULT message
always.

Change-Id: If7410297db768c161287b75396186fbec3605f63
Reviewed-on: https://gerrit.libreoffice.org/9107
Reviewed-by: Kohei Yoshida <libreoffice@kohei.us>
Tested-by: Kohei Yoshida <libreoffice@kohei.us>
This commit is contained in:
Tomofumi Yagi 2014-04-20 16:27:10 +09:00 committed by Kohei Yoshida
parent 356fa61f40
commit f5dc536eae
2 changed files with 2 additions and 8 deletions

View File

@ -269,7 +269,6 @@ class SVX_DLLPUBLIC SvxColorExtToolBoxControl : public SfxToolBoxControl
::svx::ToolboxButtonColorUpdater* pBtnUpdater;
Color mLastColor;
bool bChoiceFromPalette;
public:
SFX_DECL_TOOLBOX_CONTROL();

View File

@ -2482,7 +2482,6 @@ SvxColorExtToolBoxControl::SvxColorExtToolBoxControl(
mLastColor( COL_AUTO )
{
rTbx.SetItemBits( nId, TIB_DROPDOWN | rTbx.GetItemBits( nId ) );
bChoiceFromPalette = false;
// The following commands are available at the various modules
switch( nSlotId )
@ -2559,7 +2558,6 @@ SfxPopupWindow* SvxColorExtToolBoxControl::CreatePopupWindow()
FLOATWIN_POPUPMODE_GRABFOCUS|FLOATWIN_POPUPMODE_ALLOWTEAROFF|FLOATWIN_POPUPMODE_NOAPPFOCUSCLOSE );
pColorWin->StartSelection();
SetPopupWindow( pColorWin );
bChoiceFromPalette = true;
return pColorWin;
}
@ -2577,13 +2575,10 @@ void SvxColorExtToolBoxControl::StateChanged(
rTbx.EnableItem( nId, SFX_ITEM_DISABLED != eState );
rTbx.SetItemState( nId, ( SFX_ITEM_DONTCARE == eState ) ? TRISTATE_INDET : TRISTATE_FALSE );
if (bChoiceFromPalette)
if ( SFX_ITEM_DEFAULT == eState )
{
bChoiceFromPalette = false;
const SvxColorItem* pItem = 0;
if ( SFX_ITEM_DONTCARE != eState )
pItem = PTR_CAST( SvxColorItem, pState );
pItem = PTR_CAST( SvxColorItem, pState );
if ( pItem )
{