Skip to content

window list display #117

Description

@PerBothner

Create a UI for displaying and selecting from a list of windows. Similar to the display status output, but dynamically updated, and selectable. Sub-windows should be grouped by top-level window, and otherwise (by default) ordered by window-number. Detached sessions are listed as if belonging to a pseudo-window at the end.

As window state changes, the display is updated on-the-fly by messages from the server.

Should allow selecting multiple windows. Selected windows should be indicated by "selection colors", typically white-on-blue.

Should be available as either a popup (short-term) or an actual window/pane.
Enter will focus/activate the selected window (or one of them if multiple windows are selected).
Esc will exit and focus the "old" window (the one that was focused before the window-list was focused).
In popup mode, Enter or Esc will remove the popup.

Key-bindings similar to navigating menus or file browsers. Primary navigation is with mouse or up/down-arrow. Multi-select like Gnome Files or KDE Dolphin or macOS Finder.

Can use a window specifier list to initialize/change selected window(s). This can be entered either via a domterm sub-command or a popup text entry field.

Selected windows should have some indicator/feedback in the actual windows, not just in the window list display.

A context menu will allow various operations, including: close; detach; create new top-level window and move all selected window to be a tab in the new window; move each selected window to a separate top-level window; move next foucused window; copy selection (in the format of a window specifier list) to the clipboard. "Moving" a detached session attaches it to a new window/pane.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions