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:
parent
356fa61f40
commit
f5dc536eae
@ -269,7 +269,6 @@ class SVX_DLLPUBLIC SvxColorExtToolBoxControl : public SfxToolBoxControl
|
||||
|
||||
::svx::ToolboxButtonColorUpdater* pBtnUpdater;
|
||||
Color mLastColor;
|
||||
bool bChoiceFromPalette;
|
||||
|
||||
public:
|
||||
SFX_DECL_TOOLBOX_CONTROL();
|
||||
|
@ -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 )
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user