LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 917|回复: 14

两个关于fvwmtaskbar的配置问题

[复制链接]
发表于 2006-7-26 22:53:32 | 显示全部楼层 |阅读模式
费了好多时间,看了很多别人的fvwm2rc和man page终于实现fvwmbottons的自动隐藏了,但是taskbar却有两个问题始终搞不定。
第一:如何让窗口在最大化时不要“侵犯”fvwmtaskbar的领域?实际效果是这样的:如果taskbar设定了staysontop,那么那个最大化的窗口最下面的一部分就会被taskbar遮住,如果没有staysontop属性,那么taskbar又会被窗口所覆盖。我用别人的fvwm2rc文件就没这个问题,可是反复找了所有和taskbar属性设置有关的语句,都copy到自己的配置文件中去了,还是没实现这个功能。

第二:如何设定用鼠标点击taskbar上的某个窗口对象,实现如下效果(窗口行为设为鼠标左键点击获得focus,点击raise,没有focus follows mouse和自动raise):
1. 如果窗口不是当前的focus,没有iconify,那么点击他在taskbar上的对象时,它将获得focus并且raise。
2.如果窗口已经iconify,那么点击它在taskbar上的对象时,它会自动uniconify,并且获得focus,raise。
3.如果窗口正好是当前focus并且raised的窗口,那么点击它在taskbar上的对象时,它自动iconify,lower。
以上功能说简单点就是gnome和kde的panel上面的windows list实现的功能,但是在fvwm下面,我搞了半天却无法实现,往往是某个窗口明明是没有iconify,只是没有focus,被其他窗口覆盖了而已,此时我点击它在taskbar上的对象,想获得它的focus并让他raise,但是一点它却iconify了!还有其他,反正这个功能我搞了很久都没实现,只好请教高人了。
发表于 2006-7-26 23:34:39 | 显示全部楼层
fvwm不是一般人能用的。怕拍。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-28 09:25:30 | 显示全部楼层
怎么搞的哦,问题还没解决,帖子的图标就变成一个“勾”了,这不是已经解决的标志吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-30 15:41:14 | 显示全部楼层
顶起来,怎么没人回答哦?
回复 支持 反对

使用道具 举报

发表于 2006-7-30 20:50:31 | 显示全部楼层
为什么不man FvwmTaskBar / man fvwm
它能提供的功能就那么多, 结合自己定义一些Function能就能, 不能就不能.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-31 16:18:50 | 显示全部楼层
我用别人的fvwm2rc文件可以实现,但是我把fvwmtaskbar有关的语句都copy过来却无法实现,所以才来请教高人的呀。
回复 支持 反对

使用道具 举报

发表于 2006-7-31 17:07:12 | 显示全部楼层
关于窗口设置大小的问题,应不是fvwmtaskbar的配置内容。有直接设置最大化时的区域的设置。
回复 支持 反对

使用道具 举报

发表于 2006-8-1 14:32:59 | 显示全部楼层
第一个问题,
看man fvwm里的
Maximize [flags] [bool] [horizontal[p]] [vertical [p]]
灵活使用这个命令可以实现你的要求.

第二个问题.
自己定义function就可以了.
       *FvwmTaskBar: Action Click1 DeiconifyRaiseAndFocus
       *FvwmTaskBar: Action Click2 Iconify On
       *FvwmTaskBar: Action Click3 Lower
以Man里的定义为例, 要实现你的要求只要重新定义这个命令DeiconifyRaiseAndFocus
DestroyFunc DeiconifyRaiseAndFocus
AddtoFunc DeiconifyRaiseAndFocus
+ I Pick (Focused, Raised) Iconify on
+ I TestRc (Match) Next (AcceptsFocus) aaaaaa
+ I TestRc Pick aaaaaa
DestroyFunc  aaaaaa
AddtoFunc aaaaaa
+ I Iconify off
+ I FlipFocus NoWarp
+ I Raise

大概就是这样吧. 具体自己试试.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-1 23:36:11 | 显示全部楼层
:thank非常感谢楼上的,我马上去试试。
另外能不能给点建议如何查fvwm的man page,它的man page太庞大了,每次想查查某个设置却不知从何处入手。
回复 支持 反对

使用道具 举报

发表于 2006-8-2 11:40:26 | 显示全部楼层
第一个问题,用
EwmhBaseStruts 0 0 22 0
试试。它的四个参数为left right top bottom,分别指定四个方向窗口所不能
覆盖的大小。上面这个例子中,顶部就有很小的一块,窗口最大化时也不能盖
住它,从而可以放置TaskBar等Button。

第二个问题写函数,用Test (Current, Iconify)
Test (Current, Focused)等做判断,应该容易写的。

看Man Page: 直接在term里man fvwm, 然后按/查找(我是设置成vi习惯的)。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表