| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
joining the args together without cutting out the options arg can add
an '[object Object]' into the result.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
this is based on forsakeninfinity's commit https://github.com/forsakeninfinity/yomibaba/commit/c9887d51ed5c917bb900d7964614154de1d76872
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
when the background script starts, it sends a
`Yomichan.optionsUpdated` message which is retransmitted
indiscriminately.
- popups are all torn down/refreshed
- the search bar on the search page can lose state
- if a popup has been loaded on the search page, the search page can
redirect/refresh
- options being edited can lose state and the options page can refresh
|
|\
| |
| |
| | |
Fix Chrome death, by creating both cross-frame ports in the background
|
| |
| |
| |
| |
| | |
not sure if API messages should be sent in prepare(), but we should
probably wait for the ready signal before doing so
|
| | |
|
| |
| |
| |
| |
| |
| | |
it was only used in the cross-frame api.
additionally, this comment on triggerExtensionUnloaded is incorrect.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
on Chrome (currently 117), the port created in the content script with
runtime.connect does not properly receive an onDisconnect event when
the service worker sleeps. the port created in the background with
tabs.connect does receive the event, so create both ports with
tabs.connect.
fixes #241.
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
|
|
| |
this line serves no purpose. the commit it was introduced in has the
message 'Document RequestBuilder' and is the only non-documentary line
in the commit.
related to #204.
|
| |
|
|
|
|
|
| |
the API accepts string literals, which is all this enum provides. This
should fix two warnings in #96.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Firefox added the scripting API in 102. This should fix the majority
of warnings listed in #96:
- insertCSS
- executeScript
- getRegisteredContentScripts
- contentScripts.register
- registerContentScripts
- unregisterContentScripts
|
|
|
|
|
|
|
|
| |
It's super annoying to have to import dictionaries one at a time every
time you move across browsers or devices. This change adds an
experimental mechanism to export and import the entire database of
dictionaries so that users have to deal with only one source instead of
tracking tens of different dictionaries separately when migrating.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| | |
Apply .aac extension so playback works in downstream Anki clients
|
| | |
|
| | |
|
| | |
|
|/ |
|
|
|
|
|
|
|
| |
* Document Backend
* Document RequestBuilder
* Document some of AnkiConnect
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Rename
* Rename vars
* Refactor paste target
* Prevent most CSS url() properties from loading
* Add helper function to clear rich function
* Add useRichText argument
* Update condition for using readText
* Fix indent
* Update CSS
|
| |
|
|
|
|
|
| |
* Refactor error throwing and change ID
* Show a notification when an audio download fails due to an expired cert
|
|
|
|
|
|
|
|
|
|
|
| |
* Remove unused ignoreSelectors
* Remove unused isMouseButtonPressed
* Update getWritingMode to use the immediate element if possible
* Move static functions to DocumentUtil
* Fix documentation
|
|
|
|
|
|
|
|
|
| |
* Document TextSourceRange
* Document TextSourceElement
* Document DocumentUtil
* Document DocumentFocusController
|
|
|
|
|
|
|
| |
* Use getAttribute instead of dataset, in case SVG node APIs are unusual
* Use pointer-events instead of fill
* Use elementFromPoint instead of elementsFromPoint
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Move TextSourceRange static functions to DocumentUtil
getWritingMode is also simplified
* Update Google Docs range to be empty to match other range sources
* Rename imposterContainer to imposterElement
* Add static creation functions
* Add static creation function
* Remove unused collapse function
* Don't select imposter elements
* Refactor setEndOffset
* Adjust argument order for setEndOffset
* Update TextSourceRange constructor
* Remove unused isConnected
* Cache rects
* Fix test
* Remove unused getRect
* Revert "Fix test"
* Remove cachedRect
* Use the source element rect to handle scroll differences
* Writing mode update
* Remove _cachedRects update
This shouldn't be necessary as the imposter is usually detached
almost immediately after scanning, giving no time for the window
to be resized or scrolled.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Update Google Docs injection script
* Create GoogleDocsUtil
* Update Frontend.js to register GoogleDocsUtil's getRangeFromPoint handler
* Update setting name and description
* Add comment
* Fix Firefox support
|
|
|
|
|
| |
* Update DocumentUtil.getRangeFromPoint to be extensible
* Add documentation
|
|
|
|
|
| |
* Inject MV3 scripts immediately
* Add api.loadExtensionScripts
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Make all methods static
The two non-static methods are kept for temporary compatibility
* Use this instead of class name now that functions are static
* Update test
* Don't instantiate DocumentUtil
* Remove temporary non-static methods
* Remove unused global declaration
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Exclude documentElement from zoom calculation
* Add an option
* Refactor zoom coordinate conversion functions
* Convert zoom coordinates for text sources
* Rename variable
* Convert rect coordinate spaces
* Handle shadow DOM
|
|
|
|
|
|
|
| |
* Update StringUtil
* Refactor
* Handle UTF-16 surrogate pairs
|