##// END OF EJS Templates
Reverse hscrollbar min-height hack on OS X...
Reverse hscrollbar min-height hack on OS X OS X has optional behavior to only draw scrollbars during scroll, which causes problems for CodeMirror's scrollbars. CodeMirror's solution is to set a minimum size for their scrollbars, which is always present. The trade is that the container overlays most of the last line, swallowing click events when there is scrolling to do, even when no scrollbar is visible. This reverses the trade, recovering the click events at the expense of never showing the horizontal scrollbar on OS X when this option is enabled.

File last commit:

r20145:14551b90
r20298:2907e856
Show More
codemirror.less
52 lines | 1.8 KiB | text/x-less | LessCssLexer
/* The following gets added to the <head> if it is detected that the user has a
* monospace font with inconsistent normal/bold/italic height. See
* notebookmain.js. Such fonts will have keywords vertically offset with
* respect to the rest of the text. The user should select a better font.
* See: https://github.com/ipython/ipython/issues/1503
*
* .CodeMirror span {
* vertical-align: bottom;
* }
*/
.CodeMirror {
line-height: @code_line_height; /* Changed from 1em to our global default */
font-size: @notebook_font_size;
height: auto; /* Changed to auto to autogrow */
background: none; /* Changed from white to allow our bg to show through */
}
.CodeMirror-scroll {
/* The CodeMirror docs are a bit fuzzy on if overflow-y should be hidden or visible.*/
/* We have found that if it is visible, vertical scrollbars appear with font size changes.*/
overflow-y: hidden;
overflow-x: auto;
}
.CodeMirror-lines {
/* In CM2, this used to be 0.4em, but in CM3 it went to 4px. We need the em value because */
/* we have set a different line-height and want this to scale with that. */
padding: @code_padding;
}
.CodeMirror-linenumber {
// This is needed to fine tune the position of the line numbers because we use the 0.4em in @code_padding
// spacing in various places. Fine tuned to look right.
padding: 0 8px 0 4px;
}
.CodeMirror-gutters {
// This is needed because our cell has rounded corners, otherwise the gutter area square
// corner cuts into the rounded cell border.
border-bottom-left-radius: @border-radius-base;
border-top-left-radius: @border-radius-base;
}
.CodeMirror pre {
/* In CM3 this went to 4px from 0 in CM2. We need the 0 value because of how we size */
/* .CodeMirror-lines */
padding: 0;
border: 0;
.border-radius(0)
}