Do not move focus from the tab onto the editor/input
during keyboard navigation to not change context per
https://www.w3.org/WAI/WCAG21/Understanding/on-input.
Focus will still shift if tab selection changed on mouse click.
Also:
- added focus ring to tabs. Additional mouseup handling
to prevent the focus ring from briefly appearing on click.
- on Escape from within the editor, focus the current
tab.
- on shift-tab from the beginning of the editor,
tab out of the editor to previous element.
And:
- Use eslint instead of teslint
- Remove debug logging, since we're running this constantly now
- Kill ESLint at the end, although it should exit on its own
Includes API changes in Zotero.Translators in order to support
in-memory translator serialization.
Type changes in docstrings are corrections, not actual changes.
Apparently _error() does get called!
detect* methods were already logging syntax errors as expected.
TranslationChild handles errors in detect* and do* identically. Odd.
Minimize, maximize, close, etc. window buttons are generally
not accessible for focus. They can get focused on mac with
voiceover enabled which can be confusing.
Added aria-hidden attribute to prevent voiceover from
placing the cursor on them.
In a new scaffold.ftl file.
Vpat 43 also indicates that the read-only state of the text field
does not get announced - it is a VoiceOver-specific issue on
Firefox, so it is not addressed here as it should be fixed
globally.
Unify richlistitem styling rules
- Fix richlistitem unwanted focus ring on Linux
fix: #4510
- Simplify richlistbox styling rules and do not follow Mozilla code
- Use --default-focusring-width for v-table
- Output pane no longer gets huge after load
- URL box grows
- Metadata grid fills available space (but still needs work re overflow)
- row-resize cursor on Tests splitter
It only had `locale.dir`, which it looks like we can handle in different
ways now:
- CSS rules with `:-moz-locale-dir(ltr)`
- `let isLTR = document.documentElement.matches(":-moz-locale-dir(ltr)");`
Making this configurable - it's worth testing translators to make sure
that they *aren't* dependent on some specific cookie configuration,
apart from obvious cases like login-gated sites.
New icons and new scaffold.scss go into chrome://zotero/skin. The separate root
for Scaffold is mostly a historical relic, and adding special cases to build
scripts, SCSS mixins, and so on would just make things complicated.
This new XPCOM module handles font size and UI density and automatically keeps
registered roots up to date when prefs change. Roots receive a
UIPropertiesChanged event after their properties are updated.