Focused text fields show their outline on every edge (#202)
The focus outline of a text field was only visible at its corners. The mask that clips the text covered the whole field, border included, so the 1 px stroke was cut away along every straight edge. Only the rounded corners bent inwards far enough to survive. With the larger radius the new theme tried, this became obvious. - TextField puts text, selection and caret into their own container. Only that container is masked. Background and outline are not. - NumberField and the rename field in lists inherit the fix. - The theme radius goes back to 2 px. - New debug hook __gm.focusedRect() returns where the focused widget sits, so a check can read its border. Tests: - ./check.sh: 141 files, 2080 tests, exit 0 - GM_STEPS=2: ALL PASSED, 24 checks (one new) - The new check in 2c reads the middle of all four edges of the focused name field. All four must be the focus blue. - Counter-check with the old full-field mask: the check fails, all four edges read #24272e. - Editor check total is now 1286 (1285 + 1), computed, not measured. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
940a78e8ee
commit
0d207769b9
5 files changed
+29
-12
No files matched your search
@@ -210,6 +210,11 @@ export function installDebugHook(app: Application, state: EditorState, editor: E
|
||||
inspectorField: fieldOf,
|
||||
/** The inspector panel on screen – what tells whether a row of it can be clicked at all. */
|
||||
inspectorRect: () => rectOf(inspector),
|
||||
/** Where the focused widget sits on screen, or `null` – for checks on its focus border. */
|
||||
focusedRect: () => {
|
||||
const widget = ui().focus.focused;
|
||||
return widget ? rectOf(widget) : null;
|
||||
},
|
||||
inspectorInfo: () => inspector.debugInfo(),
|
||||
textColor,
|
||||
overlayTexts,
|
||||
|
||||
Reference in new issue
Block a user