Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: da12017bead8aa1b692483acae18be32813f8940
      
https://github.com/WebKit/WebKit/commit/da12017bead8aa1b692483acae18be32813f8940
  Author: Anne van Kesteren <[email protected]>
  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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to