Add AppContext::dispatch_action and use it for app menu actions

Co-Authored-By: Marshall <marshall@zed.dev>
Co-Authored-By: Julia <julia@zed.dev>
This commit is contained in:
Nathan Sobo 2023-12-05 15:49:06 -07:00
parent 631e264e3c
commit 79567d1c87
5 changed files with 73 additions and 33 deletions

View file

@ -92,9 +92,9 @@ pub trait Platform: 'static {
fn on_reopen(&self, callback: Box<dyn FnMut()>);
fn on_event(&self, callback: Box<dyn FnMut(InputEvent) -> bool>);
fn on_menu_command(&self, callback: Box<dyn FnMut(&dyn Action)>);
fn on_will_open_menu(&self, callback: Box<dyn FnMut()>);
fn on_validate_menu_command(&self, callback: Box<dyn FnMut(&dyn Action) -> bool>);
fn on_app_menu_action(&self, callback: Box<dyn FnMut(&dyn Action)>);
fn on_will_open_app_menu(&self, callback: Box<dyn FnMut()>);
fn on_validate_app_menu_command(&self, callback: Box<dyn FnMut(&dyn Action) -> bool>);
fn os_name(&self) -> &'static str;
fn os_version(&self) -> Result<SemanticVersion>;