fvwmorg/fvwm3

Strange interaction for FvwmAuto and FvwmPager when re-reading config

Closed this issue · 3 comments

Thanks for reporting your bug here! The following template will help with
giving as much information as possible so that it's easier to diagnose and
fix.

Upfront Information

Please provide the following information by running the command and providing
the output.

  • Fvwm3 version (run: fvwm3 --version)

fvwm3 1.0.6a (released)

  • Linux distribution or BSD name/version

Fedora release 38 (Thirty Eight)

  • Platform (run: uname -sp)

$ uname -sm
Linux x86_64

Expected Behaviour

I use FvwmAuto to hide the FvwmPager, using a recipe I got from the fvwm.org FAQ (the recipe has changed since I started using it, but the behavior is the same with the new recipe (https://www.fvwm.org/Wiki/Tips/AutoHidingWindows/)). When I reread the Fvwm config using the command 'Read config', I would expect the window shading to continue working.

Actual Behaviour

After 'Read config', the window shading breaks. Basically, it shows the top most line and bottom most line of the FvwmPager, but nothing in between. I've attached some screen shots that show the behavior.

Enabling logging

Will grab shortly. Test host is the same one I'm writing this on.

Steps to Reproduce

  • Reduce the problem to the smallest fvwm configuration example (where
    possible). Start with a blank config file (fvwm3 -f/dev/null) and go from
    there.

Attached with both old and new recipe

  • Does the problem also happen with Fvwm2?

Yes, but the behavior changed slightly in fvwm3. See the workaround description in Extras.

Include your configuration with this issue.

attached.

Does Fvwm3 crash?

no crash

Extra Information

  • Anything else we should know?

There's a workaround that works in both fvwm2 and fvwm3, but the workaround is only partial in fvwm3. If you hover over the hidden FvwmPager, then trigger the 'Read config' before it re-hides, the autohide will work correctly after the config read.

Workaround worked for all monitors in Fvwm2. In Fvwm3 the workaround is only partial because in a multi-monitor setup, only the monitor where the workaround was performed will work correctly after the 'Read config', any other monitors will demonstrate the broken behavior.

  • Feel free to take a screen capture or video and upload to this issue if you
    feel it would help.

Attached.
good
bad
config.new-recipe.txt
config.old-recipe.txt

  • Attach $HOME/.fvwm/fvwm3-output.log from the step above.

Will submit after I restart into broken config

The log doesn't look especially interesting, but I've attached it anyway.

fvwm3-output.log

I meant to add, 'Restart' works as expected.

This is all down to:

Style FvwmPager !Borders, !Handles

If you issue that command once your config file has been read in, things fall apart.

This also happens in fvwm2, so the priority for me to fix this, is very low. My suggestion here, is to simply move your Style line to a different file, so it's not constantly being applied if you Read your FvwmPager configuration file.