Bug 218588 - Add new display list item types in preparation for webkit.org/b/218426
Summary: Add new display list item types in preparation for webkit.org/b/218426
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Wenson Hsieh
URL:
Keywords: DoNotImportToRadar
Depends on: 218586
Blocks: 218426 218675
  Show dependency treegraph
 
Reported: 2020-11-04 14:51 PST by Wenson Hsieh
Modified: 2020-11-06 16:40 PST (History)
4 users (show)

See Also:


Attachments
Patch (18.49 KB, patch)
2020-11-04 15:10 PST, Wenson Hsieh
no flags Details | Formatted Diff | Diff
Depends on #218586 (19.46 KB, patch)
2020-11-05 16:12 PST, Wenson Hsieh
no flags Details | Formatted Diff | Diff
Patch (19.44 KB, patch)
2020-11-06 12:49 PST, Wenson Hsieh
no flags Details | Formatted Diff | Diff
Rename + add FIXME (16.43 KB, patch)
2020-11-06 13:57 PST, Wenson Hsieh
no flags Details | Formatted Diff | Diff
Rename + add FIXME (17.72 KB, patch)
2020-11-06 14:06 PST, Wenson Hsieh
simon.fraser: review+
Details | Formatted Diff | Diff
For EWS (17.52 KB, patch)
2020-11-06 14:31 PST, Wenson Hsieh
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Wenson Hsieh 2020-11-04 14:51:32 PST
• FlushContext
• SwitchToBuffer
• StrokeLine (though maybe this should be separated out..)
Comment 1 Wenson Hsieh 2020-11-04 15:10:45 PST Comment hidden (obsolete)
Comment 2 Wenson Hsieh 2020-11-05 16:12:33 PST Comment hidden (obsolete)
Comment 3 Wenson Hsieh 2020-11-06 12:49:22 PST
Created attachment 413468 [details]
Patch
Comment 4 Wenson Hsieh 2020-11-06 13:16:12 PST
Comment on attachment 413468 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=413468&action=review

> Source/WebCore/ChangeLog:40
> +        (WebCore::DisplayList::SwitchToBuffer::SwitchToBuffer):

(As smfr pointed out —) if we want to go this route, SwitchToBuffer should probably be renamed to SwitchToItemBuffer or something to avoid confusing w.r.t. ImageBuffers.
Comment 5 Wenson Hsieh 2020-11-06 13:57:32 PST Comment hidden (obsolete)
Comment 6 Wenson Hsieh 2020-11-06 14:06:29 PST
Created attachment 413478 [details]
Rename + add FIXME
Comment 7 Simon Fraser (smfr) 2020-11-06 14:10:15 PST
Comment on attachment 413478 [details]
Rename + add FIXME

View in context: https://bugs.webkit.org/attachment.cgi?id=413478&action=review

> Source/WebCore/platform/graphics/displaylists/DisplayListItemBuffer.cpp:238
> +        get<MetaCommandSwitchTo>().apply(context);

Or not?

> Source/WebCore/platform/graphics/displaylists/DisplayListItems.cpp:988
> +    // Handled by client.

Can't we flush via GraphicsContext?

> Source/WebCore/platform/graphics/displaylists/DisplayListItems.cpp:999
> +    // Handled by client.

ASSERT_NOT_REACHED()?
Comment 8 Wenson Hsieh 2020-11-06 14:17:21 PST
Comment on attachment 413478 [details]
Rename + add FIXME

View in context: https://bugs.webkit.org/attachment.cgi?id=413478&action=review

>> Source/WebCore/platform/graphics/displaylists/DisplayListItemBuffer.cpp:238
>> +        get<MetaCommandSwitchTo>().apply(context);
> 
> Or not?

Yep, removed!

>> Source/WebCore/platform/graphics/displaylists/DisplayListItems.cpp:988
>> +    // Handled by client.
> 
> Can't we flush via GraphicsContext?

My understanding is that context flushes are something handled at the ImageBuffer layer, rather than the GraphicsContext…though GraphicsContext::flush() does seem to be present for the USE(DIRECT2D) build.

>> Source/WebCore/platform/graphics/displaylists/DisplayListItems.cpp:999
>> +    // Handled by client.
> 
> ASSERT_NOT_REACHED()?

(I ended up just deleting `MetaCommandSwitchTo::apply` altogether)
Comment 9 Wenson Hsieh 2020-11-06 14:31:44 PST
Created attachment 413485 [details]
For EWS
Comment 10 EWS 2020-11-06 16:40:22 PST
Committed r269551: <https://trac.webkit.org/changeset/269551>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 413485 [details].