22 lines
956 B
Diff
22 lines
956 B
Diff
|
diff -up firefox-69.0.1/widget/gtk/WindowSurfaceWayland.cpp.old firefox-69.0.1/widget/gtk/WindowSurfaceWayland.cpp
|
||
|
--- firefox-69.0.1/widget/gtk/WindowSurfaceWayland.cpp.old 2019-09-19 15:05:13.586437024 +0200
|
||
|
+++ firefox-69.0.1/widget/gtk/WindowSurfaceWayland.cpp 2019-09-19 15:09:39.649079248 +0200
|
||
|
@@ -836,8 +836,15 @@ already_AddRefed<gfx::DrawTarget> Window
|
||
|
mBufferScreenRect = lockedScreenRect;
|
||
|
}
|
||
|
|
||
|
- mDrawToWaylandBufferDirectly =
|
||
|
- (windowRedraw || mRenderingCacheMode != CACHE_ALL);
|
||
|
+ if (mRenderingCacheMode == CACHE_ALL) {
|
||
|
+ mDrawToWaylandBufferDirectly = windowRedraw;
|
||
|
+ } else if (mRenderingCacheMode == CACHE_MISSING) {
|
||
|
+ mDrawToWaylandBufferDirectly = windowRedraw ||
|
||
|
+ ((lockSize.width*3 > lockedScreenRect.width &&
|
||
|
+ lockSize.height*3 > lockedScreenRect.height));
|
||
|
+ } else {
|
||
|
+ mDrawToWaylandBufferDirectly = true;
|
||
|
+ }
|
||
|
|
||
|
if (mDrawToWaylandBufferDirectly) {
|
||
|
LOGWAYLAND((" Direct drawing\n"));
|