summaryrefslogtreecommitdiff
path: root/ext/mixed/js/display.js
Commit message (Collapse)AuthorAge
* Fix primary audio source (#886)toasted-nutbread2020-10-04
| | | | | | | | | * Add abstraction: _getDefinitionPrimaryExpressionAndReading * Reuse existing definitions in a sequence * Revert change to related definition source/rawSource/sourceTerm * Update _getDefinitionPrimaryExpressionAndReading to return best match
* Add middle mouse prevention option (#868)toasted-nutbread2020-09-26
| | | | | | | | | * Add preventMiddleMouse option to TextScanner * Add preventMiddleMouse options * Add options * Apply preventMiddleMouse options
* Fix page type never being detected as search page correctly (#867)toasted-nutbread2020-09-26
|
* Add clipboard-text Anki field (#863)toasted-nutbread2020-09-26
| | | | | | | * Add clipboard-text anki field * Add markers * Update clipboard injection
* Audio system refactor (#858)toasted-nutbread2020-09-26
| | | | | | | | | | | | | | | * Refactor AudioUriBuilder * Add downloadAudio function * Refactor AudioSystem * Update API usage * Rename file * Update scripts * Add prepare calls
* Handlebars sandbox (#612)toasted-nutbread2020-09-18
| | | | | | | | | * Set up template renderer proxy * Use proxy * Remove unused handlebars script tags * Update manifest
* Pointer events support (#819)toasted-nutbread2020-09-13
| | | | | | | | | | | | | * Add option pointerEventsEnabled * Add _pointerEventsEnabled option to TextScanner * Add additional options * Mouse pointer events * Touch pointer events * Pen pointer events
* Text scanner cause update (#813)toasted-nutbread2020-09-11
| | | | | * Rename _searchAtFromMouse to _searchAtFromMouseMove * Rename cause 'mouse' to 'mouseMove' for clarity
* Use Anki classes directly in Display (#804)toasted-nutbread2020-09-10
| | | | | | | | | | | * Add _getTemplates function * Add template renderer to display pages * Add AnkiNoteBuilder to Display * Update AnkiTemplatesController to directly use TemplateRenderer * Remove old APIs
* Anki note api functions (#802)toasted-nutbread2020-09-10
| | | | | | | * Assign duplicateScope to a variable * Add api.addAnkiNote * Add api.getAnkiNoteInfo, update returned data format
* AudioUriBuilder simplification (#799)toasted-nutbread2020-09-10
| | | | | | | | | | | | | * Rename variables to disambiguate * Update handler argument convention * Update getUri argument convention * Change _getAudioUri argument convention * Change getDefinitionAudio argument convention * Add api.getDefinitionAudio definition
* Scanning input generalization (#789)toasted-nutbread2020-09-09
| | | | | | | | | | | | | | | | | | | | | | | | | * Add inputs to options.scanning * Update CSS for mouse buttons * Update list counters * Set up HTML/CSS * Add input controller * Use new inputs * Include mouse buttons * Update how button inputs are detected * Add index/empty fields to the input details object * Update none check for scanning modifier * Remove old settings * Remove unused global
* Anki screenshot refactor (#791)toasted-nutbread2020-09-09
| | | | | | | * Use more consistent style for injectScreenshot * Move screenshot generation into AnkiNoteBuilder/Backend * Get optionsContext before await
* Text scanner fixes and refactoring (#788)toasted-nutbread2020-09-08
| | | | | | | * Fix incorrect argument being passed * Clear causeCurrent * Change cause string to a more general input object
* Fix error handling for screenshot captures (#777)toasted-nutbread2020-09-06
|
* Popup window (#773)toasted-nutbread2020-09-05
| | | | | | | * Add option usePopupWindow * Add PopupWindow class * Add support for creating PopupWindow
* Fix sessionStorage not being supported when cookies are disabled (#756)toasted-nutbread2020-08-24
| | | | | * Fix sessionStorage not being supported when cookies are disabled * Update comment
* Fix screenshot popup hide (#753)toasted-nutbread2020-08-23
| | | | | | | | | | | | | * Refactor Popup.setVisibleOverride * Use event to observe visibility changes * Add setAllVisibleOverride/clearAllVisibleOverride * Add setAllVisibleOverride/clearAllVisibleOverride cross frame handlers * Update how visibility is changed * Wait for next frame to ensure visibility has been updated
* Display owner frame (#751)toasted-nutbread2020-08-23
| | | | | * Move ownerFrameId definition to Display * Rename _invoke to _invokeOwner
* Move findTerms and findKanji functions into TextScanner (#747)toasted-nutbread2020-08-22
|
* Frontend initialization refactor (#737)toasted-nutbread2020-08-16
| | | | | | | | | | | | | * Fix incorrect popup depth reassignment * Rename variable * Rename property * Use explicit parameter values * Refactor setupNestedPopups * Refactor frontend initialization
* DOM + DocumentUtil merge (#727)toasted-nutbread2020-08-09
| | | | | | | | | * Add DOM functions to DocumentUtil * Use DocumentUtil instead of DOM * Remove DOM * Move document-util.js into mixed
* document.js refactor (#719)toasted-nutbread2020-08-09
| | | | | | | | | | | | | | | | | | | * Refactor document.js into a class * Move public functions first * Rename private functions * Rename * Rename argument * Use instance of DocumentUtil * Update tests * Refactor * Rename (test-)document.js to (test-)document-util.js
* Query parser text scanner options refactor (#717)toasted-nutbread2020-08-09
| | | | | | | * Add _setSelectedParser helper * Update TextScanner internal options representation * Update QueryParser internal options representation
* Persistent display mode (#714)toasted-nutbread2020-08-09
| | | | | | | | | | | | | * Simplify calls using chrome.tabs.sendMessage and getMessageResponseResult * Rename message handlers * Move onMessage handler into Display * Assign search popup mode which persists across refreshes * Update clipboard monitor on the search page * Remove mode param
* Fix extension unload cases (#712)toasted-nutbread2020-08-02
| | | | | | | | | * Add _invokeSafe function to silently ignore extension unload errors * Remove "Api" from function names * Add invokeSafe to Popup * Don't redundantly set content type to 'unloaded'
* Fix _setContentTermsOrKanjiUpdateAdderButtons not working (#709)toasted-nutbread2020-08-02
| | | | this._setContentToken was cleared, so comparison exited. There is not really a good reason to clear this object.
* Display try catch refactor (#704)toasted-nutbread2020-08-01
| | | | | | | * Remove try-catch from _termLookup Already handled by _onTermLookup * Move try-catch out of _onTermLookup and into _onGlossaryMouseUp
* More display refactoring (#697)toasted-nutbread2020-08-01
| | | | | | | | | | | | | | | | | | | * Remove some unnecessary _setQuery calls * Add support for forcing the query parser to be visible or hidden * Move _setEventListenersActive calls * Remove URL for kanji links * Refactor _setContentTermsOrKanji * Move search query text assignment into Display * Move title updates into Display * Move popup close calls * Prevent infinite loop of extension unload events
* Standardize hotkey action naming convention (#696)toasted-nutbread2020-07-26
|
* Query parser fix (#695)toasted-nutbread2020-07-26
| | | | | | | | | | | * Standardize setContent calls * Rename _queryText to _fullQuery * Move query parser into Display and update float.html * Generalize params * Add "full" parameter to maintain the original full query
* Display scroll refactor (#694)toasted-nutbread2020-07-26
| | | | | | | | | * Cache navigation header * Create _focusEntry * Update scroll restoration * Require explicit entry focus index
* Display history refactor (#691)toasted-nutbread2020-07-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Create DisplayHistory * Change arguments for _setContentTermsOrKanji * Set up history-driven content updates * Use new history only * Load definitions if missing * Refactor definitions getting * Add support for wildcards * Move definitions setup * Add events * Allow state change even if there is no history state * Update search page to use history * Fix history overwriting * Fix search page not seeing state chang events during prepare * Update state if necessary * Don't reassign query text if the same * Remove DisplayContext * Initialize with real history state * Track URL * Update DisplayHistory to support pseudo-history * Configure history settings on search page * Fix state * Use full URL * Change data format of setContent * Rename details to content * Update event arguments * Fix animation * Remove old state changes * Clear content properly * Remove set/clear content overrides * Fix setting up event listeners for content clear * Make clearContent private * Make focus opt-in * Validate source * Add unloaded type * Generalize content params * Update how extension unload content is assigned * Restore query blurring
* Set content refactor (#686)toasted-nutbread2020-07-25
| | | | | | | | | | | | | | | | | | | | | | | * Simplify invoke * Pass isTerms instead of type * Update DisplaySearch.setContent to pass argument array * Simplify argument object structure for setContent * Move focus and disableHistory level * Always include focus and disableHistory options * Change disableHistory to history * Pass source text to setContent * Use consistent argument/object field order * Remove unused previous field * Combine logic for forward/back navigation
* Display fixes and refactoring (#685)toasted-nutbread2020-07-24
| | | | | | | | | | | | | | | | | | | | | | | | | * Fix scroll target override sometimes using undefined value * Clear event listeners in clearContent() * Remove unused arguments * Remove unused disableScroll * Destructure definitions and context * Merge _setContentTerms and _setContentKanji * Move history tracking * Destructure context * Rename context to noteContext for clarity * Destructure before passing args * Move window focus * Update scroll defaults
* Display refactoring (#674)toasted-nutbread2020-07-18
| | | | | | | | | * Move setupNestedPopups to Display * Move auto-play timer and delay into Display * Move some message handler definitions into Display * Move default optionsContext definition
* Content script ready checks (#670)toasted-nutbread2020-07-18
| | | | | * Move ready checkout of Display * Add function to wait until if a tab's content script is ready
* Extension unload indication fix (#662)toasted-nutbread2020-07-18
| | | | | | | | | | | | | | | | | | | * Remove unused function * Rename field * Change extensionUnloaded trigger function * Update how extension unloaded content is shown * Ignore certain errors caused by extension unload * Add _showExtensionUnloaded function * Wrap internals of updateOptions * Suppress errors caued by extension unload * Make the frontend trigger the popup's extensionUnloaded event
* Refactor hotkey definitions to be more generic (#655)toasted-nutbread2020-07-08
|
* 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
* Extension unload detection (#647)toasted-nutbread2020-07-03
| | | | | | | * Update how extension unload is detected * Remove event handlers and use yomichan.isExtensionUnloaded instead * Update terminology
* 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
* 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
* 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
* Safely handle volume values that are out of range (#617)toasted-nutbread2020-06-21
|
* API refactor (#532)toasted-nutbread2020-05-24
| | | | | | | | | | | | | * 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
* Use CSS variables for themes (#528)toasted-nutbread2020-05-10
| | | | | | | | | | | | | | | | | | | * Update formatting * Merge default tag color with category-less tags * Use CSS variables for colors * Add dark theme colors * Move color variables into display.css * Remove old stylesheets * Update headings * Bump minimum Firefox version to support CSS var() * Revert popular kanji text color
* Modifier key profile condition (#487)siikamiika2020-05-03
| | | | | | | | | | | | | | | | | | | | | | | | | * update Frontend options on modifier change * add modifier key profile condition * use select element for modifier condition value * support "is" and "is not" modifier key conditions * use plural * remove dead null check it's never null in that function * pass element on rather than assigning to this * rename event * remove Firefox OS key to Meta detection * hide Meta from dropdown on Firefox * move input type
* Frontend refactor (part 1) (#484)toasted-nutbread2020-04-27
| | | | | | | | | | | | | | | | | | | * Remove _getVisualViewportScale * Use super's mouse event listener definitions * Remove redundant override * Remove getTouchEventListeners override * Rename Display.onSearchClear to onEscape * Change onSearchClear to clearSelection and use an event * Update how text is marked for selection and deselection * Replace onError with yomichan.logError * Update setEnabled to refresh all event listeners
* Update Popup and DisplayFloat optionsContext from Frontend (#464)siikamiika2020-04-26
| | | | | | | | | | | | | | | | | | | | | | | | | * set optionsContext from Frontend * update Popup+Display options on Frontend change * remove popup setOptions * only update DisplayFloat options from Frontend * fix optionsContext usage * fix preview frame arguments * keep Frontend URL up to date * cache url * fix preview frame * trigger modifyingProfileChange in correct places * remove async from function not using await * refactor optionsContext in Frontend