diff --git a/docs/notes/bugfix-14361.md b/docs/notes/bugfix-14361.md new file mode 100644 index 00000000000..cbad6bdd8db --- /dev/null +++ b/docs/notes/bugfix-14361.md @@ -0,0 +1 @@ +# Ignore the background color for native-appearance tab panes diff --git a/engine/src/buttondraw.cpp b/engine/src/buttondraw.cpp index 6b8796ec694..183050a5e79 100644 --- a/engine/src/buttondraw.cpp +++ b/engine/src/buttondraw.cpp @@ -186,8 +186,11 @@ void MCButton::draw(MCDC *dc, const MCRectangle& p_dirty, bool p_isolated, bool case F_RADIO: case F_RECTANGLE: case F_STANDARD: - if (MCcurtheme == NULL || !getstack() -> ismetal() || (isstdbtn && state & CS_HILITED) || - !MCcurtheme -> drawmetalbackground(dc, dirty, trect, this)) + if ((isstdbtn && (state & CS_HILITED)) + || MCcurtheme == NULL + || !((getstack()->ismetal() && MCcurtheme->drawmetalbackground(dc, dirty, trect, this)) + || (style == F_MENU && menumode == WM_TOP_LEVEL && MCcurtheme->iswidgetsupported(WTHEME_TYPE_TABPANE)))) + { if (isstdbtn && noback) {