Changeset 264298 in webkit
- Timestamp:
- Jul 13, 2020, 5:17:04 AM (6 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 8 edited
-
ChangeLog (modified) (1 diff)
-
rendering/RenderTheme.cpp (modified) (1 diff)
-
rendering/RenderTheme.h (modified) (1 diff)
-
rendering/RenderThemeAdwaita.h (modified) (1 diff)
-
rendering/RenderThemeCocoa.h (modified) (1 diff)
-
rendering/RenderThemeCocoa.mm (modified) (1 diff)
-
rendering/RenderThemePlayStation.h (modified) (1 diff)
-
rendering/RenderThemeWin.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r264296 r264298 1 2020-07-13 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 [WPE][GTK4] Form controls are not painted when using threaded rendering 4 https://bugs.webkit.org/show_bug.cgi?id=214178 5 6 Reviewed by Žan Doberšek. 7 8 Which is the default for GTK4 since r263888. The problem is that RenderTheme::paint() returns early if the given 9 GraphicsContext doesn't have a platform context, assuming all RenderTheme implementations paint directly to the 10 platform context. This patch adds a pure virtual canPaint() to RenderTheme to be used as the early return. 11 12 * rendering/RenderTheme.cpp: 13 (WebCore::RenderTheme::paint): 14 * rendering/RenderTheme.h: 15 * rendering/RenderThemeAdwaita.h: 16 * rendering/RenderThemeCocoa.h: 17 * rendering/RenderThemeCocoa.mm: 18 (WebCore::RenderThemeCocoa::canPaint const): 19 * rendering/RenderThemePlayStation.h: 20 * rendering/RenderThemeWin.h: 21 1 22 2020-07-13 Xabier Rodriguez Calvar <calvaris@igalia.com> 2 23 -
trunk/Source/WebCore/rendering/RenderTheme.cpp
r264050 r264298 296 296 return false; 297 297 298 if (UNLIKELY(! paintInfo.context().hasPlatformContext()))298 if (UNLIKELY(!canPaint(paintInfo))) 299 299 return false; 300 300 -
trunk/Source/WebCore/rendering/RenderTheme.h
r264027 r264298 277 277 278 278 protected: 279 virtual bool canPaint(const PaintInfo&) const = 0; 279 280 virtual FontCascadeDescription& cachedSystemFontDescription(CSSValueID systemFontID) const; 280 281 virtual void updateCachedSystemFontDescription(CSSValueID systemFontID, FontCascadeDescription&) const = 0; -
trunk/Source/WebCore/rendering/RenderThemeAdwaita.h
r258698 r264298 35 35 36 36 private: 37 bool canPaint(const PaintInfo&) const final { return true; } 38 37 39 String extraDefaultStyleSheet() final; 38 40 #if ENABLE(VIDEO) -
trunk/Source/WebCore/rendering/RenderThemeCocoa.h
r263255 r264298 40 40 41 41 private: 42 bool canPaint(const PaintInfo&) const final; 42 43 bool shouldHaveCapsLockIndicator(const HTMLInputElement&) const final; 43 44 -
trunk/Source/WebCore/rendering/RenderThemeCocoa.mm
r264006 r264298 53 53 { 54 54 return static_cast<RenderThemeCocoa&>(RenderTheme::singleton()); 55 } 56 57 bool RenderThemeCocoa::canPaint(const PaintInfo& paintInfo) const 58 { 59 return paintInfo.context().hasPlatformContext(); 55 60 } 56 61 -
trunk/Source/WebCore/rendering/RenderThemePlayStation.h
r238913 r264298 35 35 36 36 private: 37 bool canPaint(const PaintInfo&) const final { return true; } 38 37 39 void updateCachedSystemFontDescription(CSSValueID systemFontID, FontCascadeDescription&) const final; 38 40 }; -
trunk/Source/WebCore/rendering/RenderThemeWin.h
r252308 r264298 142 142 virtual ~RenderThemeWin(); 143 143 144 bool canPaint(const PaintInfo&) const final { return true; } 145 144 146 // System fonts. 145 147 void updateCachedSystemFontDescription(CSSValueID, FontCascadeDescription&) const override;
Note:
See TracChangeset
for help on using the changeset viewer.