feat(display): windows: full-screen, F1 cycles, OS bar (names, front, user); canvas-only (display-owned buffers, 4 max, reused); launchers OPEN (pm per app, terminal own), window caps minted by display; FORGET on launcher death via init courier; raster crate (font, chunked text); F-keys in input; terminal+snake on canvas; REDRAW gone
This commit is contained in:
@@ -24,8 +24,6 @@ pub trait Console {
|
||||
/// Keeps the caller of the request being handled, to answer later.
|
||||
fn save_reply(&mut self) -> Option<SavedReply>;
|
||||
fn answer(&mut self, reply: SavedReply, words: [usize; 4]);
|
||||
/// Takes input focus back from whoever took it, and clears the screen.
|
||||
fn take_focus(&mut self);
|
||||
fn interrupt(&mut self, notification: CapSlot);
|
||||
/// Lets go of a notification it was given.
|
||||
fn forget(&mut self, notification: CapSlot);
|
||||
@@ -259,15 +257,6 @@ impl<C: Console> Server for TerminalServer<C> {
|
||||
// Kept for later: what goes back now is not sent.
|
||||
types::terminal::READ => self.read(false).unwrap_or([0; 4]),
|
||||
types::terminal::READ_SECRET => self.read(true).unwrap_or([0; 4]),
|
||||
types::terminal::REDRAW => {
|
||||
// Taking focus back clears the screen.
|
||||
self.console.take_focus();
|
||||
self.drawn = [0; crate::grid::MAX_ROWS];
|
||||
self.grid.touch_all();
|
||||
self.redraw();
|
||||
self.console.flush();
|
||||
[0; 4]
|
||||
}
|
||||
types::terminal::ON_INTERRUPT => match cap {
|
||||
Some(n) if badge & types::terminal::CONTROL != 0 => {
|
||||
if let Some(old) = self.on_interrupt.replace(n) {
|
||||
|
||||
Reference in New Issue
Block a user