Make a branch to make krunner Good Enough For Aaron™.
[kdebase/uwolfer.git] / workspace / kwin / CONFIGURING
blob4a2774149448dc06d68b58d3d7207668ce805726
1 CONTENTS:
2 =========
5 1. Pre-configuring window-specific settings
11 1. Pre-configuring window-specific settings
12 ===========================================
14 Window-specific settings is a feature of KWin that allows specifying some
15 settings only for a specific window or windows. See the Window-specific
16 settings section in the KWin configuration and the Special settings
17 menu entries in Alt+F3/Advanced menu.
19 One aspect of window-specific settings is the ability to specify various
20 workarounds for (usually broken) applications that otherwise don't work
21 properly with KWin. This section describes how to create additional
22 window-specific settings that will be automatically used by all users
23 without any need of manual configuration.
25 Example case:
27 Application FooBar does not specify any maximum size for its main window,
28 but when resized to larger size than 1600x1200 it crashes because of a bug.
29 Manual configuration of a window-specific setting that avoids this problem
30 is opening and activating this window, selecting
31 Alt+F3/Advanced/Special window settings, activating tab Workarounds, enabling
32 setting Maximum size, changing it to Force and entering "1600,1200" as
33 the maximum size, which will make KWin force this size as the maximum size.
35 To create such window-specific setting automatically without a need of doing
36 it manually for every user (for example when doing a large deployment), follow
37 these steps:
39 - Back up your $KDEHOME/share/config/kwinrulesrc ($KDEHOME usually being $HOME/.kde)
40  and remove it
41 - Run 'dcop kwin default reconfigure'
42 - Create manually all window-specific settings that should be included (see above)
43 - When done, check in Window-specific settings configuration module
44  (Alt+F3/Configure window behavior/Window-specific settings) that all rules are
45  included
46 - Create a copy of $KDEHOME/share/config/kwinrulesrc and restore the original one
47 - Rename the copy (i.e. the newly created kwinrulesrc) to have its unique name
48  (e.g. foobar_fix_maxsize in this example case)
49 - Be careful with manual modifications of the file, especially make sure the count=
50  field in the [General] group is updated if needed
51 - Create a file for kconfig_update like this (named kwin_foobar_fix_maxsize.upd
52  in this example):
54 # kwin_foobar_fix_maxsize.upd start # 
55 Id=foobar_fix_maxsize
56 File=kwinrules_update
57 Group=Dummy
58 Options=overwrite
59 ScriptArguments=foobar_fix_maxsize
60 Script=kwin_update_default_rules
62 # kwin_foobar_fix_maxsize.upd end # 
64 - The kconfig_file (kwin_foobar_fix_maxsize.upd) is to be placed
65  in $KDEDIR/share/apps/kconf_update/
66 - The file with the window-specific settings (foobar_fix_maxsize) is to be placed
67  in $KDEDIR/share/apps/kwin/default_rules/
70 All KDE user accounts should have these new window-specific settings added
71 automatically during next KDE startup (or within few seconds if they are active).
72 They can be checked again in the Window-specific settings configuration module of KWin.