On 22 Nov 2002 13:27:59 -0800, [EMAIL PROTECTED] wrote:
> 
> On Fri, Nov 22, 2002 at 05:13:29PM +0000, Mikhael Goikhman wrote:
> > With it your configuration above is as trivial as:
> > 
> >   Key Tab A M SendToModule FvwmProxy Circulate Next (CurrentPage)
> >   Key -Meta A A SendToModule FvwmProxy Hide
> > 
> > This is enough for most of the users.
> > 
> > And if you think it makes sense to do something else (except for
> > hilightling the proxy) on the "mark", the module may still have 2 options
> > MarkCommand and UnmarkCommand (that are by default Nop).
> > 
> >   *FvwmProxy: MarkCommand Layer +1
> >   *FvwmProxy: UnmarkCommand Layer -1
> 
> So, this would mean that Circulate implies a Show if not shown.
> That's fine by me.  These two lines are easy to explain on the man page.
> 
> I really like this how clean this looks.  How slow is "slow" for using
> two messages vs one?  I don't want to neglect older HW, for which fvwm
> lightness is even more appealing.  Even if each message takes 100ms,
> we're only going from one to two.  I remember in another module I was
> prototyping, I was streaming tons of move commands, perhaps a dozen for
> each step of a mouse drag.  I would naively expect that a couple
> messages would be less time than it takes to redraw two proxies.

I don't think it is slow. Probably 100 bytes transfered over already open
pipes vus 50 bytes transfered plus expanding and executing a complex
function. A slowness should not be an argument here.

> So does this scenario mean no FvwmProxyDefaults, or is Action Select set
> to a secret _FvwmProxyDefault which is not generally appended to, but
> outright replaced.  So I might have, for my unpopular config, something
> like
> 
> 
> Key Alt_L       A   N   SendToModule    FvwmProxy   Show
> Key -Alt_L      A   A   SendToModule    FvwmProxy   Hide
> Key Escape      A   M   SendToModule    FvwmProxy   Abort
> Key Tab         A   M   SendToModule    FvwmProxy   Circulate Next 
> (CurrentPage)
> Key Tab         A   SM  SendToModule    FvwmProxy   Circulate Prev 
> (CurrentPage)
> 
> *FvwmProxy: Action  Select  MySelect
> 
> AddToFunc MySelect
> + I WindowId $w Raise
> + I WindowId $w WarpToWindow 50 50
> 
> 
> I would probably use a condition more like (AcceptsFocus,CurrentDesk,!Sticky),
> but that's just me.  Or I guess that would be CirculateHit, which I'll try.
> And I would like to use ScanWindow East South and ScanWindow West North 
> instead
> of Next/Prev, given that ScanWindow is approved for inclusion to the core.
> 
> The Action syntax gives us a neat little internal table of defaults which
> may be the equivalent of
> 
> *FvwmProxy: Action  Select  Function _FvwmProxySelectDefault
> *FvwmProxy: Action  Mark    Nop
> *FvwmProxy: Action  UnMark  Nop

You may consider to do it this way instead:

  *FvwmProxy: Action  Select  WindowListFunc $w
  *FvwmProxy: Action  Mark
  *FvwmProxy: Action  UnMark

Actually [this is off topic] I think WindowListFunc was not designed well.
It should not get a window id as the first parameter, but should be
executed in a window context. Then all conditionals like ThisWindow should
work nicely if needed. Its default definition would be:

  AddToFunc WindowListFunc
  + I Iconify off
  + I FlipFocus
  + I Raise
  + I WarpToWindow 5p 5p

that is much more intuitive than the current:

  AddToFunc WindowListFunc
  + I WindowId $0 Iconify off
  + I WindowId $0 FlipFocus
  + I WindowId $0 Raise
  + I WindowId $0 WarpToWindow 5p 5p

The modules should send "Silent WindowListFunc" with the window context.
I don't know whether it's good to change the WindowListFunc interface now.
I would try to do this even this means those who redefined the default
WindowListFunc, should do it again.

> *FvwmProxy: Action  Click1  Raise
> *FvwmProxy: Action  Click2  Nop
> *FvwmProxy: Action  Click3  Lower
> 
> Do we need the reactionary Actions Show and Hide if the config is the one
> feeding us those in the first place?

I don't think there is a real need for Show/Hide/Abort callbacks and even
Mark/UnMark. But I don't care here.

> Instead of _FvwmProxySelectDefault, we can define the conglomeration of
> commands into the hard defaults.  Is there a one-liner syntax like:
> 
> *FvwmProxy: Action  Select  Iconify off; FlipFocus; Raise; WarpToWindow 5p 5p

This is exactly WindowListFunc. I think WindowListFunc is a good default
for Select and it does not require any hidden _FvwmProxySelectDefault.

Regards,
Mikhael.
--
Visit the official FVWM web page at <URL:http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm-workers" in the
body of a message to [EMAIL PROTECTED]
To report problems, send mail to [EMAIL PROTECTED]

Reply via email to