gpui: Activate the window example along with the Quit action (#30790)

Make the gpui examples more consistent by activating the window upon
startup.
Most of the examples have 

```rust
activate(true) 
```

so this one should as well.

Make it easier to exit the example with the `cmd-q` KeyBinding

Release Notes:

- N/A
This commit is contained in:
Michael Angerman 2025-05-26 00:10:35 -07:00 committed by GitHub
parent c7da6283cc
commit df98d94a24
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 10 additions and 2 deletions

View file

@ -26,6 +26,7 @@ actions!(
Paste, Paste,
Cut, Cut,
Copy, Copy,
Quit,
] ]
); );
@ -741,5 +742,7 @@ fn main() {
cx.activate(true); cx.activate(true);
}) })
.unwrap(); .unwrap();
cx.on_action(|_: &Quit, cx| cx.quit());
cx.bind_keys([KeyBinding::new("cmd-q", Quit, None)]);
}); });
} }

View file

@ -1,6 +1,6 @@
use gpui::{ use gpui::{
App, Application, Bounds, Context, SharedString, Timer, Window, WindowBounds, WindowKind, App, Application, Bounds, Context, KeyBinding, SharedString, Timer, Window, WindowBounds,
WindowOptions, div, prelude::*, px, rgb, size, WindowKind, WindowOptions, actions, div, prelude::*, px, rgb, size,
}; };
struct SubWindow { struct SubWindow {
@ -172,6 +172,8 @@ impl Render for WindowDemo {
} }
} }
actions!(window, [Quit]);
fn main() { fn main() {
Application::new().run(|cx: &mut App| { Application::new().run(|cx: &mut App| {
let bounds = Bounds::centered(None, size(px(800.0), px(600.0)), cx); let bounds = Bounds::centered(None, size(px(800.0), px(600.0)), cx);
@ -193,5 +195,8 @@ fn main() {
}, },
) )
.unwrap(); .unwrap();
cx.activate(true);
cx.on_action(|_: &Quit, cx| cx.quit());
cx.bind_keys([KeyBinding::new("cmd-q", Quit, None)]);
}); });
} }