diff --git a/client/components/Reader/LoaderPage/LoaderPage.vue b/client/components/Reader/LoaderPage/LoaderPage.vue index 3f2bedfb..160d792c 100644 --- a/client/components/Reader/LoaderPage/LoaderPage.vue +++ b/client/components/Reader/LoaderPage/LoaderPage.vue @@ -18,6 +18,10 @@ Загрузить файл с диска
+ + Из буфера обмена + +
Комментарии @@ -26,6 +30,8 @@ Помочь проекту {{ version }} + + @@ -33,12 +39,17 @@ //----------------------------------------------------------------------------- import Vue from 'vue'; import Component from 'vue-class-component'; +import PasteTextPage from './PasteTextPage/PasteTextPage.vue'; export default @Component({ + components: { + PasteTextPage, + }, }) class LoaderPage extends Vue { bookUrl = null; loadPercent = 0; + pasteTextActive = false; created() { this.commit = this.$store.commit; @@ -83,12 +94,27 @@ class LoaderPage extends Vue { } loadFile() { - const file = this.$refs.file.files[0]; + const file = this.$refs.file.files[0]; this.$refs.file.value = ''; if (file) this.$emit('load-file', {file}); } + loadBufferClick() { + this.pasteTextToggle(); + } + + loadBuffer(opts) { + if (opts.buffer.length) { + const file = new File([opts.buffer], 'dummyName-PasteFromClipboard'); + this.$emit('load-file', {file}); + } + } + + pasteTextToggle() { + this.pasteTextActive = !this.pasteTextActive; + } + openHelp() { this.$emit('help-toggle'); } @@ -102,6 +128,10 @@ class LoaderPage extends Vue { } keyHook(event) { + if (this.pasteTextActive) { + return this.$refs.pasteTextPage.keyHook(event); + } + //недостатки сторонних ui const input = this.$refs.input.$refs.input; if (document.activeElement === input && event.type == 'keydown' && event.code == 'Enter') { diff --git a/client/components/Reader/LoaderPage/PasteTextPage/PasteTextPage.vue b/client/components/Reader/LoaderPage/PasteTextPage/PasteTextPage.vue new file mode 100644 index 00000000..cfcb01ae --- /dev/null +++ b/client/components/Reader/LoaderPage/PasteTextPage/PasteTextPage.vue @@ -0,0 +1,93 @@ + + + + + diff --git a/client/components/Reader/Reader.vue b/client/components/Reader/Reader.vue index b308e021..29b1f487 100644 --- a/client/components/Reader/Reader.vue +++ b/client/components/Reader/Reader.vue @@ -68,7 +68,7 @@ @start-text-search="startTextSearch" @stop-text-search="stopTextSearch"> - + @@ -780,7 +780,7 @@ class Reader extends Vue { this.progressActive = true; - await this.$nextTick() + await this.$nextTick(); const progress = this.$refs.page; diff --git a/client/components/Reader/versionHistory.js b/client/components/Reader/versionHistory.js index 50ad6a6c..98bae321 100644 --- a/client/components/Reader/versionHistory.js +++ b/client/components/Reader/versionHistory.js @@ -9,6 +9,7 @@ export const versionHistory = [
  • в справку добавлена история версий проекта
  • добавлена возможность настройки отображаемых кнопок на панели управления
  • некоторые кнопки на панели управления были скрыты по-умолчанию
  • +
  • на страницу загрузки добавлена возможность загрузки книги из буфера обмена
  • исправления багов и недочетов
  • `