Ver Fonte

Merge branch 'release/0.7.5a'

Book Pauk há 5 anos atrás
pai
commit
f203384b00
2 ficheiros alterados com 25 adições e 10 exclusões
  1. 23 8
      client/components/Reader/Reader.vue
  2. 2 2
      docs/omnireader/omnireader

+ 23 - 8
client/components/Reader/Reader.vue

@@ -220,14 +220,19 @@ export default @Component({
         bookPos: function(newValue) {
             if (newValue !== undefined && this.activePage == 'TextPage') {
                 const textPage = this.$refs.page;
+
                 if (textPage.bookPos != newValue) {
                     textPage.bookPos = newValue;
                 }
-                this.debouncedSetRecentBook(newValue);
+
+                if (!this.scrollingActive)
+                    this.debouncedSetRecentBook(newValue);
+                else
+                    this.scrollingSetRecentBook(newValue);
             }
         },
         routeParamPos: function(newValue) {
-            if (newValue !== undefined && newValue != this.bookPos) {
+            if (!this.paramPosIgnore && newValue !== undefined && newValue != this.bookPos) {
                 this.bookPos = newValue;
             }
         },
@@ -291,10 +296,6 @@ class Reader extends Vue {
 
         this.lastActivePage = false;
 
-        this.debouncedUpdateRoute = _.debounce(() => {
-            this.updateRoute();
-        }, 1000);
-
         this.debouncedSetRecentBook = _.debounce(async(newValue) => {
             const recent = this.mostRecentBook();
             if (recent && (recent.bookPos != newValue || recent.bookPosSeen !== this.bookPosSeen)) {
@@ -302,8 +303,17 @@ class Reader extends Vue {
 
                 if (this.actionCur < 0 || (this.actionCur >= 0 && this.actionList[this.actionCur] != newValue))
                     this.addAction(newValue);
+
+                this.paramPosIgnore = true;
+                this.updateRoute();
+                await this.$nextTick();
+                this.paramPosIgnore = false;
             }
-        }, 500);
+        }, 500, {'maxWait':5000});
+
+        this.scrollingSetRecentBook = _.debounce((newValue) => {
+            this.debouncedSetRecentBook(newValue);
+        }, 15000, {'maxWait':20000});
 
         document.addEventListener('fullscreenchange', () => {
             this.fullScreenActive = (document.fullscreenElement !== null);
@@ -343,6 +353,8 @@ class Reader extends Vue {
 
             await this.showWhatsNew();
             await this.showMigration();
+
+            this.updateRoute();
         })();
     }
 
@@ -507,7 +519,6 @@ class Reader extends Vue {
         if (event.bookPosSeen !== undefined)
             this.bookPosSeen = event.bookPosSeen;
         this.bookPos = event.bookPos;
-        this.debouncedUpdateRoute();
     }
 
     async bookManagerEvent(eventName, value) {
@@ -654,6 +665,10 @@ class Reader extends Vue {
                 page.stopTextScrolling();
             }
         }
+
+        if (!this.scrollingActive) {
+            this.scrollingSetRecentBook.flush();
+        }
     }
 
     stopSearch() {

+ 2 - 2
docs/omnireader/omnireader

@@ -15,7 +15,7 @@ server {
   gzip_types *;
 
   location /api {
-    proxy_pass http://localhost:44081;
+    proxy_pass http://127.0.0.1:44081;
   }
 
   location / {
@@ -44,7 +44,7 @@ server {
   gzip_types *;
 
   location /api {
-    proxy_pass http://localhost:44081;
+    proxy_pass http://127.0.0.1:44081;
   }
 
   location /tmp {