Commit Graph
3548 Commits
Author SHA1 Message Date
Antonio Scandurra f67e2bea29 Refresh windows when OS appearance changes 2022-09-14 11:47:43 +02:00
Antonio Scandurra 0f9ff57568 Show the correct icon in status bar 2022-09-13 17:00:46 +02:00
Antonio Scandurra 97ccb16c97 Rework status bar item to use a custom view 2022-09-13 16:20:34 +02:00
Antonio Scandurra a102b3ba4b Start on a real status bar item implementation 2022-09-13 14:51:00 +02:00
Antonio Scandurra b3dd09a0f2 🎨 2022-09-13 14:50:18 +02:00
Antonio Scandurra a34eaa3606 Pass reused parameter to Presenter::dispatch_event for status items 2022-09-13 14:49:49 +02:00
Antonio Scandurra 11d47f5c72 Use a transparent layer for status bar
This allows the compositor to blend the GPUI view with the background.
2022-09-13 14:11:50 +02:00
Antonio Scandurra a9c2881831 Set contents scale and drawable size when creating status metal layer 2022-09-13 14:11:50 +02:00
Antonio Scandurra 2acd215bb8 Wire up event handling for status items 2022-09-13 14:11:50 +02:00
Antonio Scandurra 6578af6f3b WIP: Start rendering GPUI views to macOS status bar 2022-09-13 14:11:48 +02:00
Antonio Scandurra f50c6af001 Encapsulate metal layer into Renderer 2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo e803dd9f72 Remove platform::WindowContext trait
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo 1c810d7e8d WIP: Show status bar item with a backing metal layer
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio Scandurra 2b9fe0a2e6 WIP 2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo c03300df29 WIP: Start on App::add_status_bar_item
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo 21c91a29e7 Add the ability to hide the titlebar when creating windows
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio Scandurra ca618b02b6 Render surfaces correctly when encoded in 420YpCbCr8BiPlanarFullRange 2022-09-13 14:10:13 +02:00
Antonio Scandurra 4e0380c9fb Debounce frame assignment using a watch 2022-09-13 14:10:13 +02:00
Antonio Scandurra d407f521db WIP: render screen-sharing frames 2022-09-13 14:10:13 +02:00
Antonio Scandurra 645338cff8 Register to publishing of remote tracks 2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo 37ca5651ee Parameterize LiveKit URL
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo 376e674748 Avoid double boxing of oneshot when calling LKRoomPublishVideoTrack
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio Scandurra b154c3c9ee Expose Swift errors as anyhow::Result in live_kit 2022-09-13 14:10:13 +02:00
Antonio Scandurra df3ab13441 Publish screen-sharing video track on the newly-created Room 2022-09-13 14:10:13 +02:00
Nathan Sobo 7bf64ec23e Add ability to get a screen share track for a window
And also list windows
2022-09-13 14:10:13 +02:00
Nathan Sobo 5347c7d678 Connect to LiveKit room in capture example 2022-09-13 14:10:13 +02:00
Nathan SoboandAntonio Scandurra 3c2566fc11 Copy WebRTC.framework when building livekit crate
We determine the location of the target executable directory in a somewhat hacky way, but it seems reasonably stable.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-09-13 14:10:13 +02:00
Nathan Sobo 4bcc008cbf WIP: Start on live_kit crate that uses a C-based bridge 2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo 52f32b50b2 WIP: Talk to Swift via C without involving Objective-C
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio Scandurra 5fec784580 Link Swift stdlib 2022-09-13 14:10:13 +02:00
Antonio Scandurra 46abb1cbf6 WIP 2022-09-13 14:10:13 +02:00
Antonio Scandurra 6c28b21728 WIP: Start binding LiveKit 2022-09-13 14:10:13 +02:00
Nathan Sobo b51abc5a63 Read the frame data out of the CMSampleBuffer
Still not sending it anywhere, but think I'm reading it correctly.
2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo 047b5114f1 Start on a new, more abstract CompressionSession primitive
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo 600029a918 WIP: Start converting H264 samples to Annex-B NALs
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio Scandurra 7054fa61f2 Start compressing captured frames as H264 2022-09-13 14:10:13 +02:00
Antonio Scandurra f621d290fe Move core_media into media crate 2022-09-13 14:10:13 +02:00
Antonio Scandurra a02e388ea2 Honor scale factor when rendering 2022-09-13 14:10:13 +02:00
Antonio Scandurra 3f66dd678a 🔥 2022-09-13 14:10:13 +02:00
Antonio Scandurra fcf6aa15eb Return results for fallible media APIs 2022-09-13 14:10:13 +02:00
Antonio Scandurra 79a7a0e0e7 Capture screen in BGRA8 and render it in capture example app 2022-09-13 14:10:13 +02:00
Nathan Sobo 37da841716 Start on using CVMetalTextureCache 2022-09-13 14:10:13 +02:00
Nathan Sobo 531ffc01c9 Pass CVImageBuffers into GPUI instead of IOSurfaces 2022-09-13 14:10:13 +02:00
Nathan Sobo 0430bbf7d9 WIP: Start on Renderer::render_surfaces but really it's nothing 2022-09-13 14:10:13 +02:00
Nathan Sobo db88ee2f4c Handle captured frames in the background 2022-09-13 14:10:13 +02:00
Antonio Scandurra 71d9a880d6 WIP: Start pushing native surface to Scene
This is segfaulting for some reason, so that's the next step to figure out.
2022-09-13 14:10:13 +02:00
Antonio Scandurra d30e360664 Retrieve IOSurface in Rust callback as opposed to doing so in delegate 2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo c4110edb78 Extract io_surface crate and invoke custom callback on frame sample
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo e12eaf8c58 Start on Scene::push_surface
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio ScandurraandNathan Sobo d473b52f5a Remove src/dummy.m
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00