Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FvwmPager: New mode IsShared for DesktopConfiguration shared. #1003

Merged
merged 2 commits into from
Apr 10, 2024

Conversation

somiaj
Copy link
Collaborator

@somiaj somiaj commented Apr 9, 2024

First this cleans up FvwmPager's handling of DesktopConfiguration shared. It should now correctly show the location of all windows and monitors when using shared mode, along with limit what clicks do. Only clicks in a desktop that a monitor is currently occupied will move through the pages, of the monitor on that desk. To move different monitors between desks MonitorLabels should be used.

Here is a screenshot of the normal mode and IsShared mode when using DesktopConfiguration shared showing 4 desks in a 2x2 grid. Each desk is further split up into 2x2 pages.

mpv-shot0001

The pager on the left is what shared mode looks like in a regular pager. As you can see there is a lot of blank space for each desktop for the other monitor, and since only a single monitor can view the desktop at a time, the space won't be used. The pager on the right is using the shared mode, only showing a single monitor at a time. In this case the unused space is no longer shown and the MonitorLabels can be used to move monitors between the desks.

Note, this is built on top of #1002, so needs to be merged after.

@somiaj somiaj force-pushed the js/pager-is-shared branch from 6ac2c63 to 21ca7fc Compare April 10, 2024 14:42
@ThomasAdam ThomasAdam self-assigned this Apr 10, 2024
@ThomasAdam ThomasAdam added type:enhancement Augmenting an existing feature relates:module Issue is in module code labels Apr 10, 2024
@ThomasAdam ThomasAdam added this to the 1.1.1 milestone Apr 10, 2024
somiaj added 2 commits April 10, 2024 17:01
  Just keep track of the pointer, no need for all the string
  comparisons. This only changes how monitor_to_track and
  the current_monitor are stored, functionality should be the same.
  Add two options, IsShared, and IsNotShared, to turn IsShared mode
  on and off. When IsShared mode is set, every desktop only shows
  a single monitor like when tracking a single monitor, but the monitor
  shown is the most recent monitor to visit this disk. This can work
  with mixed results in per-monitor mode, but is meant for shared mode.
  There is currently no blocks to ensure it works well with other modes,
  so millage may vary.

  This also includes multiple tweaks/fixes, to make the pager work
  with shared mode better.
@ThomasAdam ThomasAdam merged commit f317b33 into main Apr 10, 2024
5 checks passed
@ThomasAdam ThomasAdam deleted the js/pager-is-shared branch April 10, 2024 16:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
relates:module Issue is in module code type:enhancement Augmenting an existing feature
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

2 participants