Fix Recent Documents List (continues #8952) (#9919)

@SomeoneToIgnore This code should 100% work for future Zed users, but
for current Zed users, Zed's internal list of recents may not be synced
w/ macOS' Recent Documents at first. If needed this can be fixed by
calling `cx.refresh_recent_documents` on startup, but that feels a bit
unnecessary.

Release Notes:

- Fixes behavior of Recent Documents list on macOS
This commit is contained in:
Daniel Zhu 2024-03-29 14:17:25 -07:00 committed by GitHub
parent 35e1229fbb
commit 30193647f3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 17 additions and 89 deletions

View file

@ -1129,17 +1129,14 @@ impl AppContext {
self.platform.set_menus(menus, &self.keymap.borrow());
}
/// Adds given path to list of recent paths for the application.
/// Adds given path to the bottom of the list of recent paths for the application.
/// The list is usually shown on the application icon's context menu in the dock,
/// and allows to open the recent files via that context menu.
pub fn add_recent_documents(&mut self, paths: &[PathBuf]) {
self.platform.add_recent_documents(paths);
/// If the path is already in the list, it will be moved to the bottom of the list.
pub fn add_recent_document(&mut self, path: &Path) {
self.platform.add_recent_document(path);
}
/// Clears the list of recent paths from the application.
pub fn clear_recent_documents(&mut self) {
self.platform.clear_recent_documents();
}
/// Dispatch an action to the currently active window or global action handler
/// See [action::Action] for more information on how actions work
pub fn dispatch_action(&mut self, action: &dyn Action) {