Repository: bokeh/bokeh

Issue:
Input Widget heights behavior
#### Description of expected behavior and the observed behavior
I tried to fix height for widgets of type input however the input element does not fit the height specification

#### Complete, minimal, self-contained example code that reproduces the issue
```python
from bokeh.models import Slider, TextAreaInput

from bokeh.io import show, output_notebook, output_file
from bokeh.layouts import column, widgetbox
output_file('test.html')

text = TextAreaInput(value='test', height=100, rows=50, sizing_mode='fixed')
slid = Slider(value=5, start=0, end=10)
show(widgetbox(text, slid))
```
![image](https://user-images.githubusercontent.com/18531147/52169284-ea599480-2735-11e9-8a04-43ad6e7815ce.png)

I would have expected this output:
![image](https://user-images.githubusercontent.com/18531147/52169294-0b21ea00-2736-11e9-9366-0af839197d52.png)



Discussion:
I think that I overlooked this case in a few widgets.
Is it sufficient to add
```css
height: 100%;
```
here:

https://github.com/bokeh/bokeh/blob/26eadc549714a14220b669920fe407d98808eb4c/bokehjs/src/less/widgets/controls.less#L242
Not necessarily, because this will interact with layout measurements. I will be redoing layout measurements anyway, due to performance concerns, so this will get fixed as a side effect.

Resolving patch:
diff --git a/examples/models/file/latex_extension.py b/examples/models/file/latex_extension.py
--- a/examples/models/file/latex_extension.py
+++ b/examples/models/file/latex_extension.py
@@ -9,7 +9,7 @@
 import numpy as np
 from scipy.special import jv
 
-output_file('external_resources.html')
+output_file('latex_extension.html')
 
 class LatexLabel(Label):
     """A subclass of `Label` with all of the same class attributes except
diff --git a/examples/models/file/widgets.py b/examples/models/file/widgets.py
--- a/examples/models/file/widgets.py
+++ b/examples/models/file/widgets.py
@@ -14,8 +14,8 @@
     CheckboxButtonGroup, RadioButtonGroup,
     TextInput, AutocompleteInput,
     Select, MultiSelect,
-    Slider, RangeSlider, #DateSlider, DateRangeSlider,
-    DatePicker,
+    Slider, RangeSlider, DateSlider, DateRangeSlider,
+    Spinner, ColorPicker, DatePicker,
     Paragraph, Div, PreText,
     DataTable, TableColumn,
     StringFormatter, NumberFormatter,
@@ -25,7 +25,10 @@
 from bokeh.sampledata.iris import flowers
 from bokeh.sampledata.autompg2 import autompg2 as mpg
 
-button = Button(label="Button (disabled) - still has click event", button_type="primary", disabled=True)
+click_button = Button(label="Button still has click event", button_type="success")
+
+disabled_button = Button(label="Button (disabled) - still has click event", button_type="primary", disabled=True)
+
 toggle = Toggle(label="Toggle button", button_type="success")
 
 menu = [("Item 1", "item_1_value"), ("Item 2", "item_2_value"), None, ("Item 3", "item_3_value")]
@@ -42,7 +45,7 @@
 text_input = TextInput(placeholder="Enter value ...")
 
 completions = ["aaa", "aab", "aac", "baa", "caa"]
-autocomplete_input = AutocompleteInput(placeholder="Enter value ...", completions=completions)
+autocomplete_input = AutocompleteInput(placeholder="Enter value (auto-complete) ...", completions=completions)
 
 select = Select(options=["Option 1", "Option 2", "Option 3"])
 
@@ -52,7 +55,13 @@
 
 range_slider = RangeSlider(value=[10, 90], start=0, end=100, step=0.5)
 
-#date_range_slider = DateRangeSlider(value=(date(2016, 1, 1), date(2016, 12, 31)))
+date_slider = DateSlider(value=date(2016, 1, 1), start=date(2015, 1, 1), end=date(2017, 12, 31))
+
+date_range_slider = DateRangeSlider(value=(date(2016, 1, 1), date(2016, 12, 31)), start=date(2015, 1, 1), end=date(2017, 12, 31))
+
+spinner = Spinner(value=100)
+
+color_picker = ColorPicker(color="red", title="Choose color:")
 
 date_picker = DatePicker(value=date(2017, 8, 1))
 
@@ -109,15 +118,15 @@ def mk_tab(color):
 widgets = Column(children=[
     Row(children=[
         Column(children=[
-            button, toggle, dropdown, dropdown_split,
+            click_button, disabled_button, toggle, dropdown, dropdown_split,
             checkbox_group, radio_group,
             checkbox_button_group, radio_button_group,
         ]),
         Column(children=[
             text_input, autocomplete_input,
             select, multi_select,
-            slider, range_slider, #date_range_slider,
-            date_picker,
+            slider, range_slider, date_slider, date_range_slider,
+            spinner, color_picker, date_picker,
             paragraph, div, pre_text,
         ]),
         tabs,


Test patch:
diff --git a/bokehjs/test/baselines/ToolbarBox__should_allow_placement_left_of_a_figure b/bokehjs/test/baselines/ToolbarBox__should_allow_placement_left_of_a_figure
--- a/bokehjs/test/baselines/ToolbarBox__should_allow_placement_left_of_a_figure
+++ b/bokehjs/test/baselines/ToolbarBox__should_allow_placement_left_of_a_figure
@@ -1,5 +1,5 @@
 Row bbox=[0, 0, 280, 250]
-  ToolbarBox bbox=[0, 0, 30, 117]
+  ToolbarBox bbox=[0, 0, 30, 250]
     Toolbar
   Plot bbox=[30, 0, 250, 250]
     LinearAxis bbox=[24, 226, 221, 24]
diff --git a/bokehjs/test/baselines/ToolbarBox__should_allow_placement_right_of_a_figure b/bokehjs/test/baselines/ToolbarBox__should_allow_placement_right_of_a_figure
--- a/bokehjs/test/baselines/ToolbarBox__should_allow_placement_right_of_a_figure
+++ b/bokehjs/test/baselines/ToolbarBox__should_allow_placement_right_of_a_figure
@@ -3,5 +3,5 @@ Row bbox=[0, 0, 280, 250]
     LinearAxis bbox=[24, 226, 221, 24]
     LinearAxis bbox=[0, 5, 24, 221]
     Title bbox=[24, 5, 221, 0]
-  ToolbarBox bbox=[250, 0, 30, 117]
+  ToolbarBox bbox=[250, 0, 30, 250]
     Toolbar
diff --git a/bokehjs/test/baselines/Widgets__should_allow_CheckboxGroup b/bokehjs/test/baselines/Widgets__should_allow_CheckboxGroup
--- a/bokehjs/test/baselines/Widgets__should_allow_CheckboxGroup
+++ b/bokehjs/test/baselines/Widgets__should_allow_CheckboxGroup
@@ -1 +1 @@
-CheckboxGroup bbox=[0, 0, 66, 57]
+CheckboxGroup bbox=[0, 0, 67, 57]
diff --git a/bokehjs/test/baselines/Widgets__should_allow_DateRangeSlider b/bokehjs/test/baselines/Widgets__should_allow_DateRangeSlider
--- a/bokehjs/test/baselines/Widgets__should_allow_DateRangeSlider
+++ b/bokehjs/test/baselines/Widgets__should_allow_DateRangeSlider
@@ -1 +1 @@
-DateRangeSlider bbox=[0, 0, 300, 34]
+DateRangeSlider bbox=[0, 0, 300, 39]
diff --git a/bokehjs/test/baselines/Widgets__should_allow_DateSlider b/bokehjs/test/baselines/Widgets__should_allow_DateSlider
--- a/bokehjs/test/baselines/Widgets__should_allow_DateSlider
+++ b/bokehjs/test/baselines/Widgets__should_allow_DateSlider
@@ -1 +1 @@
-DateSlider bbox=[0, 0, 300, 34]
+DateSlider bbox=[0, 0, 300, 39]
diff --git a/bokehjs/test/baselines/Widgets__should_allow_MultiSelect b/bokehjs/test/baselines/Widgets__should_allow_MultiSelect
--- a/bokehjs/test/baselines/Widgets__should_allow_MultiSelect
+++ b/bokehjs/test/baselines/Widgets__should_allow_MultiSelect
@@ -1 +1 @@
-MultiSelect bbox=[0, 0, 300, 98]
+MultiSelect bbox=[0, 0, 300, 99]
diff --git a/bokehjs/test/baselines/Widgets__should_allow_RadioGroup b/bokehjs/test/baselines/Widgets__should_allow_RadioGroup
--- a/bokehjs/test/baselines/Widgets__should_allow_RadioGroup
+++ b/bokehjs/test/baselines/Widgets__should_allow_RadioGroup
@@ -1 +1 @@
-RadioGroup bbox=[0, 0, 66, 57]
+RadioGroup bbox=[0, 0, 67, 57]
diff --git a/bokehjs/test/baselines/Widgets__should_allow_RangeSlider b/bokehjs/test/baselines/Widgets__should_allow_RangeSlider
--- a/bokehjs/test/baselines/Widgets__should_allow_RangeSlider
+++ b/bokehjs/test/baselines/Widgets__should_allow_RangeSlider
@@ -1 +1 @@
-RangeSlider bbox=[0, 0, 300, 34]
+RangeSlider bbox=[0, 0, 300, 39]
diff --git a/bokehjs/test/baselines/Widgets__should_allow_Slider b/bokehjs/test/baselines/Widgets__should_allow_Slider
--- a/bokehjs/test/baselines/Widgets__should_allow_Slider
+++ b/bokehjs/test/baselines/Widgets__should_allow_Slider
@@ -1 +1 @@
-Slider bbox=[0, 0, 300, 34]
+Slider bbox=[0, 0, 300, 39]
diff --git a/bokehjs/test/baselines/gridplot()__should_align_axes_when_toolbar_location=left b/bokehjs/test/baselines/gridplot()__should_align_axes_when_toolbar_location=left
--- a/bokehjs/test/baselines/gridplot()__should_align_axes_when_toolbar_location=left
+++ b/bokehjs/test/baselines/gridplot()__should_align_axes_when_toolbar_location=left
@@ -1,5 +1,5 @@
 Row bbox=[0, 0, 630, 600]
-  ToolbarBox bbox=[0, 0, 30, 208]
+  ToolbarBox bbox=[0, 0, 30, 600]
     ProxyToolbar
   GridBox bbox=[30, 0, 600, 600]
     Plot bbox=[0, 0, 200, 200]
diff --git a/bokehjs/test/baselines/gridplot()__should_align_axes_when_toolbar_location=right b/bokehjs/test/baselines/gridplot()__should_align_axes_when_toolbar_location=right
--- a/bokehjs/test/baselines/gridplot()__should_align_axes_when_toolbar_location=right
+++ b/bokehjs/test/baselines/gridplot()__should_align_axes_when_toolbar_location=right
@@ -36,5 +36,5 @@ Row bbox=[0, 0, 630, 600]
       LinearAxis bbox=[76, 124, 119, 76]
       LinearAxis bbox=[0, 5, 76, 119]
       Title bbox=[76, 5, 119, 0]
-  ToolbarBox bbox=[600, 0, 30, 208]
+  ToolbarBox bbox=[600, 0, 30, 600]
     ProxyToolbar
diff --git a/bokehjs/test/models/annotations/color_bar.ts b/bokehjs/test/models/annotations/color_bar.ts
--- a/bokehjs/test/models/annotations/color_bar.ts
+++ b/bokehjs/test/models/annotations/color_bar.ts
@@ -32,18 +32,18 @@ function color_bar_view(attrs: Partial<ColorBar.Attrs>, place: Place = "center")
 
 describe("ColorBar module", () => {
 
-  let _get_text_height_stub: any
-  let _set_canvas_image_stub: any
+  let _measure_font_stub: sinon.SinonStub
+  let _set_canvas_image_stub: sinon.SinonStub
 
   beforeEach(() => {
-    _get_text_height_stub = sinon.stub(text, "get_text_height", () => {
+    _measure_font_stub = sinon.stub(text, "measure_font", () => {
       return {height: 15, ascent: 10, descent: 5}
     })
     _set_canvas_image_stub = sinon.stub(ColorBarView.prototype as any, '_set_canvas_image') // XXX: protected
   })
 
   afterEach(() => {
-    _get_text_height_stub.restore()
+    _measure_font_stub.restore()
     _set_canvas_image_stub.restore()
   })
 
diff --git a/tests/baselines/examples/app/clustering b/tests/baselines/examples/app/clustering
--- a/tests/baselines/examples/app/clustering
+++ b/tests/baselines/examples/app/clustering
@@ -1,10 +1,10 @@
 Row bbox=[0, 0, 820, 400]
-  Column bbox=[0, 0, 420, 148]
+  Column bbox=[0, 0, 420, 158]
     Row bbox=[0, 0, 420, 60]
       Select bbox=[5, 5, 200, 50]
       Select bbox=[215, 5, 200, 50]
-    Slider bbox=[5, 65, 410, 34]
-    Slider bbox=[5, 109, 410, 34]
+    Slider bbox=[5, 65, 410, 39]
+    Slider bbox=[5, 114, 410, 39]
   Plot bbox=[420, 0, 400, 400]
     LinearAxis bbox=[21, 376, 374, 24]
     LinearAxis bbox=[0, 29, 21, 347]
diff --git a/tests/baselines/examples/app/export_csv b/tests/baselines/examples/app/export_csv
--- a/tests/baselines/examples/app/export_csv
+++ b/tests/baselines/examples/app/export_csv
@@ -1,5 +1,5 @@
 Row bbox=[0, 0, 1120, 410]
-  Column bbox=[0, 0, 310, 85]
-    RangeSlider bbox=[5, 5, 300, 34]
-    Button bbox=[5, 49, 300, 31]
+  Column bbox=[0, 0, 310, 90]
+    RangeSlider bbox=[5, 5, 300, 39]
+    Button bbox=[5, 54, 300, 31]
   DataTable bbox=[315, 5, 800, 400]
diff --git a/tests/baselines/examples/app/gapminder b/tests/baselines/examples/app/gapminder
--- a/tests/baselines/examples/app/gapminder
+++ b/tests/baselines/examples/app/gapminder
@@ -1,9 +1,9 @@
-Column bbox=[0, 0, 984, 536]
+Column bbox=[0, 0, 984, 541]
   Row bbox=[0, 0, 984, 492]
     Plot bbox=[0, 0, 984, 492]
       LinearAxis bbox=[56, 444, 908, 48]
       LinearAxis bbox=[0, 29, 56, 415]
       Title bbox=[56, 0, 908, 29]
-  Row bbox=[0, 492, 984, 44]
-    Slider bbox=[5, 5, 482, 34]
-    Button bbox=[497, 5, 482, 34]
+  Row bbox=[0, 492, 984, 49]
+    Slider bbox=[5, 5, 482, 39]
+    Button bbox=[497, 5, 482, 39]
diff --git a/tests/baselines/examples/app/image_blur b/tests/baselines/examples/app/image_blur
--- a/tests/baselines/examples/app/image_blur
+++ b/tests/baselines/examples/app/image_blur
@@ -1,7 +1,7 @@
-Column bbox=[0, 0, 600, 644]
+Column bbox=[0, 0, 600, 649]
   Plot bbox=[0, 0, 600, 600]
     LinearAxis bbox=[31, 576, 539, 24]
     LinearAxis bbox=[0, 5, 31, 571]
     Title bbox=[31, 5, 539, 0]
     ToolbarPanel bbox=[570, 5, 30, 571]
-  Slider bbox=[5, 605, 590, 34]
+  Slider bbox=[5, 605, 590, 39]
diff --git a/tests/baselines/examples/app/line_on_off b/tests/baselines/examples/app/line_on_off
--- a/tests/baselines/examples/app/line_on_off
+++ b/tests/baselines/examples/app/line_on_off
@@ -1,6 +1,6 @@
-Row bbox=[0, 0, 662, 600]
-  CheckboxGroup bbox=[5, 5, 52, 57]
-  Plot bbox=[62, 0, 600, 600]
+Row bbox=[0, 0, 710, 600]
+  CheckboxGroup bbox=[5, 5, 100, 590]
+  Plot bbox=[110, 0, 600, 600]
     LinearAxis bbox=[28, 576, 542, 24]
     LinearAxis bbox=[0, 5, 28, 571]
     Title bbox=[28, 5, 542, 0]
diff --git a/tests/baselines/examples/app/movies b/tests/baselines/examples/app/movies
--- a/tests/baselines/examples/app/movies
+++ b/tests/baselines/examples/app/movies
@@ -2,17 +2,17 @@ Column bbox=[0, 0, 1010, 758]
   Row bbox=[0, 0, 810, 158]
     Div bbox=[5, 5, 800, 148]
   Row bbox=[0, 158, 1010, 600]
-    Column bbox=[0, 0, 310, 520]
-      Slider bbox=[5, 5, 300, 34]
-      Slider bbox=[5, 49, 300, 34]
-      Select bbox=[5, 93, 300, 50]
-      Slider bbox=[5, 153, 300, 34]
-      Slider bbox=[5, 197, 300, 34]
-      Slider bbox=[5, 241, 300, 34]
-      TextInput bbox=[5, 285, 300, 50]
-      TextInput bbox=[5, 345, 300, 50]
-      Select bbox=[5, 405, 300, 50]
-      Select bbox=[5, 465, 300, 50]
+    Column bbox=[0, 0, 310, 545]
+      Slider bbox=[5, 5, 300, 39]
+      Slider bbox=[5, 54, 300, 39]
+      Select bbox=[5, 103, 300, 50]
+      Slider bbox=[5, 163, 300, 39]
+      Slider bbox=[5, 212, 300, 39]
+      Slider bbox=[5, 261, 300, 39]
+      TextInput bbox=[5, 310, 300, 50]
+      TextInput bbox=[5, 370, 300, 50]
+      Select bbox=[5, 430, 300, 50]
+      Select bbox=[5, 490, 300, 50]
     Plot bbox=[310, 0, 700, 600]
       LinearAxis bbox=[52, 555, 643, 45]
       LinearAxis bbox=[0, 29, 52, 526]
diff --git a/tests/baselines/examples/app/ohlc b/tests/baselines/examples/app/ohlc
--- a/tests/baselines/examples/app/ohlc
+++ b/tests/baselines/examples/app/ohlc
@@ -1,10 +1,10 @@
-Column bbox=[0, 0, 1030, 794]
-  Row bbox=[0, 0, 930, 44]
-    Slider bbox=[5, 5, 300, 34]
-    Slider bbox=[315, 5, 300, 34]
-    Select bbox=[625, 5, 300, 31]
-  Row bbox=[0, 44, 1030, 750]
-    ToolbarBox bbox=[0, 0, 30, 147]
+Column bbox=[0, 0, 1030, 799]
+  Row bbox=[0, 0, 930, 49]
+    Slider bbox=[5, 5, 300, 39]
+    Slider bbox=[315, 5, 300, 39]
+    Select bbox=[625, 5, 300, 39]
+  Row bbox=[0, 49, 1030, 750]
+    ToolbarBox bbox=[0, 0, 30, 750]
       ProxyToolbar
     GridBox bbox=[30, 0, 1000, 750]
       Plot bbox=[0, 0, 1000, 500]
diff --git a/tests/baselines/examples/app/sliders b/tests/baselines/examples/app/sliders
--- a/tests/baselines/examples/app/sliders
+++ b/tests/baselines/examples/app/sliders
@@ -1,10 +1,10 @@
 Row bbox=[0, 0, 710, 400]
-  Column bbox=[0, 0, 310, 236]
+  Column bbox=[0, 0, 310, 256]
     TextInput bbox=[5, 5, 300, 50]
-    Slider bbox=[5, 65, 300, 34]
-    Slider bbox=[5, 109, 300, 34]
-    Slider bbox=[5, 153, 300, 34]
-    Slider bbox=[5, 197, 300, 34]
+    Slider bbox=[5, 65, 300, 39]
+    Slider bbox=[5, 114, 300, 39]
+    Slider bbox=[5, 163, 300, 39]
+    Slider bbox=[5, 212, 300, 39]
   Plot bbox=[310, 0, 400, 400]
     LinearAxis bbox=[21, 376, 349, 24]
     LinearAxis bbox=[0, 29, 21, 347]
diff --git a/tests/baselines/examples/app/taylor b/tests/baselines/examples/app/taylor
--- a/tests/baselines/examples/app/taylor
+++ b/tests/baselines/examples/app/taylor
@@ -1,9 +1,9 @@
-Column bbox=[0, 0, 800, 528]
-  Column bbox=[0, 0, 310, 128]
+Column bbox=[0, 0, 800, 533]
+  Column bbox=[0, 0, 310, 133]
     TextInput bbox=[5, 5, 300, 50]
-    Slider bbox=[5, 65, 300, 34]
-    PreText bbox=[5, 109, 0, 14]
-  Plot bbox=[0, 128, 800, 400]
+    Slider bbox=[5, 65, 300, 39]
+    PreText bbox=[5, 114, 0, 14]
+  Plot bbox=[0, 133, 800, 400]
     LinearAxis bbox=[34, 376, 736, 24]
     LinearAxis bbox=[0, 29, 34, 347]
     Title bbox=[34, 0, 736, 29]
diff --git a/tests/baselines/examples/howto/layouts/dashboard b/tests/baselines/examples/howto/layouts/dashboard
--- a/tests/baselines/examples/howto/layouts/dashboard
+++ b/tests/baselines/examples/howto/layouts/dashboard
@@ -6,11 +6,11 @@ Column bbox=[0, 0, 984, 984]
       Title bbox=[0, 5, 29, 299]
       ToolbarPanel bbox=[954, 5, 30, 299]
   Row bbox=[0, 328, 984, 328]
-    Column bbox=[0, 0, 310, 176]
-      Slider bbox=[5, 5, 300, 34]
-      Slider bbox=[5, 49, 300, 34]
-      Slider bbox=[5, 93, 300, 34]
-      Slider bbox=[5, 137, 300, 34]
+    Column bbox=[0, 0, 310, 196]
+      Slider bbox=[5, 5, 300, 39]
+      Slider bbox=[5, 54, 300, 39]
+      Slider bbox=[5, 103, 300, 39]
+      Slider bbox=[5, 152, 300, 39]
     Plot bbox=[492, 0, 492, 328]
       LinearAxis bbox=[28, 304, 459, 24]
       LinearAxis bbox=[0, 29, 28, 275]
diff --git a/tests/baselines/examples/integration/widgets/layout_multiple_widgets b/tests/baselines/examples/integration/widgets/layout_multiple_widgets
--- a/tests/baselines/examples/integration/widgets/layout_multiple_widgets
+++ b/tests/baselines/examples/integration/widgets/layout_multiple_widgets
@@ -1,25 +1,25 @@
-Column bbox=[0, 0, 310, 984]
-  Button bbox=[5, 5, 300, 31]
-  Button bbox=[5, 46, 300, 31]
-  Button bbox=[5, 87, 300, 31]
-  Toggle bbox=[5, 128, 300, 31]
-  Toggle bbox=[5, 169, 300, 31]
-  Toggle bbox=[5, 210, 300, 31]
-  Dropdown bbox=[5, 251, 300, 31]
-  Dropdown bbox=[5, 292, 300, 31]
-  Dropdown bbox=[5, 333, 300, 31]
-  CheckboxButtonGroup bbox=[5, 374, 300, 31]
-  CheckboxButtonGroup bbox=[5, 415, 300, 31]
-  CheckboxButtonGroup bbox=[5, 456, 300, 31]
-  RadioButtonGroup bbox=[5, 497, 300, 31]
-  RadioButtonGroup bbox=[5, 538, 300, 31]
-  RadioButtonGroup bbox=[5, 579, 300, 31]
-  TextInput bbox=[5, 620, 300, 31]
-  TextInput bbox=[5, 661, 300, 31]
-  TextInput bbox=[5, 702, 300, 31]
-  AutocompleteInput bbox=[5, 743, 300, 31]
-  AutocompleteInput bbox=[5, 784, 300, 31]
-  AutocompleteInput bbox=[5, 825, 300, 31]
-  DatePicker bbox=[5, 866, 300, 31]
-  DatePicker bbox=[5, 907, 300, 31]
-  DatePicker bbox=[5, 948, 300, 31]
+Column bbox=[0, 0, 393, 984]
+  Button bbox=[5, 5, 383, 31]
+  Button bbox=[5, 46, 383, 31]
+  Button bbox=[5, 87, 383, 31]
+  Toggle bbox=[5, 128, 383, 31]
+  Toggle bbox=[5, 169, 383, 31]
+  Toggle bbox=[5, 210, 383, 31]
+  Dropdown bbox=[5, 251, 383, 31]
+  Dropdown bbox=[5, 292, 383, 31]
+  Dropdown bbox=[5, 333, 383, 31]
+  CheckboxButtonGroup bbox=[5, 374, 383, 31]
+  CheckboxButtonGroup bbox=[5, 415, 383, 31]
+  CheckboxButtonGroup bbox=[5, 456, 383, 31]
+  RadioButtonGroup bbox=[5, 497, 383, 31]
+  RadioButtonGroup bbox=[5, 538, 383, 31]
+  RadioButtonGroup bbox=[5, 579, 383, 31]
+  TextInput bbox=[5, 620, 383, 31]
+  TextInput bbox=[5, 661, 383, 31]
+  TextInput bbox=[5, 702, 383, 31]
+  AutocompleteInput bbox=[5, 743, 383, 31]
+  AutocompleteInput bbox=[5, 784, 383, 31]
+  AutocompleteInput bbox=[5, 825, 383, 31]
+  DatePicker bbox=[5, 866, 383, 31]
+  DatePicker bbox=[5, 907, 383, 31]
+  DatePicker bbox=[5, 948, 383, 31]
diff --git a/tests/baselines/examples/integration/widgets/tabs_with_multiselect b/tests/baselines/examples/integration/widgets/tabs_with_multiselect
--- a/tests/baselines/examples/integration/widgets/tabs_with_multiselect
+++ b/tests/baselines/examples/integration/widgets/tabs_with_multiselect
@@ -1,2 +1,2 @@
-Tabs bbox=[0, 0, 310, 111]
-  MultiSelect bbox=[5, 40, 300, 66]
+Tabs bbox=[0, 0, 310, 112]
+  MultiSelect bbox=[5, 40, 300, 67]
diff --git a/tests/baselines/examples/models/file/buttons b/tests/baselines/examples/models/file/buttons
--- a/tests/baselines/examples/models/file/buttons
+++ b/tests/baselines/examples/models/file/buttons
@@ -6,7 +6,7 @@ Column bbox=[0, 0, 310, 503]
   Dropdown bbox=[5, 169, 300, 31]
   Dropdown bbox=[5, 210, 300, 31]
   Dropdown bbox=[5, 251, 300, 31]
-  CheckboxGroup bbox=[5, 292, 66, 57]
-  RadioGroup bbox=[5, 359, 66, 57]
+  CheckboxGroup bbox=[5, 292, 300, 57]
+  RadioGroup bbox=[5, 359, 300, 57]
   CheckboxButtonGroup bbox=[5, 426, 300, 31]
   RadioButtonGroup bbox=[5, 467, 300, 31]
diff --git a/tests/baselines/examples/models/file/sliders b/tests/baselines/examples/models/file/sliders
--- a/tests/baselines/examples/models/file/sliders
+++ b/tests/baselines/examples/models/file/sliders
@@ -1,14 +1,14 @@
-Row bbox=[0, 0, 395, 348]
-  Column bbox=[0, 0, 310, 289]
-    Slider bbox=[5, 5, 300, 34]
-    Slider bbox=[5, 49, 300, 34]
-    RangeSlider bbox=[5, 93, 300, 34]
-    DateSlider bbox=[5, 137, 300, 34]
-    DateRangeSlider bbox=[5, 181, 300, 34]
-    Slider bbox=[5, 225, 300, 34]
-    Slider bbox=[5, 269, 300, 15]
-  Row bbox=[310, 0, 85, 348]
-    Slider bbox=[5, 5, 15, 357]
-    Slider bbox=[30, 5, 15, 357]
-    Slider bbox=[55, 5, 15, 357]
-    Div bbox=[80, 5, 0, 14]
+Row bbox=[0, 0, 410, 324]
+  Column bbox=[0, 0, 310, 324]
+    Slider bbox=[5, 5, 300, 39]
+    Slider bbox=[5, 54, 300, 39]
+    RangeSlider bbox=[5, 103, 300, 39]
+    DateSlider bbox=[5, 152, 300, 39]
+    DateRangeSlider bbox=[5, 201, 300, 39]
+    Slider bbox=[5, 250, 300, 39]
+    Slider bbox=[5, 299, 300, 20]
+  Row bbox=[310, 0, 100, 310]
+    Slider bbox=[5, 5, 20, 300]
+    Slider bbox=[35, 5, 20, 300]
+    Slider bbox=[65, 5, 20, 300]
+    Div bbox=[95, 5, 0, 14]
diff --git a/tests/baselines/examples/models/file/widgets b/tests/baselines/examples/models/file/widgets
--- a/tests/baselines/examples/models/file/widgets
+++ b/tests/baselines/examples/models/file/widgets
@@ -1,25 +1,30 @@
-Column bbox=[0, 0, 920, 857]
-  Row bbox=[0, 0, 920, 447]
-    Column bbox=[0, 0, 310, 380]
+Column bbox=[0, 0, 920, 1067]
+  Row bbox=[0, 0, 920, 657]
+    Column bbox=[0, 0, 310, 421]
       Button bbox=[5, 5, 300, 31]
-      Toggle bbox=[5, 46, 300, 31]
-      Dropdown bbox=[5, 87, 300, 31]
+      Button bbox=[5, 46, 300, 31]
+      Toggle bbox=[5, 87, 300, 31]
       Dropdown bbox=[5, 128, 300, 31]
-      CheckboxGroup bbox=[5, 169, 66, 57]
-      RadioGroup bbox=[5, 236, 66, 57]
-      CheckboxButtonGroup bbox=[5, 303, 300, 31]
-      RadioButtonGroup bbox=[5, 344, 300, 31]
-    Column bbox=[310, 0, 310, 447]
+      Dropdown bbox=[5, 169, 300, 31]
+      CheckboxGroup bbox=[5, 210, 300, 57]
+      RadioGroup bbox=[5, 277, 300, 57]
+      CheckboxButtonGroup bbox=[5, 344, 300, 31]
+      RadioButtonGroup bbox=[5, 385, 300, 31]
+    Column bbox=[310, 0, 310, 657]
       TextInput bbox=[5, 5, 300, 31]
       AutocompleteInput bbox=[5, 46, 300, 31]
       Select bbox=[5, 87, 300, 31]
-      MultiSelect bbox=[5, 128, 300, 98]
-      Slider bbox=[5, 236, 300, 34]
-      RangeSlider bbox=[5, 280, 300, 34]
-      DatePicker bbox=[5, 324, 300, 31]
-      Paragraph bbox=[5, 365, 58, 19]
-      Div bbox=[5, 394, 60, 19]
-      PreText bbox=[5, 423, 72, 19]
+      MultiSelect bbox=[5, 128, 300, 99]
+      Slider bbox=[5, 237, 300, 39]
+      RangeSlider bbox=[5, 286, 300, 39]
+      DateSlider bbox=[5, 335, 300, 39]
+      DateRangeSlider bbox=[5, 384, 300, 39]
+      Spinner bbox=[5, 433, 300, 31]
+      ColorPicker bbox=[5, 474, 300, 50]
+      DatePicker bbox=[5, 534, 300, 31]
+      Paragraph bbox=[5, 575, 58, 19]
+      Div bbox=[5, 604, 60, 19]
+      PreText bbox=[5, 633, 72, 19]
     Tabs bbox=[620, 0, 300, 335]
       Plot bbox=[0, 35, 300, 300]
         LinearAxis bbox=[27, 276, 243, 24]
@@ -36,4 +41,4 @@ Column bbox=[0, 0, 920, 857]
         LinearAxis bbox=[0, 5, 27, 271]
         Title bbox=[27, 5, 243, 0]
         ToolbarPanel bbox=[270, 5, 30, 271]
-  DataTable bbox=[5, 452, 800, 400]
+  DataTable bbox=[5, 662, 800, 400]
diff --git a/tests/baselines/examples/plotting/file/color_sliders b/tests/baselines/examples/plotting/file/color_sliders
--- a/tests/baselines/examples/plotting/file/color_sliders
+++ b/tests/baselines/examples/plotting/file/color_sliders
@@ -1,8 +1,8 @@
 Row bbox=[0, 0, 910, 450]
-  Column bbox=[0, 0, 310, 132]
-    Slider bbox=[5, 5, 300, 34]
-    Slider bbox=[5, 49, 300, 34]
-    Slider bbox=[5, 93, 300, 34]
+  Column bbox=[0, 0, 310, 147]
+    Slider bbox=[5, 5, 300, 39]
+    Slider bbox=[5, 54, 300, 39]
+    Slider bbox=[5, 103, 300, 39]
   Column bbox=[310, 0, 600, 450]
     Plot bbox=[0, 0, 600, 300]
       LinearAxis bbox=[24, 276, 571, 24]
diff --git a/tests/baselines/examples/plotting/file/line_on_off b/tests/baselines/examples/plotting/file/line_on_off
--- a/tests/baselines/examples/plotting/file/line_on_off
+++ b/tests/baselines/examples/plotting/file/line_on_off
@@ -1,6 +1,6 @@
-Row bbox=[0, 0, 662, 600]
-  CheckboxGroup bbox=[5, 5, 52, 57]
-  Plot bbox=[62, 0, 600, 600]
+Row bbox=[0, 0, 710, 600]
+  CheckboxGroup bbox=[5, 5, 100, 590]
+  Plot bbox=[110, 0, 600, 600]
     LinearAxis bbox=[28, 576, 542, 24]
     LinearAxis bbox=[0, 5, 28, 571]
     Title bbox=[28, 5, 542, 0]
diff --git a/tests/baselines/examples/plotting/file/python_callback b/tests/baselines/examples/plotting/file/python_callback
--- a/tests/baselines/examples/plotting/file/python_callback
+++ b/tests/baselines/examples/plotting/file/python_callback
@@ -4,8 +4,8 @@ Row bbox=[0, 0, 710, 400]
     LinearAxis bbox=[0, 5, 28, 371]
     Title bbox=[28, 5, 342, 0]
     ToolbarPanel bbox=[370, 5, 30, 371]
-  Column bbox=[400, 0, 310, 176]
-    Slider bbox=[5, 5, 300, 34]
-    Slider bbox=[5, 49, 300, 34]
-    Slider bbox=[5, 93, 300, 34]
-    Slider bbox=[5, 137, 300, 34]
+  Column bbox=[400, 0, 310, 196]
+    Slider bbox=[5, 5, 300, 39]
+    Slider bbox=[5, 54, 300, 39]
+    Slider bbox=[5, 103, 300, 39]
+    Slider bbox=[5, 152, 300, 39]
diff --git a/tests/baselines/examples/plotting/file/scatter_selection b/tests/baselines/examples/plotting/file/scatter_selection
--- a/tests/baselines/examples/plotting/file/scatter_selection
+++ b/tests/baselines/examples/plotting/file/scatter_selection
@@ -1,6 +1,6 @@
-Column bbox=[0, 0, 984, 770]
-  Div bbox=[5, 5, 974, 45]
-  Row bbox=[0, 70, 984, 700]
+Column bbox=[0, 0, 984, 862]
+  Div bbox=[5, 5, 974, 57]
+  Row bbox=[0, 162, 730, 700]
     GridBox bbox=[0, 0, 700, 700]
       Plot bbox=[0, 0, 350, 350]
         LinearAxis bbox=[31, 326, 314, 24]
diff --git a/tests/baselines/examples/plotting/file/slider b/tests/baselines/examples/plotting/file/slider
--- a/tests/baselines/examples/plotting/file/slider
+++ b/tests/baselines/examples/plotting/file/slider
@@ -4,8 +4,8 @@ Row bbox=[0, 0, 710, 400]
     LinearAxis bbox=[0, 5, 28, 371]
     Title bbox=[28, 5, 342, 0]
     ToolbarPanel bbox=[370, 5, 30, 371]
-  Column bbox=[400, 0, 310, 176]
-    Slider bbox=[5, 5, 300, 34]
-    Slider bbox=[5, 49, 300, 34]
-    Slider bbox=[5, 93, 300, 34]
-    Slider bbox=[5, 137, 300, 34]
+  Column bbox=[400, 0, 310, 196]
+    Slider bbox=[5, 5, 300, 39]
+    Slider bbox=[5, 54, 300, 39]
+    Slider bbox=[5, 103, 300, 39]
+    Slider bbox=[5, 152, 300, 39]
diff --git a/tests/baselines/examples/plotting/file/slider_callback_policy b/tests/baselines/examples/plotting/file/slider_callback_policy
--- a/tests/baselines/examples/plotting/file/slider_callback_policy
+++ b/tests/baselines/examples/plotting/file/slider_callback_policy
@@ -1,5 +1,5 @@
-Column bbox=[0, 0, 310, 237]
-  Slider bbox=[5, 5, 300, 34]
-  Slider bbox=[5, 49, 300, 34]
-  Slider bbox=[5, 93, 300, 34]
-  Div bbox=[5, 137, 175, 95]
+Column bbox=[0, 0, 310, 252]
+  Slider bbox=[5, 5, 300, 39]
+  Slider bbox=[5, 54, 300, 39]
+  Slider bbox=[5, 103, 300, 39]
+  Div bbox=[5, 152, 175, 95]
diff --git a/tests/baselines/examples/plotting/file/text b/tests/baselines/examples/plotting/file/text
--- a/tests/baselines/examples/plotting/file/text
+++ b/tests/baselines/examples/plotting/file/text
@@ -1,6 +1,6 @@
-Column bbox=[0, 0, 800, 644]
+Column bbox=[0, 0, 800, 649]
   Plot bbox=[0, 0, 800, 600]
     CategoricalAxis bbox=[99, 545, 696, 55]
     CategoricalAxis bbox=[0, 29, 99, 516]
     Title bbox=[99, 0, 696, 29]
-  Slider bbox=[5, 605, 790, 34]
+  Slider bbox=[5, 605, 790, 39]
diff --git a/tests/baselines/examples/webgl/line_compare b/tests/baselines/examples/webgl/line_compare
--- a/tests/baselines/examples/webgl/line_compare
+++ b/tests/baselines/examples/webgl/line_compare
@@ -1,10 +1,10 @@
 Row bbox=[0, 0, 710, 1200]
-  Column bbox=[0, 0, 310, 170]
-    Column bbox=[0, 0, 310, 170]
-      Slider bbox=[5, 5, 300, 34]
-      Slider bbox=[5, 49, 300, 34]
-      Dropdown bbox=[5, 93, 300, 31]
-      Dropdown bbox=[5, 134, 300, 31]
+  Column bbox=[0, 0, 310, 180]
+    Column bbox=[0, 0, 310, 180]
+      Slider bbox=[5, 5, 300, 39]
+      Slider bbox=[5, 54, 300, 39]
+      Dropdown bbox=[5, 103, 300, 31]
+      Dropdown bbox=[5, 144, 300, 31]
   Column bbox=[310, 0, 400, 1200]
     Plot bbox=[0, 0, 400, 400]
       LinearAxis bbox=[34, 376, 336, 24]
diff --git a/tests/baselines/sphinx/source/docs/user_guide/examples/extensions_example_widget b/tests/baselines/sphinx/source/docs/user_guide/examples/extensions_example_widget
--- a/tests/baselines/sphinx/source/docs/user_guide/examples/extensions_example_widget
+++ b/tests/baselines/sphinx/source/docs/user_guide/examples/extensions_example_widget
@@ -1,8 +1,8 @@
-Column bbox=[0, 0, 418, 552]
+Column bbox=[0, 0, 467, 557]
   Plot bbox=[0, 0, 400, 400]
     LinearAxis bbox=[27, 376, 343, 24]
     LinearAxis bbox=[0, 5, 27, 371]
     Title bbox=[27, 5, 343, 0]
     ToolbarPanel bbox=[370, 5, 30, 371]
-  Slider bbox=[5, 405, 408, 34]
-  IonRangeSlider bbox=[5, 449, 408, 98]
+  Slider bbox=[5, 405, 457, 39]
+  IonRangeSlider bbox=[5, 454, 457, 98]
diff --git a/tests/baselines/sphinx/source/docs/user_guide/examples/extensions_putting_together_ts b/tests/baselines/sphinx/source/docs/user_guide/examples/extensions_putting_together_ts
--- a/tests/baselines/sphinx/source/docs/user_guide/examples/extensions_putting_together_ts
+++ b/tests/baselines/sphinx/source/docs/user_guide/examples/extensions_putting_together_ts
@@ -1,3 +1,3 @@
-Column bbox=[0, 0, 310, 80]
-  Slider bbox=[5, 5, 300, 34]
-  Custom bbox=[5, 49, 300, 26]
+Column bbox=[0, 0, 310, 85]
+  Slider bbox=[5, 5, 300, 39]
+  Custom bbox=[5, 54, 300, 26]
diff --git a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_for_widgets b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_for_widgets
--- a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_for_widgets
+++ b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_for_widgets
@@ -1,6 +1,6 @@
-Column bbox=[0, 0, 400, 444]
-  Slider bbox=[5, 5, 390, 34]
-  Plot bbox=[0, 44, 400, 400]
+Column bbox=[0, 0, 400, 449]
+  Slider bbox=[5, 5, 390, 39]
+  Plot bbox=[0, 49, 400, 400]
     LinearAxis bbox=[27, 376, 343, 24]
     LinearAxis bbox=[0, 5, 27, 371]
     Title bbox=[27, 5, 343, 0]
diff --git a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_in_python b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_in_python
--- a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_in_python
+++ b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_in_python
@@ -1,6 +1,6 @@
-Column bbox=[0, 0, 400, 444]
-  Slider bbox=[5, 5, 390, 34]
-  Plot bbox=[0, 44, 400, 400]
+Column bbox=[0, 0, 400, 449]
+  Slider bbox=[5, 5, 390, 39]
+  Plot bbox=[0, 49, 400, 400]
     LinearAxis bbox=[27, 376, 343, 24]
     LinearAxis bbox=[0, 5, 27, 371]
     Title bbox=[27, 5, 343, 0]
diff --git a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_js_on_change b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_js_on_change
--- a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_js_on_change
+++ b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_callbacks_js_on_change
@@ -1,6 +1,6 @@
-Column bbox=[0, 0, 400, 444]
-  Slider bbox=[5, 5, 390, 34]
-  Plot bbox=[0, 44, 400, 400]
+Column bbox=[0, 0, 400, 449]
+  Slider bbox=[5, 5, 390, 39]
+  Plot bbox=[0, 49, 400, 400]
     LinearAxis bbox=[27, 376, 343, 24]
     LinearAxis bbox=[0, 5, 27, 371]
     Title bbox=[27, 5, 343, 0]
diff --git a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_checkbox_group b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_checkbox_group
--- a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_checkbox_group
+++ b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_checkbox_group
@@ -1 +1 @@
-CheckboxGroup bbox=[0, 0, 66, 57]
+CheckboxGroup bbox=[0, 0, 67, 57]
diff --git a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_linked_properties b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_linked_properties
--- a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_linked_properties
+++ b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_linked_properties
@@ -1,7 +1,7 @@
-Column bbox=[0, 0, 400, 444]
+Column bbox=[0, 0, 400, 449]
   Plot bbox=[0, 0, 400, 400]
     LinearAxis bbox=[18, 376, 352, 24]
     LinearAxis bbox=[0, 5, 18, 371]
     Title bbox=[18, 5, 352, 0]
     ToolbarPanel bbox=[370, 5, 30, 371]
-  Slider bbox=[5, 405, 390, 34]
+  Slider bbox=[5, 405, 390, 39]
diff --git a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_radio_group b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_radio_group
--- a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_radio_group
+++ b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_radio_group
@@ -1 +1 @@
-RadioGroup bbox=[0, 0, 66, 57]
+RadioGroup bbox=[0, 0, 67, 57]
diff --git a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_slider b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_slider
--- a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_slider
+++ b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_slider
@@ -1 +1 @@
-Slider bbox=[0, 0, 300, 34]
+Slider bbox=[0, 0, 300, 39]
diff --git a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_textarea b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_textarea
--- a/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_textarea
+++ b/tests/baselines/sphinx/source/docs/user_guide/examples/interaction_textarea
@@ -1,2 +1,2 @@
-WidgetBox bbox=[0, 0, 310, 60]
-  TextAreaInput bbox=[5, 5, 300, 50]
+WidgetBox bbox=[0, 0, 422, 126]
+  TextAreaInput bbox=[5, 5, 412, 116]
diff --git a/tests/baselines/sphinx/source/docs/user_guide/examples/layout_widgets b/tests/baselines/sphinx/source/docs/user_guide/examples/layout_widgets
--- a/tests/baselines/sphinx/source/docs/user_guide/examples/layout_widgets
+++ b/tests/baselines/sphinx/source/docs/user_guide/examples/layout_widgets
@@ -1,6 +1,6 @@
-Column bbox=[0, 0, 310, 227]
+Column bbox=[0, 0, 310, 232]
   Button bbox=[5, 5, 300, 31]
-  Slider bbox=[5, 46, 300, 34]
-  RadioButtonGroup bbox=[5, 90, 300, 31]
-  Select bbox=[5, 131, 300, 50]
-  Button bbox=[5, 191, 300, 31]
+  Slider bbox=[5, 46, 300, 39]
+  RadioButtonGroup bbox=[5, 95, 300, 31]
+  Select bbox=[5, 136, 300, 50]
+  Button bbox=[5, 196, 300, 31]