src_js/iconolab-bundle/src/components/editor/mixins/tooltip.js
changeset 415 c4b700679964
parent 323 55c024fc7c60
child 539 08e2513dbc2f
--- a/src_js/iconolab-bundle/src/components/editor/mixins/tooltip.js	Wed Mar 01 18:50:40 2017 +0100
+++ b/src_js/iconolab-bundle/src/components/editor/mixins/tooltip.js	Thu Mar 02 16:59:01 2017 +0100
@@ -7,7 +7,6 @@
     trigger: 'manual',
     html: true,
     title: '',
-    viewport: '.cut-canvas',
     content: '',
 }
 
@@ -37,9 +36,8 @@
             var target = new Snap(this.getTooltipTarget());
 
             var $el = $(target.node);
-            $el
-                .popover(popoverOptions)
-                .popover('show');
+
+            $el.popover(popoverOptions);
 
             this.$on('drag:start', function() {
                 $el.popover('hide');
@@ -49,9 +47,16 @@
             });
 
             $el.on('shown.bs.popover', (e) => {
-                var $tip = $el.data('bs.popover').$tip;
+                var $tip = $el.data('bs.popover').tip();
                 $tip.find('input[name="title"]').focus();
+                // Fixes tooltip positioning when page is scrolled
+                // See https://github.com/twbs/bootstrap/issues/21855
+                if (document.body.scrollTop > 0) {
+                    $tip.css('top', parseInt($tip.css('top'), 10) + document.body.scrollTop);
+                }
             });
+
+            $el.popover('show');
         },
         destroyTooltip: function() {
             var target = new Snap(this.getTooltipTarget());