[webkit-changes] [WebKit/WebKit] da1201: Remove lazy repaints from RenderView and more
Anne van Kesteren
noreply at github.com
Tue Dec 12 08:51:40 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: da12017bead8aa1b692483acae18be32813f8940
https://github.com/WebKit/WebKit/commit/da12017bead8aa1b692483acae18be32813f8940
Author: Anne van Kesteren <annevk at annevk.nl>
Date: 2023-12-12 (Tue, 12 Dec 2023)
Changed paths:
M Source/WebCore/platform/ControlStates.h
M Source/WebCore/rendering/RenderAttachment.cpp
M Source/WebCore/rendering/RenderBox.cpp
M Source/WebCore/rendering/RenderElement.cpp
M Source/WebCore/rendering/RenderElement.h
M Source/WebCore/rendering/RenderTheme.cpp
M Source/WebCore/rendering/RenderTheme.h
M Source/WebCore/rendering/RenderView.cpp
M Source/WebCore/rendering/RenderView.h
Log Message:
-----------
Remove lazy repaints from RenderView and more
https://bugs.webkit.org/show_bug.cgi?id=266272
Reviewed by Aditya Keerthi.
I looked into whether the controlStates argument of
RenderTheme::paint() could be removed as it's only used by a single
theme.
I then discovered that ControlStates's needsRepaint() always returned
false. I then checked other state in ControlStates and that was
similarly not manipulated anywhere and thus could be removed.
Since needsRepaint() was false, scheduleLazyRepaint() was never called.
This allowed for removal of lazy repaints and their Timer
infrastructure.
I suspect that we want to get rid of ControlStates in its entirety in
favor of ControlStyle, but baby steps.
* Source/WebCore/platform/ControlStates.h:
(WebCore::ControlStates::setStates):
(WebCore::ControlStates::needsRepaint const): Deleted.
(WebCore::ControlStates::setNeedsRepaint): Deleted.
(WebCore::ControlStates::isDirty const): Deleted.
(WebCore::ControlStates::setDirty): Deleted.
(WebCore::ControlStates::timeSinceControlWasFocused const): Deleted.
(WebCore::ControlStates::setTimeSinceControlWasFocused): Deleted.
(WebCore::ControlStates::platformControl const): Deleted.
(WebCore::ControlStates::setPlatformControl): Deleted.
(): Deleted.
* Source/WebCore/rendering/RenderAttachment.cpp:
(WebCore::RenderAttachment::paintReplaced):
* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::RenderBox::willBeDestroyed):
(WebCore::RenderBox::paintBoxDecorations):
(WebCore::controlStatesRendererMap): Deleted.
(WebCore::controlStatesForRenderer): Deleted.
(WebCore::removeControlStatesForRenderer): Deleted.
* Source/WebCore/rendering/RenderElement.cpp:
(WebCore::RenderElement::RenderElement):
* Source/WebCore/rendering/RenderElement.h:
(WebCore::RenderElement::setRenderBoxNeedsLazyRepaint): Deleted.
(WebCore::RenderElement::renderBoxNeedsLazyRepaint const): Deleted.
* Source/WebCore/rendering/RenderTheme.cpp:
(WebCore::RenderTheme::paint):
(WebCore::RenderTheme::updateControlStatesForRenderer const): Deleted.
* Source/WebCore/rendering/RenderTheme.h:
* Source/WebCore/rendering/RenderView.cpp:
(WebCore::RenderView::RenderView):
(WebCore::RenderView::scheduleLazyRepaint): Deleted.
(WebCore::RenderView::unscheduleLazyRepaint): Deleted.
(WebCore::RenderView::lazyRepaintTimerFired): Deleted.
* Source/WebCore/rendering/RenderView.h:
Canonical link: https://commits.webkit.org/271938@main
More information about the webkit-changes
mailing list