Improved multi-monitor support - #168
Open
cdmdotnet wants to merge 21 commits into
Open
Conversation
…Monitor" to toggle this new feature on and off
- Add window preview popup on hover for running application icons - Preview shows thumbnail cards (200×120) for each open window with title labels - Left-click a preview card to focus that window; middle-click to close it - Hovering a preview card outlines the corresponding live desktop window with a border - Preview Windows toggle added to Behaviour preferences (on by default) - Multi-monitor window indicator dots filtered per-monitor when Only Active Monitor is enabled - Only Active Monitor: when enabled, clicking an app icon with a single window on this monitor focuses it directly without smart-focus across all monitors
…ly run one dock per connected monitor without external scripts - Automatically start and stop per-monitor dock instances as displays are connected or disconnected, preventing duplicate docks when a monitor goes away - Lock monitor and "On Active Display" preferences for manager-owned docks so each child instance stays pinned to its assigned monitor
Update README.md to consistently use apt for Debian and derivates
…managed dock prefs (Monitor, ActiveDisplay) are now applied before PositionManager initialises, so the dock renders at the correct position from the first frame - Fix DBus object path assertion failures for monitors with hyphens in their names (e.g. DP-2-8): illegal characters are sanitised to underscores before use in the path - Fix position retry storm: raise retry ceiling from 3 to 10 with verbose logging, then warn once and stop fighting the WM rather than spamming CRITICAL on every configure event - Fix On Primary Display and Active Display preference controls not being locked when running as a monitor manager child instance; all three monitor-related controls are now insensitive when managed - Fix monitor manager not exiting when its only child dock is closed: remove unreliable loop.is_running() guard from the auto-quit check
…managed dock prefs (Monitor, ActiveDisplay) are now applied before PositionManager initialises, so the dock renders at the correct position from the first frame - Fix DBus object path assertion failures for monitors with hyphens in their names (e.g. DP-2-8): illegal characters are sanitised to underscores before use in the path - Fix position retry storm: raise retry ceiling from 3 to 10 with verbose logging, then warn once and stop fighting the WM rather than spamming CRITICAL on every configure event - Fix On Primary Display and Active Display preference controls not being locked when running as a monitor manager child instance; all three monitor-related controls are now insensitive when managed - Fix monitor manager not exiting when its only child dock is closed: remove unreliable loop.is_running() guard from the auto-quit check
- Fix docks positioned on the inner edge of a monitor incorrectly reserving work area space from the screen edge, making adjacent monitors unusable for window snapping, maximising, and resizing - Dock settings and launchers now follow the physical monitor rather than the port name, so configurations survive dock or hub changes between sessions
…irtual screen edge ┌──────────────────────────────────┬─────────────────────┐ ─── y=0 │ │ │ │ DP-2-1 │ DP-2-2 │ │ 3440×1440 │ 2560×1440 │ │ │ │ │ │ │ ─── y=124 │ │ ├──────────────────┐ │ │ │ eDP-1 │ │ │ │ 1920×1080 │ │ │ │ │ │ │ ├──────────────────┤ ─── y=1204 │ │ │ dock:bottom ✗ │ ├──────────────────────────────────┴─────────────────────┤──────────────────┘ ─── y=1204+48 │ dock:bottom ✓ │ dock:bottom ✓ │ └────────────────────────────────────────────────────────┘ ─── y=1440 x=0 x=3440 x=6000 x=7920 ✓ strut reserved ✗ no strut (before fix) / ✓ strut reserved (after fix) eDP-1 bottom (y=1204) does not reach screen bottom (y=1440) but no other monitor shares its x-range (x=6000–7920), so strut is safe.
Owner
|
Currently can't be merged due to conflicts. Plus this is actually several features rolled into one. It would be very nice if this was split up, the hover previews are something many have asked for, and are on our todo list! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
0.12.1:
0.12.2:
plank --monitor-manager) to automatically run one dock per connected monitor without external scripts0.12.4