Windows theme code is not handling indeterminate state for CheckBox. Below is additional code that gives indetermine state capability. Only change is addition of two lines to check for indeterminate state on checkbox and add 8 to the result. This gives correct rendering for Layout test: fast/forms/indeterminate.html unsigned RenderThemeWin::determineState(RenderObject* o) { unsigned result = TS_NORMAL; ControlPart appearance = o->style()->appearance(); if (!isEnabled(o)) result = TS_DISABLED; else if (isReadOnlyControl(o) && (TextFieldPart == appearance || TextAreaPart == appearance || SearchFieldPart == appearance)) result = TFS_READONLY; // Readonly is supported on textfields. else if (isPressed(o)) // Active overrides hover and focused. result = TS_ACTIVE; else if (supportsFocus(appearance) && isFocused(o)) result = TS_FOCUSED; else if (isHovered(o)) result = TS_HOVER; if (isChecked(o)) result += 4; // 4 unchecked states, 4 checked states. else if (isIndeterminate(o) && appearance == CheckboxPart) result += 8; return result; }
Created attachment 128600 [details] Correct handling of CheckBox when in indeterminate state Thanks for the update, Lynn. I've generated a patch based on your suggested change.
Comment on attachment 128600 [details] Correct handling of CheckBox when in indeterminate state View in context: https://bugs.webkit.org/attachment.cgi?id=128600&action=review > Source/WebCore/ChangeLog:8 > + Tested by fast/forms/indeterminate.html I wish we our regression tests actually tested RenderThemeWin! Then we could check in new pixel results for this test.
Comment on attachment 128600 [details] Correct handling of CheckBox when in indeterminate state Clearing flags on attachment: 128600 Committed r108791: <http://trac.webkit.org/changeset/108791>
All reviewed patches have been landed. Closing bug.