diff options
Diffstat (limited to 'public/js/index.js')
| -rw-r--r-- | public/js/index.js | 13 | 
1 files changed, 11 insertions, 2 deletions
| diff --git a/public/js/index.js b/public/js/index.js index d6efbef2..e873e732 100644 --- a/public/js/index.js +++ b/public/js/index.js @@ -795,7 +795,7 @@ function checkEditorStyle() {      if (scrollbarStyle == 'overlay' || currentMode == modeType.both) {          ui.area.codemirrorScroll.css('height', desireHeight + 'px');          ui.area.codemirrorScroll.css('min-height', ''); -        editor.refresh(); +        checkEditorScrollbar();      } else if (scrollbarStyle == 'native') {          ui.area.codemirrorScroll.css('height', '');          ui.area.codemirrorScroll.css('min-height', desireHeight + 'px'); @@ -835,7 +835,7 @@ function checkEditorStyle() {                          ui.area.view.scroll();                      });                  } -                editor.refresh(); +                checkEditorScrollbar();              }          });          ui.area.resize.handle = $('.ui-resizable-handle'); @@ -876,6 +876,14 @@ function checkSyncToggle() {      }  } +function checkEditorScrollbar() { +    // workaround simple scroll bar knob +    // will get wrong position when editor height changed +    var scrollInfo = editor.getScrollInfo(); +    editor.scrollTo(null, scrollInfo.top - 1); +    editor.scrollTo(null, scrollInfo.top); +} +  function checkTocStyle() {      //toc right      var paddingRight = parseFloat(ui.area.markdown.css('padding-right')); @@ -2509,6 +2517,7 @@ editor.on('changes', function (cm, changes) {          viewportMargin = newViewportMargin;          windowResize();      } +    checkEditorScrollbar();  });  editor.on('focus', function (cm) {      for (var i = 0; i < onlineUsers.length; i++) { | 
