aboutsummaryrefslogtreecommitdiff
path: root/ext/bg/js
Commit message (Collapse)AuthorAge
* Remove backend options context (#661)toasted-nutbread2020-07-11
| | | | | * Add support for getting the current profile * Explicitly use current options
* Message handler refactor (#660)toasted-nutbread2020-07-11
| | | | | | | | | | | * Refactor searchQueryUpdate action * Use standard message handler style * Use name "promiseOrResult" for consistency * Use standard message handler convention for Yomichan message handlers * Use common message handler invoker
* Generalized frame connections (#654)toasted-nutbread2020-07-08
| | | | | | | | | * Create FrameClient and FrameEndpoint * Use new Frame* classes for Popup=>frame connection * Update api.sendMessageToFrame and api.broadcastTab to include the sender's frameId * Update FrameClient to store the frame's frameId
* Refactor DisplayFloat=>Frontend message passing (#652)toasted-nutbread2020-07-08
| | | | | | | | | | | * Change getOrCreatePopup arguments to be an object * Add ownerFrameId to popup and DisplayFloat * Refactor DisplayFloat host action invocation * Use CrossFrameAPI instead of window.postMessage * Update popup closing functionality on the search page
* Display class refactoring (#650)toasted-nutbread2020-07-03
| | | | | | | | | | | | | | | | | | | | | | | * Organize by public/private * Don't access super class's private members * Make _autoPlayAudioTimer private * Refactor constructors * Make functions private * Organize by public/private * Organize window message handlers * Make fields private * Refactor DisplaySearch constructor * Make functions private * Organize by public/private
* Refactor text source map (#649)toasted-nutbread2020-07-03
| | | | | | | | | * Use a null check instead of array check * Convert statisc to non-private * Use public source * Add public function for getting the mapping
* Display refactor (#643)toasted-nutbread2020-07-03
| | | | | | | | | | | | | | | | | | | * Remove statics * Move orphan detection and error handling to Display * Add clearContent function * Add/use public get/set functions for optionsContext * Add public getOptions * Move interactive assignment * Mark fields as private * Mark functions as private * Change stray getter into a function
* Move private function definitions inside of IIFE (#641)toasted-nutbread2020-07-03
|
* Util refactor and fix (#638)toasted-nutbread2020-07-03
| | | | | * Remove unused functions * Fix clone function not being visible on the window object
* Page exit prevention refactor (#637)toasted-nutbread2020-07-03
| | | | | | | * Add page exit prevention functionality to SettingsController * Update dictionary controller to use new page exit prevention system * Remove page-exit-prevention.js
* Make JsonSchemaProxyHandler.unconstrainedSchema public and non-configurable ↵toasted-nutbread2020-07-03
| | | | (#636)
* Fix incorrect handlebars execution context in helpers (#645)toasted-nutbread2020-06-29
|
* Rename GenericDatabase to Database (#634)toasted-nutbread2020-06-28
|
* Rename Database to DictionaryDatabase (#633)toasted-nutbread2020-06-28
|
* Merge BackendEventHandler into Backend class (#632)toasted-nutbread2020-06-28
| | | | | * Merge BackendEventHandler into Backend class * Remove unused public functions
* Backend refactor (#631)toasted-nutbread2020-06-28
| | | | | | | | | | | | | | | | | | | | | | | * Mark fields as private * Remove static * Make functions private * Create onCommand handler * Group event handlers * Move functions * Merge _onOptionsUpdated and _applyOptions * Rename event handler * Move event handlers * Remove _getOptionsSchema * Move private functions
* Use deferPromise (#630)toasted-nutbread2020-06-28
| | | | | | | * Use deferPromise * Move definition * Implement promiseTimeout using deferPromise
* Clone function (#624)toasted-nutbread2020-06-28
| | | | | | | | | | | * Add clone function * Replace utilIsolate with clone * Replace JsonSchema.isolate with clone function * Include core.js for tests which use json-schema.js * Update visisted set
* Yomichan object separation (#627)toasted-nutbread2020-06-28
| | | | | | | | | | | | | * Move "yomichan" object setup to a separate file * Update script imports * Align message handlers * Rename Yomichan.prepare to Yomichan.ready * Add new prepare function * Improve isExtensionUrl
* Make PopupFactory.prepare non-async (#625)toasted-nutbread2020-06-25
|
* Shadow DOM container for popup iframes (#623)toasted-nutbread2020-06-24
| | | | | | | | | | | | | | | * 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
* Secure popup frame url changes (#622)toasted-nutbread2020-06-22
| | | | | | | * Throw error if options is not ready * Remove id * Change unsecurePopupFrameUrl to useSecurePopupFrameUrl
* Frontend initialization refactor (#610)toasted-nutbread2020-06-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Create member functions for ignoreElements and ignorePoint * Create addFullscreenChangeEventListener utility * Move popup creation management into Frontend * Move getUrl implementation * Remove old setup * Remove try/catch block * Error wrap * Add prepare call to TextScanner * Update depth when popup changes * Refactor how Frontend gets PopupFactory and frameId * Update popup preview to work * Update popup preview frame to use the frontend's popup * Update how nested popups are set up * Error wrap * Update how popups are set up on the search page * Error wrap * Error unwrap * Add missing prepare * Remove use of frontendInitializationData * Catch and log errors
* Generic database (#600)toasted-nutbread2020-06-21
| | | | | | | | | | | | | | | | | | | * Update test * Rename db to _db * Create GenericDatabase class * Catch prepare error * Allow database to be purged even if it was not open * Remove unused functions * Change static functions to non-static * Delete and count using the media object store * Update tests
* Use DOMTextScanner (#536)toasted-nutbread2020-06-21
| | | | | | | | | | | | | | | | | * Use DOMTextScanner instead of TextSourceRange.seek* * Move getNodesInRange to dom.js * Move anyNodeMatchesSelector to dom.js * Remove unused functions * Update tests * Add layoutAwareScan option * Use layoutAwareScan for source and sentence scanning * Remove unused IGNORE_TEXT_PATTERN
* Context popup update (#594)toasted-nutbread2020-06-21
| | | | | | | | | | * Add link to the help button * Update context.html to not use bootstrap Styles moved into a separate file Update icons * Update terminology to correspond to new icons
* Optimize anki note field generation (#611)toasted-nutbread2020-06-21
|
* Add option to use the unsecure frame URL (#618)toasted-nutbread2020-06-21
|
* Handle stack overflow caused by wanakana.toKana (#615)toasted-nutbread2020-06-21
|
* Template renderer class (#574)toasted-nutbread2020-06-15
| | | | | | | | | | | | | | | * Convert handlebars.js to a class * Move/rename function * Update helper registration * Rename helper functions * Limit cache size * Make render() async * Rename and move
* Remove debug log (#603)toasted-nutbread2020-06-13
|
* Replace XMLHttpRequest (#562)toasted-nutbread2020-06-13
| | | | | * Replace XMLHttpRequest with fetch * Implement fetch placeholder for tests
* Update the badge icon if the backend experiences an error (#602)toasted-nutbread2020-06-13
|
* Detect language tags starting with "ja_" (#596)toasted-nutbread2020-06-13
|
* Immediate backend event handlers (#555)toasted-nutbread2020-06-07
| | | | | * Add function to await until prepare is completed * Create BackendEventHandler to synchronously set up event handling
* Use cross frame API (#553)toasted-nutbread2020-06-07
| | | | | | | | | * 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
* Limit action port message size (#587)toasted-nutbread2020-05-31
| | | | | | | | | | | * 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
* Update AudioController to not use mutable options references (#585)toasted-nutbread2020-05-30
|
* Generic settings controller merge (#584)toasted-nutbread2020-05-30
| | | | | | | | | * Update how optionsContext is assigned to targets * Add getSettings and modifySettings * Merge DOMSettingsBinder into GenericSettingController * Remove old DOMSettingsBinder
* Update how assignment of general.enableClipboardPopups works (#583)toasted-nutbread2020-05-30
|
* Backup update (#582)toasted-nutbread2020-05-30
| | | | | | | | | * Add function to assign all settings * Update how settings backups are restored * Remove page reload * Update profile index after importing
* Update AnkiController (#581)toasted-nutbread2020-05-30
| | | | | | | | | | | | | * Update how fields are populated * Update how fields are modified after a model change * Update how _onFieldsChanged assigns fields * Update how spinner is hidden * Remove jQuery usage * Use non-jQuery events
* Update AnkiTemplatesController (#580)toasted-nutbread2020-05-30
| | | | | | | * Use this._defaultFieldTemplates * Don't use mutable options * Remove some use of jQuery
* Update GenericSettingController to use DOMSettingsBinder (#578)toasted-nutbread2020-05-30
|
* SettingsController API update (#579)toasted-nutbread2020-05-30
| | | | | * Include optionsContext as part of optionsChanged event * Add get/modify functions
* Organize settings/main.js (#577)toasted-nutbread2020-05-30
|
* Use SettingsController (#576)toasted-nutbread2020-05-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use settingsController internally in settings/main.js * Replace modifyingProfileChange with SettingsController.optionsContextChanged * Update ClipboardPopupsController to use SettingsController * Store reference to checkbox * Use this._settingsController for everything * Change where current profile is initially assigned from * Remove some unnecessary async calls * Move setup calls * Update AnkiTemplatesController to use SettingsController * Cache default field templates * Update AnkiController to use SettingsController * Update AudioController to use SettingsController * Update SettingsBackup to use SettingsController * Update DictionaryController to use SettingsController * Update GenericSettingController to use SettingsController * Update ProfileController to use SettingsController * Remove unused * Remove unused * Replace some uses of api.options* functions * Fix missing awaits * Fix invalid function
* Fix frontend being null if messages are received early (#575)toasted-nutbread2020-05-30
|
* Generic settings controller + clipboard popups controller (#573)toasted-nutbread2020-05-29
| | | | | * Create GenericSettingController * Create ClipboardPopupsController
* Popup preview frame refactor (#572)toasted-nutbread2020-05-29
| | | | | | | | | | | | | | | * Use private variables * Use private methods * Update overrides * Make prepare called in the entry point function * Change format of handlers * Change where _apiOptionsGetOld is assigned * Rename class