T39: a session's row shows its status, the most pressing first: waiting by its kind, an error, work with Ely's progress ring or a still loader, done, then a failed last command, then idle; hover lists each record's state, app, title and message, disarmed and cut; typing sees done and error, herdr's aside; a hidden session that starts waiting sets its title strong until shown
This commit is contained in:
12 files changed
+449
-22
No files matched your search
+4
-1
@@ -154,7 +154,9 @@ impl Workspace {
|
||||
folder: launch.cwd,
|
||||
reports: launch.reports,
|
||||
bell: false,
|
||||
waiting: false,
|
||||
status: None,
|
||||
state: None,
|
||||
_events: events,
|
||||
});
|
||||
}
|
||||
@@ -184,7 +186,7 @@ impl Workspace {
|
||||
}
|
||||
}
|
||||
|
||||
/// Shows session `index`, clears its bell, and gives its terminal the keys.
|
||||
/// Shows session `index`, clears its bell and its waiting mark, and gives its terminal the keys.
|
||||
pub fn select(&mut self, index: usize, window: &mut Window, cx: &mut Context<Self>) {
|
||||
if index >= self.sessions.len() {
|
||||
return;
|
||||
@@ -196,6 +198,7 @@ impl Workspace {
|
||||
}
|
||||
let session = &mut self.sessions[index];
|
||||
session.bell = false;
|
||||
session.waiting = false;
|
||||
window.focus(&session.terminal.focus_handle(cx), cx);
|
||||
let folder = session.folder.clone();
|
||||
self.files.update(cx, |files, cx| files.show(&folder, cx));
|
||||
|
||||
Reference in new issue
Block a user