Changeset 206305 in webkit


Ignore:
Timestamp:
Sep 23, 2016 8:49:56 AM (8 years ago)
Author:
Carlos Garcia Campos
Message:

[GTK] BadDamage X error in /webkit2/WebKitWebView/preferred-size
https://bugs.webkit.org/show_bug.cgi?id=162489

Reviewed by Michael Catanzaro.

Do a XSync right after creating/destroying the XDamage used by the redirected window in X11.

  • UIProcess/gtk/AcceleratedBackingStoreX11.cpp:

(WebKit::AcceleratedBackingStoreX11::~AcceleratedBackingStoreX11):
(WebKit::AcceleratedBackingStoreX11::update):

Location:
trunk/Source/WebKit2
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r206296 r206305  
     12016-09-23  Carlos Garcia Campos  <cgarcia@igalia.com>
     2
     3        [GTK] BadDamage X error in /webkit2/WebKitWebView/preferred-size
     4        https://bugs.webkit.org/show_bug.cgi?id=162489
     5
     6        Reviewed by Michael Catanzaro.
     7
     8        Do a XSync right after creating/destroying the XDamage used by the redirected window in X11.
     9
     10        * UIProcess/gtk/AcceleratedBackingStoreX11.cpp:
     11        (WebKit::AcceleratedBackingStoreX11::~AcceleratedBackingStoreX11):
     12        (WebKit::AcceleratedBackingStoreX11::update):
     13
    1142016-09-23  Antoine Quint  <graouts@apple.com>
    215
  • trunk/Source/WebKit2/UIProcess/gtk/AcceleratedBackingStoreX11.cpp

    r206294 r206305  
    119119        XDamageNotifier::singleton().remove(m_damage.get());
    120120        m_damage.reset();
     121        XSync(downcast<PlatformDisplayX11>(PlatformDisplay::sharedDisplay()).native(), False);
    121122    }
    122123}
     
    128129        return;
    129130
     131    Display* display = downcast<PlatformDisplayX11>(PlatformDisplay::sharedDisplay()).native();
     132
    130133    if (m_surface) {
    131134        if (m_damage) {
    132135            XDamageNotifier::singleton().remove(m_damage.get());
    133136            m_damage.reset();
     137            XSync(display, False);
    134138        }
    135139        m_surface = nullptr;
     
    147151    size.scale(deviceScaleFactor);
    148152
    149     Display* display = downcast<PlatformDisplayX11>(PlatformDisplay::sharedDisplay()).native();
    150153    ASSERT(downcast<PlatformDisplayX11>(PlatformDisplay::sharedDisplay()).native() == GDK_DISPLAY_XDISPLAY(gdk_display_get_default()));
    151154    GdkVisual* visual = gdk_screen_get_rgba_visual(gdk_screen_get_default());
     
    159162            gtk_widget_queue_draw(m_webPage.viewWidget());
    160163    });
     164    XSync(display, False);
    161165}
    162166
Note: See TracChangeset for help on using the changeset viewer.