Skip to content

Conversation

Herobone
Copy link

This pull request introduces significant improvements to the OpenDyslexic extension, focusing on more robust font application, cleaner state management, and improved manifest configuration for both Chrome and Edge. The changes streamline CSS handling, enhance reliability when applying fonts to dynamic pages, and update extension metadata for future releases.

Font Application & CSS Improvements

  • Refactored the font application logic in engine.js to use a centralized state object, ensuring more reliable font switching and injection, especially on dynamic pages; added MutationObserver logic to handle late body insertion and flush pending font changes. [1] [2]
  • Simplified and unified CSS selectors in opendyslexic.css to reduce duplication and ensure correct inheritance, making it easier to maintain and improving performance. [1] [2] [3]
  • Expanded and standardized unicode-range for all font-face declarations to support a broader character set. [1] [2] [3] [4] [5]

Extension State & Badge Updates

  • Refactored badge update logic to use a single updateBadge function, improving clarity and reliability of badge state changes; updated background script to only query storage for changed values and streamlined tab messaging. [1] [2] [3]
  • Improved Vue app state initialization and settings sync, ensuring font and enable status are consistently loaded and applied. [1] [2]

Manifest & Configuration Updates

  • Updated Chrome and Edge manifest files to version 2025.9.14, added run_at: document_start for content scripts to ensure early font injection, and restructured manifest formatting for clarity and future maintainability. [1] [2] [3] [4] [5]

These changes collectively improve extension reliability, maintainability, and user experience.

Fixes #49 and #67

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Suggestion: for handling font icons
1 participant