This document outlines functionality, user interface design and considerations for improvements of screen management in Plasma.
- _screen_: the combination of outputs
- _output_: an output is a monitor connection to the system, it usually has the following properties:
- connected: cable plugged in or not
- enabled: used for displaying content, disconnected outputs can't be
- list of modes: each mode is a resolution (screen width and height pixels) and a refresh rate (for example 60Hz)
- position: the relative position to the top-left corner of the whole screen (useful only for multiscreen setups)
- current mode: the currently set mode
- preferred mode: the preferred mode, usually one of the highest resolution with a pleasant refresh rate
- mode: a resolution (screen width and height pixels) and a refresh rate (for example 1920x1080 at 60Hz)
Here are some examples of what kind of scenarios kscreen serves.
The user has a more or less static setup, for example two monitors next to each other on a desktop computer.
After installation, the user has to set the relative position of the displays, so the mouse cursor leaves one and enters another output on the physically adjacent edges. Ideally, he does this once, from then on, settings are stored and adjusted on login.
A laptop that is sometimes connected to a docking station with additional monitors connected.
Docking stations are basically multiple connections in one. Docking station-connected monitors are essentially the same as directly connected monitors, through HDMI, VGA, etc.. They're usually identified as DisplayPort connections. An interesting detail about docked monitors is that they might not show up until connected, so they might be either displayed, but disconnected (and thus not enabled), connected and enabled, or not present at all. Not displaying disconnected displays in the UI of course solved this dichotomy, at the technical level, it's handled correctly.
A projector is connected to a laptop to hold a presentation.