diff options
author | StefanVukovic99 <stefanvukovic44@gmail.com> | 2024-02-18 14:00:04 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-18 13:00:04 +0000 |
commit | c2e3f60e51529f05284fea5f5bc1afcd1674f5ca (patch) | |
tree | 61b0b35a73c41f4ab552bbbe056748a204562745 /ext/js/pages/settings/popup-preview-controller.js | |
parent | 7e9f7e2616973418cc50f7706bd8f644cb9d5559 (diff) |
switch preview popup's example text based on language (#700)
* Copy functions from JapaneseUtil
* Remove JapaneseUtil
* Update usages of JapaneseUtil functions
* part1
* frotend done?
* fix tests
* offscreen and type complications
* add tests
* start fixing tests
* keep fixing tests
* fix tests
* Copy functions from JapaneseUtil
* Remove JapaneseUtil
* Update usages of JapaneseUtil functions
* delete pt
* renames
* add tests
* kebab-case filenames
* lint
* minor fixes
* merge
* fixes
* fix part of comments
* fix more comments
* delete unused types
* comment
* comment
* do backend
* other files
* move fetch utils to own file
* remove extra line
* add extra line
* remove unnecessary export
* simplify folder structure
* remove redundant async
* fix param type in api
* fix language index
* undo changes to cssStyleApplier
* undo changes to utilities.js
* undo changes to utilities.js
* simplify language util
* lint
* undo phantom changes to anki integration
* require textTransformations options
* explicit locale in localeCompare
* punctuate notes
* prefer early exit
* rename LanguageOptionsObjectMap
* rename to textPreprocessor
* tuple with names instead of boolean array
* safe data setting
* optional chaining
* simplify LanguageOptions
* encapsulate languages
* delete language util
* nullable language in text preprocessors controller
* rename transform to process
* remove settings
* make translation advanced again
* remove unused getTextTransformations api call
* comments
* change language types
* RIP flags
* comments
* fix tests
* lint
* Text preprocessor type changes (#10)
* Add types
* Update types
* Simplify type check
* Refactor typing and structuring of language definitions
* lint
* update translator benchmark
* undo markdown changes
* undo markdown changes
* undo markdown changes
* more merge
* use example text
* comments
* comments
---------
Co-authored-by: toasted-nutbread <toasted-nutbread@users.noreply.github.com>
Co-authored-by: Darius Jahandarie <djahandarie@gmail.com>
Diffstat (limited to 'ext/js/pages/settings/popup-preview-controller.js')
-rw-r--r-- | ext/js/pages/settings/popup-preview-controller.js | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/ext/js/pages/settings/popup-preview-controller.js b/ext/js/pages/settings/popup-preview-controller.js index 5194410c..bd335460 100644 --- a/ext/js/pages/settings/popup-preview-controller.js +++ b/ext/js/pages/settings/popup-preview-controller.js @@ -47,6 +47,14 @@ export class PopupPreviewController { this._customOuterCss.addEventListener('settingChanged', this._onCustomOuterCssChange.bind(this), false); this._frame.addEventListener('load', this._onFrameLoad.bind(this), false); this._settingsController.on('optionsContextChanged', this._onOptionsContextChange.bind(this)); + this._settingsController.on('optionsChanged', this._onOptionsChanged.bind(this)); + const languageSelect = querySelectorNotNull(document, '#language-select'); + languageSelect.addEventListener( + /** @type {string} */ ('settingChanged'), + /** @type {EventListener} */ (this._onLanguageSelectChanged.bind(this)), + false + ); + this._frame.src = '/popup-preview.html'; } @@ -79,6 +87,20 @@ export class PopupPreviewController { } /** + * @param {import('settings-controller').EventArgument<'optionsChanged'>} details + */ + _onOptionsChanged({options}) { + this._invoke('PopupPreviewFrame.optionsChanged', {options}); + } + + /** + * @param {import('dom-data-binder').SettingChangedEvent} settingChangedEvent + */ + _onLanguageSelectChanged(settingChangedEvent) { + this._invoke('PopupPreviewFrame.setLanguageExampleText', {language: settingChangedEvent.detail.value}); + } + + /** * @param {string} action * @param {import('core').SerializableObject} params */ |