Revert f32dee3796, because workaround has better performance and they might needed in some cases

This commit is contained in:
Cheng-Han, Wu 2016-06-17 15:57:34 +08:00
parent 3498b9fae9
commit 2c58b05d05

View file

@ -795,7 +795,7 @@ function checkEditorStyle() {
if (scrollbarStyle == 'overlay' || currentMode == modeType.both) { if (scrollbarStyle == 'overlay' || currentMode == modeType.both) {
ui.area.codemirrorScroll.css('height', desireHeight + 'px'); ui.area.codemirrorScroll.css('height', desireHeight + 'px');
ui.area.codemirrorScroll.css('min-height', ''); ui.area.codemirrorScroll.css('min-height', '');
editor.refresh(); checkEditorScrollbar();
} else if (scrollbarStyle == 'native') { } else if (scrollbarStyle == 'native') {
ui.area.codemirrorScroll.css('height', ''); ui.area.codemirrorScroll.css('height', '');
ui.area.codemirrorScroll.css('min-height', desireHeight + 'px'); ui.area.codemirrorScroll.css('min-height', desireHeight + 'px');
@ -835,7 +835,7 @@ function checkEditorStyle() {
ui.area.view.scroll(); ui.area.view.scroll();
}); });
} }
editor.refresh(); checkEditorScrollbar();
} }
}); });
ui.area.resize.handle = $('.ui-resizable-handle'); 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() { function checkTocStyle() {
//toc right //toc right
var paddingRight = parseFloat(ui.area.markdown.css('padding-right')); var paddingRight = parseFloat(ui.area.markdown.css('padding-right'));
@ -2509,6 +2517,7 @@ editor.on('changes', function (cm, changes) {
viewportMargin = newViewportMargin; viewportMargin = newViewportMargin;
windowResize(); windowResize();
} }
checkEditorScrollbar();
}); });
editor.on('focus', function (cm) { editor.on('focus', function (cm) {
for (var i = 0; i < onlineUsers.length; i++) { for (var i = 0; i < onlineUsers.length; i++) {