3 releases
0.1.2 | Sep 11, 2024 |
---|---|
0.1.1 | Sep 6, 2024 |
0.1.0 | Aug 28, 2024 |
#195 in GUI
Used in dynisland
57KB
1.5K
SLoC
Dynamic LayoutManager
Shown activities
It shows config.max_activities
activities in a row. If there are more activities than that, you can scroll through them with mouse forward/backward buttons or by dragging on an activity in minimal mode.
Active activities
It keeps maximum config.max_active
activities in compact mode. You can put an activity in compact mode by left clicking on it.
If there are already config.max_active
activities in compact mode, the active one that is farther from the new one will be put in minimal mode.
Configuration
To enable this layout manager, put "DynamicLayout"
in the layout setting
Default values
-
auto_minimize_timout
: If an activity is in expanded or overlay mode, when the mouse leaves the widget forauto_minimize_timeout
seconds, it will be put in compact mode. -
max_activities
: Maximum number of activities shown. -
max_active
: Maximum number of activities shown in compact mode.
-
reorder_on_add
: Will reorder the activities according toactivity_order
when a module adds a new activity. -
reorder_on_reload
: Will reorder the activities according toactivity_order
when a the config/css is changed ordynisland reload
is sent. -
window_postion
: Position of the window, works like other layer shell bars. -
window_postion.layer_shell
: Puts the window in a layer shell or a normal window.
Multiple windows definitions
windows
: A map of window names to window configuration.
windows
example
windows: {
"": ( // configures the default windows, widgets defined with a non-existing window will be put here
// all of these can be omitted and the default value will be used
window_position: (
layer: ("top"),
h_anchor: ("Center"),
v_anchor: ("start"),
margin_x: 0,
margin_y: 0,
exclusive_zone: -1,
monitor: "DP-1",
layer_shell: true,
),
auto_minimize_timeout: 5000,
max_activities: 3,
max_active: 3,
reorder_on_add: true,
reorder_on_reload: true,
activity_order: [ // List of activities in the order they should be shown, you can use the activity id (given by `dynisland list-activities`) or the module name.
"MusicModule",
"ScriptModule",
]
),
"main_montor_left": ( // creates a new window named "main_montor_left"
window_position: ( // the values in `window_position` can be omitted and the default value will be used
h_anchor: ("start"),
monitor: "DP-1",
),
activity_order: [
"ClockModule",
"MusicModule",
]
),
}
Dependencies
~24–34MB
~621K SLoC