JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
finish fixing scrollbar
authorJason Woofenden <jason@jasonwoof.com>
Tue, 8 Mar 2016 16:49:17 +0000 (11:49 -0500)
committerJason Woofenden <jason@jasonwoof.com>
Tue, 8 Mar 2016 16:49:17 +0000 (11:49 -0500)
editor.coffee

index c3f35be..d93f1ed 100644 (file)
@@ -181,25 +181,32 @@ outer_css = (args) ->
        inner_padding = args.inner_padding ? overlay_padding
        frame_width = args.frame_width ? inner_padding
        # TODO editor controls height...
-       shrink = (px) ->
-               w -= 2 * px
-               h -= 2 * px
-               return px
+       occupy = (left, top = left, right = left, bottom = top) ->
+               w -= left + right
+               h -= top + bottom
+               return Math.max(left, top, right, bottom)
        ret = ''
        ret += 'body {'
        ret +=     'margin: 0;'
        ret +=     'padding: 0;'
        ret += '}'
        ret += '#wrap1 {'
-       ret +=     "border: #{shrink 1}px solid black;"
-       ret +=     "padding: #{shrink frame_width}px;"
+       ret +=     "border: #{occupy 1}px solid black;"
+       ret +=     "padding: #{occupy frame_width}px;"
        ret += '}'
        ret += '#wrap2 {'
-       ret +=     "border: #{shrink 1}px solid black;"
-       ret +=     "padding: #{shrink inner_padding}px;"
+       ret +=     "border: #{occupy 1}px solid black;"
+       ret +=     "padding: #{occupy inner_padding}px;"
+       ret +=     "padding-right: #{inner_padding + occupy 0, 0, 15, 0}px;" # for scroll bar
+       ret +=     "width: #{w}px;"
+       ret +=     "height: #{h}px;"
+       ret +=     'overflow-x: hidden;'
+       ret +=     'overflow-y: scroll;'
        ret += '}'
        ret += '#wrap3 {'
        ret +=     'position: relative;'
+       ret +=     "width: #{w}px;"
+       ret +=     "min-height: #{h}px;"
        ret += '}'
        ret += 'iframe {'
        ret +=     'box-sizing: border-box;'
@@ -207,7 +214,7 @@ outer_css = (args) ->
        ret +=     'border: none;'
        ret +=     'padding: 0;'
        ret +=     "width: #{w}px;"
-       ret +=     "height: #{h}px;"
+       #ret +=     "height: #{h}px;" # height auto-set when content set/changed
        ret += '}'
        ret += '#overlay {'
        ret +=     'position: absolute;'