]> BookStack Code Mirror - bookstack/blobdiff - resources/assets/js/pages/page-show.js
typo in readme.md
[bookstack] / resources / assets / js / pages / page-show.js
index 8c2f0e300a7723c6349de0239a9fc8e8af600cba..cb525b9593c05ca3678abc84866a543659feb301 100644 (file)
@@ -1,5 +1,5 @@
 const Clipboard = require("clipboard");
-const Code = require('../code');
+const Code = require('../libs/code');
 
 let setupPageShow = window.setupPageShow = function (pageId) {
 
@@ -16,28 +16,31 @@ let setupPageShow = window.setupPageShow = function (pageId) {
     let pointerSectionId = '';
 
     // Select all contents on input click
-    $pointer.on('click', 'input', function (e) {
+    $pointer.on('click', 'input', event => {
         $(this).select();
-        e.stopPropagation();
+        event.stopPropagation();
+    });
+
+    $pointer.on('click focus', event => {
+        event.stopPropagation();
     });
 
     // Pointer mode toggle
     $pointer.on('click', 'span.icon', event => {
+        event.stopPropagation();
         let $icon = $(event.currentTarget);
         pointerModeLink = !pointerModeLink;
-        $icon.html(pointerModeLink ? '<i class="zmdi zmdi-link"></i>' : '<i class="zmdi zmdi-square-down"></i>');
+        $icon.find('[data-icon="include"]').toggle(!pointerModeLink);
+        $icon.find('[data-icon="link"]').toggle(pointerModeLink);
         updatePointerContent();
     });
 
     // Set up clipboard
-    let clipboard = new Clipboard('#pointer button');
+    let clipboard = new Clipboard($pointer[0].querySelector('button'));
 
     // Hide pointer when clicking away
     $(document.body).find('*').on('click focus', event => {
         if (!pointerShowing || isSelection) return;
-        let target = $(event.target);
-        if (target.is('.zmdi') || $(event.target).closest('#pointer').length === 1) return;
-
         $pointer.detach();
         pointerShowing = false;
     });
@@ -170,7 +173,7 @@ let setupPageShow = window.setupPageShow = function (pageId) {
       // fetch all the headings.
       let headings = document.querySelector('.page-content').querySelectorAll('h1, h2, h3, h4, h5, h6');
       // if headings are present, add observers.
-      if (headings.length > 0) {
+      if (headings.length > 0 && pageNav !== null) {
           addNavObserver(headings);
       }