Feature Request
Summary
Add support for configuring the bar position independently per monitor, rather than a single global position value that applies to all screens.
Current behavior
~/.config/ambxst/config/bar.json has a single "position" field (e.g. "top") that is applied uniformly to every monitor. There is no way to have the bar at the top on one monitor and the bottom on another.
Desired behavior
A per-screen position map, for example:
{
"position": "top",
"screenPositions": {
"eDP-1": "top",
"DP-3": "bottom"
}
}
If a screen is not listed in screenPositions, it falls back to the global position value.
Motivation
Multi-monitor setups often have different physical arrangements — e.g. a laptop screen above an external monitor below it. In that case it makes ergonomic sense to put the bar at the bottom of the lower monitor (closest to the user) while keeping it at the top of the main display.
Implementation hint
In BarContent.qml, barPosition currently binds to Config.bar.position globally. Extending it to check Config.bar.screenPositions[screen.name] first (falling back to the global value) should be sufficient.
Environment
- Ambxst (latest)
- Hyprland multi-monitor setup (eDP-1 top, DP-3 bottom)
Feature Request
Summary
Add support for configuring the bar position independently per monitor, rather than a single global
positionvalue that applies to all screens.Current behavior
~/.config/ambxst/config/bar.jsonhas a single"position"field (e.g."top") that is applied uniformly to every monitor. There is no way to have the bar at the top on one monitor and the bottom on another.Desired behavior
A per-screen position map, for example:
{ "position": "top", "screenPositions": { "eDP-1": "top", "DP-3": "bottom" } }If a screen is not listed in
screenPositions, it falls back to the globalpositionvalue.Motivation
Multi-monitor setups often have different physical arrangements — e.g. a laptop screen above an external monitor below it. In that case it makes ergonomic sense to put the bar at the bottom of the lower monitor (closest to the user) while keeping it at the top of the main display.
Implementation hint
In
BarContent.qml,barPositioncurrently binds toConfig.bar.positionglobally. Extending it to checkConfig.bar.screenPositions[screen.name]first (falling back to the global value) should be sufficient.Environment