Closed Bug 2060349 Opened 1 day ago Closed 9 hours ago

Generalize PNativeLayerRemote to handle non-macOS surfaces

Categories

(Core :: Graphics, enhancement, P3)

enhancement

Tracking

()

RESOLVED FIXED
155 Branch
Tracking Status
firefox155 --- fixed

People

(Reporter: bradwerth, Assigned: bradwerth)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

To enable GPU process on more platforms, the NativeLayerRemote protocol needs to stop being macOS-specific. The IOSurfacePort is only meaningful for macOS/iOS. The NativeLayerRemote protocol needs a generalized surface union to accommodate other platforms.

Assignee: nobody → bwerth
Severity: -- → S3
Priority: -- → P3

This changes the macOS-specifc IOSurfacePort into a generic union
SurfaceTransfer, which is a union of platform-specific structures. The
SurfaceTransferMacOS struct has a single IOSurfacePort member. An
alternative hierarchy could define the SurfaceTransfer union with a
collection of platform-specific members. The chosen approach makes clear
which struct is associated with each platform.

This also fixes up usage sites in NativeLayerRemoteMac and in
NativeLayerRootRemoteMacParent.

Status: NEW → RESOLVED
Closed: 9 hours ago
Resolution: --- → FIXED
Target Milestone: --- → 155 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: