From ef07e8176f6a3138a8c9b88d6cb17eb4f3b67a74 Mon Sep 17 00:00:00 2001
From: Eugen Ciur <eugen@papermerge.com>
Date: Sat, 12 Mar 2022 08:15:59 +0100
Subject: [PATCH] minor changes

---
 app/components/viewer/document/index.hbs  |  3 ++-
 app/components/viewer/index.hbs           |  3 ++-
 app/components/viewer/index.js            | 11 +++++++++++
 app/components/viewer/thumbnails/index.js | 16 ++++++++++++----
 app/utils/dom.js                          |  2 +-
 5 files changed, 28 insertions(+), 7 deletions(-)

diff --git a/app/components/viewer/document/index.hbs b/app/components/viewer/document/index.hbs
index 3b3a77e..f8b00f0 100644
--- a/app/components/viewer/document/index.hbs
+++ b/app/components/viewer/document/index.hbs
@@ -4,7 +4,8 @@
       @pages={{@pages}}
       @selectedPages={{@selectedPages}}
       @onDblClick={{this.onThumbnailDblClick}}
-      @onCheckboxChange={{@onCheckboxChange}} />
+      @onCheckboxChange={{@onCheckboxChange}}
+      @onThumbnailsPositionChanged={{@onThumbnailsPositionChanged}}/>
   {{/if}}
   <Viewer::ThumbnailsSwitch
     @onThumbnailsToggle={{this.onThumbnailsToggle}}
diff --git a/app/components/viewer/index.hbs b/app/components/viewer/index.hbs
index 9a506cd..b30b1bd 100644
--- a/app/components/viewer/index.hbs
+++ b/app/components/viewer/index.hbs
@@ -33,5 +33,6 @@
     @pages={{this.pages}}
     @selectedPages={{this.selected_pages}}
     @thumbnails_visible={{this.thumbnails_visible}}
-    @onCheckboxChange={{this.onThumbnailCheckboxChange}} />
+    @onCheckboxChange={{this.onThumbnailCheckboxChange}}
+    @onThumbnailsPositionChanged={{this.onThumbnailsPositionChanged}} />
 </div>
diff --git a/app/components/viewer/index.js b/app/components/viewer/index.js
index e821fd5..0b8af27 100644
--- a/app/components/viewer/index.js
+++ b/app/components/viewer/index.js
@@ -143,6 +143,13 @@ export default class ViewerComponent extends Component {
     }
   }
 
+  @action
+  onThumbnailsPositionChanged({original_pos, drop_pos, page_ids}) {
+    console.log(`onThumbnailsPositionChanged`);
+    console.log(`original_pos=${original_pos}, drop_pos=${drop_pos}, page_ids=${page_ids}`);
+    this._pages = [];
+  }
+
   @action
   openConfirmDeletionModal() {
     this.show_confirm_pages_deletion_modal = true;
@@ -189,6 +196,8 @@ export default class ViewerComponent extends Component {
 
   get pages() {
 
+    console.log('get pages');
+
     if (this.__pages__) {
       // workaround for tracking changes in array
     }
@@ -196,10 +205,12 @@ export default class ViewerComponent extends Component {
     if (this._pages.length > 0) {
       // If newer version of the pages is available
       // (e.g. document was OCRed) then just use it
+      console.log(`rendering this._pages`);
       return this._pages;
     }
 
     // Initial version of the pages
+    console.log(`rendering this.args.pages`);
     return this.args.pages;
   }
 
diff --git a/app/components/viewer/thumbnails/index.js b/app/components/viewer/thumbnails/index.js
index d005770..6f52da1 100644
--- a/app/components/viewer/thumbnails/index.js
+++ b/app/components/viewer/thumbnails/index.js
@@ -1,16 +1,20 @@
 import Component from '@glimmer/component';
 import Point from 'papermerge/utils/point';
+import { action } from '@ember/object';
 import { get_cursor_pos_within_element } from 'papermerge/utils/dom';
 
 
 export default class ViewerThumbnailsComponent extends Component {
 
+  @action
   onDragendCancel() {
   }
 
+  @action
   onDragendSuccess() {
   }
 
+  @action
   onDrop({event, element}) {
     let data, json_data, page_ids, original_pos, drop_pos;
 
@@ -24,18 +28,22 @@ export default class ViewerThumbnailsComponent extends Component {
     drop_pos = get_cursor_pos_within_element(
       element,
       new Point(event.clientX, event.clientY)
-    )
-    console.log(`Thumbnails received: dropped page_ids=${page_ids}`);
-    console.log(`original position=${original_pos}`);
-    console.log(`drop position=${drop_pos}`);
+    );
+
+    this.args.onThumbnailsPositionChanged({
+      original_pos, drop_pos, page_ids
+    });
   }
 
+  @action
   onDragOver() {
   }
 
+  @action
   onDragEnter() {
   }
 
+  @action
   onDragLeave() {
   }
 }
diff --git a/app/utils/dom.js b/app/utils/dom.js
index ce3f14d..c4fc74c 100644
--- a/app/utils/dom.js
+++ b/app/utils/dom.js
@@ -65,7 +65,7 @@ function get_cursor_pos_within_element(element, cursor_coord) {
     }
   });
 
-  pos = children.length - cursor_before_child
+  pos = children.length - cursor_before_child;
 
   return pos;
 }
-- 
GitLab