-
Notifications
You must be signed in to change notification settings - Fork 38
Add some bindings to the private CGSRegion
APIs.
#50
Conversation
specify that only the corners of a window can be transparent. By doing this, we significantly improve performance by allowing the window server to perform occlusion culling under most of the window. This patch relies on the private `CGSRegion` and the private `-[NSCGSWindow setOpaqueRegion:]` APIs. Requires servo/core-graphics-rs#50 and servo/cocoa-rs#129.
This looks fine, but had a question on the return value. r=me if that doesn't matter.
|
specify that only the corners of a window can be transparent. By doing this, we significantly improve performance by allowing the window server to perform occlusion culling under most of the window. This patch relies on the private `CGSRegion` and the private `-[NSCGSWindow setOpaqueRegion:]` APIs. Requires servo/core-graphics-rs#50 and servo/cocoa-rs#129.
…etajack cocoa: Add a new platform-specific API that allows library consumers to specify that only the corners of a window can be transparent. By doing this, we significantly improve performance by allowing the window server to perform occlusion culling under most of the window. This patch relies on the private `CGSRegion` and the private `-[NSCGSWindow setOpaqueRegion:]` APIs. Requires servo/core-graphics-rs#50 and servo/cocoa-rs#129. r? @metajack <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/glutin/94) <!-- Reviewable:end -->
Review status: all files reviewed at latest revision, 2 unresolved discussions. src/private.rs, line 45 [r1] (raw file):
|
Review status: all files reviewed at latest revision, 2 unresolved discussions. src/private.rs, line 45 [r1] (raw file):
|
Updated. r? @metajack |
Add the comment, squash, and r=me.
|
@bors-servo: r=metajack |
📌 Commit 3c37274 has been approved by |
Add some bindings to the private `CGSRegion` APIs. These enable us to tell the window server about the opaque regions of the window so that it can perform occlusion culling. See https://github.com/NUIKit/CGSInternal/blob/master/CGSRegion.h r? @metajack <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/core-graphics-rs/50) <!-- Reviewable:end -->
These enable us to tell the window server about the opaque regions of the window so that it can perform occlusion culling. See https://github.com/NUIKit/CGSInternal/blob/master/CGSRegion.h
☀️ Test successful - travis |
specify that only the corners of a window can be transparent. By doing this, we significantly improve performance by allowing the window server to perform occlusion culling under most of the window. This patch relies on the private `CGSRegion` and the private `-[NSCGSWindow setOpaqueRegion:]` APIs. Requires servo/core-graphics-rs#50 and servo/cocoa-rs#129.
…etajack cocoa: Add a new platform-specific API that allows library consumers to specify that only the corners of a window can be transparent. By doing this, we significantly improve performance by allowing the window server to perform occlusion culling under most of the window. This patch relies on the private `CGSRegion` and the private `-[NSCGSWindow setOpaqueRegion:]` APIs. Requires servo/core-graphics-rs#50 and servo/cocoa-rs#129. r? @metajack <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/glutin/94) <!-- Reviewable:end -->
specify that only the corners of a window can be transparent. By doing this, we significantly improve performance by allowing the window server to perform occlusion culling under most of the window. This patch relies on the private `CGSRegion` and the private `-[NSCGSWindow setOpaqueRegion:]` APIs. Requires servo/core-graphics-rs#50 and servo/cocoa-rs#129.
…etajack cocoa: Add a new platform-specific API that allows library consumers to specify that only the corners of a window can be transparent. By doing this, we significantly improve performance by allowing the window server to perform occlusion culling under most of the window. This patch relies on the private `CGSRegion` and the private `-[NSCGSWindow setOpaqueRegion:]` APIs. Requires servo/core-graphics-rs#50 and servo/cocoa-rs#129. r? @metajack <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/glutin/94) <!-- Reviewable:end -->
specify that only the corners of a window can be transparent. By doing this, we significantly improve performance by allowing the window server to perform occlusion culling under most of the window. This patch relies on the private `CGSRegion` and the private `-[NSCGSWindow setOpaqueRegion:]` APIs. Requires servo/core-graphics-rs#50 and servo/cocoa-rs#129.
These enable us to tell the window server about the opaque regions of
the window so that it can perform occlusion culling.
See https://github.com/NUIKit/CGSInternal/blob/master/CGSRegion.h
r? @metajack
This change is![Reviewable](https://camo.githubusercontent.com/1541c4039185914e83657d3683ec25920c672c6c5c7ab4240ee7bff601adec0b/68747470733a2f2f72657669657761626c652e696f2f7265766965775f627574746f6e2e737667)