| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
| |
* Assign duplicateScope to a variable
* Add api.addAnkiNote
* Add api.getAnkiNoteInfo, update returned data format
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Rename variables to disambiguate
* Update handler argument convention
* Update getUri argument convention
* Change _getAudioUri argument convention
* Change getDefinitionAudio argument convention
* Add api.getDefinitionAudio definition
|
|
|
|
|
|
|
| |
(#795)
* Update AnkiController to use AnkiConnect instance directly
* Remove unused
|
|
|
|
|
|
|
| |
* Use more consistent style for injectScreenshot
* Move screenshot generation into AnkiNoteBuilder/Backend
* Get optionsContext before await
|
|
|
|
|
|
|
|
|
|
|
| |
* Rename clipboardPasteTarget to just target
* Remove else block
* Add helper functions
* Defer assignment of clipboard paste target
* Add api.clipboardGetImage
|
|
|
|
|
| |
* Add api.isTabSearchPopup
* Fix missing asyncs
|
| |
|
|
|
|
|
|
|
| |
* Fix .purge not re-opening the database after deletion failure
* Create DictionaryImportController
* Remove backend dictionary import
|
|
|
|
|
|
|
|
|
|
|
| |
* Update _updateSearchQuery to return the promise
* Update how the clipboard search popup is opened
* Create an API function to open the search popup
* Skip animation on popup creation
* Add API function
|
|
|
|
|
|
|
|
|
| |
* Use a stringified JSON details object for extension port names
* Fix incorrect frame ID check
* Add support for connecting to different tabs
* Add function for invoking on a different tab
|
|
|
|
|
|
|
| |
* Update how extension unload is detected
* Remove event handlers and use yomichan.isExtensionUnloaded instead
* Update terminology
|
|
|
|
|
|
|
| |
* Use deferPromise
* Move definition
* Implement promiseTimeout using deferPromise
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add support for injecting stylesheets into a custom parent node
* Add api.getStylesheetContent
* Add support for injecting a CSS file's content
* Add usePopupShadowDom option
* Use a per-parentNode cache
* Add support for using a shadow DOM wrapper around popup iframes
* Ignore the popup container instead of the frame
|
|
|
|
|
|
|
|
|
| |
* Use new CrossFrameAPI for popup proxy communication
* Remove use of old cross-frame communication classes
* Remove use of old cross-frame communication files
* Make the crossFrame object a member of the api object
|
|
|
|
|
|
|
|
|
|
|
| |
* Add onDisconnect handler
* Update how error is posted
* Update action ports to send long messages in fragments
* Remove ack timer
* Move message destructuring into try block
|
|
|
|
|
|
|
|
|
| |
* Add function to assign all settings
* Update how settings backups are restored
* Remove page reload
* Update profile index after importing
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix _modifySetting being async
* Return values for modifySettings's set and splice actions
* Add apiGetSettings
* Create a class which can accumulate tasks to run in bulk
* Create a class which binds input elements to customizable sources
* Create class which binds input elements to settings
* Add support for value transforms
* Remove redundant ObjectPropertyAccessor.getPathArray
* Fix not using correct types for input.min/max/step
* Fix wrong condition
* Use api object
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Convert api.js into a class instance
* Use new api.* functions
* Fix missing binds
* Group functions with progress callbacks together
* Change style
* Fix API override not working
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Update getProfile/getProfileFromContext to store this.options in a variable
* Add useSchema parameter to options getter functions
* Add apiModifySettings
* Use apiModifySettings instead of apiOptionsSet
* Remove apiOptionsSet
* Fix incorrect deleteCount check
* Require explicit scope for options
* Throw on invalid scope
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Update onProgress callback to handle multiple arguments
* Add apiImportDictionaryArchive
* Add apiDeleteDictionary
* Make onProgress the last argument for consistency
* Remove deprecated util functions
* Fix issue with missing progress args
* Remove function calls which modify the database from Translator
* Update tests
* Fix errors not being serialized correctly in _createActionListenerPort
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add API function to send a message to a specific frameId in a tab
* Update _windowMessageHandlers to support additional info per handler
* Remove message token
* Add new authorization check
* Set up new initialization handler
* Update initialization
* Remove message token
* Replace 'prepare' with 'configure'
* Create new prepare function
* Change configure guard
* Log errors in onMessage
* Improve popup initialize function
* Clear secret/token in _resetFrame
* Remove backend message token
* Clear src and srcdoc attributes before loading
* Don't treat about:blank unloads as load events
|
|
|
|
|
|
|
| |
* Create an internal API function to open a port
* Create system for running actions over a special port
* Don't assign in expression
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Create new logging methods on yomichan object
* Use new yomichan.logError instead of global logError
* Remove old logError
* Handle unhandledrejection events
* Add addEventListener stub
* Update log function
* Update error conversion to support more types
* Add log event
* Add API log function
* Log errors to the backend
* Make error/warning logs update the badge
* Clear log error indicator on extension button click
* Log correct URL on the background page
* Fix incorrect error conversion
* Remove unhandledrejection handling
Firefox doesn't support it properly.
* Remove unused argument type from log function
* Improve function name
* Change console.warn to yomichan.logWarning
* Move log forwarding initialization into main scripts
|
| |
|
| |
|
|\
| |
| | |
Util conversions
|
| | |
|
|/ |
|
|\
| |
| | |
Backend api handler changes
|
| | |
|
| | |
|
|/
|
|
|
| |
Yomichan is an ongoing community project. It really does take a village,
and everyone who contributes code owns a part of it :)
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|