24dbae685801b451fba51d0e3788a821038c9321: Bug 1491442 - Support BasicCompositor OMTC rendering in the CoreAnimation path. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:14:22 +0000 - rev 488412
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Support BasicCompositor OMTC rendering in the CoreAnimation path. r=mattwoodrow Now CoreAnimation supports all rendering paths. The BasicCompositor OMTC path is used when hardware acceleration is disabled, for example in safe mode or when the user manually disabled it. Differential Revision: https://phabricator.services.mozilla.com/D38758
5aa5080461f8910b5b3e131f7164d236536aaf79: Bug 1491442 - Render accelerated windows into mContentLayer, using OMTC. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:13:52 +0000 - rev 488411
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Render accelerated windows into mContentLayer, using OMTC. r=mattwoodrow This makes windows that render using CompositorOGL or WebRender show content. Differential Revision: https://phabricator.services.mozilla.com/D40517
7711755e979e4ef6a37d0fec4bf3de41e8e4d148: Bug 1491442 - Make nsChildView create a NativeLayerRootCA and fill it with content when painting using BasicLayers (which used to go through drawRect). r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:13:35 +0000 - rev 488410
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Make nsChildView create a NativeLayerRootCA and fill it with content when painting using BasicLayers (which used to go through drawRect). r=mattwoodrow This makes context menus work. Regular windows are still blank at this point. This introduces a visual regression on 10.9: context menus and panels now no longer have a shadow. Only 10.10 and above support shadows on transparent windows that use CoreAnimation; 10.9 is not able to obtain the shadow shape on those types of windows. I think this is an acceptable regression to take. We want to use CoreAnimation for all window types because it simplifies the code (no need to handle two paths) and because it avoids expensive mode switches if we realize too late that a window we just opened is supposed to use CoreAnimation. Differential Revision: https://phabricator.services.mozilla.com/D40516
cf2547ffbfd4d065c691e00255ce8fdda5396cb3: Bug 1491442 - Add interfaces mozilla::layers::NativeLayerRoot and NativeLayer, and add CoreAnimation implementations NativeLayerRootCA and NativeLayerCA. r=jrmuizel
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:30:02 +0000 - rev 488409
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Add interfaces mozilla::layers::NativeLayerRoot and NativeLayer, and add CoreAnimation implementations NativeLayerRootCA and NativeLayerCA. r=jrmuizel NativeLayerRoot and NativeLayer allow building up a flat layer "tree" of sibling layers. They're created and manipulated with a synchronous-looking API, but any changes will only be applied to the underlying native layers when ApplyChanges() is called. This ensures that the modifications can be limited to run within a CoreAnimation transaction, and on a thread of the caller's choosing. In the near future I'm planning to have LayerManagerComposite create these layers. That's the reason for the pseudo-abstracted cross-platform C++ API: LayerManagerComposite can create and place the layers, and any painting into the layer surfaces will happen in the compositor implementations with platform-specific code. For now, the CoreAnimation implementation is the only implementation. I think the current API will let us use the same infrastructure for DirectComposite layers on Windows, but we'll likely need to make some API modifications once we attempt that. The classes are threadsafe; their methods can be called on any thread and the caller is responsible for sufficient synchronization. In reality, there are only two threads that would have a reason to use these layers: The compositor thread and the main thread. The main thread creates and destroys the NativeLayerRootCA, and sometimes it calls ApplyChanges, e.g. during window resizes. It also calls SetBackingScale. All other methods are usually only called on the compositor thread. Differential Revision: https://phabricator.services.mozilla.com/D26407
372c720b6ce81374cfca793c8ee4e0c9cade03b2: Bug 1491442 - When gfx.core-animation.enabled is true, use CoreAnimation for all windows and create an empty layer. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:13:19 +0000 - rev 488408
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - When gfx.core-animation.enabled is true, use CoreAnimation for all windows and create an empty layer. r=mattwoodrow This makes mPixelHostingView layer-backed, and that layer will be empty. This patch also causes all windows (including context menus, tooltips, arrow panels etc.) to use CoreAnimation layers for the window frame. This is achieved by calling setWantsLayer:YES on every window's content view. After this changeset, all windows will still be empty. Differential Revision: https://phabricator.services.mozilla.com/D38755
e89c3a6b2cd8eb8c8c328b86433765217ee7684e: Bug 1491442 - Disable all non-CoreAnimation rendering paths when gfx.core-animation.enabled is set. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:12:18 +0000 - rev 488407
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Disable all non-CoreAnimation rendering paths when gfx.core-animation.enabled is set. r=mattwoodrow This patch leaves you with empty windows everywhere. We will build the new rendering paths from the ground up in the upcoming patches. Differential Revision: https://phabricator.services.mozilla.com/D38754
9ffcdc648de567afa343e025298a2e2a424e7512: Bug 1491442 - If CoreAnimation is enabled, don't clip the TitlebarGradientView to rounded corners, and don't draw the title string on top of it. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:11:51 +0000 - rev 488406
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - If CoreAnimation is enabled, don't clip the TitlebarGradientView to rounded corners, and don't draw the title string on top of it. r=mattwoodrow Unlike what the old comment in its drawRect method says, this isn't actually dependent on the NSFullSizeContentViewWindowMask. Any window that uses CoreAnimation layers for its window frame will apply these effects automatically. Differential Revision: https://phabricator.services.mozilla.com/D38753
8e82722106c0d88adb7cbf322d764e72e7848838: Bug 1491442 - Remove -[ChildView isUsingOpenGL] and use mUsingOMTCompositor instead. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:11:27 +0000 - rev 488405
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Remove -[ChildView isUsingOpenGL] and use mUsingOMTCompositor instead. r=mattwoodrow We always use OMTC when using OpenGL. We also currently always use OpenGL when using OMTC, but that's about to change. Differential Revision: https://phabricator.services.mozilla.com/D38752
d66f54731eeb5e3117561152005e9a48a22c3838: Bug 1491442 - Add some documentation to mPixelHostingView. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:11:03 +0000 - rev 488404
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Add some documentation to mPixelHostingView. r=mattwoodrow Differential Revision: https://phabricator.services.mozilla.com/D38750
9216803cdf01a74cb7f66632e04dae97651f3913: Bug 1491442 - Fix comments that talk about BasicLayers but intend to say BasicCompositor. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:10:40 +0000 - rev 488403
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Fix comments that talk about BasicLayers but intend to say BasicCompositor. r=mattwoodrow BasicLayers is main thread drawing. BasicCompositor is compositor-thread drawing. Differential Revision: https://phabricator.services.mozilla.com/D38749
82b63cd1a2d378c8ffd461b27b24a07d758be866: Bug 1491442 - Fix up and document mNeedsGLUpdate locking semantics, and remove a stray semicolon. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:10:11 +0000 - rev 488402
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Fix up and document mNeedsGLUpdate locking semantics, and remove a stray semicolon. r=mattwoodrow Differential Revision: https://phabricator.services.mozilla.com/D38748
9dcce9060dac1eb0dd77b46433eb27d576311ca5: Bug 1491442 - Fold DoWidgetCleanup and DetachWidget into Compositor::Destroy. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:09:48 +0000 - rev 488401
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Fold DoWidgetCleanup and DetachWidget into Compositor::Destroy. r=mattwoodrow Differential Revision: https://phabricator.services.mozilla.com/D40867
38705780d7f8cb91622359df841cf2549529c445: Bug 1491442 - Add CompositorWidget::DoCompositorCleanup() to give the widget a chance to clean up any state from PreRender/PostRender on the correct thread. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:09:26 +0000 - rev 488400
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Add CompositorWidget::DoCompositorCleanup() to give the widget a chance to clean up any state from PreRender/PostRender on the correct thread. r=mattwoodrow Differential Revision: https://phabricator.services.mozilla.com/D40514
fb949ba38402edbe1decc678c5a8ee65f446a5a5: Bug 1491442 - Make reftest readback read from the current render target. r=mattwoodrow
Markus Stange <mstange@themasta.com> - Fri, 16 Aug 2019 01:09:03 +0000 - rev 488399
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1491442 - Make reftest readback read from the current render target. r=mattwoodrow This removes the assumption that there is a default framebuffer to read from, in order to prepare for a world in which all rendering goes into non-default framebuffers. The current render target's framebuffer is already bound when this function is called. Differential Revision: https://phabricator.services.mozilla.com/D40513
1cca4f1af964c1214bc04bd9d5b34fee4023ed87: Bug 1574077 - Add credui.dll to delayload DLL. r=dmajor
Makoto Kato <m_kato@ga2.so-net.ne.jp> - Thu, 15 Aug 2019 18:47:45 +0000 - rev 488398
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1574077 - Add credui.dll to delayload DLL. r=dmajor Bug 1498518 adds credui.dll to use OS's authenticate dialog for WebAuth support, but this isn't required at start up etc. So we should move this to delay load DLL list. Differential Revision: https://phabricator.services.mozilla.com/D42079
c009e486b4c2e82a516e95cfb635523ea215e275: Bug 1568053 - Redesign contrast info in color picker (front-end), r=yzen,gl
Maliha Islam <mislam@mozilla.com> - Fri, 16 Aug 2019 00:55:27 +0000 - rev 488397
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1568053 - Redesign contrast info in color picker (front-end), r=yzen,gl Differential Revision: https://phabricator.services.mozilla.com/D40925
d9a83f0385d54763aabbadaea607a7451381beba: Bug 1568053 - Create node actor method for getting complex bg color data for text nodes and refactor existing contrast calculation methods, r=yzen,gl
Maliha Islam <mislam@mozilla.com> - Fri, 16 Aug 2019 00:55:26 +0000 - rev 488396
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1568053 - Create node actor method for getting complex bg color data for text nodes and refactor existing contrast calculation methods, r=yzen,gl Differential Revision: https://phabricator.services.mozilla.com/D40086
71900a2d797bfc96bfdd2572d550df4bf349650b: Bug 1541631 - Part 8: Store breakable-line and breakpoint-position data in the source-actor store. r=jlast
Logan Smyth <loganfsmyth@gmail.com> - Thu, 15 Aug 2019 21:44:48 +0000 - rev 488395
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1541631 - Part 8: Store breakable-line and breakpoint-position data in the source-actor store. r=jlast Differential Revision: https://phabricator.services.mozilla.com/D42033
5d59b6f19e89a2c09c10c7a26200c9a23892263f: Bug 1541631 - Part 7: Convert memoizeableAction to be AsyncValue-based for easy interop. r=jlast
Logan Smyth <loganfsmyth@gmail.com> - Thu, 15 Aug 2019 21:45:47 +0000 - rev 488394
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1541631 - Part 7: Convert memoizeableAction to be AsyncValue-based for easy interop. r=jlast Differential Revision: https://phabricator.services.mozilla.com/D42032
1e83299913b542621054db8783390cba8674d973: Bug 1541631 - Part 6: Remove unused action return values. r=jlast
Logan Smyth <loganfsmyth@gmail.com> - Thu, 15 Aug 2019 21:45:48 +0000 - rev 488393
Push 113908 by ccoroiu@mozilla.com at Fri, 16 Aug 2019 09:57:53 +0000
Bug 1541631 - Part 6: Remove unused action return values. r=jlast Differential Revision: https://phabricator.services.mozilla.com/D42031
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 tip