Changeset 267398 in webkit
- Timestamp:
- Sep 21, 2020, 11:08:19 PM (6 years ago)
- Location:
- trunk/Source
- Files:
-
- 10 edited
-
WebCore/ChangeLog (modified) (1 diff)
-
WebCore/platform/graphics/cairo/BackingStoreBackendCairoImpl.cpp (modified) (2 diffs)
-
WebCore/platform/graphics/cairo/BackingStoreBackendCairoX11.cpp (modified) (2 diffs)
-
WebCore/platform/graphics/cairo/CairoUtilities.cpp (modified) (1 diff)
-
WebCore/platform/graphics/cairo/CairoUtilities.h (modified) (2 diffs)
-
WebKit/ChangeLog (modified) (1 diff)
-
WebKit/Shared/cairo/ShareableBitmapCairo.cpp (modified) (1 diff)
-
WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp (modified) (1 diff)
-
WebKit/UIProcess/gtk/AcceleratedBackingStoreWayland.cpp (modified) (2 diffs)
-
WebKit/UIProcess/gtk/AcceleratedBackingStoreX11.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r267394 r267398 1 2020-09-21 Adrian Perez de Castro <aperez@igalia.com> 2 3 [GTK] Bump cairo version to support HiDPI 4 https://bugs.webkit.org/show_bug.cgi?id=133378 5 6 Reviewed by Carlos Garcia Campos. 7 8 Remove conditional compilation around cairo_{g,s}et_device_scale() as there is no need to 9 support older versions of Cairo which lack the functions. The minimum version of Cairo 10 being required by CMake is 1.14.0, which already includes them. 11 12 No new tests needed. 13 14 * platform/graphics/cairo/BackingStoreBackendCairoImpl.cpp: 15 (WebCore::createCairoImageSurfaceWithFastMalloc): Use cairo_surface_set_device_scale() 16 directly. 17 (WebCore::BackingStoreBackendCairoImpl::scroll): Use cairo_surface_get_device_scale() 18 directly. 19 * platform/graphics/cairo/BackingStoreBackendCairoX11.cpp: 20 (WebCore::BackingStoreBackendCairoX11::BackingStoreBackendCairoX11): Use 21 cairo_surface_set_device_scale() directly. 22 (WebCore::BackingStoreBackendCairoX11::scroll): Use cairo_surface_get_device_scale() 23 directly. 24 * platform/graphics/cairo/CairoUtilities.cpp: Remove helper functions 25 cairoSurfaceSetDeviceScale() and cairoSurfaceGetDeviceScale(). 26 * platform/graphics/cairo/CairoUtilities.h: Ditto. 27 1 28 2020-09-21 Tim Horton <timothy_horton@apple.com> 2 29 -
trunk/Source/WebCore/platform/graphics/cairo/BackingStoreBackendCairoImpl.cpp
r250027 r267398 36 36 RefPtr<cairo_surface_t> surface = adoptRef(cairo_image_surface_create_for_data(static_cast<unsigned char*>(surfaceData), CAIRO_FORMAT_ARGB32, size.width(), size.height(), stride)); 37 37 cairo_surface_set_user_data(surface.get(), &s_surfaceDataKey, surfaceData, [](void* data) { fastFree(data); }); 38 cairo SurfaceSetDeviceScale(surface.get(), deviceScaleFactor, deviceScaleFactor);38 cairo_surface_set_device_scale(surface.get(), deviceScaleFactor, deviceScaleFactor); 39 39 return surface; 40 40 } … … 62 62 IntSize size(cairo_image_surface_get_width(m_surface.get()), cairo_image_surface_get_height(m_surface.get())); 63 63 double xScale, yScale; 64 cairo SurfaceGetDeviceScale(m_surface.get(), xScale,yScale);64 cairo_surface_get_device_scale(m_surface.get(), &xScale, &yScale); 65 65 ASSERT(xScale == yScale); 66 66 m_scrollSurface = createCairoImageSurfaceWithFastMalloc(size, xScale); -
trunk/Source/WebCore/platform/graphics/cairo/BackingStoreBackendCairoX11.cpp
r186279 r267398 38 38 39 39 m_surface = adoptRef(cairo_xlib_surface_create(display, m_pixmap.get(), visual, scaledSize.width(), scaledSize.height())); 40 cairo SurfaceSetDeviceScale(m_surface.get(), deviceScaleFactor, deviceScaleFactor);40 cairo_surface_set_device_scale(m_surface.get(), deviceScaleFactor, deviceScaleFactor); 41 41 } 42 42 … … 56 56 57 57 double xScale, yScale; 58 cairo SurfaceGetDeviceScale(m_surface.get(), xScale,yScale);58 cairo_surface_get_device_scale(m_surface.get(), &xScale, &yScale); 59 59 ASSERT(xScale == yScale); 60 60 -
trunk/Source/WebCore/platform/graphics/cairo/CairoUtilities.cpp
r263941 r267398 362 362 } 363 363 364 void cairoSurfaceSetDeviceScale(cairo_surface_t* surface, double xScale, double yScale)365 {366 // This function was added pretty much simultaneous to when 1.13 was branched.367 #if HAVE(CAIRO_SURFACE_SET_DEVICE_SCALE)368 cairo_surface_set_device_scale(surface, xScale, yScale);369 #else370 UNUSED_PARAM(surface);371 ASSERT_UNUSED(xScale, 1 == xScale);372 ASSERT_UNUSED(yScale, 1 == yScale);373 #endif374 }375 376 void cairoSurfaceGetDeviceScale(cairo_surface_t* surface, double& xScale, double& yScale)377 {378 #if HAVE(CAIRO_SURFACE_SET_DEVICE_SCALE)379 cairo_surface_get_device_scale(surface, &xScale, &yScale);380 #else381 UNUSED_PARAM(surface);382 xScale = 1;383 yScale = 1;384 #endif385 }386 387 364 RefPtr<cairo_region_t> toCairoRegion(const Region& region) 388 365 { -
trunk/Source/WebCore/platform/graphics/cairo/CairoUtilities.h
r255477 r267398 32 32 #include "IntSize.h" 33 33 #include <cairo.h> 34 35 // This function was added pretty much simultaneous to when 1.13 was branched.36 #define HAVE_CAIRO_SURFACE_SET_DEVICE_SCALE CAIRO_VERSION_MAJOR > 1 || (CAIRO_VERSION_MAJOR == 1 && CAIRO_VERSION_MINOR >= 13)37 34 38 35 #if USE(FREETYPE) … … 93 90 IntSize cairoSurfaceSize(cairo_surface_t*); 94 91 void flipImageSurfaceVertically(cairo_surface_t*); 95 void cairoSurfaceSetDeviceScale(cairo_surface_t*, double xScale, double yScale);96 void cairoSurfaceGetDeviceScale(cairo_surface_t*, double& xScale, double& yScale);97 92 98 93 RefPtr<cairo_region_t> toCairoRegion(const Region&); -
trunk/Source/WebKit/ChangeLog
r267394 r267398 1 2020-09-21 Adrian Perez de Castro <aperez@igalia.com> 2 3 [GTK] Bump cairo version to support HiDPI 4 https://bugs.webkit.org/show_bug.cgi?id=133378 5 6 Reviewed by Carlos Garcia Campos. 7 8 Remove conditional compilation around cairo_{g,s}et_device_scale() as there is no need to 9 support older versions of Cairo which lack the functions. The minimum version of Cairo 10 being required by CMake is 1.14.0, which already includes them. 11 12 * Shared/cairo/ShareableBitmapCairo.cpp: 13 (WebKit::ShareableBitmap::paint): use cairo_surface_set_device_scale() directly. 14 * UIProcess/API/gtk/WebKitWebViewBase.cpp: 15 (webkitWebViewBaseTakeViewSnapshot): Ditto. 16 * UIProcess/gtk/AcceleratedBackingStoreWayland.cpp: 17 (WebKit::AcceleratedBackingStoreWayland::displayBuffer): Ditto. 18 (WebKit::AcceleratedBackingStoreWayland::downloadTexture): Ditto. 19 * UIProcess/gtk/AcceleratedBackingStoreX11.cpp: 20 (WebKit::AcceleratedBackingStoreX11::update): Ditto. 21 1 22 2020-09-21 Tim Horton <timothy_horton@apple.com> 2 23 -
trunk/Source/WebKit/Shared/cairo/ShareableBitmapCairo.cpp
r249375 r267398 72 72 { 73 73 RefPtr<cairo_surface_t> surface = createSurfaceFromData(data(), m_size); 74 cairo SurfaceSetDeviceScale(surface.get(), scaleFactor, scaleFactor);74 cairo_surface_set_device_scale(surface.get(), scaleFactor, scaleFactor); 75 75 FloatRect destRect(dstPoint, srcRect.size()); 76 76 -
trunk/Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp
r266718 r267398 2342 2342 2343 2343 RefPtr<cairo_surface_t> surface = adoptRef(cairo_image_surface_create(CAIRO_FORMAT_RGB24, size.width(), size.height())); 2344 cairo SurfaceSetDeviceScale(surface.get(), deviceScale, deviceScale);2344 cairo_surface_set_device_scale(surface.get(), deviceScale, deviceScale); 2345 2345 2346 2346 RefPtr<cairo_t> cr = adoptRef(cairo_create(surface.get())); -
trunk/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreWayland.cpp
r266726 r267398 402 402 fastFree(data); 403 403 }); 404 cairo SurfaceSetDeviceScale(m_surface.get(), m_webPage.deviceScaleFactor(), m_webPage.deviceScaleFactor());404 cairo_surface_set_device_scale(m_surface.get(), m_webPage.deviceScaleFactor(), m_webPage.deviceScaleFactor()); 405 405 } 406 406 … … 473 473 m_surface = adoptRef(cairo_image_surface_create(CAIRO_FORMAT_ARGB32, textureSize.width(), textureSize.height())); 474 474 475 cairo SurfaceSetDeviceScale(m_surface.get(), m_webPage.deviceScaleFactor(), m_webPage.deviceScaleFactor());475 cairo_surface_set_device_scale(m_surface.get(), m_webPage.deviceScaleFactor(), m_webPage.deviceScaleFactor()); 476 476 477 477 GLuint fb; -
trunk/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreX11.cpp
r267024 r267398 210 210 #endif 211 211 m_surface = adoptRef(cairo_xlib_surface_create(display, pixmap, visual, size.width(), size.height())); 212 WebCore::cairoSurfaceSetDeviceScale(m_surface.get(), deviceScaleFactor, deviceScaleFactor);212 cairo_surface_set_device_scale(m_surface.get(), deviceScaleFactor, deviceScaleFactor); 213 213 m_damage = XDamageCreate(display, pixmap, XDamageReportNonEmpty); 214 214 XDamageNotifier::singleton().add(m_damage.get(), [this] {
Note:
See TracChangeset
for help on using the changeset viewer.