Kaydet (Commit) c1ac12f5 authored tarafından Ivan Timofeev's avatar Ivan Timofeev

gtk: fix drawing of disabled menu-item checkmarks and submenu arrows

Change-Id: Ic9929de974b1dd806dee294e574ad9f561468eb4
üst 0815a87c
......@@ -2851,19 +2851,15 @@ sal_Bool GtkSalGraphics::NWPaintGTKPopupMenu(
gWidgetData[m_nXScreen].gMenuItemCheckMenuWidget :
gWidgetData[m_nXScreen].gMenuItemRadioMenuWidget;
GtkStateType nStateType = GTK_STATE_NORMAL;
GtkStateType nStateType;
GtkShadowType nShadowType;
NWConvertVCLStateToGTKState( nState, &nStateType, &nShadowType );
if ( nState & CTRL_STATE_SELECTED )
if ( (nState & CTRL_STATE_SELECTED) && (nState & CTRL_STATE_ENABLED) )
nStateType = GTK_STATE_PRELIGHT;
NWSetWidgetState( pWidget, nState, nStateType );
if ( nState & CTRL_STATE_PRESSED )
nShadowType = GTK_SHADOW_IN;
else
nShadowType = GTK_SHADOW_OUT;
if ( nPart == PART_MENU_ITEM_CHECK_MARK )
{
gtk_paint_check( pWidget->style,
......@@ -2899,20 +2895,16 @@ sal_Bool GtkSalGraphics::NWPaintGTKPopupMenu(
}
else if( nPart == PART_MENU_SUBMENU_ARROW )
{
GtkStateType nStateType = GTK_STATE_NORMAL;
GtkStateType nStateType;
GtkShadowType nShadowType;
NWConvertVCLStateToGTKState( nState, &nStateType, &nShadowType );
if ( nState & CTRL_STATE_SELECTED )
if ( (nState & CTRL_STATE_SELECTED) && (nState & CTRL_STATE_ENABLED) )
nStateType = GTK_STATE_PRELIGHT;
NWSetWidgetState( gWidgetData[m_nXScreen].gMenuItemMenuWidget,
nState, nStateType );
if ( nState & CTRL_STATE_PRESSED )
nShadowType = GTK_SHADOW_IN;
else
nShadowType = GTK_SHADOW_OUT;
GtkArrowType eArrow;
if( Application::GetSettings().GetLayoutRTL() )
eArrow = GTK_ARROW_LEFT;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment