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

SkipMapping disables StartsOnPage/StartsOnDesk #373

Closed
alikve opened this issue Dec 21, 2020 · 6 comments · Fixed by #374
Closed

SkipMapping disables StartsOnPage/StartsOnDesk #373

alikve opened this issue Dec 21, 2020 · 6 comments · Fixed by #374
Assignees
Labels
type:bug Something's broken!
Milestone

Comments

@alikve
Copy link

alikve commented Dec 21, 2020

I noticed a regression in version 1.0.2: with SkipMapping style, StartsOnPage/StartsOnDesk stop working.

I take the config

DesktopName 0 Desk0
DesktopName 1 Desk1
DesktopSize 1x1

If I add
Style xterm StartsOnPage 1
it works as expected, xterm starts on Desk1.

But if I add
Style xterm SkipMapping, StartsOnPage 1
xterm starts on Desk0

Moreover, if I add
Style xterm SkipMapping
and run
xterm -xrm "*Desk:1"
it starts on Desk0.

Without
Style xterm SkipMapping
xterm -xrm "*Desk:1"
works as expected.

There was no this problem in version 1.0.1.

  • Fvwm3 version
    fvwm3 1.0.2 (released)
    with support for: ReadLine, XPM, PNG, SVG, Shape, XShm, SM, Bidi text, XRandR, XRender, XCursor, XFT, NLS

  • Linux distribution
    Slackware 14.2

  • Platform
    Linux Intel(R) Xeon(R) CPU E3-1275 v5 @ 3.60GHz

@alikve alikve added the type:bug Something's broken! label Dec 21, 2020
@ThomasAdam ThomasAdam added this to the 1.0.3 milestone Dec 21, 2020
@ThomasAdam ThomasAdam self-assigned this Dec 21, 2020
ThomasAdam added a commit that referenced this issue Dec 21, 2020
When updating the desk which a window is on, don't be so clever about
updating the currentdesk if it's the same as the screen.  Other parts of
fvwm3 will be setting this conditionally for their own reasons, and this
check was clobbering that (such as in placement.c for StartsOnDesk
style).

Fixes #373
@ThomasAdam
Copy link
Member

Hi @slalik

Thanks! Please see the PR referenced here -- for reference, please checkout the ta/gh-373 and let me know if that fixes things for you. I'd also keep a very close eye out for any other unintended breakages as well.

Just FYI (since you mention it), I will be removing the Xrm method of being able to tell fvwm3 where windows should be placed, so don't rely on that too much.

@alikve
Copy link
Author

alikve commented Dec 22, 2020

I applied the patch to released version 1.0.2. The result is the following. I have 2 monitors. They are configured by the command

xrandr --output HDMI-2 --primary --auto --output HDMI-1 --right-of HDMI-2 --auto

There is nothing about dual monitors in the fvwm config.

After the patch, StartsOnPage is respected then a program starts from the prime monitor and ignored if it starts from the second monitor. I checked for several programs.

Should I also checked ta/gh-373?
(I prefer released versions because I maintain fvwm3 for SlackBuilds.org)

@ThomasAdam
Copy link
Member

After the patch, StartsOnPage is respected then a program starts from the prime monitor and ignored if it starts from the second monitor. I checked for several programs.

Can you provide more information here? What do you mean?

If you're wanting a specific style to apply to a specific screen, then you can use:

Style foo StartsOnScreen <randr_name>

@alikve
Copy link
Author

alikve commented Dec 22, 2020

I did more experiments and I see that it depends on the cursor position. For example, I have

Style xeyes SkipMapping, StartsOnPage 1

If I start xeyes when the mouse cursor is on Desk0 on left (prime) monitor, xeyes start on Desk1, if the cursor is on Desk0 on the right monitor, xeyes start on Desk0.

I even tried to disable mouse with

xinput --set-prop "..." "Device Enabled" "0"

The result is the same depends on the cursor position at the moment of disabling.

@ThomasAdam
Copy link
Member

Hi @slalik

Yes, this is expected. If you use StartsOnScreen <randr_name> -- this should help, otherwise, fvwm3 is just guessing.

Either way, my original patch seems to have fixed your problem, yes?

@alikve
Copy link
Author

alikve commented Dec 22, 2020

Yes,

Style xeyes SkipMapping, StartsOnPage 1, StartsOnScreen HDMI-2

works, so the problem is fixed. Thank you!

@alikve alikve closed this as completed Dec 22, 2020
ThomasAdam added a commit that referenced this issue Dec 22, 2020
When updating the desk which a window is on, don't be so clever about
updating the currentdesk if it's the same as the screen.  Other parts of
fvwm3 will be setting this conditionally for their own reasons, and this
check was clobbering that (such as in placement.c for StartsOnDesk
style).

Fixes #373
@ThomasAdam ThomasAdam moved this to Done in FVWM3 Sep 18, 2022
@ThomasAdam ThomasAdam added this to FVWM3 Sep 18, 2022
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