Changeset 60805 in webkit
- Timestamp:
- Jun 7, 2010 3:45:58 PM (14 years ago)
- Location:
- trunk
- Files:
-
- 5 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r60804 r60805 1 2010-06-07 Martin Robinson <mrobinson@igalia.com> 2 3 Reviewed by Oliver Hunt. 4 5 [GTK] HTML5 input type=range is not drawn 6 https://bugs.webkit.org/show_bug.cgi?id=39561 7 8 Uncomment and add baselines for slider tests which are now passing. Group 9 remaining failing slider tests by their type of failure. 10 11 * platform/gtk/Skipped: 12 * platform/gtk/fast/forms/range-thumb-height-percentage-expected.txt: Added. 13 * platform/gtk/fast/forms/slider-thumb-shared-style-expected.txt: Added. 14 * platform/gtk/fast/forms/slider-thumb-stylability-expected.txt: Added. 15 * platform/gtk/fast/forms/thumbslider-crash-expected.txt: Added. 16 * platform/gtk/fast/forms/thumbslider-no-parent-slider-expected.txt: Added. 17 1 18 2010-06-07 Martin Robinson <mrobinson@igalia.com> 2 19 -
trunk/LayoutTests/platform/gtk/Skipped
r60804 r60805 1263 1263 fast/forms/search-styled.html 1264 1264 fast/forms/select-script-onchange.html 1265 fast/forms/slider-mouse-events.html1266 fast/forms/slider-onchange-event.html1267 fast/forms/slider-transformed.html1268 fast/forms/slider-zoomed.html1269 1265 fast/forms/text-control-intrinsic-widths.html 1270 1266 fast/forms/textarea-paste-newline.html … … 2302 2298 fast/forms/radio_checked.html 2303 2299 fast/forms/radio_checked_dynamic.html 2304 fast/forms/range-thumb-height-percentage.html2305 2300 fast/forms/search-cancel-button-style-sharing.html 2306 2301 fast/forms/search-display-none-cancel-button.html … … 2327 2322 fast/forms/select-visual-hebrew.html 2328 2323 fast/forms/select-writing-direction-natural.html 2329 fast/forms/slider-padding.html2330 fast/forms/slider-thumb-shared-style.html2331 fast/forms/slider-thumb-stylability.html2332 2324 fast/forms/stuff-on-my-optgroup.html 2333 2325 fast/forms/tabbing-input-iframe.html … … 2343 2335 fast/forms/textfield-outline.html 2344 2336 fast/forms/textfield-overflow.html 2345 fast/forms/thumbslider-crash.html2346 fast/forms/thumbslider-no-parent-slider.html2347 2337 fast/forms/visual-hebrew-text-field.html 2348 2338 fast/frames/001.html … … 5213 5203 fast/events/ondrop-text-html.html 5214 5204 fast/events/prevent-drag-to-navigate.html 5215 fast/forms/slider-delete-while-dragging-thumb.html5216 5205 fast/events/tab-focus-anchor.html 5217 5206 http/tests/local/drag-over-remote-content.html … … 5927 5916 # https://bugs.webkit.org/show_bug.cgi?id=40269 5928 5917 media/controls-drag-timebar.html 5918 5919 # GTK+ theme-rendered widgets do not support CSS transforms 5920 # https://bugs.webkit.org/show_bug.cgi?id=40139 5921 fast/forms/slider-transformed.html 5922 fast/forms/slider-transformed.html 5923 5924 # Some input type=range tests fail because of the size 5925 # of the slider thumb in GTK+ themes. 5926 fast/forms/slider-mouse-events.html 5927 fast/forms/slider-zoomed.html -
trunk/WebCore/ChangeLog
r60802 r60805 293 293 (WebCore::HTMLTokenizer::parseTag): 294 294 * html/HTMLTokenizer.h: 295 296 2010-06-07 Martin Robinson <mrobinson@igalia.com> 297 298 Reviewed by Oliver Hunt. 299 300 [GTK] HTML5 input type=range is not drawn 301 https://bugs.webkit.org/show_bug.cgi?id=39561 302 303 Support HTML5 range widgets. They are now drawn using the standard 304 GTK+ theme drawing mechanism. 305 306 * platform/gtk/RenderThemeGtk.cpp: 307 (WebCore::supportsFocus): Add focus support for parts of sliders. 308 (WebCore::setMozillaState): 309 Add the GtkThemeWidgetType argument and honor depressed states for slider thumbs. 310 (WebCore::paintMozillaGtkWidget): Pass in the widget type to setMozillaState. 311 (WebCore::RenderThemeGtk::paintSliderTrack): Added. 312 (WebCore::RenderThemeGtk::adjustSliderTrackStyle): Added. 313 (WebCore::RenderThemeGtk::paintSliderThumb): Added. 314 (WebCore::RenderThemeGtk::adjustSliderThumbStyle): Added. 315 (WebCore::RenderThemeGtk::adjustSliderThumbSize): Added support for non-media sliders. 316 * platform/gtk/RenderThemeGtk.h: Added new method declarations. 295 317 296 318 2010-06-07 Martin Robinson <mrobinson@igalia.com> -
trunk/WebCore/platform/gtk/RenderThemeGtk.cpp
r60724 r60805 214 214 case RadioPart: 215 215 case CheckboxPart: 216 case SliderHorizontalPart: 217 case SliderVerticalPart: 216 218 return true; 217 219 default: … … 276 278 } 277 279 278 static void setMozillaState(const RenderTheme* theme, Gtk WidgetState* state, RenderObject* o)280 static void setMozillaState(const RenderTheme* theme, GtkThemeWidgetType type, RenderObject* o, GtkWidgetState* state) 279 281 { 280 282 state->active = theme->isPressed(o); … … 285 287 state->isDefault = false; 286 288 state->canDefault = false; 287 state->depressed = false; 289 290 291 // FIXME: The depressed value should probably apply for other theme parts too. 292 // It must be used for range thumbs, because otherwise when the thumb is pressed, 293 // the rendering is incorrect. 294 if (type == MOZ_GTK_SCALE_THUMB_HORIZONTAL || type == MOZ_GTK_SCALE_THUMB_VERTICAL) 295 state->depressed = theme->isPressed(o); 296 else 297 state->depressed = false; 288 298 } 289 299 … … 302 312 303 313 GtkWidgetState mozState; 304 setMozillaState(theme, &mozState, o);314 setMozillaState(theme, type, o, &mozState); 305 315 306 316 int flags; … … 531 541 } 532 542 543 bool RenderThemeGtk::paintSliderTrack(RenderObject* object, const RenderObject::PaintInfo& info, const IntRect& rect) 544 { 545 ControlPart part = object->style()->appearance(); 546 ASSERT(part == SliderHorizontalPart || part == SliderVerticalPart); 547 548 GtkThemeWidgetType gtkPart = MOZ_GTK_SCALE_HORIZONTAL; 549 if (part == SliderVerticalPart) 550 gtkPart = MOZ_GTK_SCALE_VERTICAL; 551 552 return paintMozillaGtkWidget(this, gtkPart, object, info, rect); 553 } 554 555 void RenderThemeGtk::adjustSliderTrackStyle(CSSStyleSelector*, RenderStyle* style, Element*) const 556 { 557 style->setBoxShadow(0); 558 } 559 560 bool RenderThemeGtk::paintSliderThumb(RenderObject* object, const RenderObject::PaintInfo& info, const IntRect& rect) 561 { 562 ControlPart part = object->style()->appearance(); 563 ASSERT(part == SliderThumbHorizontalPart || part == SliderThumbVerticalPart); 564 565 GtkThemeWidgetType gtkPart = MOZ_GTK_SCALE_THUMB_HORIZONTAL; 566 if (part == SliderThumbVerticalPart) 567 gtkPart = MOZ_GTK_SCALE_THUMB_VERTICAL; 568 569 return paintMozillaGtkWidget(this, gtkPart, object, info, rect); 570 } 571 572 void RenderThemeGtk::adjustSliderThumbStyle(CSSStyleSelector*, RenderStyle* style, Element*) const 573 { 574 style->setBoxShadow(0); 575 } 576 533 577 void RenderThemeGtk::adjustSliderThumbSize(RenderObject* o) const 534 578 { 579 ControlPart part = o->style()->appearance(); 535 580 #if ENABLE(VIDEO) 536 if ( o->style()->appearance()== MediaSliderThumbPart) {581 if (part == MediaSliderThumbPart) { 537 582 o->style()->setWidth(Length(m_mediaSliderThumbWidth, Fixed)); 538 583 o->style()->setHeight(Length(m_mediaSliderThumbHeight, Fixed)); 539 } 584 } else 540 585 #endif 586 if (part == SliderThumbHorizontalPart || part == SliderThumbVerticalPart) { 587 gint width, height; 588 moz_gtk_get_scalethumb_metrics(part == SliderThumbHorizontalPart ? GTK_ORIENTATION_HORIZONTAL : GTK_ORIENTATION_VERTICAL, &width, &height); 589 o->style()->setWidth(Length(width, Fixed)); 590 o->style()->setHeight(Length(height, Fixed)); 591 } 541 592 } 542 593 -
trunk/WebCore/platform/gtk/RenderThemeGtk.h
r60440 r60805 123 123 virtual bool paintSearchFieldCancelButton(RenderObject*, const RenderObject::PaintInfo&, const IntRect&); 124 124 125 virtual void adjustSliderThumbSize(RenderObject*) const; 125 virtual bool paintSliderTrack(RenderObject*, const RenderObject::PaintInfo&, const IntRect&); 126 virtual void adjustSliderTrackStyle(CSSStyleSelector*, RenderStyle*, Element*) const; 127 128 virtual bool paintSliderThumb(RenderObject*, const RenderObject::PaintInfo&, const IntRect&); 129 virtual void adjustSliderThumbStyle(CSSStyleSelector*, RenderStyle*, Element*) const; 130 131 virtual void adjustSliderThumbSize(RenderObject* object) const; 126 132 127 133 #if ENABLE(VIDEO)
Note: See TracChangeset
for help on using the changeset viewer.