You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2019/07/08 16:21:27 UTC
[openmeetings] branch master updated: [OPENMEETINGS-2079] last WB
slide is selectable
This is an automated email from the ASF dual-hosted git repository.
solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/master by this push:
new 7b8b6c7 [OPENMEETINGS-2079] last WB slide is selectable
7b8b6c7 is described below
commit 7b8b6c74c828c7922d0c3c5ae460799702d9f67a
Author: Maxim Solodovnik <so...@gmail.com>
AuthorDate: Mon Jul 8 23:21:16 2019 +0700
[OPENMEETINGS-2079] last WB slide is selectable
---
.../apache/openmeetings/web/room/wb/WbPanel.html | 1 +
.../openmeetings/web/room/wb/raw-wb-board.js | 26 ++++++++++++++++------
2 files changed, 20 insertions(+), 7 deletions(-)
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.html
index 7c8dda2..7cbafac 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.html
@@ -85,6 +85,7 @@
<div id="wb-area">
<div class="scroll-container">
<div class="canvases"></div>
+ <div class="bottom-bumper"></div>
</div>
</div>
<div id="wb-zoom" class="wb-zoom">
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/raw-wb-board.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/raw-wb-board.js
index 9bbfeba..8fa4a63 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/raw-wb-board.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/raw-wb-board.js
@@ -4,7 +4,7 @@ var Wb = function() {
, area = $('.room.wb.area .wb-area .tabs.ui-tabs'), bar = area.find('.wb-tabbar')
, extraProps = ['uid', 'fileId', 'fileType', 'count', 'slide', 'omType', '_src', 'formula'];
let a, t, z, s, f, mode, slide = 0, width = 0, height = 0
- , zoom = 1., zoomMode = 'pageWidth', role = null;
+ , zoom = 1., zoomMode = 'pageWidth', role = null, scrollTimeout = null;
function _getBtn(m) {
return !!t ? t.find('.om-icon.' + (m || mode) + ':not(.stub)') : null;
@@ -623,14 +623,26 @@ var Wb = function() {
objCreatedHandler(o.path);
};
function scrollHandler() {
- $(this).find('.canvas-container').each(function(idx) {
- const h = $(this).height(), pos = $(this).position();
- if (slide !== idx && pos.top > BUMPER - h && pos.top < BUMPER) {
- //TODO might be done without iterating
- _setSlide(idx);
+ if (scrollTimeout !== null) {
+ clearTimeout(scrollTimeout);
+ }
+ scrollTimeout = setTimeout(function() {
+ const sc = a.find('.scroll-container')
+ , canvases = sc.find('.canvas-container');
+ if (Math.round(sc.height() + sc[0].scrollTop) === sc[0].scrollHeight) {
+ if (slide !== canvases.length - 1) {
+ _setSlide(canvases.length - 1);
+ }
return false;
}
- });
+ canvases.each(function(idx) {
+ const h = $(this).height(), pos = $(this).position();
+ if (slide !== idx && pos.top > BUMPER - h && pos.top < BUMPER) {
+ _setSlide(idx);
+ return false;
+ }
+ });
+ }, 100);
}
function showCurrentSlide() {
a.find('.scroll-container .canvas-container').each(function(idx) {