diff options
Diffstat (limited to 'ext')
| -rw-r--r-- | ext/js/pages/settings/dictionary-controller.js | 21 | 
1 files changed, 12 insertions, 9 deletions
| diff --git a/ext/js/pages/settings/dictionary-controller.js b/ext/js/pages/settings/dictionary-controller.js index c8a525ce..adb3edbd 100644 --- a/ext/js/pages/settings/dictionary-controller.js +++ b/ext/js/pages/settings/dictionary-controller.js @@ -169,7 +169,7 @@ class DictionaryEntry {      }      _move(offset) { -        this._dictionaryController.swapDictionaryOptions(this._index, this._index + offset); +        this._dictionaryController.moveDictionaryOptions(this._index, this._index + offset);      }      _setMenuActionEnabled(menu, action, enabled) { @@ -305,21 +305,24 @@ class DictionaryController {          modal.setVisible(true);      } -    async swapDictionaryOptions(index1, index2) { +    async moveDictionaryOptions(currentIndex, targetIndex) {          const options = await this._settingsController.getOptions();          const {dictionaries} = options;          if ( -            index1 < 0 || index1 >= dictionaries.length || -            index2 < 0 || index2 >= dictionaries.length || -            index1 === index2 +            currentIndex < 0 || currentIndex >= dictionaries.length || +            targetIndex < 0 || targetIndex >= dictionaries.length || +            currentIndex === targetIndex          ) {              return;          } +        const item = dictionaries.splice(currentIndex, 1)[0]; +        dictionaries.splice(targetIndex, 0, item); +          await this._settingsController.modifyProfileSettings([{ -            action: 'swap', -            path1: `dictionaries[${index1}]`, -            path2: `dictionaries[${index2}]` +            action: 'set', +            path: 'dictionaries', +            value: dictionaries          }]);          await this._updateEntries(); @@ -527,7 +530,7 @@ class DictionaryController {          if (!Number.isFinite(target) || !Number.isFinite(index) || index === target) { return; } -        this.swapDictionaryOptions(index, target); +        this.moveDictionaryOptions(index, target);      }      _updateMainDictionarySelectOptions(dictionaries) { |