mirror of
https://github.com/SpartanJ/eepp.git
synced 2026-10-18 19:43:24 +03:00
macOS: - Check each notification against a hash set of (event, element, related element) instead of scanning the whole pending queue. The ordered queue still drives delivery, so a burst of distinct events (e.g. 10,000 label changes) stays linear. Created/Destroyed are never de-duplicated. - Track the pending focus change by its index instead of scanning for it. Core: - SceneManager::update: also bound the loop by the live scene count, so a scene removed during the pass can't cause an out-of-range read. - Accessibility setters (role, label, description, hidden) return early on unchanged values. Re-applying CSS no longer allocates the properties block or notifies clients. API cleanup: - Remove AccessibilityRelation, AccessibilityRelationInfo and AccessibilityNodeInfo::relations. Nothing populated them. Remove the inspector row and the macOS linked-elements attribute that read them. AT-SPI GetRelationSet still answers with an empty set. - Drop unused includes in uiroot.cpp and accessibility.hpp. Docs: - Architecture guide: UIA and macOS queue events until update(); AT-SPI emits right away except for per-frame text diffs. Describe each backend's per-frame batching, including the macOS de-dup. Tests: - Add UnchangedAccessibilityPropertiesStaySilent.
eepp articles
Use this page to find the guide for the task you are doing. The articles explain eepp's supported behavior; class headers and current source code remain the reference for API details.
| Task | Start here | Follow up with |
|---|---|---|
| Build a first UI with XML and CSS | UI introduction | Application UI authoring |
| Create or change an application screen | Application UI authoring | Native layout reference, CSS for application UI |
| Look up a CSS property, selector, or value | CSS specification | CSS for application UI when styling native widgets |
| Render HTML or Markdown content | HTML compatibility layer | CSS specification for supported properties and values |
| Preview and edit native XML/CSS layouts | UI editor | Application UI authoring, Runtime UI inspector |
| Inspect or automate a running UI | Runtime UI inspector | Application UI authoring for a layout debugging workflow |
| Bind application data or commands to widgets | UI data binding | Application UI authoring for screen structure |
| Make native widgets accessible | UI accessibility | Application UI authoring for screen structure |
| Work on the accessibility implementation | UI accessibility architecture | UI accessibility for the application-facing behavior |
| Add an interactive chart | UI charts | Application UI authoring for placement and sizing |
Work on eterm Kitty support |
Keyboard protocol, graphics protocol | The corresponding src/modules/eterm/ implementation and tests |
Native application widgets and HTML documents have different layout behavior. Start with
application UI authoring for toolbars, dialogs, forms, and editor windows;
start with HTML compatibility for UIWebView and UIMarkdownView.