Class DisplayConfiguration¶
Defined in File display_configuration.h
Nested Relationships¶
Nested Types¶
Class Documentation¶
-
class DisplayConfiguration¶
Enable display configuration. The config file (miral::MirRunner::display_config_file()) is located via the XDG Base Directory Specification. Vis: ($XDG_CONFIG_HOME or $HOME/.config followed by $XDG_CONFIG_DIRS)
Remark
Since MirAL 2.4
Note
From MirAL 3.8 will monitor the configuration file or, if none found, for the creation of a file in $XDG_CONFIG_HOME or $HOME/.config. Changes to this file will be reloaded. In addition, the selected layout may be overridden using a corresponding file: display_config_file() + “-layout” which will also be monitored and changes reloaded
Public Functions
-
auto layout_option() -> ConfigurationOption¶
Provide the default ‘display-layout’ configuration option.
-
void select_layout(std::string const &layout)¶
Select a layout from the configuration.
-
auto list_layouts() -> std::vector<std::string>¶
List all layouts found in the config file.
-
void add_output_attribute(std::string const &key)¶
Enable a custom output attribute in the .display YAML.
Remark
Since MirAL 3.8
-
auto layout_userdata(std::string const &key) const -> std::optional<std::any const>¶
Retrieve the user data associated with the active layout for this provided key. Callers should provide this user data via [layout_userdata_builder].
Remark
Since MirAL 5.3
-
void layout_userdata_builder(std::string const &key, std::function<std::any(Node const &value)> const &builder) const¶
Enable a custom layout attribute in the .display YAML. The caller must provides the key of this custom attribute in addition to a function that will be used to build the custom payload that is associated with the layer. This function is provided with the raw details of the node at the provided key. The function must return any piece of data that may later be retrieved via [layout_userdata].
Remark
Since MirAL 5.3
-
void operator()(mir::Server &server) const¶
-
~DisplayConfiguration()¶
-
DisplayConfiguration(DisplayConfiguration const&)¶
-
auto operator=(DisplayConfiguration const&) -> DisplayConfiguration&¶
-
class Node¶
A class providing access to an arbitrary piece of data from the [DisplayConfiguration]. This is specifically useful when a user wants to extend the based display configuration with some sort of custom payload (e.g. a user may want to extend the layout configuration with information describing the position and size of specific applications).
Remark
Since MirAL 5.3
Public Types
-
auto layout_option() -> ConfigurationOption¶