New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add an example app using the DirectComposition API #2458
Merged
+713
−20
Keeping a reference to back_buffer isn’t necessary.
9d99193
Select commit
4f67edd
Initial commit
SimonSapin 7dfa0b4
Copy example program from glutin’s README
SimonSapin 5c80249
Start to translate "How to initialize DirectComposition" example
SimonSapin fdab306
Return these pointers we so arduously obtained
SimonSapin 307b3f0
Add a COM pointer abstraction
SimonSapin 0507f4c
Import fewer single-use things
SimonSapin 58b9ab1
*mut *mut _ alreay requires unsafe to break invariants
SimonSapin a91c6a8
Return a struct
SimonSapin fc680d6
Switch to wio::ComPtr
SimonSapin 7ff8ed1
Create some DirectComposition visuals
SimonSapin f758d2b
Use the winit crate directly
SimonSapin 9effb30
Drop GL for now
SimonSapin e637e08
Remove click event handling
SimonSapin 955b210
Create swap chains
SimonSapin 7fd064c
Fork wio::ComPtr
SimonSapin 8d40fdf
First D3D rectangle!
SimonSapin 5c6ae42
Try to provide safe APIs. (Still needs safety review.)
SimonSapin e10178d
Separate the library crate from the demo app
SimonSapin 17c3957
Make the lib more library-like, keep hard-coded values in the demo app.
SimonSapin aff6c39
Move demo app’s unsafe code into a safe function
SimonSapin 39c125c
Two D3D things in the same window
SimonSapin 828c285
Alpha transparency!
SimonSapin c7eea0b
Scrolling without re-rendering
SimonSapin 281a511
Remove unused and unsound DerefMut
SimonSapin b8458bb
Repaint one of the visuals on click
SimonSapin b69dbd6
OMSetRenderTargets appears to be unnecessary here
SimonSapin a730f98
Keep one shared D3D context
SimonSapin ce02a22
Make sure we can keep rendering both visuals
SimonSapin 1842280
Rewrite ComPtr::cast in terms of new_with_uuid
SimonSapin c264c97
Keep a "render target view" together with each visual
SimonSapin 6a46a4b
Make D3D stuff public, move rendering to the app
SimonSapin bb9fbbf
Add EGL bindings through the gl_generator crate
SimonSapin d380331
Remove obsolete comment
SimonSapin 118d0b1
Link to ANGLE (but assume it is already built)
SimonSapin fa95b12
Create and initialize an EGL display
SimonSapin ac0ac79
Create EGL configs and surfaces
SimonSapin 8553788
Create EGL contexts and call MakeCurrent()
SimonSapin e7b9614
Use gleam
SimonSapin be24ac2
Attempt to use OpenGL through gleam + ANGLE + EGL… but the window sta…
SimonSapin fede929
Add Visual::present
SimonSapin 68d8fef
Remove public APIs for rendering with Direct3D
SimonSapin 6327ed1
Check for EGL errors more systematically
SimonSapin 959a56a
More well-defined public API for EGL things
SimonSapin 567f82c
Keep a reference to shared EGL things next to per-visual things
SimonSapin f3c21a3
Destroy EGL things in Drop
SimonSapin c35ccfc
Keep the DXGI back buffer object alive, in case that matters
SimonSapin 3c36118
Call glFinish() before IDXGISwapChain::Present
SimonSapin 023022a
Demo add: access gleam through visuals
SimonSapin 0b45cf7
Rename the crate with a dash
SimonSapin 75901d6
Move to a subdirectory, for merging into the webrender repo
SimonSapin efae554
Merge branch 'master' of ../rust-directcomposition into dcomp
SimonSapin 70937d6
Add direct-composition to the webrender workspace.
SimonSapin 9c11d75
Turns out ClearColor doesn’t clear, it just sets the color… Thanks So…
SimonSapin 9d99193
Keeping a reference to back_buffer isn’t necessary.
SimonSapin 872f356
Switch to gl_generator::StaticGenerator
SimonSapin 9238751
Add a private Check trait for EGL return values
SimonSapin a3b8aba
Move to-be-implemented EGL config choice to a function
SimonSapin 41d4283
eglDestroyContext/Surface already do the right thing for the current …
SimonSapin 6c8928d
Panic in the library on COM errors
SimonSapin 3dd8117
Use tuples for RGBA colors
SimonSapin 6c71656
One same EGL context can be used with multiple surfaces.
SimonSapin f942806
Initialize WebRender in the DComp demo app
SimonSapin eb5de06
Rename D3DVisual to AngleVisual
SimonSapin cc4980f
Add a Rectangle abstraction in the demo app
SimonSapin 42a25b4
Render with WebRender
SimonSapin 27be710
Block until the pipeline is ready, before rendering.
SimonSapin 8766dfc
Use the mozangle crate
SimonSapin aa39ae5
Use mozangle instead of the other angle crate.
SimonSapin 83edf97
Merge remote-tracking branch 'origin/master' into dcomp
SimonSapin 87812ae
Make the direct-composition demo compile to an empty program on non-w…
SimonSapin 9d92ad5
direct-composition tidy
SimonSapin 19b3df1
Update mozangle
SimonSapin 2062501
Appveyor: Switch to MSVC toolchain
SimonSapin 60d8f08
Build the direct-composition demo on Appveyor CI
SimonSapin c4a859d
Revert AppVeyor image change
SimonSapin
Merged
Add an example app using the DirectComposition API #2458
Keeping a reference to back_buffer isn’t necessary.
Jan 30, 2018
Jan 30, 2018
Jan 30, 2018
Jan 30, 2018
Feb 13, 2018
Feb 13, 2018
Feb 13, 2018
Feb 13, 2018
Feb 14, 2018
Feb 14, 2018
Feb 14, 2018
Feb 15, 2018
Feb 15, 2018
Feb 20, 2018
Feb 20, 2018
Feb 20, 2018
Feb 22, 2018
Feb 22, 2018
Feb 22, 2018
Feb 22, 2018
Feb 22, 2018
Feb 22, 2018
Feb 22, 2018
Feb 22, 2018
Feb 22, 2018
Feb 23, 2018
Feb 23, 2018
Feb 23, 2018
Feb 23, 2018
Feb 23, 2018
Feb 23, 2018
Feb 23, 2018
Feb 23, 2018
Feb 23, 2018
Feb 26, 2018
Feb 26, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 27, 2018
Feb 28, 2018
Feb 28, 2018
Feb 28, 2018
Feb 28, 2018
Feb 28, 2018
Feb 28, 2018
Feb 28, 2018
Feb 28, 2018
Feb 28, 2018
Feb 28, 2018
Feb 28, 2018
Feb 28, 2018
Mar 1, 2018
Mar 2, 2018
Mar 3, 2018
Mar 4, 2018
Mar 9, 2018
Mar 9, 2018
Mar 9, 2018
Mar 9, 2018
Mar 9, 2018
Mar 9, 2018
Mar 9, 2018
9d99193
Select commit
4f67edd
Initial commit
SimonSapin 7dfa0b4
Copy example program from glutin’s README
SimonSapin 5c80249
Start to translate "How to initialize DirectComposition" example
SimonSapin fdab306
Return these pointers we so arduously obtained
SimonSapin 307b3f0
Add a COM pointer abstraction
SimonSapin 0507f4c
Import fewer single-use things
SimonSapin 58b9ab1
*mut *mut _ alreay requires unsafe to break invariants
SimonSapin a91c6a8
Return a struct
SimonSapin fc680d6
Switch to wio::ComPtr
SimonSapin 7ff8ed1
Create some DirectComposition visuals
SimonSapin f758d2b
Use the winit crate directly
SimonSapin 9effb30
Drop GL for now
SimonSapin e637e08
Remove click event handling
SimonSapin 955b210
Create swap chains
SimonSapin 7fd064c
Fork wio::ComPtr
SimonSapin 8d40fdf
First D3D rectangle!
SimonSapin 5c6ae42
Try to provide safe APIs. (Still needs safety review.)
SimonSapin e10178d
Separate the library crate from the demo app
SimonSapin 17c3957
Make the lib more library-like, keep hard-coded values in the demo app.
SimonSapin aff6c39
Move demo app’s unsafe code into a safe function
SimonSapin 39c125c
Two D3D things in the same window
SimonSapin 828c285
Alpha transparency!
SimonSapin c7eea0b
Scrolling without re-rendering
SimonSapin 281a511
Remove unused and unsound DerefMut
SimonSapin b8458bb
Repaint one of the visuals on click
SimonSapin b69dbd6
OMSetRenderTargets appears to be unnecessary here
SimonSapin a730f98
Keep one shared D3D context
SimonSapin ce02a22
Make sure we can keep rendering both visuals
SimonSapin 1842280
Rewrite ComPtr::cast in terms of new_with_uuid
SimonSapin c264c97
Keep a "render target view" together with each visual
SimonSapin 6a46a4b
Make D3D stuff public, move rendering to the app
SimonSapin bb9fbbf
Add EGL bindings through the gl_generator crate
SimonSapin d380331
Remove obsolete comment
SimonSapin 118d0b1
Link to ANGLE (but assume it is already built)
SimonSapin fa95b12
Create and initialize an EGL display
SimonSapin ac0ac79
Create EGL configs and surfaces
SimonSapin 8553788
Create EGL contexts and call MakeCurrent()
SimonSapin e7b9614
Use gleam
SimonSapin be24ac2
Attempt to use OpenGL through gleam + ANGLE + EGL… but the window sta…
SimonSapin fede929
Add Visual::present
SimonSapin 68d8fef
Remove public APIs for rendering with Direct3D
SimonSapin 6327ed1
Check for EGL errors more systematically
SimonSapin 959a56a
More well-defined public API for EGL things
SimonSapin 567f82c
Keep a reference to shared EGL things next to per-visual things
SimonSapin f3c21a3
Destroy EGL things in Drop
SimonSapin c35ccfc
Keep the DXGI back buffer object alive, in case that matters
SimonSapin 3c36118
Call glFinish() before IDXGISwapChain::Present
SimonSapin 023022a
Demo add: access gleam through visuals
SimonSapin 0b45cf7
Rename the crate with a dash
SimonSapin 75901d6
Move to a subdirectory, for merging into the webrender repo
SimonSapin efae554
Merge branch 'master' of ../rust-directcomposition into dcomp
SimonSapin 70937d6
Add direct-composition to the webrender workspace.
SimonSapin 9c11d75
Turns out ClearColor doesn’t clear, it just sets the color… Thanks So…
SimonSapin 9d99193
Keeping a reference to back_buffer isn’t necessary.
SimonSapin 872f356
Switch to gl_generator::StaticGenerator
SimonSapin 9238751
Add a private Check trait for EGL return values
SimonSapin a3b8aba
Move to-be-implemented EGL config choice to a function
SimonSapin 41d4283
eglDestroyContext/Surface already do the right thing for the current …
SimonSapin 6c8928d
Panic in the library on COM errors
SimonSapin 3dd8117
Use tuples for RGBA colors
SimonSapin 6c71656
One same EGL context can be used with multiple surfaces.
SimonSapin f942806
Initialize WebRender in the DComp demo app
SimonSapin eb5de06
Rename D3DVisual to AngleVisual
SimonSapin cc4980f
Add a Rectangle abstraction in the demo app
SimonSapin 42a25b4
Render with WebRender
SimonSapin 27be710
Block until the pipeline is ready, before rendering.
SimonSapin 8766dfc
Use the mozangle crate
SimonSapin aa39ae5
Use mozangle instead of the other angle crate.
SimonSapin 83edf97
Merge remote-tracking branch 'origin/master' into dcomp
SimonSapin 87812ae
Make the direct-composition demo compile to an empty program on non-w…
SimonSapin 9d92ad5
direct-composition tidy
SimonSapin 19b3df1
Update mozangle
SimonSapin 2062501
Appveyor: Switch to MSVC toolchain
SimonSapin 60d8f08
Build the direct-composition demo on Appveyor CI
SimonSapin c4a859d
Revert AppVeyor image change
SimonSapin