Summary: | [GTK] Flash in divs with overflow: auto is not positioned and clipped properly | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Martin Robinson <mrobinson> | ||||||||
Component: | WebKitGTK | Assignee: | Nobody <webkit-unassigned> | ||||||||
Status: | RESOLVED FIXED | ||||||||||
Severity: | Normal | CC: | abarth, cgarcia, eric, webkit.review.bot, xan.lopez | ||||||||
Priority: | P3 | Keywords: | Gtk | ||||||||
Version: | 528+ (Nightly build) | ||||||||||
Hardware: | PC | ||||||||||
OS: | Linux | ||||||||||
Attachments: |
|
Description
Martin Robinson
2011-04-01 11:01:00 PDT
Created attachment 87882 [details]
Patch
Comment on attachment 87882 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=87882&action=review > Source/WebCore/plugins/gtk/PluginViewGtk.cpp:553 > + GdkRectangle clipRect = m_clipRect; > + GdkRegion* clipRegion = gdk_region_rectangle(&clipRect); > + gdk_window_shape_combine_region(gtk_widget_get_window(widget), clipRegion, 0, 0); > + gdk_region_destroy(clipRegion); you need a #ifdef here since there's no GdkRegion in GTK+3 Created attachment 88121 [details]
Patch with fixes for GTK+ 3.x
Comment on attachment 88121 [details] Patch with fixes for GTK+ 3.x View in context: https://bugs.webkit.org/attachment.cgi?id=88121&action=review > Source/WebCore/plugins/gtk/PluginViewGtk.cpp:497 > + if (!m_clipRect.width() || !m_clipRect.height()) { maybe if (m_clipRect.isEmpty()) is more clear here. > Source/WebCore/plugins/gtk/PluginViewGtk.cpp:556 > + cairo_rectangle_int_t clipRect = m_clipRect; GdkRectangle is cairo_rectangle_int_t, so you can move GdkRectangle clipRect = m_clipRect; out of the #ifdef block and use it for both gtk2 and gtk3 Created attachment 88273 [details]
Patch with Carlos' suggestions
Comment on attachment 88273 [details] Patch with Carlos' suggestions View in context: https://bugs.webkit.org/attachment.cgi?id=88273&action=review LGTM. r=me > Source/WebCore/plugins/gtk/PluginViewGtk.cpp:495 > + // If the width or height are null, set the clipRect to null, indicating that s/the width/width/ Committed r84979: <http://trac.webkit.org/changeset/84979> http://trac.webkit.org/changeset/84979 might have broken SnowLeopard Intel Release (Tests) The following tests are not passing: accessibility/anchor-linked-anonymous-block-crash.html accessibility/aria-activedescendant-crash.html accessibility/aria-checkbox-checked.html accessibility/aria-checkbox-text.html accessibility/aria-combobox.html accessibility/aria-controls-with-tabs.html accessibility/aria-describedby-on-input.html accessibility/aria-disabled.html accessibility/aria-help.html accessibility/aria-hidden-update.html accessibility/aria-hidden-with-elements.html accessibility/aria-hidden.html accessibility/aria-label.html accessibility/aria-labelledby-on-input.html accessibility/aria-labelledby-overrides-label.html accessibility/aria-labelledby-stay-within.html accessibility/aria-link-supports-press.html accessibility/aria-list-and-listitem.html accessibility/aria-option-role.html accessibility/aria-presentational-role.html |