diff options
author | Morten Johan Sørvig <morten.sorvig@qt.io> | 2020-09-03 14:29:04 +0200 |
---|---|---|
committer | Morten Johan Sørvig <morten.sorvig@qt.io> | 2020-10-23 20:19:30 +0200 |
commit | 07466a52c60dca9c1aeb1d40423bb9427d1a9583 (patch) | |
tree | 97c96db1db834bdb9bd4a0a26ec15581097f3106 /src/plugins/platforms/cocoa/qcocoawindow.mm | |
parent | 4485f0d626c44ca21e8dff6e336bbd99fdae6761 (diff) |
macOS: Remove alpha from default surface format
(This reverts commit 2ca1253b13e77643b3d2dd993a038ae2df882311).
This allowed use to avoid backing store RGB -> RGBA conversions
on the CPU back before macOS was layer backed. The conversion should be
GPU accelerated now, and we can return to the cross-platform default.
In addition, RGBA backingstores requires filling with transparent
pixels on each paint event, which causes increased CPU usage - often
for no reason if transparency effects are not used.
Change-Id: Ic795128b7e474b63f44f9f4f3526d0b205652e62
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Diffstat (limited to 'src/plugins/platforms/cocoa/qcocoawindow.mm')
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoawindow.mm | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index 38aa343d4f..272113545a 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -223,14 +223,7 @@ QCocoaWindow::~QCocoaWindow() QSurfaceFormat QCocoaWindow::format() const { - QSurfaceFormat format = window()->requestedFormat(); - - // Upgrade the default surface format to include an alpha channel. The default RGB format - // causes Cocoa to spend an unreasonable amount of time converting it to RGBA internally. - if (format.alphaBufferSize() < 0) - format.setAlphaBufferSize(8); - - return format; + return window()->requestedFormat(); } void QCocoaWindow::setGeometry(const QRect &rectIn) |