Вчера мы говорили о dwm, а сегодня давайте поговорим об Windows 8 и 10.
Вообще для необучаемого пользователя (для меня) после XP отсутствие классического таскбара со списком окон может конкретно разрывать шаблон. Потому что, кажется что нас лишают свободны действий над окнами — раньше их сколько угодно открывай, к любому обращайся, и вот они все на виду. А теперь? Одна кнопочка — одно приложение! Жуть...
http://spfng.com/~spoofing/win8.png
Спустя всего 7 лет я считаю такую панельку очень удобной и решил прикрутить ее к FVWM.
DestroyModuleConfig FvwmPane: *
*FvwmPane: Geometry 1920x40+0-0
*FvwmPane: Padding 0 0
*FvwmPane: Font "xft:OpenSans:size=10"
*FvwmPane: (480x2, Container)
*FvwmPane: (20x2, Icon 48x48/places/start-here.png, Action (Mouse 1) Nop)
*FvwmPane: (20x2, Icon 48x48/apps/web-browser.png, ActionOnPress, Action (Mouse 1) Function FuncWinPaneApp "/usr/bin/firefox" Next "Firefox" +$left+$top, Action (Mouse 3) Popup MenuWinPaneApp Rectangle +$left+$top 0 -100m)
*FvwmPane: (20x2, Icon 48x48/apps/system-file-manager.png, ActionOnPress, Action (Mouse 1) Nop)
*FvwmPane: (20x2, Icon 48x48/apps/utilities-terminal.png, ActionOnPress, Action (Mouse 1) Function FuncWinPaneApp "/usr/bin/urxvtc" Next "URxvt" +$left+$top, Action (Mouse 3) Function FuncWinPaneApp "/usr/bin/urxvtc" Prev "URxvt" +$left+$top)
*FvwmPane: (480x2)
*FvwmPane: (20x1, Title "", Id CmdTime)
*FvwmPane: (20x1, Title "", Id CmdDate)
*FvwmPane: (End)
*FvwmPane: (5x2)
DestroyFunc FuncWinPaneApp
AddToFunc FuncWinPaneApp
+ C Any ("$2") $1 ("$2") WindowListFunc
+ C TestRc (NoMatch) Exec $0
+ H WindowList ("$2") Rectangle $3 0 -100m NoGeometry NoCurrentDeskTitle
+ D Exec $0
DestroyFunc FuncWinPaneReset
AddToFunc FuncWinPaneReset
+ I PipeRead "echo SendToModule FvwmButtons ChangeButton CmdTime Title \"`date +\"%H:%M\"`\""
+ I PipeRead "echo SendToModule FvwmButtons ChangeButton CmdDate Title \"`date +\"%d.%m.%Y\"`\""
Schedule Periodic 1000 FuncWinPaneReset
Module FvwmButtons FvwmPane
Ощщем, оно еще в процессе допиливания, но прототип... прототип. Решил выложить на показ.
Винрарная (от слова Windows) функция FuncWinPaneApp, которая: при клике проверяет, запущено ли приложение, и если да, то переключает окна этого приложения (следующее|предыдущее) как по Alt + Tab. Если приложение не запущено — запускает, еще принудительно можно запустить приложение двойным кликом. И если зажать кнопку на мышке и немножко подержать (ClickTime 150 милисекунд), то выпадает удобное меню со списком всех окон этого приложения.
Такие вот дела.
Ну да, интерфейс требует марафета, я не дизайнер... В целом к вечеру запилю аналог Windows панельки.
Какие ваши предложения?