document the options
[mikachu/openbox.git] / plugins / mouse / mouserc
1 # Mouserc - Mouse bindings for Openbox
2
3 # Context : The place where the mouse click takes place
4 #  * Titlebar - A client's titlebar (the top of the frame)
5 #  * Handle - A client's handle (the bottom of the frame)
6 #  * Client - A client (the actual window inside the frame, clicks in this
7 #                       context also get passed through to the client)
8 #  * Frame - A client's entire frame (clicks in this context do not get passed
9 #                                     through to the client)
10 #  * Icon - A client's icon (in the titlebar)
11 #  * AllDesktops - A client's omnipresent button (in the titlebar)
12 #  * Iconify - A client's iconify button (in the titlebar)
13 #  * Maximize - A client's maximize button (in the titlebar)
14 #  * Close - A client's close button (in the titlebar)
15 #  * Root - The root window (the desktop background, these are often blocked
16 #                            by programs with desktop windows, and are not
17 #                            available on rootless X servers (like OSX))
18 #  * TLCorner - The top-left corner of the frame (if supported by the
19 #                                                 engine)
20 #  * TRCorner - The top-right corner of the frame (if supported by the
21 #                                                  engine)
22 #  * BLCorner - The bottom-left corner of the frame (if supported by the
23 #                                                    engine)
24 #  * BRCorner - The bottom-right corner of the frame (if supported by the
25 #                                                     engine)
26 #  Other contexts may be created by engines.
27
28 # Event : The type of mouse action to bind
29 #  * Press - A button is pressed
30 #  * Release - A button is released
31 #  * Click - A button is pressed and released
32 #  * DoubleClick - A button is pressed and released twice quickly
33 #  * Drag - A button is held and the mouse is moved
34
35 # Button : The mouse button which is performing the Event
36 #  A string composed of [<modifier>-]<button>. A button can have 0 or more
37 #  modifiers.
38 #  Valid modifiers are Mod1 ('A' is an alias for this), Mod2, Mod3, Mod4 ('W'
39 #  is an alias for this), and Mod5.
40 #  Valid buttons are Left, Right, Middle, Up, Down, or any number > 0
41
42 # Action: The action to be performed then the Event occurs with the Button in
43 #         the context.
44 #  Value actions are:
45 #  * Focus - Focus the client
46 #  * Unfocus - Unfocus the client
47 #  * Iconify - Iconify the client
48 #  * Raise - Raise the client to the front
49 #  * Lower - Lower the client to the back
50 #  * FocusRaise - Focus the client and raise the client to the front
51 #  * Close - Close the client
52 #  * Kill - Kill the client forcefully
53 #  * Shade - Shade (roll up) the client
54 #  * Unshade - Unshade (roll down) the client
55 #  * ToggleShade - Shade and unshade the client
56 #  * ToggleOmnipresent - Place the client on all desktops or the current one
57 #  * MaximizeFull - Maximize the window horizontally and vertically
58 #  * UnmaximizeFull - Restore the window horizontally and vertically
59 #  * ToggleMaximizeFull - Maximize or restore the window horizontally and
60 #                         vertically
61 #  * MaximizeHorz - Maximize the window horizontally
62 #  * UnmaximizeHorz - Restore the window horizontally
63 #  * ToggleMaximizeHorz - Maximize or restore the window horizontally
64 #  * MaximizeVert - Maximize the window vertically
65 #  * UnmaximizeVert - Restore the window vertically
66 #  * ToggleMaximizeVert - Maximize or restore the window vertically
67 #  * SendToNextDesktop - Sends the window to the next desktop
68 #  * SendToNextDesktopWrap - Sends the window to the next desktop (wrapping
69 #                            around the first and last desktops)
70 #  * SendToPreviousDesktop - Sends the window to the previous desktop
71 #  * SendToPreviousDesktopWrap - Sends the window to the previous desktop
72 #                                (wrapping around the first and last desktops)
73 #  * NextDesktop - Switches to the next desktop
74 #  * NextDesktopWrap - Switches to the next desktop (wrapping around the first
75 #                      and last desktops)
76 #  * PreviousDesktop - Switches to the previous desktop
77 #  * PreviousDesktopWrap - Switches to the previous desktop (wrapping around
78 #                          the first and last desktops)
79 #  * NextDesktopColumn - Switches to the desktop in the next column, based on
80 #                        the desktop layout set by a pager
81 #  * NextDesktopColumnWrap - Switches to the desktop in the next column, based
82 #                            on the desktop layout set by a pager (wrapping
83 #                            around the first and last columns)
84 #  * PreviousDesktopColumn - Switches to the desktop in the previous column,
85 #                            based on the desktop layout set by a pager
86 #  * PreviousDesktopColumnWrap - Switches to the desktop in the previous
87 #                                column, based on the desktop layout set by a
88 #                                pager (wrapping around the first and last
89 #                                columns)
90 #  * NextDesktopRow - Switches to the desktop in the next row, based on the
91 #                     desktop layout set by a pager
92 #  * NextDesktopRowWrap - Switches to the desktop in the next row, based on the
93 #                         desktop layout set by a pager (wrapping around the
94 #                         first and last rows)
95 #  * PreviousDesktopRow - Switches to the desktop in the previous row, based on
96 #                         the desktop layout set by a pager
97 #  * PreviousDesktopRowWrap - Switches to the desktop in the previous row,
98 #                             based on the desktop layout set by a pager
99 #                             (wrapping around the first and last rows)
100 #  * Move - Move the client interactively, this can only be bound to the Drag
101 #           Event
102 #  * Resize - Resize the client interactively, this can only be bound to the
103 #             Drag Event
104
105 # All options are case insensitive.
106
107 #Context        Event           Button  Action
108
109 Titlebar        Drag            Left    Move
110 Handle          Drag            Left    Move
111 Frame           Drag            A-Left  Move
112
113 BLCorner        Drag            Left    Resize
114 BRCorner        Drag            Left    Resize
115 Frame           Drag            A-Right Resize
116
117 Titlebar        Click           Left    Raise
118 Titlebar        Press           Middle  Lower
119 Handle          Click           Left    Raise
120 Handle          Press           Middle  Lower
121 Frame           Click           A-Left  Raise
122 Frame           Click           A-Right Lower
123
124 Titlebar        Press           Left    Focus
125 Handle          Press           Left    Focus
126 Client          Press           Left    Focus
127
128 Titlebar        DoubleClick     Left    ToggleShade
129 Titlebar        Click           Up      Shade
130 Titlebar        Click           Down    UnShade
131
132 Maximize        Click           Left    ToggleMaximizeFull
133 Maximize        Click           Middle  ToggleMaximizeVert
134 Maximize        Click           Right   ToggleMaximizeHorz
135 Iconify         Click           Left    Iconify
136 Icon            DoubleClick     Left    Close
137 Close           Click           Left    Close
138 Close           Click           Middle  Kill
139 AllDesktops     Click           Left    ToggleOmnipresent
140
141 Root            Click           Up      NextDesktopWrap
142 Root            Click           Down    PreviousDesktopWrap
143 Root            Click           A-Up    NextDesktopWrap
144 Root            Click           A-Down  PreviousDesktopWrap
145 Frame           Click           A-Up    NextDesktopWrap
146 Frame           Click           A-Down  PreviousDesktopWrap