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

DesktopConfiguration global inherits behaviour from per-monitor mode #236

Closed
NsCDE opened this issue Sep 28, 2020 · 2 comments · Fixed by #237
Closed

DesktopConfiguration global inherits behaviour from per-monitor mode #236

NsCDE opened this issue Sep 28, 2020 · 2 comments · Fixed by #237
Assignees
Labels
type:bug Something's broken!
Milestone

Comments

@NsCDE
Copy link
Contributor

NsCDE commented Sep 28, 2020

When FVWM3 is not configured in per-monitor mode, or explicitly configured as global, desks behaviour is inconsistent. It looks like active desk is changed only for active monitor (where pointer resides). This can be confirmed by looking into FvwmPager and calling FvwmIdent on newly opened windows which are on monitor opposite of the one which was active during GotoDesk - in other words, this windows are still on the previous desk like in per-monitor configuration mode.

My steps for producing this behaviour were two monitors: left (primary) and right secondary and changing windows with buttons, direct commands or with FvwmPager.

@issue-label-bot issue-label-bot bot added the type:bug Something's broken! label Sep 28, 2020
@issue-label-bot
Copy link

Issue-Label Bot is automatically applying the label bug to this issue, with a confidence of 0.53. Please mark this comment with 👍 or 👎 to give our bot feedback!

Links: app homepage, dashboard and code for this bot.

@ThomasAdam ThomasAdam self-assigned this Sep 28, 2020
@ThomasAdam ThomasAdam added this to the 1.0.1 milestone Sep 28, 2020
ThomasAdam added a commit that referenced this issue Sep 28, 2020
When FvwmPager is launched without a "Monitor" config, it assumes the
remit is global -- that is, it will show windows from all monitors.
However, this could be at odds with the DesktopConfiguration setting.

When FvwmPager performs tasks such as switching pages and/or desks, it
does so by sending Fvwm commands directly.  This includes monitor
information which is not what's needed if DesktopConfiguration is
global.

Therefore, only send the monitor string across if FvwmPager is already
tracking a specific monitor.

Helps with #236
ThomasAdam added a commit that referenced this issue Sep 28, 2020
When "DesktopConfiguration global" is used, keep in sync the
virtual_scr struct so that this doesn't clash for commands which assume
per-monitor.

Fixes #236
ThomasAdam added a commit that referenced this issue Sep 29, 2020
When "DesktopConfiguration global" is used, keep in sync the
virtual_scr struct so that this doesn't clash for commands which assume
per-monitor.

Fixes #236
ThomasAdam added a commit that referenced this issue Sep 29, 2020
When "DesktopConfiguration global" is used, keep in sync the
virtual_scr struct so that this doesn't clash for commands which assume
per-monitor.

Fixes #236
@NsCDE
Copy link
Contributor Author

NsCDE commented Sep 30, 2020

Hi Thomas,

Testing this in global and per-monitor mode and I don't see this iregularities any more. I think you fixed it.

ThomasAdam added a commit that referenced this issue Sep 30, 2020
When listing the new desk, don't try and compare a module's output, but
rather reuse the existing fpmonitor_this() function.

Fixes #236

(cherry picked from commit 57dc6da)
ThomasAdam added a commit that referenced this issue Sep 30, 2020
When "DesktopConfiguration global" is used, keep in sync the
virtual_scr struct so that this doesn't clash for commands which assume
per-monitor.

Fixes #236
@ThomasAdam ThomasAdam linked a pull request Sep 30, 2020 that will close this issue
ThomasAdam added a commit that referenced this issue Sep 30, 2020
When FvwmPager is launched without a "Monitor" config, it assumes the
remit is global -- that is, it will show windows from all monitors.
However, this could be at odds with the DesktopConfiguration setting.

When FvwmPager performs tasks such as switching pages and/or desks, it
does so by sending Fvwm commands directly.  This includes monitor
information which is not what's needed if DesktopConfiguration is
global.

Therefore, only send the monitor string across if FvwmPager is already
tracking a specific monitor.

Helps with #236
ThomasAdam added a commit that referenced this issue Sep 30, 2020
When listing the new desk, don't try and compare a module's output, but
rather reuse the existing fpmonitor_this() function.

Fixes #236

(cherry picked from commit 57dc6da)
ThomasAdam added a commit that referenced this issue Sep 30, 2020
When "DesktopConfiguration global" is used, keep in sync the
virtual_scr struct so that this doesn't clash for commands which assume
per-monitor.

Fixes #236
mikeandmore pushed a commit to mikeandmore/fvwm3 that referenced this issue Nov 28, 2020
When FvwmPager is launched without a "Monitor" config, it assumes the
remit is global -- that is, it will show windows from all monitors.
However, this could be at odds with the DesktopConfiguration setting.

When FvwmPager performs tasks such as switching pages and/or desks, it
does so by sending Fvwm commands directly.  This includes monitor
information which is not what's needed if DesktopConfiguration is
global.

Therefore, only send the monitor string across if FvwmPager is already
tracking a specific monitor.

Helps with fvwmorg#236
mikeandmore pushed a commit to mikeandmore/fvwm3 that referenced this issue Nov 28, 2020
When listing the new desk, don't try and compare a module's output, but
rather reuse the existing fpmonitor_this() function.

Fixes fvwmorg#236

(cherry picked from commit 57dc6da)
mikeandmore pushed a commit to mikeandmore/fvwm3 that referenced this issue Nov 28, 2020
When "DesktopConfiguration global" is used, keep in sync the
virtual_scr struct so that this doesn't clash for commands which assume
per-monitor.

Fixes fvwmorg#236
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type:bug Something's broken!
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

2 participants