diff --git a/gtk/gtk-win32-base.css b/gtk/gtk-win32-base.css index 1fda1a26d8..16839524df 100644 --- a/gtk/gtk-win32-base.css +++ b/gtk/gtk-win32-base.css @@ -825,9 +825,26 @@ GtkColorSwatch:prelight { .pane-separator { background-image: -gtk-win32-theme-part(rebar, 1 1); + /* Use this when background-position is supported background-size: 20px 20px; background-repeat: no-repeat; background-position: center; */ -} \ No newline at end of file +} + +GtkStatusbar > GtkFrame { + border-width: 1px 1px 1px 1px; + border-style: solid; + border-image: -gtk-win32-theme-part(status, 0 0, margins (-1 0 0 0)) 2 1 1 1 stretch; + background-image: none; +} + +/* + This doesn't quite look right with no background (i.e. when not on a statusbar + +.grip { + background-color: transparent; + background-image: -gtk-win32-theme-part(status, 3 1); +} +*/ \ No newline at end of file diff --git a/gtk/gtkwin32theme.c b/gtk/gtkwin32theme.c index 8e28f97432..a9e0193d1a 100644 --- a/gtk/gtkwin32theme.c +++ b/gtk/gtkwin32theme.c @@ -36,6 +36,7 @@ static HTHEME needs_alpha_fixup2 = NULL; static HTHEME needs_alpha_fixup3 = NULL; static HTHEME needs_alpha_fixup4 = NULL; static HTHEME needs_alpha_fixup5 = NULL; +static HTHEME needs_alpha_fixup6 = NULL; typedef HRESULT (FAR PASCAL *GetThemeSysFontFunc) (HTHEME hTheme, int iFontID, OUT LOGFONTW *plf); typedef int (FAR PASCAL *GetThemeSysSizeFunc) (HTHEME hTheme, int iSizeId); @@ -148,6 +149,7 @@ _gtk_win32_theme_init (void) needs_alpha_fixup3 = _gtk_win32_lookup_htheme_by_classname ("button"); needs_alpha_fixup4 = _gtk_win32_lookup_htheme_by_classname ("header"); needs_alpha_fixup5 = _gtk_win32_lookup_htheme_by_classname ("trackbar"); + needs_alpha_fixup6 = _gtk_win32_lookup_htheme_by_classname ("status"); } } @@ -262,7 +264,8 @@ _gtk_win32_theme_part_create_surface (HTHEME theme, theme == needs_alpha_fixup2 || (theme == needs_alpha_fixup3 && xp_part == 4) || theme == needs_alpha_fixup4 || - theme == needs_alpha_fixup5)) + theme == needs_alpha_fixup5 || + theme == needs_alpha_fixup6)) { cairo_surface_t *img = cairo_win32_surface_get_image (surface); guint32 *data = (guint32 *)cairo_image_surface_get_data (img);