Hiding FvwmIconman doesn't work every time

I’ve created a FvwmIconman which shows every time only one line. If a second window appears in the list it grows up out of the page. After getting the focus it moves down and after loosing the focus it moves back to its old place.

Unfortunatelly it’s getting not every time the focus if I move over it. And sometimes it won’t go back to its old place. But I don’t know why.

Used variables]InfoStoreAdd fontsize 12
InfoStoreAdd used_font “Arial”[/code]
The module FvwmEvent]DestroyModuleConfig FvwmEvent: *
*FvwmEvent: StartDelay 3
*FvwmEvent: Delay 1
*FvwmEvent: enter_window FE-EnterWindow[/code]
The module FvwmIconMan]Style FvwmGlobalIconMan !Title, Sticky, WindowListSkip, StaysOnTop, HandleWidth 1, !State 1

DestroyModuleConfig FvwmGlobalIconMan: *
*FvwmGlobalIconMan: 1 IconName GlobalIconMan
*FvwmGlobalIconMan: 1 Title “Global IconMan”
PipeRead ‘echo *FvwmGlobalIconMan: 1 ButtonGeometry $(($[vp.width]/3))x0’
PipeRead ‘echo FvwmGlobalIconMan: 1 ManagerGeometry 1x0+$(($[infostore.fontsize]/2))-$(($[vp.height]-2$[infostore.fontsize]))’

*FvwmGlobalIconMan: 1 Colorset 10
*FvwmGlobalIconMan: 1 IconColorset 12
*FvwmGlobalIconMan: 1 PlainColorset 10
*FvwmGlobalIconMan: 1 SelectColorset 11
*FvwmGlobalIconMan: 1 FocusColorset 11
*FvwmGlobalIconMan: 1 FocusAndSelectColorset 11

*FvwmGlobalIconMan: 1 FollowFocus true
*FvwmGlobalIconMan: 1 IconButton down
*FvwmGlobalIconMan: 1 PlainButton up
*FvwmGlobalIconMan: 1 SelectButton down
*FvwmGlobalIconMan: 1 FocusButton up
*FvwmGlobalIconMan: 1 FocusAndSelectButton down

*FvwmGlobalIconMan: 1 ReliefThickness 1
*FvwmGlobalIconMan: 1 Resolution page
*FvwmGlobalIconMan: 1 UseWinList true

*FvwmGlobalIconMan: 1 DrawIcons always
*FvwmGlobalIconMan: 1 Sort name
*FvwmGlobalIconMan: 1 Format “%c: %t”
*FvwmGlobalIconMan: 1 Font “xft:$[infostore.used_font]:pixelsize=$[infostore.fontsize]”

*FvwmGlobalIconMan: 1 NoIconAction “SendToModule FvwmAnimate animate”
*FvwmGlobalIconMan: 1 Action Mouse 1 A sendcommand “FocusRaiseAndStuff”
*FvwmGlobalIconMan: 1 Action Mouse 2 A sendcommand “Iconify”
*FvwmGlobalIconMan: 1 Action Mouse 3 A sendcommand “Popup MenuWindowOps2 Mouse c -102m”
*FvwmGlobalIconMan: 1 Action select sendcommand “Focus”

*FvwmGlobalIconMan: 1 Action Key Up N gotobutton Up, select
*FvwmGlobalIconMan: 1 Action Key Down N gotobutton Down, select[/code]
The used functions]SetEnv pixelmove 0

DestroyFunc FE-EnterWindow
AddToFunc FE-EnterWindow

  • I PointerWindow
  • I TestRc (!Match) KeepRc All (FvwmGlobalIconMan, State 1) FuncPixelMove “Hide”
  • I ThisWindow (!FvwmGlobalIconMan) All (FvwmGlobalIconMan, State 1) FuncPixelMove “Hide”
  • I ThisWindow (FvwmGlobalIconMan, !State 1) FuncPixelMove “Show”

DestroyFunc FuncPixelMove
AddToFunc FuncPixelMove

  • I Test (EnvMatch pixelmove 0) ThisWindow (FvwmGlobalIconMan)
    PipeRead ‘if [ $[w.height] -gt $(($[infostore.fontsize]*2)) ]; then
    echo SetEnv pixelmove $(($[w.height]-$[infostore.fontsize]*2));
    else
    echo SetEnv pixelmove 0;
    fi’
    #+ I echo y $[w.y]
    #+ I echo Pixelmove $[pixelmove]
  • I PipeRead 'echo Func$0Window $[w.resource] $[pixelmove]

DestroyFunc FuncShowWindow
AddToFunc FuncShowWindow

  • I ThisWindow (FvwmGlobalIconMan) All State 1
  • I ThisWindow (FvwmGlobalIconMan) AnimatedMove w+0 w+$1p Warp

DestroyFunc FuncHideWindow
AddToFunc FuncHideWindow

  • I ThisWindow (FvwmGlobalIconMan) All State 1 False
  • I prev (FvwmGlobalIconMan) AnimatedMove w+0 w-$1p
  • I PipeRead ‘echo SetEnv pixelmove 0’
  • I Break[/code]

Would be great if anyone can help me to fix these issues because I like this gimmick ^^

Thanks in advance,
Thomas

Btw: infostore doesn’t work here with pixelmove. Could be a problem with EnvMatch …

I’ve patched FvwmIconMan to support this already.

No – it works fine.

InfoStoreAdd foo 1
PipeRead `echo SetEnv P $(($[infostore.foo]+10))`
Exec exec xmessage $[P]
Test (EnvMatch P 11) SetEnv P 12
Exec exec xmessage $[P]

– Thomas Adam

ehm … ok … what must I do in the FvwmIconMan config to get the functionality you’ve patched in? And in which Fvwm version? cvs 2.6-branch?

No, I mean this]

  • I Test (EnvMatch infostore.pixelmove 0) …
    [/code] or [code]
  • I Test (EnvMatch $[infostore.pixelmove] 0) …
    [/code]

RIght – you can’t do that, because it’s not an environment variable. Again, see PipeRead. I ought to fix this though.

– Thomas Adam

github.com/ThomasAdam/fvwm/tree … -semantics

– Thomas Adam

Can you be more specific what you’ve patched?

Is this only on Github or CVS?

It would be great if you can tell me more because I like this hide/unhide behaviour.

Thanks in advance,
Thomas

I guess this hasn’t been fixed yet?