Fullscreen (Maximize) function works, but...

But not the first time.

[code]DestroyFunc FuncFvwmMaximize
AddToFunc FuncFvwmMaximize

  • I ThisWindow (Maximized) DestroyWindowStyle
  • I TestRc (NoMatch) WindowStyle !Title, !Handles, !Borders, ResizeHintOverride, !Iconifiable, FixedPosition, FixedSize
  • I UpdateStyles
  • I ThisWindow (Maximized) Maximize
  • I TestRc (NoMatch) Maximize ewmhiwa 100 100

Key Return A CM Exec urxvt
Key x W CM FuncFvwmMaximize[/code]

I press Ctrl + Alt + Enter for create new terminal, then press Ctrl + Alt + X for Maximize window and for the first time ResizeHintOverride does not work.
Press Ctrl + Alt + X for restore window (from Maximize state), again press Ctrl + Alt + X and now windows is maximized with ResizeHintOverride.

What is it? FVWM bug? :frowning:

I use the functions in Fvwm-Crystal for that. They are more or less the same. I get mixed results with the terminals. Only Terminator is working fine, but I prefer screen if I want to do multiple shells in the same term.
Gnome terminal, xterm, aterm and mrxvt does not, and urxvt doesn’t scale well the first time, but is ok afterwards.
EDIT: on another PC where the only differences are the font and the screen size, urxvt is working fine from the first time.

The reason seam to be terminals use character size and they impose their geometry to X and fvwm. The result will depend of the term, the font(s) in use by the term (which determine the character size) and the screen geometry. But the result with urxvt is strange, I just don’t understand why this doesn’t work the first time but work well afterwards.

This is what I think it is happening. When you start the terminal with Ctrl + Alt + Enter, the window in in a “some kind of maximized state” (I am not sure which one). The first time, the Maximize command tells the window to “switch the maximized state”. The ResizeHintOverride has to do with “ignore the program supplied minimum and maximum size”, but not about the window “maximized state”. With the “true” bool switch in the Maximize command you can be sure that the window gets full screen.

I am not sure if this “interpretation of the scriptures” makes sense, but adding the 'true" switch in your function maximizes the first time :smiley: :

[code]DestroyFunc FuncFvwmMaximize
AddToFunc FuncFvwmMaximize

  • I ThisWindow (Maximized) DestroyWindowStyle
  • I TestRc (NoMatch) WindowStyle !Title, !Handles, !Borders, ResizeHintOverride, !Iconifiable, FixedPosition, FixedSize
  • I UpdateStyles
  • I ThisWindow (Maximized) Maximize ewmhiwa true 100 100
  • I TestRc (NoMatch) Maximize ewmhiwa true 100 100

Key Return A CM Exec urxvt
Key x W CM FuncFvwmMaximize[/code]

Cheers!