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

EwmhBaseStruts glitch when using screen with different resolutions #66

Closed
lgsobalvarro opened this issue May 4, 2020 · 12 comments · Fixed by #67 or #526
Closed

EwmhBaseStruts glitch when using screen with different resolutions #66

lgsobalvarro opened this issue May 4, 2020 · 12 comments · Fixed by #67 or #526
Labels
needs:info On-hold awaiting more info from user type:bug Something's broken!

Comments

@lgsobalvarro
Copy link
Contributor

lgsobalvarro commented May 4, 2020

EwmhBaseStruts glitches when using two or more screens with different resolutions. FVWM3 will honor EwmhBaseStruts but only for the screen with the higher resolution available. EwmhBaseStruts will be ignored in all other screens.
fvwm-1.log

fvwm.log

@ThomasAdam
Copy link
Member

Hi @lgsobalvarro,

Thanks for this report.

On the ta/gh-66 branch, I've pushed some commits which means:

  • EWMHBaseStruts command is now screen aware, which means you can do: EWMHBaseStruts screen NAME_OF_SCREEN a b c d -- I will document this pending the conversation here.
    • Without setting per-screen EWMHBaseStruts, each monitor will inherit the setting
  • Different monitor sizes should mean that maximiation of a window is respectful of any monitor resolution, plus EWMHBaseStruts setting.

Let me know whether this is working, or if it's utterly broken!

@ThomasAdam ThomasAdam linked a pull request May 6, 2020 that will close this issue
@lgsobalvarro
Copy link
Contributor Author

lgsobalvarro commented May 6, 2020

It seems to be still broken.
I defined EWMHBaseStruts for eDP and HDMI-A-0 as follows:
EWMHBaseStruts screen eDP 0 68 0 62
EWMHBaseStruts screen HDMI-A-0 0 0 0 0

The issue is the window only "remebers" the latest EWMHBaseStruts. It ignores the first one. It does not matter in witch screen the window is located.
It does not matter if DesktopConfiguration is set as per-monitor or global.

I have also notice that if I maximize a window on eDP and then move it to HDMI-A-0 and then unmaximize, the window will return to eDP. I don't know if thise two issues are related to each other though.

Update 1: If I week switching manually using FvwmConsole between EWMHBaseStruts screen eDP 0 68 0 62 and EWMHBaseStruts screen HDMI-A-0 0 0 0 0 according to where I want to maximize the window, it does work.
Eg: If I want to maximize xterm in HDMI-A-0 I set EWMHBaseStruts screen HDMI-A-0 0 0 0 0. If i want to maximize A in eDP then I set it to EWMHBaseStruts screen eDP 0 68 0 62

Update 2: Even by using the method described in Update 1, the behavior is quite glitchy, sometimes work sometimes it does not.

@lgsobalvarro
Copy link
Contributor Author

Log attached

xorg-session (1).log

@ThomasAdam
Copy link
Member

Hi @lgsobalvarro,

Please take another look at ta/gh-66 and let me know if it's still not working. :)

@lgsobalvarro
Copy link
Contributor Author

It works now.

However I did notice this:

2020-05-09-092058_1290x695_scrot

Note that the window is maximized. The title bar does not refresh, is jsut stuck like that. It can be fixed by iconify and deiconify or by restarting fvwm3.

@lgsobalvarro
Copy link
Contributor Author

xdpyinfo
xdpyinfo.txt

@ThomasAdam
Copy link
Member

Thanks, @lgsobalvarro

This is looking good, so I've merged it to master. Please switch back to that branch, and report any problems.

I've now made unmaximizing windows track the change in monitor, if they're moved while maximizing, so this should behave better than it did before.

@lgsobalvarro
Copy link
Contributor Author

This is an issue again for me since some time ago.

@ThomasAdam ThomasAdam reopened this Jan 28, 2021
@ThomasAdam
Copy link
Member

@lgsobalvarro

Can you use git bisect to determine where I broke it?

@ThomasAdam ThomasAdam added this to the 1.0.3 milestone Jan 28, 2021
@ThomasAdam ThomasAdam added needs:info On-hold awaiting more info from user type:bug Something's broken! labels Jan 28, 2021
@ThomasAdam
Copy link
Member

Hi @lgsobalvarro

Is this still an issue for you? Anything I can do to reproduce this would be handy...

@lgsobalvarro
Copy link
Contributor Author

Yes, this is still an issue.

I do not know... I can send you my config file again, of show it to you in action via jitsi or something.

@ThomasAdam ThomasAdam removed this from the 1.0.3 milestone May 27, 2021
somiaj added a commit that referenced this issue Jun 11, 2021
Use the screen dimensions to compute the working area for EWMHBaseStruts
instead of global dimensions. Fixes #66.
@somiaj
Copy link
Collaborator

somiaj commented Jun 11, 2021

@lgsobalvarro Give that pull request a try. I think it fixes the problem (at least does in my tests).

ThomasAdam pushed a commit that referenced this issue Jun 11, 2021
Use the screen dimensions to compute the working area for EWMHBaseStruts
instead of global dimensions. Fixes #66.
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this issue Aug 20, 2021
# Changelog

## [1.0.4](https://github.com/fvwmorg/fvwm3/tree/1.0.4) (2021-07-17)

[Full Changelog](fvwmorg/fvwm3@1.0.3...1.0.4)

**Breaking changes:**

- Deprecate Label for FvwmPager [\#342](fvwmorg/fvwm3#342)
- Extend \*FvwmIconMan:Resolution to include specific Desktop / Pager [\#455](fvwmorg/fvwm3#455)
- Replace libbson with cJSON [\#408](fvwmorg/fvwm3#408)
- FvwmButtons: Shrink windows when honoring Hints. [\#577](fvwmorg/fvwm3#577) ([somiaj](https://github.com/somiaj))
- Replace libbson with cJSON [\#571](fvwmorg/fvwm3#571) ([ThomasAdam](https://github.com/ThomasAdam))
- Add commands to configure the size/position window. [\#558](fvwmorg/fvwm3#558) ([ThomasAdam](https://github.com/ThomasAdam))
- Retire FvwmTile and FvwmCascade wrappers. [\#515](fvwmorg/fvwm3#515) ([somiaj](https://github.com/somiaj))

**Implemented enhancements:**

- Set min. size for windows shown in pager [\#542](fvwmorg/fvwm3#542)
- Moving windows: allow for "warping" to other windows in a given direction [\#540](fvwmorg/fvwm3#540)
- Update monitor struct to know if monintor edges are OUTSIDE\_EDGE or INSIDE\_EDGE [\#523](fvwmorg/fvwm3#523)
- Two issues with the WindowList [\#151](fvwmorg/fvwm3#151)
- Feature Request: Enable using the 'c' unit with the "MinWindowSize" and "MaxWindowSize" styles [\#145](fvwmorg/fvwm3#145)
- Allow per monitor EdgeCommand and EdgeLeaveCommand [\#582](fvwmorg/fvwm3#582) ([somiaj](https://github.com/somiaj))
- expand: add prev\_{desk,pagex,pagey} [\#579](fvwmorg/fvwm3#579) ([ThomasAdam](https://github.com/ThomasAdam))
- Improve translations [\#568](fvwmorg/fvwm3#568) ([somiaj](https://github.com/somiaj))
- Cleanup SetRCDefaults\(\) [\#567](fvwmorg/fvwm3#567) ([somiaj](https://github.com/somiaj))
- Add local configuration file to the default-config. [\#557](fvwmorg/fvwm3#557) ([somiaj](https://github.com/somiaj))
- Add icon for Run Command. [\#552](fvwmorg/fvwm3#552) ([somiaj](https://github.com/somiaj))
- Add command: Move shuffle \[flags\] direction\(s\) [\#550](fvwmorg/fvwm3#550) ([somiaj](https://github.com/somiaj))
- expand: add desk, pagex, pagey variables [\#539](fvwmorg/fvwm3#539) ([ThomasAdam](https://github.com/ThomasAdam))
- Add a screen option to the Scroll command. [\#531](fvwmorg/fvwm3#531) ([ThomasAdam](https://github.com/ThomasAdam))
- RandR: support RandRFunc for screen changes [\#525](fvwmorg/fvwm3#525) ([ThomasAdam](https://github.com/ThomasAdam))

**Fixed bugs:**

- Pager do not show smalls windows in the correct place when snapped to the edge [\#541](fvwmorg/fvwm3#541)
- EwmhBaseStruts glitch when using screen with different resolutions [\#66](fvwmorg/fvwm3#66)
- Fvwm segfaults parsing module configuration [\#575](fvwmorg/fvwm3#575)
- Swallowing FvwmPager inside FvwmButtons breaks resizing FvwmButtons when aspect ratio resizing is used [\#573](fvwmorg/fvwm3#573)
- Move X Y Warp doesn't move pointer to window. [\#551](fvwmorg/fvwm3#551)
- Maximize fullscreen command does not clear \_NET\_WM\_STATE\_FULLSCREEN when exiting fullscreen [\#545](fvwmorg/fvwm3#545)
- EdgeLeaveCommand don't work or need a page change to work [\#543](fvwmorg/fvwm3#543)
- FvwmPager Icon view fix background color. [\#537](fvwmorg/fvwm3#537)
- FvwmPager with bad aspect ratio on dual-head display [\#522](fvwmorg/fvwm3#522)
- AnimatedMove [\#513](fvwmorg/fvwm3#513)
- Spelling errors found by lintian. [\#511](fvwmorg/fvwm3#511)
- SnapAttraction: take into account individual monitors [\#466](fvwmorg/fvwm3#466)
- FvwmPager not taking into account global screen dimensions when configured with DeskTopScale [\#223](fvwmorg/fvwm3#223)
- FvwmPager: moving windows inside FvwmPager is inconsistent [\#198](fvwmorg/fvwm3#198)
- Add force\_icons\_size kludge to .stalonetrayrc. [\#581](fvwmorg/fvwm3#581) ([somiaj](https://github.com/somiaj))
- Fix pass through binding logic. [\#570](fvwmorg/fvwm3#570) ([somiaj](https://github.com/somiaj))
- Make default-config greyed colorset grey. [\#566](fvwmorg/fvwm3#566) ([somiaj](https://github.com/somiaj))
- Cleanup FvwmScript manual page. [\#565](fvwmorg/fvwm3#565) ([somiaj](https://github.com/somiaj))
- GNOME: remove DO\_IGNORE\_GNOME\_HINTS [\#556](fvwmorg/fvwm3#556) ([lgsobalvarro](https://github.com/lgsobalvarro))
- Unmaximize: restore \_NET\_WM\_STATE [\#546](fvwmorg/fvwm3#546) ([ThomasAdam](https://github.com/ThomasAdam))
- Fix compiler warnings in modules/FvwmScript/Instructions.c [\#544](fvwmorg/fvwm3#544) ([pm215](https://github.com/pm215))
- Rework FvwmPager to move windows easier [\#536](fvwmorg/fvwm3#536) ([ThomasAdam](https://github.com/ThomasAdam))
- Move: disable working area when screen given [\#535](fvwmorg/fvwm3#535) ([ThomasAdam](https://github.com/ThomasAdam))
- Make RightPanel use primary monitor dimensions. [\#530](fvwmorg/fvwm3#530) ([somiaj](https://github.com/somiaj))
- Set base struts only for primary monitor in default-config. [\#528](fvwmorg/fvwm3#528) ([somiaj](https://github.com/somiaj))
- Change FvwmPager Logic for initial window size. [\#527](fvwmorg/fvwm3#527) ([somiaj](https://github.com/somiaj))
- EWMH\_GetWorkArea use monitor dimensions. [\#526](fvwmorg/fvwm3#526) ([somiaj](https://github.com/somiaj))
- Make SnapAttraction snap to edges of all monitors. [\#521](fvwmorg/fvwm3#521) ([somiaj](https://github.com/somiaj))
- Update FvwmCommand to allow multiple args. [\#514](fvwmorg/fvwm3#514) ([somiaj](https://github.com/somiaj))

**Merged pull requests:**

- Extend FvwmIconMan Resolution configuration. [\#561](fvwmorg/fvwm3#561) ([somiaj](https://github.com/somiaj))
- Allow Min/Max WindowSize style to use client size [\#560](fvwmorg/fvwm3#560) ([somiaj](https://github.com/somiaj))
- Add more columns to default-config menu ItemFormat. [\#559](fvwmorg/fvwm3#559) ([somiaj](https://github.com/somiaj))
- Fix broken link. [\#529](fvwmorg/fvwm3#529) ([somiaj](https://github.com/somiaj))
- Spelling error fixes. [\#512](fvwmorg/fvwm3#512) ([somiaj](https://github.com/somiaj))
- Working on 1.0.4 [\#509](fvwmorg/fvwm3#509) ([ThomasAdam](https://github.com/ThomasAdam))
- module expand: don't overwrite previous expansion [\#576](fvwmorg/fvwm3#576) ([ThomasAdam](https://github.com/ThomasAdam))
- conditional: fix whitespace/comma parsing [\#572](fvwmorg/fvwm3#572) ([ThomasAdam](https://github.com/ThomasAdam))
- Configure a colorset for XDGMenu options. [\#564](fvwmorg/fvwm3#564) ([somiaj](https://github.com/somiaj))
- Menu: add option to grey entries out [\#563](fvwmorg/fvwm3#563) ([ThomasAdam](https://github.com/ThomasAdam))
- Remove \*FvwmPager: Label configuration option. [\#562](fvwmorg/fvwm3#562) ([somiaj](https://github.com/somiaj))
- move: Warp: move pointer to centre of window [\#553](fvwmorg/fvwm3#553) ([ThomasAdam](https://github.com/ThomasAdam))
- FvwmPager: Improvments with dealing with tiny windows on tiny pagers. [\#548](fvwmorg/fvwm3#548) ([somiaj](https://github.com/somiaj))
- PanFrame improvements [\#547](fvwmorg/fvwm3#547) ([ThomasAdam](https://github.com/ThomasAdam))
- pager: teach Icon view about colorsets [\#538](fvwmorg/fvwm3#538) ([ThomasAdam](https://github.com/ThomasAdam))
- placement: fix mouse positioning [\#533](fvwmorg/fvwm3#533) ([ThomasAdam](https://github.com/ThomasAdam))
- EdgeScroll: a few improvements [\#524](fvwmorg/fvwm3#524) ([ThomasAdam](https://github.com/ThomasAdam))
- Update manual for Echo/EchoFuncDefinition [\#520](fvwmorg/fvwm3#520) ([somiaj](https://github.com/somiaj))
- release: remove dev-docs from release tarball [\#518](fvwmorg/fvwm3#518) ([ThomasAdam](https://github.com/ThomasAdam))
- configure: remove stale references to BUGADDR [\#517](fvwmorg/fvwm3#517) ([ThomasAdam](https://github.com/ThomasAdam))
- Configuration tweaks [\#516](fvwmorg/fvwm3#516) ([ThomasAdam](https://github.com/ThomasAdam))
- build: add CHANGELOG.md to dist [\#510](fvwmorg/fvwm3#510) ([ThomasAdam](https://github.com/ThomasAdam))
@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
needs:info On-hold awaiting more info from user type:bug Something's broken!
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants