EMPEROR | ok |
---|---|
EMPEROR | Good Afternoon/evening for all |
EMPEROR | Welcome one more time to UMEET 2003 |
EMPEROR | As usual, the talk will be here, at this channel and we have prepared |
EMPEROR | the channel #redes where a set of volunteers will translate from English |
EMPEROR | to Spanish. |
EMPEROR | I remember to question is at #qc channel |
EMPEROR | Today, our next lecturer is Alexey Voinov from Russia |
EMPEROR | he is graduated Bauman Moscow State Technical Univercity in 1998. |
EMPEROR | Voins is an upstream maintainer of wdm project. (WINGs display manager) |
EMPEROR | and is a maintain Window Maker package in ALT Linux distribution, so everything I will say about patches is implemented ther |
EMPEROR | so.. let's start... please Volvins.. |
Voins | hello. |
Voins | I will talk about patches for Window Maker. |
Voins | I will describe it mostly for user's point of view. |
Voins | If anyone will be interested in implementation details we can talk about it little later |
Voins | First, what is Window Maker? |
Voins | Window Maker is a nice window manager for X that reproduces the elegant look and feel of the NEXTSTEP user interface. |
Voins | Development is going on but it's getting real slow recently (but every month I notice some minor changes in cvs). |
Voins | There was no releases for more than year. |
Voins | Last released version was 0.80.2 (2002-11-08). |
Voins | There's a lot of information about Window Maker on www.windowmaker.org and i don't want to repeat it all here. |
Voins | Now to the patches. There's a lot of patches for Window Maker available on net today. |
Voins | Some of them new, and some exists for a few years. |
Voins | Some of them are very easy to find, and some are placed in not so obvious location. |
Voins | Why those patches was not merged into upstream and will never be? |
Voins | It's easy. Because core developers think those patches add code bloat that's hard to maintain. |
Voins | And they are absolutely right. |
Voins | It's (usually) easy to write a patch. |
Voins | Much easier than to write a program from scratch, or support something once written. |
Voins | Today every patchwriter maintains his patches himself and core developers are free to change anything without fear that change can break some code they even never wrote. |
Voins | There is even "official" patches, that's distributed with Window Maker tarball (like -single_click patch or -workspace_flip) |
Voins | Another reason for lots of patches is of course slow development process. |
Voins | If i've made something usefull it's easier to publish that in form of patch rather than fight to put it into upstream. |
Voins | Now, I'll describe some existsing patches. Some by me some by other developers |
Voins | All patches written by me is available at my site. Filenames for those patches are long to agree with our (alt linux) patch naming policy. |
Voins | I'll shorten them here. |
Voins | ...-dockkeys patch was one of the first my "big" patches. It adds possibility to assign keyboard shortcuts to docked appicons. |
Voins | It was very usefull feature when alt linux started to use menu program borrowed from Debian. Debian users know that WPrefs.app utility cannot edit generated application menu. And that's the problem |
Voins | There's no other simple way to assign shortcut to something. And many of us don't like touching mouse every time we need xterm |
Voins | So keyboard shortcuts for docked icons was a real soulution that worked. |
Voins | Now everyone (almost) knows how to deal with debian menu : just create your own WMRootMenu and use OPEN_MENU command to link it with generated menu. |
Voins | New menu will be easyly editable. And there's easy access to generated parts. But I still find that patch useful. |
Voins | Once I thought about extending that patch to allow assigning shortcuts not only to "leftclick" action, but for "middleclick" action also, but I never found time to implement it. |
Voins | ...-menutrans patch is another patch inspired by debian menu generator. |
Voins | It's hard to support multiply menu files for different languages. I can say it as package maintainer. |
Voins | Mostly because parts of Window Maker menu placed in user's home directory. |
Voins | Therefore changing menu according to changes in user locale can be far from trivial. |
Voins | Moreover some languages can be represented with very different encodings. For example, there's 5 different encodings for russian language, that is in widespread use: |
Voins | koi8-r, cp1251, cp866, iso8859-5 and utf-8. |
Voins | That patch solves the problem translating generated menu "on the fly". |
Voins | Menu file is now generated only for english. When menu is loaded, every item text is processed with gettext using same translation file menu package uses. |
Voins | If special prefix "notranslate_" is found in item text then that prefix is stripped and menu text is left untranslated. |
Voins | Now application menu in Window Maker can properly reflects user's locale without complicated actions |
Voins | There's a little application called Launch.app (by Serg Stoyan) that provides descent command line for Window Maker with history and commands completion. |
Voins | Something like what you see when you press alt-f2 in KDE. |
Voins | It does its job great. But once I looked at sources I was nearly shocked. |
Voins | Sorry, Serg, but that is very bad code, with buffer overflows and some other strange things everywhere |
Voins | I've decided to remove it from our distro, but everyone complained that there's no other way to get same functionality. |
Voins | ...-adialog patch just adds another dialog box to Window Maker, that has history and commands completion. |
Voins | There's still some things to do, but that functionality is already useful. |
Voins | now, about other developers |
Voins | Carlos Torres (vlaad) have modified and distributed old patch that adds new kind of titlebar buttons to Window Maker. |
Voins | He claims that those buttons is more like in original NEXT, but I never saw that in any NEXT screenshots. :) |
Voins | Though those buttons looks nice and deserves to be used. |
Voins | What's most intersting with that patch is its history. There was at least 5 developers changing it. |
Voins | Another intersting patch by Carlos is ...-trance patch that emulates transparency for Window Maker menus. |
Voins | It does that without xft and it should probably work everywhere. |
Voins | Of course that patch has some quirks. There will be very strange picture if you'll try to move menu around screen or if menu opens on top of some animated dockapp. |
Voins | But who cares, if that pseudo-trasparent menu looks nice almost all time? :) |
Voins | That patch can be counted as "proof of concept" that trasparency is at least possible in Window Maker without some major changes and even without xft. |
Voins | AFAIK Carlos is now working on patch for WPrefs.app utility that adds font configuration tab to it. Patch as it is now is available at his site vlaadworld.net. |
Voins | Peter Zijlstra is another developer who trys to improve Window Maker with patches |
Voins | His ...-netwm patch make Window Maker aware of all new features guys at freedesktop.org thought of. |
Voins | With that patch it's possible to run (for example) gnome-panel (from GNOME2) and then see and manipulate all desktops and application with it. That's really strange for me: why someone need to run somehting from gnome to manipulate windows in WindowMaker? :) |
Voins | Good news is that this patch is slowly get merged into upstream. |
Voins | Peter also wrote a lot of useful patches like ...-virtual-desktop patch. It looks (and feels) great. |
Voins | One can place few windows side by side so they width is larger then actual display size. |
Voins | When you move mouse to one side of the screen or another it shifts windows so one of it is completely visible on screen. |
Voins | Something like virtual screen in XFree86, but without changeing screen resolution. (And dockapps always stays in place :) ) |
Voins | The greatest thing with that patch is that it can be disabling without recompiling. That window shifting can be very annoying sometimes. |
Voins | Another nice patch written by Peter is ...-newappicon patch. |
Voins | It highlights appicon of focused application. He once joked that now it's obvious what appicons is needed for. :) |
Voins | There's also patches made by less known developers. For example Pavel Khmelinsky once sent me a great patch that adds context menu for window list. |
Voins | Context menu is available at right click in window list menu, and it allows manipulation with windows without switching to workspace this window resides on. |
Voins | Context menu is available at right click in window list menu, and it allows manipulation with windows without switching to workspace this window resides on. |
Voins | Most useful action is moving windows between workspaces. |
Voins | That's almost all I wanted to say. Every patch mentioned here is applied in package, I maintain. And there's much more patches included in it. |
Voins | To finalize: patches are good at they place. And sometimes it is not right to "force" patch into upstream. :) |
Voins | That's all. Thank you. |
MJesus | clap clap clap clap clap clap clap clap clap |
MJesus | clap clap clap clap clap clap clap clap clap |
MJesus | clap clap clap clap clap clap clap clap clap |
MJesus | clap clap clap clap clap clap clap clap clap |
MJesus | clap clap clap clap clap clap clap clap clap |
Felix | :) |
avn | ;) Thanks Voins |