1 | News |
---|
2 | **** |
---|
3 | |
---|
4 | This lists the user-visible changes made to Sawfish, and which releases |
---|
5 | they occurred between. For more detailed information see the |
---|
6 | `ChangeLog' files in the Sawfish source tree. |
---|
7 | |
---|
8 | 1.2 |
---|
9 | === |
---|
10 | |
---|
11 | * Added an `OPTIONS' file describing the variables that may be |
---|
12 | customized |
---|
13 | |
---|
14 | * Some drawing optimizations: don't reinstall frame shape at each |
---|
15 | redraw, turn off graphics exposures in all contexts |
---|
16 | |
---|
17 | * Added a cache for X properties to minimize server round-trips |
---|
18 | |
---|
19 | * Added support for Xft fonts |
---|
20 | |
---|
21 | * Color objects now store alpha as well as rgb data |
---|
22 | |
---|
23 | * Support useful parts of 1.1 NET WM spec; also fixed some bugs / |
---|
24 | omissions in support for 1.0 spec (e.g. `_NET_WORKAREA') |
---|
25 | |
---|
26 | * Support for two dimensional workspace layouts and edge flipping |
---|
27 | (Michael Toomin) |
---|
28 | |
---|
29 | * Translation updates (Dmitry G. Mastrukov, Jordi Mallach, Vincent |
---|
30 | van Adrighem, Christian Rose, Stanislav Visnovsky, Daniel Yacob, |
---|
31 | Andras Timar, Sava Chankov, Christian Neumair, Peteris Krisjanis, |
---|
32 | Gustavo Noronha Silva, Christian Meyer, Fatih Demir, Hasbullah Bin |
---|
33 | Pit, Christophe Fergeau) |
---|
34 | |
---|
35 | * Bug fixes: |
---|
36 | |
---|
37 | - Don't pass null pointers to `accept ()' |
---|
38 | |
---|
39 | - Stacking list assertions no longer abort execution, they just |
---|
40 | print an error message |
---|
41 | |
---|
42 | - Handle minimum-size hints that are zero |
---|
43 | |
---|
44 | - Understand the Pango font names that the Gtk2 font selector |
---|
45 | uses |
---|
46 | |
---|
47 | - Fixed bugs when iconifying sticky windows |
---|
48 | |
---|
49 | - When servicing configure-window requests, respect the window's |
---|
50 | locked dimensions. Also handle moving in only one direction |
---|
51 | |
---|
52 | - `grow-pack' bug fixes (Daniel Pfeiffer) |
---|
53 | |
---|
54 | - Fixed some problems with fullscreen mode |
---|
55 | |
---|
56 | - Fixed some problems in the Gtk2 config tool |
---|
57 | |
---|
58 | - Other bug fixes (Greg Morris, Claudio Bley) |
---|
59 | |
---|
60 | |
---|
61 | 1.1 |
---|
62 | === |
---|
63 | |
---|
64 | * Reorganized the customization options. Removed user levels. |
---|
65 | Removed many obscure options (most are still available as lisp |
---|
66 | variables, just not from the UI). Viewports are no longer |
---|
67 | available in the UI |
---|
68 | |
---|
69 | * Updates to the `grow-pack' module (Kai Großjohann, Daniel Pfeiffer) |
---|
70 | |
---|
71 | * In matched windows, boolean options can be turned off as well as |
---|
72 | on (me, merlin) |
---|
73 | |
---|
74 | * New full screen maximization mode |
---|
75 | |
---|
76 | * Bug fixes: |
---|
77 | |
---|
78 | - Miscellaneous focus fixes |
---|
79 | |
---|
80 | - Be more selective about which X errors imply window deletion |
---|
81 | |
---|
82 | - Don't trigger a stacking-list assertion on logout |
---|
83 | |
---|
84 | - Check for window-ness in window-visibility (Michal Maru¹ka) |
---|
85 | |
---|
86 | - Reread WM_WINDOW_PROTOCOLS when it changes |
---|
87 | |
---|
88 | - Fixed bug of nautilus windows not being focused in focus |
---|
89 | follows mouse modes |
---|
90 | |
---|
91 | - Recover "lost" windows when selecting windows (merlin) |
---|
92 | |
---|
93 | - Show correct size when resizing windows (merlin) |
---|
94 | |
---|
95 | - Most placement modes now respect workarea (Federico Mena |
---|
96 | Quintero, me) |
---|
97 | |
---|
98 | - Miscellaneous fixes to wm-spec implementation. Includes code |
---|
99 | to support _NET_WM_STRUT |
---|
100 | |
---|
101 | - Call `bindtextdomaincodeset' function if rep implements it |
---|
102 | (Christophe Fergeau) |
---|
103 | |
---|
104 | - Make the current-directory stored in the session a valid |
---|
105 | filename |
---|
106 | |
---|
107 | - Don't put windows below the default depth just because their |
---|
108 | parent is |
---|
109 | |
---|
110 | - Miscellaneous viewport fixes (Federico Mena Quintero) |
---|
111 | |
---|
112 | - Don't let "transients above" and "layer" stacking constraints |
---|
113 | conflict with one another |
---|
114 | |
---|
115 | |
---|
116 | 1.0.1 |
---|
117 | ===== |
---|
118 | |
---|
119 | * Translation updates: pt (Carlos Perelló Marín), it (Michele |
---|
120 | Campeotto), pl (Zbigniew Chyla), zh_CN (Wang Jian), zh_TW (Abel |
---|
121 | Cheung), es (Eneko Lacunza), tr (Ömer Fadýl USTA), sv (Göran |
---|
122 | Uddeborg, Christian Rose), da (Ole Laursen), gl (Jesus Bravo |
---|
123 | Alvarez) |
---|
124 | |
---|
125 | * Bug fixes: |
---|
126 | |
---|
127 | - Fixed typo in `apply-command-keys' function (David Bustos) |
---|
128 | |
---|
129 | - Fixed bug in `wm-spec' module causing nautilus desktop window |
---|
130 | to cover panel |
---|
131 | |
---|
132 | - Adopt windows with a maximized hint correctly |
---|
133 | |
---|
134 | - Fixed bug in `display-window' function that can prevent the |
---|
135 | window getting focused |
---|
136 | |
---|
137 | - Don't allow windows to be moved or resized by third-parties |
---|
138 | when they're maximized (and the necessary option is set) |
---|
139 | |
---|
140 | - Fixed problem with localizing property names in the |
---|
141 | matched-windows configuration widget |
---|
142 | |
---|
143 | - Handle window gravity more correctly (Owen Taylor) |
---|
144 | |
---|
145 | - Forget everything about withdrawn windows - better ICCCM |
---|
146 | compliance |
---|
147 | |
---|
148 | - Fixed root-window event proxying (the infamous gmc bug) |
---|
149 | |
---|
150 | - Don't use dlmalloc on sparcs (Brian Nitz) |
---|
151 | |
---|
152 | |
---|
153 | 0.99 |
---|
154 | ==== |
---|
155 | |
---|
156 | * Requires `librep' 0.14 or newer |
---|
157 | |
---|
158 | * Translation updates: ja (Sato Satoru), no (Kjartan Maraas), es |
---|
159 | (Carlos Perelló Marín), fi (Antti Ahvensalmi), cs (Jiri Cerny), fr |
---|
160 | (Christian Marillat), de (Matthias Warkus, Christian Meyer), da |
---|
161 | (Ole Laursen), sk (Stanislav Visnovsky), tr (Özgür), sv (Christian |
---|
162 | Rose, Peter Winnberg), gl (Jesus Bravo Alvarez) |
---|
163 | |
---|
164 | * Do i18n on more text strings (Vlad Harchev, me) |
---|
165 | |
---|
166 | * Broken support for multiple-screen displays. Supplying the new |
---|
167 | `--multihead' option will fork extra copies of sawfish for each |
---|
168 | extra screen. This has some fundamental problems, but some people |
---|
169 | seem to want it (Michael Vogt, Mahmood Ali, me) |
---|
170 | |
---|
171 | * Window manager virtual modifier once again defaults to `M-' |
---|
172 | instead of `C-' |
---|
173 | |
---|
174 | * Added support for `Off2' and `Off3' events |
---|
175 | |
---|
176 | * `menu-program-stays-running' variable now defaults to true by |
---|
177 | popular demand |
---|
178 | |
---|
179 | * New command `focus-desktop' |
---|
180 | |
---|
181 | * Switch viewports more efficiently (by choosing the best order to |
---|
182 | move windows, to minimize the exposed area) |
---|
183 | |
---|
184 | * Monitor the `_WIN_WORKSPACE' property of each window |
---|
185 | |
---|
186 | * Bug fixes: |
---|
187 | |
---|
188 | - Check for X SHAPE extension, exit if it's not available |
---|
189 | |
---|
190 | - Wait for the focus-in event before changing sawfish's |
---|
191 | knowledge of the focused window when moving focus from one |
---|
192 | window to another |
---|
193 | |
---|
194 | - Be more ICCCM-compliant, don't send synthetic configure notify |
---|
195 | events when the window was resized |
---|
196 | |
---|
197 | - Fixed locale font handling |
---|
198 | |
---|
199 | - Don't leave grid traces when trying to move/resize a window |
---|
200 | that's locked in place |
---|
201 | |
---|
202 | - Fixed bug where the pointer being over the message window |
---|
203 | could confuse focus after window cycling |
---|
204 | |
---|
205 | - `decorate-transients' option works again with shaded windows |
---|
206 | |
---|
207 | - Documentation appears in tooltips again |
---|
208 | |
---|
209 | - Handle sticky properties better in the `window-history' module |
---|
210 | |
---|
211 | - Maximization fixes for multi-headed displays (Florent |
---|
212 | Guillaume) |
---|
213 | |
---|
214 | - Cancelling a resize of a maximized window no longer discards |
---|
215 | the window's maximized state |
---|
216 | |
---|
217 | |
---|
218 | 0.38 |
---|
219 | ==== |
---|
220 | |
---|
221 | * Translation updates: gl (Jesus Bravo Alvarez), sv (Martin |
---|
222 | Norbäck), de (Matthias Warkus, Christian Meyer), ru (Vlad |
---|
223 | Harchev), es (Joseba García Etxebarria), pl (Daniel Koc), fi |
---|
224 | (Antti Ahvensalmi), sk (Stanislav Visnovsky), az (Pablo |
---|
225 | Saratxaga), cz (Stanislav Brabec), no (Kjartan Maraas), el (Simos |
---|
226 | Xenitellis), it (Michele Campeotto), fr (Christian Marillat), ro |
---|
227 | (Marius Andreiana), ko (?) |
---|
228 | |
---|
229 | Extract some more translatable strings (Vlad Harchev) |
---|
230 | |
---|
231 | * `Crux' theme now has an extra button mode: `Default', like Mac OS |
---|
232 | Platinum but also has an iconify button. Used by default |
---|
233 | |
---|
234 | * The `grow-pack' module now works with windows which specify |
---|
235 | increments (Kai Großjohann) |
---|
236 | |
---|
237 | * New command `kill-client' |
---|
238 | |
---|
239 | * Fixed bugs: |
---|
240 | |
---|
241 | - Don't return a null pointer when no default cursor has been |
---|
242 | set, return `nil' instead |
---|
243 | |
---|
244 | - Avoid triggering assertions in the stacking list code when |
---|
245 | raising or lowering windows and the given sibling has been |
---|
246 | destroyed |
---|
247 | |
---|
248 | - Turned off the annoying code that beeps and prints a message |
---|
249 | when unfocusable windows are detected |
---|
250 | |
---|
251 | - The GNOME hints now listen for the `_WIN_WORKSPACE' property |
---|
252 | changing and will move the window in response |
---|
253 | |
---|
254 | - Don't forget maximized state of windows when they're moved, |
---|
255 | only if they're resized |
---|
256 | |
---|
257 | - Don't show special cursors when moving or resizing windows, or |
---|
258 | when hovering over the title bar |
---|
259 | |
---|
260 | - Corrected off-by-one error in `smart' placement modes |
---|
261 | |
---|
262 | - Identified and fixed some problems in the new GNOME/KDE window |
---|
263 | manager hints implementation (Rob Hodges, me) |
---|
264 | |
---|
265 | |
---|
266 | 0.37 |
---|
267 | ==== |
---|
268 | |
---|
269 | * New command line option `--window-history-file=FILE' |
---|
270 | |
---|
271 | * Search for user's rc file in this order: `~/.sawfishrc', |
---|
272 | `~/.sawfish/rc', `~/.sawmillrc' |
---|
273 | |
---|
274 | * New option `configure-ignore-stacking-requests' and a |
---|
275 | similarly-named window property. When set stacking requests from |
---|
276 | windows are ignored (Matt Tucker) |
---|
277 | |
---|
278 | * When restarting sawfish, reselect the previously selected workspace |
---|
279 | |
---|
280 | * Added a function that can recolour multiple image channels |
---|
281 | simultaneously |
---|
282 | |
---|
283 | * New function `exit-type' - returns the type of exit in progress |
---|
284 | |
---|
285 | * Translation updates: ja (Sato Satoru), sk (Stanislav Visnovsky), |
---|
286 | es (Iñaki García Etxebarria), hu (Robert Vanyi), tr (Fatih Demir), |
---|
287 | ro (Tutu Valentin), no (Kjartan Maraas), it (Michele Campeotto), pl |
---|
288 | (Daniel Koc) |
---|
289 | |
---|
290 | * Fixed bugs: |
---|
291 | |
---|
292 | - Fixed focus-handling in enter-only mode on window close and |
---|
293 | viewport switch |
---|
294 | |
---|
295 | - Fixed overflow error in the image recolouring module (Simon |
---|
296 | Budig) |
---|
297 | |
---|
298 | - Session management always uses a unique session file (Timo |
---|
299 | Korvola, me) |
---|
300 | |
---|
301 | - Fixed bug in random placement mode where windows could |
---|
302 | sometimes be placed off-screen |
---|
303 | |
---|
304 | - Fixed some auto-raise problems by reverting a misguided bug |
---|
305 | fix |
---|
306 | |
---|
307 | - Fixed bugs with aborted session saves |
---|
308 | |
---|
309 | - Cache stacking order of windows locally - this allows us to |
---|
310 | keep the order consistent, especially after window |
---|
311 | reparenting operations |
---|
312 | |
---|
313 | - Don't call `XParseColor' unless we actually _have_ a display |
---|
314 | connection (merlin) |
---|
315 | |
---|
316 | - Merged two calls to `setlocale' to avoid trashing the locale |
---|
317 | preferences |
---|
318 | |
---|
319 | - Check for presence of Xinerama extension before trying to use |
---|
320 | it - removes the annoying error message at startup |
---|
321 | |
---|
322 | - Added some more X server timestamp logic to correct for the |
---|
323 | timestamp discontinuities after APM resume |
---|
324 | |
---|
325 | |
---|
326 | 0.36 |
---|
327 | ==== |
---|
328 | |
---|
329 | * Added a new default theme: `Crux'. By default it recolours itself |
---|
330 | to match the current GTK+ selection colour. (Arlo Rose, me) |
---|
331 | |
---|
332 | * Updated translations: it (Michele Campeotto), fr (Christian |
---|
333 | Marillat) |
---|
334 | |
---|
335 | * Added a `shade-button' button class (many themes created it anyway) |
---|
336 | |
---|
337 | * Added a `sawfish.wm.util.recolor-image' module, currently contains |
---|
338 | a single function for recolouring parts of images based on a given |
---|
339 | colour gradient |
---|
340 | |
---|
341 | * Added new command `delete-group'. Deletes a whole group of |
---|
342 | windows. With default bindings, shift-click on the close button to |
---|
343 | invoke this command |
---|
344 | |
---|
345 | * Added support for KDE-style mini-icons. If the window has no |
---|
346 | normal icon, then `window-icon-image' will return the mini-icon |
---|
347 | |
---|
348 | * Fixed bugs: |
---|
349 | |
---|
350 | - Themes that use the module for reading the user's gtk |
---|
351 | preferences will once again get updated when the gtk theme |
---|
352 | changes |
---|
353 | |
---|
354 | - Fix another of the null-string translation bugs (Christian |
---|
355 | Marillat) |
---|
356 | |
---|
357 | - Work around `XUrgencyHint' not being defined before X11R6 |
---|
358 | |
---|
359 | - Fixed some long-standing bugs when decorating windows (use the |
---|
360 | correct mask when creating the overall window shape; for |
---|
361 | frame parts with no mask, set the local shape to the |
---|
362 | appropriate rectangle; be sure to generate at least one |
---|
363 | Expose event when reconfiguring frame parts) |
---|
364 | |
---|
365 | - Fixed crashing bug when `bind-keys' is called with zero |
---|
366 | arguments |
---|
367 | |
---|
368 | - Fixed typo in `crop-image' function when checking validity of |
---|
369 | HEIGHT parameter (martin@whoever.com) |
---|
370 | |
---|
371 | |
---|
372 | 0.35 |
---|
373 | ==== |
---|
374 | |
---|
375 | * Translation updates: ja (SATO Satoru), it (Michele Campeotto), |
---|
376 | zh_TW.Big5 (Chun-Chung Chen), pl (Daniel Koc), sk (Stanislav |
---|
377 | Visnovsky) |
---|
378 | |
---|
379 | * Items in `choice' widgets may now contain descriptive names, |
---|
380 | syntax is `(SYMBOL "DESCRIPTION")' |
---|
381 | |
---|
382 | * Changed `focus-windows-when-mapped' option to only apply to |
---|
383 | non-transient windows (this option is now enabled by default) |
---|
384 | |
---|
385 | * New placement modes `top-left' and `off-center'. `top-left' is |
---|
386 | now the default mode for non-transients |
---|
387 | |
---|
388 | * Enabled the module supporting the newly standardized GNOME/KDE |
---|
389 | window manager hints. Also made random changes to support KDE2 a |
---|
390 | lot better |
---|
391 | |
---|
392 | * Added WM_PROTOCOLS `_SAWFISH_WM_RAISE_WINDOW' and |
---|
393 | `_SAWFISH_WM_LOWER_WINDOW'. Used by `maybe-raise-window' and |
---|
394 | `maybe-lower-window' functions. |
---|
395 | |
---|
396 | These are similar to `WM_TAKE_FOCUS', in that if the window |
---|
397 | supports the protocol, it's up to it whether or not it raises (or |
---|
398 | lowers) the window in question. These functions should only be used |
---|
399 | where the user hasn't explicitly requested the restacking |
---|
400 | |
---|
401 | An example usage is an application that doesn't want its window to |
---|
402 | be raised due to a button-press event that initiates a drag |
---|
403 | operation |
---|
404 | |
---|
405 | * New option `menus-include-shortcuts', disabled by default (Unai |
---|
406 | Uribarri) |
---|
407 | |
---|
408 | * Don't interpret windows with `WM_TRANSIENT_FOR' set to the root |
---|
409 | window as children of all windows in the group (it causes too many |
---|
410 | annoying effects), instead just decorate these windows as |
---|
411 | transients |
---|
412 | |
---|
413 | * Handle `group' and `transient' iconification modes better, don't |
---|
414 | use a recursive method, instead use one pass to identify the |
---|
415 | windows to change, then another to make the changes. In |
---|
416 | `transients' mode, only change the state of shared transients if |
---|
417 | they will have no visible parents afterwards |
---|
418 | |
---|
419 | * In the (old) GNOME hints code, support a `_WIN_HINTS' client |
---|
420 | message (with a similar format to the `_WIN_STATE' message) |
---|
421 | |
---|
422 | * New module `sawfish.wm.commands.viewport-extras', some commands |
---|
423 | for viewport for viewport navigation (Dams Nadé) |
---|
424 | |
---|
425 | * Check for `never-iconify' and `never-maximize' window properties |
---|
426 | when appropriate |
---|
427 | |
---|
428 | * Support sixth and seventh mouse buttons (Steve Haslam) |
---|
429 | |
---|
430 | * Bug fixes: |
---|
431 | |
---|
432 | - Fixed problems with reverting changes to list-based options |
---|
433 | |
---|
434 | - Don't allow the empty list as a valid modifier list |
---|
435 | |
---|
436 | - Fixed bug where restarting the wm with |
---|
437 | `focus-windows-when-mapped' set would cause any shaded |
---|
438 | windows to be deleted |
---|
439 | |
---|
440 | - Ignore iconified windows in the grow-pack code |
---|
441 | |
---|
442 | - Added `font-ascent' and `font-descent' functions to the gaol |
---|
443 | |
---|
444 | - Catch errors when loading site-init and rep-defaults files |
---|
445 | |
---|
446 | - Don't use `""' to denote a null doc string (which has bad |
---|
447 | side effects when internationalized) |
---|
448 | |
---|
449 | - Don't need to run `sawfish-client -' to get a repl anymore, |
---|
450 | just `sawfish-client' |
---|
451 | |
---|
452 | - Fixed bugs in `composite-images' function |
---|
453 | |
---|
454 | - Fixed ordering of states output by `gtk-style' program |
---|
455 | (michaelj@maine.rr.com) |
---|
456 | |
---|
457 | - Fixed grabbing mono window icons in gdk-pixbuf mode |
---|
458 | |
---|
459 | - Reject button event descriptions that don't specify at least |
---|
460 | one mouse button |
---|
461 | |
---|
462 | - Accept `()' as a valid image modifier color component |
---|
463 | |
---|
464 | - Now grabs translatable strings from `defgroup' forms correctly |
---|
465 | |
---|
466 | |
---|
467 | 0.34 |
---|
468 | ==== |
---|
469 | |
---|
470 | * Added a virtual modifier key, the `W-' modifier. This modifier is |
---|
471 | used for all standard window-manager key bindings, it may be set |
---|
472 | to any of the standard X modifiers using the configuration tool |
---|
473 | |
---|
474 | * Optionally show window-icons when cycling through windows (Unai |
---|
475 | Uribarri Rodríguez, me) |
---|
476 | |
---|
477 | * Event handlers for low-level X windows now get passed the window |
---|
478 | as their second argument (Unai Uribarri Rodríguez) |
---|
479 | |
---|
480 | * Translation updates: fr (Christian Marillat), sv (Richard Hult), |
---|
481 | pt_BR (Flávio Bruno Leitner), it (Michele Campeotto) |
---|
482 | |
---|
483 | * Error handler module (`sawfish.wm.ext.error-handler'). When loaded |
---|
484 | it records the most recent errors, and the time at which they |
---|
485 | occurred. Use the `display-errors' command to display all recorded |
---|
486 | errors. |
---|
487 | |
---|
488 | * Added an option to not save window-history data for transient |
---|
489 | windows. Also added a `window-history-clear' command to forget |
---|
490 | history for all windows. |
---|
491 | |
---|
492 | * Rearranged window operations menu to hopefully be clearer |
---|
493 | |
---|
494 | * Attempt to catch and handle errors while loading custom options |
---|
495 | |
---|
496 | * Labels in menu items can now be functions, they should return the |
---|
497 | label text when called (with any menu arguments) |
---|
498 | |
---|
499 | * Moved installed message catalogues to $datadir/locale |
---|
500 | |
---|
501 | * `defcustom' forms may now a `:widget-flags' keyword, a constant |
---|
502 | list of symbols passed to the configuration tool. Current flags |
---|
503 | include: `expand-vertically' and `expand-horizontally' |
---|
504 | |
---|
505 | * Added a `sawfish.wm.util.ping' module, it implements the |
---|
506 | `_NET_WM_PING' protocol of the new window manager spec. |
---|
507 | |
---|
508 | * `destroy-notify-hook' is no longer called asynchronously |
---|
509 | |
---|
510 | * Bug fixes: |
---|
511 | |
---|
512 | - Fixed various bugs when dragging/resizing windows |
---|
513 | |
---|
514 | - Reverted the changes to make the click-to-focus click-through |
---|
515 | setting apply to window decorations |
---|
516 | |
---|
517 | - Fixed bug when handling 32-bit data in client messages and X |
---|
518 | properties |
---|
519 | |
---|
520 | - Fixed window-focus problems when switching viewports |
---|
521 | |
---|
522 | - Many bug-fixes to handling of maximized window state. |
---|
523 | Maximized state should now be preserved across wm and session |
---|
524 | restarts. It's also saved in the window-history attributes |
---|
525 | |
---|
526 | - Support the function hints of the MWM window manager |
---|
527 | properties |
---|
528 | |
---|
529 | - Updated the `sawfish.wm.state.wm-spec' module to match the |
---|
530 | current (almost final) draft of the new GNOME/KDE window |
---|
531 | manager spec |
---|
532 | |
---|
533 | - Fixed sporadic stacking bugs when unmapped windows exist |
---|
534 | |
---|
535 | - Fixed miscellaneous click-to-focus and focus-click-through |
---|
536 | related bugs |
---|
537 | |
---|
538 | |
---|
539 | 0.33 |
---|
540 | ==== |
---|
541 | |
---|
542 | * Added support for user-levels associated with individual commands |
---|
543 | |
---|
544 | * The GNOME hints code now understands that the do-not-cover flag is |
---|
545 | the same as sawfish's `avoid' property |
---|
546 | |
---|
547 | * Swap properties of sticky windows when entering and leaving |
---|
548 | workspaces as for normal windows (fixes the old problem where |
---|
549 | sticky windows can grab focus when a workspace is entered) |
---|
550 | |
---|
551 | * Changed the default settings of some customization options, |
---|
552 | hopefully to give a more "conventional" feel for new users |
---|
553 | |
---|
554 | * Better support for Xinerama (Geoff Reedy) |
---|
555 | |
---|
556 | * Added a new set of window stacking commands: `raise-window', |
---|
557 | `lower-window', `raise-lower-window'. The set of windows affected |
---|
558 | by these commands is determined by the `user-raise-type' (either |
---|
559 | the individual window, the window and any transients, or the |
---|
560 | entire group). The old commands of these names are now called |
---|
561 | `FOO-single-window'. |
---|
562 | |
---|
563 | Most modules now use these commands when raising or lowering |
---|
564 | windows, allowing the stacking model to be configured globally. |
---|
565 | |
---|
566 | * Translation updates: no (Kjartan Maraas), fi (Antti Ahvensalmi), |
---|
567 | it (Christopher R. Gabriel), pt_BR (Douglas Moura Ferreira), uk |
---|
568 | (Yuri Syrota), de (Matthias Warkus) |
---|
569 | |
---|
570 | * Fixed bugs: |
---|
571 | |
---|
572 | - If committing changes in the configurator causes new |
---|
573 | customization options or groups to be added, update the UI to |
---|
574 | reflect this |
---|
575 | |
---|
576 | - Added code to detect and correct the sporadic bug where |
---|
577 | windows become unfocusable in click-to-focus mode |
---|
578 | |
---|
579 | - Sanitized how the focus gets passed to and from transient |
---|
580 | windows (when passing focus back from a transient, give it to |
---|
581 | the most recently focused window in the group, not the |
---|
582 | transient's parent) |
---|
583 | |
---|
584 | Also, try to avoid displaying maximize buttons in windows |
---|
585 | whose hints prevent them from being maximized |
---|
586 | |
---|
587 | - Many fixes to how maximized windows are handled across session |
---|
588 | and window manager restarts. Also support GNOME window |
---|
589 | maximized hints when windows are created |
---|
590 | |
---|
591 | - Fixed some bugs in the `wm-spec' module |
---|
592 | |
---|
593 | - Don't trigger auto-raise hooks on leave/enter events |
---|
594 | generated by pointer grabs |
---|
595 | |
---|
596 | - The `edge-flip-delay' option now applies when dragging windows |
---|
597 | |
---|
598 | - Fixed the preview command in `sawfish-themer' |
---|
599 | |
---|
600 | - Miscellaneous fixes to the "smart" window placement modes |
---|
601 | |
---|
602 | - Fixed type description of `persisitent-group-ids' option |
---|
603 | |
---|
604 | - In `enter-exit' focus mode, focus isn't removed due to |
---|
605 | enter/leave events due to pointer grabs (fixes the bug with |
---|
606 | Mozilla URL completion) |
---|
607 | |
---|
608 | - Fixed (again) the `focus-click-through' behaviour with |
---|
609 | respect to frame decorations |
---|
610 | |
---|
611 | - Re-added hack to make GMC icons unfocusable |
---|
612 | |
---|
613 | - Fixed interactive placement to check for window destruction |
---|
614 | (merlin) |
---|
615 | |
---|
616 | - Fixed bug with tiled images with shapes (the shape mask would |
---|
617 | always be applied an integer number of times, ignoring the |
---|
618 | size of the frame part it's associated with) |
---|
619 | |
---|
620 | - Fixed `window-wants-input-p' to check if the `InputHint' is |
---|
621 | set before reading the value |
---|
622 | |
---|
623 | |
---|
624 | 0.32 |
---|
625 | ==== |
---|
626 | |
---|
627 | * `M-TAB' window cycling now works in both directions, bind keys to |
---|
628 | `CYCLE-COMMAND-backwards', e.g. `cycle-windows-backwards' |
---|
629 | (Merlin, me) |
---|
630 | |
---|
631 | * Added support for X `Urgency' hint: `window-urgent-p' and |
---|
632 | `window-state-change-hook' is called with `urgency' state when it |
---|
633 | changes |
---|
634 | |
---|
635 | * Some improvements to `shade-hover' mode (adapted from Eli Barzilay) |
---|
636 | |
---|
637 | * Functions that raise/lower groups of windows now generate the |
---|
638 | minimum number of expose events (Rob Hodges, me) |
---|
639 | |
---|
640 | * New window property `window-list-skip'. Unified with GNOME |
---|
641 | skip-winlist hint |
---|
642 | |
---|
643 | * Custom options may have tooltips, use `:tooltip' tag |
---|
644 | |
---|
645 | * Catch errors when applying custom changes and revert to previous |
---|
646 | state |
---|
647 | |
---|
648 | * Translation updates: uk (Yuri Syrota), pt_BR (Douglas Moura |
---|
649 | Ferreira), hu (Róbert Ványi), de (Christian Meyer), ja (SATO |
---|
650 | Satoru), da (Keld Jørn Simonsen), es (Iñaki García Etxebarria), fr |
---|
651 | (Christian Marillat) |
---|
652 | |
---|
653 | * Fixed bugs: |
---|
654 | |
---|
655 | - With click-to-focus in non-click-through mode, don't |
---|
656 | click-through into window decorations |
---|
657 | |
---|
658 | - `dimensions' property in window matching was called `size' by |
---|
659 | mistake |
---|
660 | |
---|
661 | - Export the various `sp-cost:' functions from the |
---|
662 | `sawfish.wm.placement.smart' module |
---|
663 | |
---|
664 | - Don't allow cycles in the transient-for relationship |
---|
665 | |
---|
666 | - Fixed some maximize bugs |
---|
667 | |
---|
668 | - GNOME skip-focus property no longer causes the window to be |
---|
669 | unfocusable, just uncyclable-to |
---|
670 | |
---|
671 | - Coerce auto-raise timeout to be at least one millisecond; |
---|
672 | support `disable-auto-raise' correctly |
---|
673 | |
---|
674 | - Window input hints defaults to true not false |
---|
675 | |
---|
676 | - Fixed typo when loading the defaults file (Ronald Wahl) |
---|
677 | |
---|
678 | - Fixed command spec of `move-window-FOO' commands (Yoshiki |
---|
679 | Hayashi) |
---|
680 | |
---|
681 | - When sending `WM_TAKE_FOCUS' message, only focus the window |
---|
682 | if its `Input' hint is set |
---|
683 | |
---|
684 | |
---|
685 | 0.31.1 |
---|
686 | ====== |
---|
687 | |
---|
688 | * Translation updates: da (Kenneth Christiansen), de (Christian |
---|
689 | Meyer), no (Kjartan Maraas), pt_BR (Rui Miguel Silva Seabra), sv |
---|
690 | (Johan Dahlin), uk (Yuri Syrota) |
---|
691 | |
---|
692 | * Bug fixes: |
---|
693 | |
---|
694 | - Fixed typos in `sawfish.wm.gnome.integration' and |
---|
695 | `sawfish-themer' (Christian Marillat) |
---|
696 | |
---|
697 | - Fixed bug when building on Tru64 (John H. Palmieri) |
---|
698 | |
---|
699 | - Remember to check return value when initializing Imlib |
---|
700 | |
---|
701 | |
---|
702 | 0.31 |
---|
703 | ==== |
---|
704 | |
---|
705 | * Requires librep version `0.13' |
---|
706 | |
---|
707 | * Organized all lisp code into a hierarchy of modules. Root points |
---|
708 | are `sawfish.wm' for window manager code, `sawfish.ui' for |
---|
709 | configurator and `sawfish.gtk' for GTK+ utilities |
---|
710 | |
---|
711 | Compatibility should have been preserved as far as possible, |
---|
712 | through the use of module aliases. The `user' module that |
---|
713 | unmodularized user code is loaded in should look very similar to |
---|
714 | the old environment. However, code using private functions, |
---|
715 | probably will not work |
---|
716 | |
---|
717 | New features written as modules can either import modules |
---|
718 | individually, or just open `sawfish.wm' to get the core |
---|
719 | functionality |
---|
720 | |
---|
721 | * All command handling is now written in Lisp. It's fully compatible |
---|
722 | except for how commands are defined. Since there is no longer a |
---|
723 | unified namespace the mapping from names to command definitions is |
---|
724 | maintained separately. |
---|
725 | |
---|
726 | `define-command' and `autoload-command' add entries to this |
---|
727 | mapping. `define-command' takes a name and a function (and some |
---|
728 | other optional arguments). The old style of defining commands still |
---|
729 | works, but only in the user module |
---|
730 | |
---|
731 | * `sawfish-client' now provides the same repl as the normal `rep' |
---|
732 | program. E.g. this allows the module system to be easily inspected |
---|
733 | |
---|
734 | Also, the module of each loaded theme is available for inspection |
---|
735 | under `themes.THEME-NAME'. (With themes using top-level defines |
---|
736 | instead of a single `let*' block, this is useful for debugging) |
---|
737 | |
---|
738 | * `sawfish.client' module provides lisp functions for communicating |
---|
739 | with a running window manager. Also, the protocol has been |
---|
740 | modified to support proper communication of errors, which are then |
---|
741 | re-raised on the client-side. This should make debugging |
---|
742 | client-server code more obvious |
---|
743 | |
---|
744 | * `Action' parts of menu items may now be lisp objects that don't |
---|
745 | have a read syntax. (E.g. this allows closures to be used, |
---|
746 | avoiding the problems arising from modularization) |
---|
747 | |
---|
748 | * Support for checked and radio-group menu items. Also a new |
---|
749 | function `add-window-menu-toggle' to add items to the `Toggle' |
---|
750 | sub-menu of each window |
---|
751 | |
---|
752 | * Handle `ConfigureRequest' events in a way that is compliant with |
---|
753 | the ICCCM--honour the window's `win_gravity' setting (defaulting |
---|
754 | to `NorthWest' gravity), instead of assuming `Static' gravity |
---|
755 | |
---|
756 | * Support more GC attributes in the `sawfish.wm.util.x' plugin (Ryan |
---|
757 | Pavlik) |
---|
758 | |
---|
759 | * Support for handling arbitrary windows as extra "root" windows. |
---|
760 | Used, e.g., to support Nautilus' desktop window. Allows the focus |
---|
761 | modes to work correctly |
---|
762 | |
---|
763 | To support this, new window property `desktop' denoting a |
---|
764 | "desktop" window; new function `desktop-window-p' recognizing one |
---|
765 | of these things (or the symbol `root') |
---|
766 | |
---|
767 | * Added `pointer-motion-threshold' option. Pointer motion events are |
---|
768 | only generated when the pointer moves at this many pixes away from |
---|
769 | the position it had when the button was pressed |
---|
770 | |
---|
771 | * New functions: `scale-image', `composite-images', and `crop-image'. |
---|
772 | |
---|
773 | * New option `maximize-avoid-avoided' (Jonas Linde) |
---|
774 | |
---|
775 | * New functions exported by `sawfish.wm.ext.tooltips' module: |
---|
776 | `display-tooltip', `remove-tooltip' |
---|
777 | |
---|
778 | * New function exported from `sawfish.wm.viewports' module: |
---|
779 | `select-workspace-and-viewport'. Renamed some workspace functions: |
---|
780 | |
---|
781 | `ws-move-window' => `move-window-to-workspace', `ws-copy-window' |
---|
782 | => `copy-window-to-workspace', `ws-insert-workspace' => |
---|
783 | `insert-workspace', `ws-move-workspace' => `move-workspace', |
---|
784 | `ws-remove-window' => `remove-workspace'. |
---|
785 | |
---|
786 | * Changed interface of `get-visible-window-edges' function to use |
---|
787 | proper keyword parameters, and added some new keywords |
---|
788 | |
---|
789 | * New commands `help:about' and `gnome-about'. Added a |
---|
790 | `sawfish-about' script to implement the first of these. Added |
---|
791 | associate menu items to the `Help' menu |
---|
792 | |
---|
793 | * New window property `cycle-skip', defines whether the window is |
---|
794 | included when cycling the focused window. (Dave Dribin, me) |
---|
795 | |
---|
796 | * Translation additions and updates: es (Iñaki García Etxebarria), |
---|
797 | tr (Fatih Demir), zh_CN.GB2312 (zw@zhaoway.com), fr (Christian |
---|
798 | Marillat), ja (SATO Satoru), de (Kai Lahmann), el (Simos |
---|
799 | Xenitellis), ga (Seán Ó Ceallaigh), ru (Valek Filippov), sl |
---|
800 | (Andraz Tori) |
---|
801 | |
---|
802 | * Bug fixes: |
---|
803 | |
---|
804 | - Don't let errors in `.sawfishrc' prevent customization |
---|
805 | settings being loaded |
---|
806 | |
---|
807 | - initialize event handler when creating X window proxies (Matt |
---|
808 | Tucker) |
---|
809 | |
---|
810 | - No longer able to `throw' out the top of the program by |
---|
811 | mistake |
---|
812 | |
---|
813 | - Fixed `find-head' function, to allow Xinerama support to work |
---|
814 | |
---|
815 | - When exiting, leave window configurations exactly as they were |
---|
816 | found (E. Jay Berkenbilt) |
---|
817 | |
---|
818 | - Fixed `synthesize-event' to scan the window tree for a child |
---|
819 | window accepting button events (E. Jay Berkenbilt) |
---|
820 | |
---|
821 | - Removed "yow! ..." debugging messages |
---|
822 | |
---|
823 | - `image-set' and related functions will add an alpha channel |
---|
824 | to the image when necessary (when using gdk-pixbuf) |
---|
825 | |
---|
826 | - Canonify `S-x' as `X' where possible |
---|
827 | |
---|
828 | - Catch and handle errors when matching properties in the |
---|
829 | `sawfish.wm.ext.match-window' |
---|
830 | |
---|
831 | - Escape underscores in menu items where they shouldn't |
---|
832 | introduce accelerators. (Added `quote-menu-item' function to |
---|
833 | help with this) |
---|
834 | |
---|
835 | - Fixed race-condition when exiting configurator embedded into |
---|
836 | the GNOME control center (Havoc Pennington, me) |
---|
837 | |
---|
838 | - Fixed bug in `set' method of the `icon' widget |
---|
839 | |
---|
840 | - Fixed shading behaviour of included themes (Daniel Lundell) |
---|
841 | |
---|
842 | - Compute the shape of the frame window each time the |
---|
843 | background of one of its parts changes |
---|
844 | |
---|
845 | 0.30.3 |
---|
846 | ====== |
---|
847 | |
---|
848 | * If a frame part has a non-nil `hidden' attribute, ignore it |
---|
849 | |
---|
850 | * When reframing windows, keep the absolute position of the client |
---|
851 | window constant |
---|
852 | |
---|
853 | * Support `FIXED_POSITION' GNOME hint (renamed old `fixed-position' |
---|
854 | property as `client-set-position'; `fixed-position' now means |
---|
855 | don't allow the window to be moved by the user) |
---|
856 | |
---|
857 | * `transients-above' option can now be set per-window |
---|
858 | |
---|
859 | * Translation updates: fr (Christian Marillat), en_GB (Robert |
---|
860 | Brady), de (Kai Lahmann), da (Keld Simonsen), ru (Valek Filippov), |
---|
861 | sl (Andraz Tori), no (Kjartan Maraas), gl (Jesus Bravo Alvarez), it |
---|
862 | (Michele Campeotto) |
---|
863 | |
---|
864 | * Fixed bugs when converting option values |
---|
865 | |
---|
866 | * Fixed `:require' keyword in `defcustom' always causing the module |
---|
867 | to be loaded, not just when the option is non-nil |
---|
868 | |
---|
869 | * Fixed bug when adding windows that are shaded |
---|
870 | |
---|
871 | * Fixed some minor bugs in the configurator |
---|
872 | |
---|
873 | |
---|
874 | 0.30.2 |
---|
875 | ====== |
---|
876 | |
---|
877 | * Window cycling now forwards terminating events to external |
---|
878 | applications as well as internal bindings (e.g. `M-TAB M-w' closes |
---|
879 | an activated Netscape window) |
---|
880 | |
---|
881 | * `quote-event' command now works with applications that ignore |
---|
882 | synthetic events (adapted from code by Timo Korvola) |
---|
883 | |
---|
884 | * Reorganized frame style and window type management. New function |
---|
885 | `define-frame-type-mapper' allows modules to affect the mapping |
---|
886 | from window type to frame type. E.g. the shading module uses this. |
---|
887 | (fixes the bug that changing the frame type of a shaded window |
---|
888 | didn't work) |
---|
889 | |
---|
890 | * Added function `variable-customized-p'; use this to avoid |
---|
891 | redefining user-modified options |
---|
892 | |
---|
893 | * Do type-directed deep conversion of values when converting to/from |
---|
894 | readable representations. This fixes the bug that options with |
---|
895 | `:type (optional color)' weren't being converted when passed |
---|
896 | between the wm and the configurator, leading to reader errors |
---|
897 | |
---|
898 | A side-effect of this is that updated custom files will not be |
---|
899 | compatible with previous versions of the wm (though old custom |
---|
900 | files will work with new versions) |
---|
901 | |
---|
902 | * Translation updates: no (Kjartan Maraas), de (Kai Lahmann), nl |
---|
903 | (Dennis Smit), sl (Andraz Tori) |
---|
904 | |
---|
905 | * Added primitives `map-windows' and `filter-windows' |
---|
906 | |
---|
907 | * Fixed bug of not retaining focus on startup when originally in |
---|
908 | PointerRoot mode and moving to click-to-focus mode (Brad Thompson) |
---|
909 | |
---|
910 | * Ensure that apps get sent a synthetic ConfigureNotify event after |
---|
911 | ConfigureRequest events are handled (fixes bug where menus in Java |
---|
912 | apps can appear at wrong position until window is moved) |
---|
913 | |
---|
914 | * When referencing known variables from subroutines, make sure that |
---|
915 | restricted environment doesn't prevent the variable being accessed |
---|
916 | (fixes bug where `default-bevel-percent' was being ignored) |
---|
917 | |
---|
918 | * When creating transient groups, don't compare null group ids |
---|
919 | (fixes xfmail related bugs) |
---|
920 | |
---|
921 | * Fixed `move-window-to-viewport' command to correct for 1... |
---|
922 | indexing |
---|
923 | |
---|
924 | * Fixed non-gnome workspace widget in configurator |
---|
925 | |
---|
926 | |
---|
927 | 0.30 |
---|
928 | ==== |
---|
929 | |
---|
930 | * New commands `activate-viewport-column', `activate-viewport-row' |
---|
931 | |
---|
932 | * New commands `raise-window-and-transients', |
---|
933 | `lower-window-and-transients' and |
---|
934 | `raise-lower-window-and-transients', |
---|
935 | `raise-transients-and-pass-through-click'. |
---|
936 | |
---|
937 | As the normal window stacking commands, but restacks the |
---|
938 | "transient-group" of the window. This includes the window itself |
---|
939 | and any transients it has, and any windows that it itself is a |
---|
940 | transient of. |
---|
941 | |
---|
942 | These commands are used in the default keymaps |
---|
943 | |
---|
944 | * Functions that deal with transient windows now understand the de |
---|
945 | facto standard of setting the `WM_TRANSIENT_FOR' property to the |
---|
946 | root window denotes that the window is a transient for the whole |
---|
947 | group |
---|
948 | |
---|
949 | * New image manipulation functions: `image-ref', `image-set', |
---|
950 | `image-fill', `image-map'. New color accessor function |
---|
951 | `color-rgb-8'. New function `root-window-id' |
---|
952 | |
---|
953 | * Improvements to `sawfish-ui': optionally use some GNOME widgets, |
---|
954 | more lisp widget types, some bug fixes |
---|
955 | |
---|
956 | * New command `command-sequence'. Allows individual bindings to |
---|
957 | invoke a sequence of commands |
---|
958 | |
---|
959 | * Options `iconify-group-mode' and `uniconify-group-mode' replace |
---|
960 | `iconify-whole-group' and `uniconify-whole-group'. New commands |
---|
961 | `iconify-transient-group', and `uniconify-transient-group' |
---|
962 | |
---|
963 | * Added `:type*' key to `defcustom', like `:type', but value is left |
---|
964 | unquoted |
---|
965 | |
---|
966 | * Translation updates: pl (Daniel Koc), ru (Valek Filippov), uk |
---|
967 | (Yuri Syrota), es (Iñaki García Etxebarria) |
---|
968 | |
---|
969 | * Fixed handling of `WM_NORMAL_HINTS' (was using base-size instead |
---|
970 | of min-size in places) |
---|
971 | |
---|
972 | * Fixed further locale / FontSet bug (Tomohiro KUBOTA) |
---|
973 | |
---|
974 | * `window-history' module won't resize a window to a size that |
---|
975 | violates its size constraints |
---|
976 | |
---|
977 | |
---|
978 | 0.29 |
---|
979 | ==== |
---|
980 | |
---|
981 | * Rewrote the configuration user interface. Improvements include: |
---|
982 | |
---|
983 | - Key bindings may now include parameters. E.g. this finally |
---|
984 | allows shell commands to be bound to keys using the GUI (use |
---|
985 | the new `run-shell-command' command) |
---|
986 | |
---|
987 | - Nautilus-like user-levels to tailor the options shown to the |
---|
988 | expertise of the user |
---|
989 | |
---|
990 | - Options may have much richer type descriptions (including |
---|
991 | `match-window' options). Also, extra widget types and |
---|
992 | containers may be added as extra Lisp modules |
---|
993 | |
---|
994 | - By default the stand-alone configurator commits changes to the |
---|
995 | window manager as they are made, instead of waiting for the |
---|
996 | `Try' button to be pressed |
---|
997 | |
---|
998 | - Added dependences--options with dependences are only editable |
---|
999 | when the value of their dependence is non-`nil' |
---|
1000 | |
---|
1001 | * Rewrote window stacking code to be based on "stacking |
---|
1002 | predicates"--functions that accept or reject a possible stacking |
---|
1003 | configuration. This allows the "stack-transients-above-parents" |
---|
1004 | option to work correctly, only keeping transient windows above |
---|
1005 | their _own_ parent windows |
---|
1006 | |
---|
1007 | * The configure-event handler now understands and handles the full |
---|
1008 | complexity of stacking requests (Brad Thompson) |
---|
1009 | |
---|
1010 | * New frame-part attribute: `scale-foreground'. The `cursor' |
---|
1011 | attribute may now be a function |
---|
1012 | |
---|
1013 | * Made the `centered', `centered-on-parent' and `under-pointer' |
---|
1014 | placement modes clamp the window into the current work area (i.e. |
---|
1015 | without overlapping windows that shouldn't be covered). Added a |
---|
1016 | `stagger' placement mode |
---|
1017 | |
---|
1018 | * When grabbing window icons to images, preserve their shape masks |
---|
1019 | |
---|
1020 | * Moved `window-history' options to `placement' group. Fixed some |
---|
1021 | more bugs and sub-optimal default option values |
---|
1022 | |
---|
1023 | * Don't set cursors for button classes, use the default value |
---|
1024 | |
---|
1025 | * GNOME `SKIP_FOCUS' window hint sets `never-focus' property on |
---|
1026 | window, as well as the `ignored' property |
---|
1027 | |
---|
1028 | * Translation updates: de (Karl Eichwalder), ru (Valek Filippov), da |
---|
1029 | (Kenneth Christiansen) |
---|
1030 | |
---|
1031 | * Added mostly-complete support for using gdk-pixbuf instead of |
---|
1032 | Imlib (requires an experimental Xlib version of the gdk-pixbuf |
---|
1033 | library) |
---|
1034 | |
---|
1035 | * Various bug fixes and other minor changes... |
---|
1036 | |
---|
1037 | |
---|
1038 | 0.28.1 |
---|
1039 | ====== |
---|
1040 | |
---|
1041 | * New options `--visual=TYPE' and `--depth=DEPTH'. These tell the |
---|
1042 | window manager to use a different visual than the default |
---|
1043 | |
---|
1044 | * Made the `window-history' module behave more sanely (don't save |
---|
1045 | iconified or shaded state; include window name when generating |
---|
1046 | keys for transient windows) |
---|
1047 | |
---|
1048 | * Made `beos-window-module' the standard window menu (require |
---|
1049 | `old-window-menu' to get the original version). Also made this |
---|
1050 | display the windows' class names |
---|
1051 | |
---|
1052 | * Updated translations: es (Iñaki García Etxebarria), tr (Fatih |
---|
1053 | Demir) |
---|
1054 | |
---|
1055 | |
---|
1056 | 0.28 |
---|
1057 | ==== |
---|
1058 | |
---|
1059 | * New module `window-history'--automatically saves window attributes |
---|
1060 | when they are explicitly set by the user, then copies these |
---|
1061 | attributes to windows with the same `WM_CLASS' as they are |
---|
1062 | created. This is loaded automatically if you have no `.sawfishrc' |
---|
1063 | |
---|
1064 | * New method of allowing themes to implement only some of the |
---|
1065 | (currently) four frame types. The variable |
---|
1066 | `frame-type-fallback-alist' maps each frame type to the type to |
---|
1067 | try if the original type isn't available in the chosen frame style. |
---|
1068 | |
---|
1069 | Note that for this to work, themes must return `nil' when they |
---|
1070 | don't support the requested frame type, until now, the convention |
---|
1071 | had been to return the default frame definition, so most if not |
---|
1072 | all themes will need changing. (This doesn't include themes |
---|
1073 | created using the `make-theme' module.) |
---|
1074 | |
---|
1075 | * Made the metrics used by the `best-fit' placement mode |
---|
1076 | user-controllable. Set the `sp-cost-components' variable to a list |
---|
1077 | of cost functions and the weight to apply to that metric. E.g. by |
---|
1078 | default it gives 50% importance to the distance from the placement |
---|
1079 | to the focused window, and 25% each to the distance to the pointer |
---|
1080 | and to the "future-unusefulness" of the area being covered |
---|
1081 | |
---|
1082 | * New module `beos-window-menu' to redefine the window menu to group |
---|
1083 | items by the window group that they are a member of (in the |
---|
1084 | absence of actual group information, it will heuristically build |
---|
1085 | groups by matching window titles) |
---|
1086 | |
---|
1087 | * New option `edge-flip-warp-pointer', whether or not to warp the |
---|
1088 | pointer after edge-flipping (Paul Warren) |
---|
1089 | |
---|
1090 | * New option `display-window:uniconify-to-current-workspace', |
---|
1091 | controls whether windows uniconified by `display-window' should be |
---|
1092 | moved to the current workspace (John N S Gill) |
---|
1093 | |
---|
1094 | * Changed method of selecting when to use multi-byte aware rendering |
---|
1095 | functions (except when initializing the locale fails, or returns a |
---|
1096 | 7-bit locale); also, when creating a fontset fails, try to |
---|
1097 | intelligently fall back to a similar group of fonts (Tomohiro |
---|
1098 | Kubota) |
---|
1099 | |
---|
1100 | * The `x' library now supports creating and then drawing to pixmaps. |
---|
1101 | The pixmaps can then be grabbed to images using the |
---|
1102 | `make-image-from-x-drawable' function |
---|
1103 | |
---|
1104 | * Added a `Help' item to the root menu |
---|
1105 | |
---|
1106 | * Translation updates: fi (Antti Ahvensalmi), gl (Jesus Bravo |
---|
1107 | Alvarez), de (Karl Eichwalder), nl (Jan Nieuwenhuizen), pl (Daniel |
---|
1108 | Koc), tr (Fatih Demir) |
---|
1109 | |
---|
1110 | * Now supports the `Super' modifier |
---|
1111 | |
---|
1112 | * Fixed bug of sometimes ignoring pending X events |
---|
1113 | |
---|
1114 | * Fixed bug of calling focus change hooks too many times (only when |
---|
1115 | our view of the focused window has actually changed) |
---|
1116 | |
---|
1117 | * Avoid problems when windows set weird size hints structures |
---|
1118 | |
---|
1119 | * Raise windows _after_ possibly moving them to a different layer, |
---|
1120 | when they have been mapped |
---|
1121 | |
---|
1122 | * When the `cycle-windows' sequence is terminated by an unknown |
---|
1123 | event, re-handle that event after exiting (so that e.g. `M-TAB' |
---|
1124 | can be followed by another `M-' qualified event without releasing |
---|
1125 | Meta) |
---|
1126 | |
---|
1127 | |
---|
1128 | 0.27.2 |
---|
1129 | ====== |
---|
1130 | |
---|
1131 | * Translation updates: da (Kenneth Christiansen), de (Karl |
---|
1132 | Eichwalder), es (Iñaki García Etxebarria), ja (SATO Satoru) |
---|
1133 | |
---|
1134 | * Attempt to destructure the language code when parsing GNOME |
---|
1135 | desktop items (e.g. if `LANG=de_DE' look for both `de_DE' and `de' |
---|
1136 | translations) |
---|
1137 | |
---|
1138 | * New focus handler events `enter-root' and `leave-root' |
---|
1139 | |
---|
1140 | * Removed `raise-groups-on-focus' option, it caused unstable window |
---|
1141 | flickering in certain cases |
---|
1142 | |
---|
1143 | * Fixed bug When transferring focus after a window is unmapped |
---|
1144 | (inverted choice of when to look under pointer, and when to look in |
---|
1145 | focus history) |
---|
1146 | |
---|
1147 | |
---|
1148 | 0.27 |
---|
1149 | ==== |
---|
1150 | |
---|
1151 | * Changed the name from `sawmill' to `sawfish'; all user-visible |
---|
1152 | binaries have been renamed appropriately, the old programs will |
---|
1153 | still work for now... |
---|
1154 | |
---|
1155 | * Added support for accelerators in menu definitions (this requires |
---|
1156 | a new rep-gtk package) (Richard Kilgore). Added accelerators to |
---|
1157 | many of the standard menu items |
---|
1158 | |
---|
1159 | * Added some (untested) support for Xinerama: `current-head', |
---|
1160 | `current-head-dimensions', `current-head-offset'. Some placement |
---|
1161 | modes should handle multiple heads sensibly, as should window |
---|
1162 | maximization and edge snapping. |
---|
1163 | |
---|
1164 | * Added icons for GNOME control center applets (all icons by Tigert, |
---|
1165 | except for the saw-blade logo by Glyph Lefkowitz) |
---|
1166 | |
---|
1167 | * New functions `map-window-properties' (me), `window-icon-image' |
---|
1168 | (Bruce Miller) |
---|
1169 | |
---|
1170 | * Changed behaviour of `raise-group' and `lower-group' to preserve |
---|
1171 | the stacking of the group, then change the selected window. Added |
---|
1172 | new command `raise-lower-group' |
---|
1173 | |
---|
1174 | * New option `raise-groups-on-focus' |
---|
1175 | |
---|
1176 | * Updated translations: de (Hubert Nachbaur), es (Iñaki García |
---|
1177 | Etxebarria), gl (Jesus Bravo Alvarez), ko (Man-Yong Lee), tr |
---|
1178 | (Fatih Demir) |
---|
1179 | |
---|
1180 | * Try to handle errors more gracefully when creating window frames |
---|
1181 | |
---|
1182 | * Better handling of errors in the control center applet |
---|
1183 | |
---|
1184 | * Fixed the `below-client' frame-part attribute |
---|
1185 | |
---|
1186 | * Fixed the disappearing items in the match-windows dialog |
---|
1187 | |
---|
1188 | * Fixed the non-beautified entries in the keymaps dialog |
---|
1189 | |
---|
1190 | * Fixed interactive placement mode (Timo Korvola) |
---|
1191 | |
---|
1192 | * Invoke audio playing program asynchronously, may avoid deadlocks |
---|
1193 | |
---|
1194 | * Fixed `workspace-menu' to add the focus-marking asterisk (John N S |
---|
1195 | Gill) |
---|
1196 | |
---|
1197 | * Fixed menu-obscuring bug after auto-raising windows |
---|
1198 | |
---|
1199 | * Ensure that `WM_STATE' property is set each time a window is |
---|
1200 | mapped, not just the first time |
---|
1201 | |
---|
1202 | * Fixed bug when discarding grab in click-to-focus mode, even though |
---|
1203 | successive events may be in the window's keymap |
---|
1204 | |
---|
1205 | * Only focus windows when they're mapped when they're visible |
---|
1206 | |
---|
1207 | * Fixed click-to-focus problems when unmapping transient windows |
---|
1208 | |
---|
1209 | |
---|
1210 | 0.26 |
---|
1211 | ==== |
---|
1212 | |
---|
1213 | * Added plugin `selection', adds functions `x-selection-active-p' |
---|
1214 | and `x-get-selection' for retrieving X selections (Mark Probst) |
---|
1215 | |
---|
1216 | * New functions `prompt-for-window', `prompt-for-workspace' and |
---|
1217 | `select-workspace-interactively' (Dave Pearson) |
---|
1218 | |
---|
1219 | * `window-anim' module enabling asynchronous animations after window |
---|
1220 | events. Currently only two animation styles `wireframe' and |
---|
1221 | `solid', and they only animate window iconification |
---|
1222 | |
---|
1223 | * `audio-events' module; maps window manager events to audio samples |
---|
1224 | (played using esd by default, but can be configured to use any |
---|
1225 | program) |
---|
1226 | |
---|
1227 | * When running programs in terminals from the GNOME apps menu, use |
---|
1228 | the value of `xterm-program' to decide which terminal program to |
---|
1229 | use (James Antill) |
---|
1230 | |
---|
1231 | * Translation updates: gl (Jesus Bravo Alvarez), pl (Daniel Koc) |
---|
1232 | |
---|
1233 | * New command `toggle-window-iconified' (Jens-Ulrik Petersen) |
---|
1234 | |
---|
1235 | * New option `raise-windows-when-unshaded' |
---|
1236 | |
---|
1237 | * Customization options for tooltip colors (Erik Assum) |
---|
1238 | |
---|
1239 | * Removed default binding to `A-x' |
---|
1240 | |
---|
1241 | * Added support for librep-with-module-system (cvs version) |
---|
1242 | |
---|
1243 | * Note that `ko' and `zh' languages need FontSets |
---|
1244 | |
---|
1245 | * When sticking a window not on the current viewport, move it to the |
---|
1246 | current viewport (Merlin) |
---|
1247 | |
---|
1248 | * Fixed bug (?) of placing over avoided windows in `random' mode; |
---|
1249 | also increased `sp-avoided-windows-weight' by an order of |
---|
1250 | magnitude (Dan Winship) |
---|
1251 | |
---|
1252 | * Fixed bug of maximizing a window changing its viewport |
---|
1253 | |
---|
1254 | * Fixed window cycling losing grab if originally focused window is |
---|
1255 | unmapped |
---|
1256 | |
---|
1257 | * Fixed `get-cursor' to use the correct background color when |
---|
1258 | creating cursors from vectors (Alexander Barinov) |
---|
1259 | |
---|
1260 | * Fixed `get-font' to set `descent' property correctly |
---|
1261 | |
---|
1262 | * Changed double-buffering semantics in `x' plugin, also only |
---|
1263 | support this if configure finds the correct header files |
---|
1264 | |
---|
1265 | * Fixed `synthesize-event' to generate correct relative pointer |
---|
1266 | positions |
---|
1267 | |
---|
1268 | * Don't focus on non-visible windows (crashes GNOME control center) |
---|
1269 | |
---|
1270 | * Fixed bug of using `cp' to install GNOME desktop files |
---|
1271 | |
---|
1272 | |
---|
1273 | 0.25.2 |
---|
1274 | ====== |
---|
1275 | |
---|
1276 | * If no user customization file when saving options, inherit from |
---|
1277 | the custom-defaults file |
---|
1278 | |
---|
1279 | * Rewrote window stacking (fixes bugs, more efficient) |
---|
1280 | |
---|
1281 | * Added `input-focus' to theme-callable functions |
---|
1282 | |
---|
1283 | * When focused window is unmapped, don't try to focus non-visible |
---|
1284 | windows |
---|
1285 | |
---|
1286 | * Fixed `display-window' when it's applied to iconified windows |
---|
1287 | |
---|
1288 | * New variables `fonts-are-fontsets' and `fontset-languages-re' to |
---|
1289 | work around broken X servers |
---|
1290 | |
---|
1291 | * Update edges for snapping to when dragging windows across |
---|
1292 | workspaces or viewports |
---|
1293 | |
---|
1294 | * When passing keymaps to customization system, filter out, then |
---|
1295 | later restore, bindings that aren't symbols |
---|
1296 | |
---|
1297 | * Most commands to move/copy windows between workspaces can now be |
---|
1298 | told whether to select the destination workspace or not |
---|
1299 | |
---|
1300 | * In GNOME hints, never place windows on workspaces that don't exist |
---|
1301 | (from the pager's POV). (Rob Hodges) |
---|
1302 | |
---|
1303 | * Fixed `ws-move-window' to not remove the window if source and dest |
---|
1304 | are the same (Rob Hodges) |
---|
1305 | |
---|
1306 | * Fixed `sp-prune-points' function (Dan Winship) |
---|
1307 | |
---|
1308 | * Fixed `move-viewport-to-window' to only flip viewports if window |
---|
1309 | isn't already on the current viewport (Merlin) |
---|
1310 | |
---|
1311 | * Try to detect and handle system clock being rewound |
---|
1312 | |
---|
1313 | * Optional second arg to `x-raise-window'; added symmetrical |
---|
1314 | function `x-lower-window' |
---|
1315 | |
---|
1316 | * Fixed unix-domain server code assuming atomic writes to sockets |
---|
1317 | |
---|
1318 | * Added double buffering support to `x' module |
---|
1319 | |
---|
1320 | * Fixed grabs during multi-key sequences; also, print the current |
---|
1321 | prefix keys if idle during a multi-key sequence |
---|
1322 | |
---|
1323 | |
---|
1324 | 0.25.1 |
---|
1325 | ====== |
---|
1326 | |
---|
1327 | * Only force windows onto the visible screen if they didn't |
---|
1328 | explicitly set their position |
---|
1329 | |
---|
1330 | * Redefine `/' in themes to be the `quotient' function (integer |
---|
1331 | division), which is what they expect. The `divide' function can be |
---|
1332 | used for real division |
---|
1333 | |
---|
1334 | 0.25 |
---|
1335 | ==== |
---|
1336 | |
---|
1337 | * New plugin `x', a basic Xlib binding for creating and drawing in |
---|
1338 | windows (Merlin, me) |
---|
1339 | |
---|
1340 | * Added a method of reading textual input from the user from |
---|
1341 | completion. Provision for completing functions, variables, |
---|
1342 | commands, files, directories, etc.... Also supports reading |
---|
1343 | passwords. (Topi Paavola, me) |
---|
1344 | |
---|
1345 | * Re-enabled the following interactive codes: `a' (function), `C' |
---|
1346 | (command), `D' (directory), `f' (existing file), `F' (file), `k' |
---|
1347 | (event), `n' (number), `N' (prefix or number), `s' (string), `S' |
---|
1348 | (symbol), `v' (variable) |
---|
1349 | |
---|
1350 | * Support prefix keys in bindings (binding an event to a keymap, or |
---|
1351 | the name of a keymap, marks that event as a prefix key for the |
---|
1352 | associated keymap) |
---|
1353 | |
---|
1354 | * New command `call-command-with-output-to-screen', prompts for and |
---|
1355 | invokes a command, then displays any output it emitted (bound to |
---|
1356 | `A-x' in default keymaps) |
---|
1357 | |
---|
1358 | * New variable `multi-click-delay', maximum time in milliseconds |
---|
1359 | between button presses to count as `click2' or `click3' events |
---|
1360 | (Martin Blais) |
---|
1361 | |
---|
1362 | * New option `edge-flip-only-when-moving' (Yaron M. Minsky) |
---|
1363 | |
---|
1364 | * New window cycling commands `cycle-prefix', `cycle-class' (Kai |
---|
1365 | Großjohann); can now be bound to events with more than one |
---|
1366 | modifier (Timo Korvola) |
---|
1367 | |
---|
1368 | * New command `uniquify-window-name'; new property `unique-name'. |
---|
1369 | Forces the window to have a unique name |
---|
1370 | |
---|
1371 | * New commands `size-window-add-column', |
---|
1372 | `size-window-subtract-column', `size-window-add-row', |
---|
1373 | `size-window-subtract-row' |
---|
1374 | |
---|
1375 | * Window edge snapping now has three variants: `magnetism' (the old |
---|
1376 | method), `attraction' and `resistance'. (Merlin, me) |
---|
1377 | |
---|
1378 | * New commands `grow-window-{left,right,up,down}' and |
---|
1379 | `pack-window-{left,right,up,down}' (Kai Großjohann) |
---|
1380 | |
---|
1381 | * Support the `WM_COLORMAP_WINDOWS' protocol |
---|
1382 | |
---|
1383 | * New functions `synthesize-event', `font-ascent', `font-descent', |
---|
1384 | `call-with-keyboard-grabbed' |
---|
1385 | |
---|
1386 | * New functions `define-placement-mode' and |
---|
1387 | `define-focus-mode'--make defining these things easier. Focus |
---|
1388 | modes are now settable for each window individually |
---|
1389 | |
---|
1390 | * Made the tree-organised customization groups work better with the |
---|
1391 | GNOME control center. Add the sawmill capplet desktop entries to |
---|
1392 | the GNOME programs menu (under Settings). Also, beautify the names |
---|
1393 | displayed in the bindings widget |
---|
1394 | |
---|
1395 | * When applicable, load the GNOME applications menu when the wm is |
---|
1396 | first idle, reduces the latency of displaying the first root menu |
---|
1397 | |
---|
1398 | * Translation updates: de (Hubert Nachbaur), es (Iñaki García |
---|
1399 | Etxebarria), ja (Sato Satoru), sv (Andreas Persenius) |
---|
1400 | |
---|
1401 | * Fix bug of not noticing when the keyboard / pointer / modifier |
---|
1402 | mappings change |
---|
1403 | |
---|
1404 | * Fixed `current-event-string' function |
---|
1405 | |
---|
1406 | * Better method of reconfiguring frames when they're resized (helps |
---|
1407 | opaque resizing) |
---|
1408 | |
---|
1409 | * Added some kludges to try and break the intermittent lockups some |
---|
1410 | people have seen |
---|
1411 | |
---|
1412 | * Made the auto-gravity option work a lot better (John N S Gill, me) |
---|
1413 | |
---|
1414 | * Fixed bug where unmapped windows were being included in the |
---|
1415 | snapping calculation |
---|
1416 | |
---|
1417 | * Fixed bug when uniconifying windows and merging workspaces |
---|
1418 | |
---|
1419 | * Fixed bug of warp-cursor-to-window trying to put the pointer |
---|
1420 | outside the screen boundaries (Merlin) |
---|
1421 | |
---|
1422 | * Fixed bug of losing keyboard grab when originally focused window |
---|
1423 | is deleted during `x-cycle' command |
---|
1424 | |
---|
1425 | * Fixed bug of trying to focus unviewable parent windows when |
---|
1426 | focused window is unmapped |
---|
1427 | |
---|
1428 | |
---|
1429 | 0.24 |
---|
1430 | ==== |
---|
1431 | |
---|
1432 | * Configure requests events are now passed to the hook |
---|
1433 | `configure-request-hook'. The new configure handler respects |
---|
1434 | window gravity when resizing |
---|
1435 | |
---|
1436 | * New option `configure-auto-gravity'. When enabled the window |
---|
1437 | gravity is implied by the position of the center of the window. |
---|
1438 | (e.g. try placing the GNOME control center in the bottom right |
---|
1439 | corner of the screen, then click on an item that causes it to |
---|
1440 | resize) |
---|
1441 | |
---|
1442 | * Worked around the numerous reports of non-existent font errors |
---|
1443 | that using `XCreateFontSet' causes--fall back to `XLoadQueryFont' |
---|
1444 | if possible |
---|
1445 | |
---|
1446 | * There's now a library `custom-defaults' giving default |
---|
1447 | customization options (only if the user has no `~/.sawmill/custom') |
---|
1448 | |
---|
1449 | Also, remove the need to call `custom-add-required' in |
---|
1450 | `.sawmillrc', it's always done now |
---|
1451 | |
---|
1452 | * New window properties `focus-when-mapped', and `gravity' |
---|
1453 | (overrides the hinted gravity value) |
---|
1454 | |
---|
1455 | * New placement modes `under-pointer' and `centered-on-parent' |
---|
1456 | |
---|
1457 | * New option `resize-edge-mode', replaces `resize-by-frame-class' |
---|
1458 | and `resize-add-edges'>. Also allows twm-style resizing (Mark |
---|
1459 | Probst, me) |
---|
1460 | |
---|
1461 | * Optionally display command documentation in tooltips; tooltips are |
---|
1462 | now aligned into columns (if you use a monospaced font for them) |
---|
1463 | |
---|
1464 | * Variables `default-cursor', `synthetic-configure-mutex', |
---|
1465 | `frame-draw-mutex', `frame-state-mutex' are now functions |
---|
1466 | |
---|
1467 | * New functions `x-keysym-name', `x-lookup-keysym', `decode-event', |
---|
1468 | `encode-event'. |
---|
1469 | |
---|
1470 | * New option `move-resize-inhibit-configure' |
---|
1471 | |
---|
1472 | * Translation updates: es (Iñaki García Etxebarria), fr (Christian |
---|
1473 | Gillot), gl (Jesus Bravo Alvarez), nl (Han-Wen Nienhuys), pt_PT |
---|
1474 | (Rui Silva), sv (Andreas Persenius) |
---|
1475 | |
---|
1476 | * Fixed single-quoting in client readline (Matt Krai), copied |
---|
1477 | bouncing parentheses hack |
---|
1478 | |
---|
1479 | * Removed `fp->win == 0' assertion, it should be harmless and was |
---|
1480 | triggering for some people |
---|
1481 | |
---|
1482 | * Fixed bug of sending configure notify events to too many windows |
---|
1483 | |
---|
1484 | * Fixed off-by-one error in `ws-insert-workspace' (Kirk Saranathan) |
---|
1485 | |
---|
1486 | * Fixed maximization in single directions to work additively |
---|
1487 | |
---|
1488 | * Fixed bug of leaving tooltips displayed after the associated |
---|
1489 | window has been deleted |
---|
1490 | |
---|
1491 | * Fixed bug of not removing `-clientId' option from restart |
---|
1492 | parameters |
---|
1493 | |
---|
1494 | * Fixed bug of not translating customize group names |
---|
1495 | |
---|
1496 | |
---|
1497 | 0.23 |
---|
1498 | ==== |
---|
1499 | |
---|
1500 | * Customization groups are now organized as a tree structure, with |
---|
1501 | groups able to contain subgroups |
---|
1502 | |
---|
1503 | * Define the list of features that will be presented to the user in |
---|
1504 | `sawmill-defaults.jl', by calling `custom-add-required'. If you |
---|
1505 | have a `.sawmillrc' you'll need to do this manually |
---|
1506 | |
---|
1507 | * New function `move-resize-window-to' doing a combined move/resize. |
---|
1508 | New variable `synthetic-configure-mutex', when set holds off |
---|
1509 | sending synthetic `ConfigureNotify' events to windows until it's |
---|
1510 | unset (this is held while interactively moving or resizing windows) |
---|
1511 | |
---|
1512 | * New hook `after-add-window-hook'. Called with a single parameter, |
---|
1513 | the window that's has just been adopted |
---|
1514 | |
---|
1515 | * New functions `x-kill-client', `delete-window-safely'. |
---|
1516 | `send-client-message' now groks long integers (i.e. cons cells) in |
---|
1517 | 32-bit data (Timo Korvola) |
---|
1518 | |
---|
1519 | * `window-put', `window-get', `image-put', `image-get', `font-put', |
---|
1520 | `font-get': use `equal' to compare keys, not `eq' |
---|
1521 | |
---|
1522 | * New module `error-handler', implements a simple alternative error |
---|
1523 | handler (and allows the much-maligned beep to be turned off), |
---|
1524 | requires rep 0.11+ |
---|
1525 | |
---|
1526 | * Allow the pointer-warp position to be defined relative to the |
---|
1527 | window (Kai Großjohann) |
---|
1528 | |
---|
1529 | * New module `shade-hover', unshades windows while the pointer is |
---|
1530 | over them |
---|
1531 | |
---|
1532 | * Don't automatically warp to the new workspace when opening windows |
---|
1533 | on a different workspace |
---|
1534 | |
---|
1535 | * Include iconified sticky windows in the `window-menu', shorten |
---|
1536 | sticky entries as usual (James Antill) |
---|
1537 | |
---|
1538 | * Support the `TryExec' field in GNOME desktop files (Ian) |
---|
1539 | |
---|
1540 | * New commands: `raise-or-pass-through-click', |
---|
1541 | `raise-and-pass-through-click-if-focused' |
---|
1542 | |
---|
1543 | * New module `move-cursor', various commands for moving the mouse |
---|
1544 | pointer; these commands are bound to the cursor keys when moving |
---|
1545 | or resizing windows |
---|
1546 | |
---|
1547 | * Translation updates: es (Iñaki García Etxebarria), fr (Fabien |
---|
1548 | Ninoles), gl (Jesus Bravo Alvarez), ja (Satoru Sato), nl (Jan |
---|
1549 | Nieuwenhuizen), tr (Fâtih Demir) |
---|
1550 | |
---|
1551 | * Fix bug of leaving window-name unset when `WM_NAME' is a null text |
---|
1552 | property |
---|
1553 | |
---|
1554 | * Don't fail catastrophically if unable to open the default font |
---|
1555 | |
---|
1556 | * Fixed method of truncating maximized window dimensions |
---|
1557 | |
---|
1558 | * Fixed the match-window `skip-winlist' and `skip-tasklist' |
---|
1559 | properties I'd stupidly broken |
---|
1560 | |
---|
1561 | * Fixed bug of trying to edge-flip sticky windows |
---|
1562 | |
---|
1563 | * Fixed the `move-workspace-forwards' and `move-workspace-backwards' |
---|
1564 | commands |
---|
1565 | |
---|
1566 | * Fixed `uniconify-to-current-viewport' option |
---|
1567 | |
---|
1568 | * Fixed infinite-loop bug in `delete-empty-workspaces' command |
---|
1569 | |
---|
1570 | * Avoid generating empty sub-menus when reading GNOME menu tree |
---|
1571 | |
---|
1572 | |
---|
1573 | 0.22 |
---|
1574 | ==== |
---|
1575 | |
---|
1576 | * Window frame parts are now first-class lisp data objects, allowing |
---|
1577 | a higher level of control by themes |
---|
1578 | |
---|
1579 | New or updated functions to access frame parts directly: |
---|
1580 | |
---|
1581 | `frame-part-get', `frame-part-put', `frame-part-window', |
---|
1582 | `frame-part-x-window', `frame-part-position', |
---|
1583 | `frame-part-dimensions', `frame-part-state', `map-frame-parts', |
---|
1584 | `refresh-frame-part', `rebuild-frame-part' |
---|
1585 | |
---|
1586 | Other new functions: `refresh-window' |
---|
1587 | |
---|
1588 | * Updated `sawmill-themer' to emit code to tell the window manager |
---|
1589 | that the theme is editable. The wm adds an `Edit Theme...' option |
---|
1590 | to the Customize menu when appropriate |
---|
1591 | |
---|
1592 | * The `call-after-property-changed' function can now be given a list |
---|
1593 | of properties to monitor (James Antill) |
---|
1594 | |
---|
1595 | * New function `call-after-state-changed', monitors a list of window |
---|
1596 | states (i.e. things like iconified, shaded, ...) and calls a |
---|
1597 | function when any of them change. The `window-state-change-hook' |
---|
1598 | now has a second argument (apart from the window), the list of |
---|
1599 | symbolic states that changed (James Antill) |
---|
1600 | |
---|
1601 | * Add support for `skip-winlist' and `skip-tasklist' to the window |
---|
1602 | matcher when GNOME support is enabled (Ben Liblit) |
---|
1603 | |
---|
1604 | * Integrated patch supporting multi-byte languages from the Kondara |
---|
1605 | MNU/Linux distribution (forwarded by Yukihiro Nakai) |
---|
1606 | |
---|
1607 | * Translation updates: de (Christoph Rauch), es (Iñaki García |
---|
1608 | Etxebarria), gl (Jesus Bravo Alvarez), ja (Satoru Sato), tr (Fâtih |
---|
1609 | Demir) |
---|
1610 | |
---|
1611 | * Use a combo box in the configurator to display the list of themes |
---|
1612 | (it gets given scroll bars when too big for the screen) |
---|
1613 | |
---|
1614 | * Changed timestamp handling--attempt to detect and discard |
---|
1615 | timestamps that arrive out of order |
---|
1616 | |
---|
1617 | * Added option controlling title justification to `mono' theme |
---|
1618 | |
---|
1619 | * Filter <Scroll_Lock> modifiers as well as the other lock modifiers |
---|
1620 | (Matt Krai) |
---|
1621 | |
---|
1622 | * Fixed `display-message' function update background color, and |
---|
1623 | gracefully handle invalid color specifiers (Matt Krai) |
---|
1624 | |
---|
1625 | * Reverted to grabbing events on the client window, not the frame, |
---|
1626 | avoids some awkward-to-fix-correctly problems |
---|
1627 | |
---|
1628 | * Load i18n support _before_ other libraries; ensures that some |
---|
1629 | static strings get translated |
---|
1630 | |
---|
1631 | * Fixed annoying flicker when cycling to an iconified window |
---|
1632 | |
---|
1633 | |
---|
1634 | 0.21.1 |
---|
1635 | ====== |
---|
1636 | |
---|
1637 | * Fixed problem causing spurious double-click events to be reported |
---|
1638 | in click-to-focus mode |
---|
1639 | |
---|
1640 | * Fixed problem with binding `-Off' events in the `window-keymap'. |
---|
1641 | (Matt Krai) |
---|
1642 | |
---|
1643 | * Don't try to grab non-existent keys (which actually grabs the |
---|
1644 | entire keyboard) |
---|
1645 | |
---|
1646 | * Fixed some problems with reading unusually formatted GNOME menu |
---|
1647 | entries |
---|
1648 | |
---|
1649 | |
---|
1650 | 0.21 |
---|
1651 | ==== |
---|
1652 | |
---|
1653 | * Frame pattern definitions (foreground, background, font) may now |
---|
1654 | take alists as well as the old single object, or list of four |
---|
1655 | objects. Possible states are `inactive', `focused', |
---|
1656 | `highlighted', `clicked', `inactive-highlighted', |
---|
1657 | `inactive-clicked'. (Last two are new) |
---|
1658 | |
---|
1659 | * New program `sawmill-themer'. A GUI for creating simple themes |
---|
1660 | (those without any parts defined by functions) |
---|
1661 | |
---|
1662 | * New module `gnome-int', loaded by `sawmill-defaults' if GNOME is |
---|
1663 | around, sets up some GNOME'ish things |
---|
1664 | |
---|
1665 | * New command `toggle-single-window-mode' |
---|
1666 | |
---|
1667 | * Translation updates/additions: de (Christoph Rauch), es (Iñaki |
---|
1668 | García Etxebarria), nl (Han-Wen Nienhuys) |
---|
1669 | |
---|
1670 | * Optional removal of tooltips after time period (Morgan Schweers) |
---|
1671 | |
---|
1672 | * `Any-RET' completes interactive move or resize |
---|
1673 | |
---|
1674 | * Work around Imlib's annoying image caching, `make-image' now |
---|
1675 | _always_ returns a new image |
---|
1676 | |
---|
1677 | * Fixed gc bug when building window frames |
---|
1678 | |
---|
1679 | * Fixed X property handling on Alpha's (George Lebl) |
---|
1680 | |
---|
1681 | * Make `call-command' accept closures |
---|
1682 | |
---|
1683 | * Make `(cursor . nil)' work correctly in frame definitions |
---|
1684 | |
---|
1685 | * Grab on frame window, not client window (ICCCM compliant) |
---|
1686 | |
---|
1687 | * Fixed the "uniconify to current workspace" option |
---|
1688 | |
---|
1689 | * Added window-maximization predicates to the gaol |
---|
1690 | |
---|
1691 | |
---|
1692 | 0.20 |
---|
1693 | ==== |
---|
1694 | |
---|
1695 | * Rewrote workspace handling--windows can now appear on multiple |
---|
1696 | workspaces, with each instance having different properties |
---|
1697 | (position, size, whatever...) |
---|
1698 | |
---|
1699 | Create new window instances by using the `copy-to-next-workspace', |
---|
1700 | `copy-to-previous-workspace', and `copy-to-workspace:N' commands. |
---|
1701 | Merge instances by moving them to the same workspace, or using the |
---|
1702 | `delete-window-instance' command |
---|
1703 | |
---|
1704 | * Added linear-viewport commands--indexing two-dimensional virtual |
---|
1705 | workspace areas by one-dimensional values (adapted from code by |
---|
1706 | Eric Kidd) |
---|
1707 | |
---|
1708 | * Rewrote tooltips; especially how they're removed (also, don't show |
---|
1709 | null keymaps) |
---|
1710 | |
---|
1711 | * Added new match-window property `ungrouped'. Means to put the |
---|
1712 | window in a group on its own |
---|
1713 | |
---|
1714 | * Translation additions/updates: da (Wandy Christiansen), en_GB |
---|
1715 | (me), es (Iñaki García Etxebarria), fr (Christian Gillot), gl |
---|
1716 | (Jesus Bravo Alvarez) |
---|
1717 | |
---|
1718 | * Fixed bug of not refocusing unshaded windows |
---|
1719 | |
---|
1720 | * Fixed bug of not notifying windows of their actual position after |
---|
1721 | placing them |
---|
1722 | |
---|
1723 | * Fixed bug when grabbing Hyper-modified buttons |
---|
1724 | |
---|
1725 | * Fixed the focus-flickering when moving windows opaquely |
---|
1726 | |
---|
1727 | * Fixed the `commandp' function when applied to autoload stubs |
---|
1728 | |
---|
1729 | * Fixed typo in `gnome-logout' command (Jens Finke) |
---|
1730 | |
---|
1731 | * Fixed `raise-window-and-pass-through-click' command to pass |
---|
1732 | <click2>, etc, events through to frame parts |
---|
1733 | |
---|
1734 | * Fixed infinite-regress bug when reading GNOME menu entries |
---|
1735 | (`Type=directory', but actually a file) |
---|
1736 | |
---|
1737 | * Fixed bug when showing window-move position with snapped movement |
---|
1738 | (adapted from merlin@merlin.org) |
---|
1739 | |
---|
1740 | * Fixed bug when matching null text properties |
---|
1741 | |
---|
1742 | |
---|
1743 | 0.19 |
---|
1744 | ==== |
---|
1745 | |
---|
1746 | * Added tooltips for window frames (disabled by default) |
---|
1747 | |
---|
1748 | * Added `Grab...' button to match-windows dialogue, grabs the value |
---|
1749 | of an X property from a window |
---|
1750 | |
---|
1751 | * Support for creating cursors from bitmaps, and for changing the |
---|
1752 | colors of cursors |
---|
1753 | |
---|
1754 | * Internationalized all strings in the configurator |
---|
1755 | |
---|
1756 | * New functions: `frame-part-get', `server-grabbed-p', |
---|
1757 | `forget-button-press', `resize-window-with-hints', |
---|
1758 | `window-in-workspace-p', `windows-share-workspace-p' |
---|
1759 | |
---|
1760 | * New window properties: `never-focus', `raise-on-focus' |
---|
1761 | |
---|
1762 | * New pseudo-property (for window matching): `size', in terms of the |
---|
1763 | window's size hints |
---|
1764 | |
---|
1765 | * Message catalogue additions/updates: Galician (Jesus Bravo |
---|
1766 | Alvarez); Danish (Birger Langkjer) |
---|
1767 | |
---|
1768 | * Don't ignore initial state property of windows |
---|
1769 | |
---|
1770 | * Option to control height of drawn bevels (Chris Hanson) |
---|
1771 | |
---|
1772 | * More logical method of drawing diagonal gradients (Chris Hanson) |
---|
1773 | |
---|
1774 | * Fixed typo when looking for i18n theme README files (Jesus Bravo |
---|
1775 | Alvarez) |
---|
1776 | |
---|
1777 | * Fixed `popup-apps-menu' command (Gérard Milmeister) |
---|
1778 | |
---|
1779 | * Fixed `define-frame-class' when creating keymaps |
---|
1780 | |
---|
1781 | * Fixed conversion of old-style `(set ...)' custom types |
---|
1782 | |
---|
1783 | * Fixed `raise-window-and-pass-through-click' command to |
---|
1784 | pass-through subsequent clicks |
---|
1785 | |
---|
1786 | * Fixed problems when grabbing/ungrabbing customized keymaps |
---|
1787 | |
---|
1788 | * Fixed screen corruption when doing wireframe moving and |
---|
1789 | `move-resize-raise-window' is set |
---|
1790 | |
---|
1791 | * Hacked around window-order problem when sticky windows exist |
---|
1792 | |
---|
1793 | |
---|
1794 | 0.18 |
---|
1795 | ==== |
---|
1796 | |
---|
1797 | * General subsystem for matching windows to properties as they're |
---|
1798 | created. Allows matching on one or more of the window's X |
---|
1799 | properties (e.g. name, class, etc...), and then setting any number |
---|
1800 | of window manager properties as a result. See the `Matched Windows' |
---|
1801 | customize group |
---|
1802 | |
---|
1803 | * Removed all `auto-FOO-alist' and `BAR-windows-re' variables, |
---|
1804 | they're obsoleted by the general match-windows mechanism |
---|
1805 | |
---|
1806 | * Respect window's size hints when maximizing (both to see if the |
---|
1807 | window is maximizable, and to truncate the maximized dimensions to |
---|
1808 | an integral number of rows and columns) |
---|
1809 | |
---|
1810 | * Show actual colors in the configurator, not just their names |
---|
1811 | |
---|
1812 | * Added a new directory to the theme search path: |
---|
1813 | `PREFIX/share/sawmill/themes'. Use this for system-wide themes |
---|
1814 | (don't use the version specific directory) |
---|
1815 | |
---|
1816 | * Included a new theme `mono' |
---|
1817 | |
---|
1818 | * Deprecated the `show-message' function, replaced by |
---|
1819 | `display-message' with a better calling interface; also displays |
---|
1820 | multi-line strings |
---|
1821 | |
---|
1822 | * Deprecated the menu "expand variables when first in list" |
---|
1823 | behaviour. Instead expand variables when the list is dotted to |
---|
1824 | them, as is done for functions |
---|
1825 | |
---|
1826 | * Support the `Hyper' modifier, prefix is `H-' |
---|
1827 | |
---|
1828 | * In the configurator, look for i18n'd theme README files (Yukihiro |
---|
1829 | Nakai) |
---|
1830 | |
---|
1831 | * Added option to disable the ability to grab a second edge while |
---|
1832 | resizing (`resize-add-edges') |
---|
1833 | |
---|
1834 | * Included Danish message catalogue (Kenneth Christiansen) |
---|
1835 | |
---|
1836 | * Renamed `fixed-position' property as `sticky-viewport', and |
---|
1837 | `focus-proxy-click' as `focus-click-through' |
---|
1838 | |
---|
1839 | * When evaluating mouse events, look in the window that the pointer |
---|
1840 | was in when the button was pressed, not where the pointer |
---|
1841 | currently is |
---|
1842 | |
---|
1843 | * Fixed bug where focus gets totally lost after closing a Motif |
---|
1844 | application that has grabbed the keyboard |
---|
1845 | |
---|
1846 | * Fixed (again) the problems when handling remapped windows; also |
---|
1847 | should be more ICCCM-compliant |
---|
1848 | |
---|
1849 | * Fixed typos in one-dimensional maximisation (Gérard Milmeister) |
---|
1850 | |
---|
1851 | * Fixed the logic deciding when it's necessary to switch workspaces |
---|
1852 | after merging an empty one |
---|
1853 | |
---|
1854 | * Fixed interactive placement showing the window when edge-flipping |
---|
1855 | (but it still doesn't work properly, rubber band traces are left) |
---|
1856 | |
---|
1857 | * Removed flicker when focusing already-focused windows |
---|
1858 | |
---|
1859 | |
---|
1860 | 0.17 |
---|
1861 | ==== |
---|
1862 | |
---|
1863 | * First version to use lexically scoped librep. This enables themes |
---|
1864 | to run in a "safe" environment, but all existing themes will need |
---|
1865 | to be ported; other language changes include the use of a single |
---|
1866 | symbol namespace, and scheme-like function call semantics |
---|
1867 | |
---|
1868 | * Support for internationalization of messages and run-time |
---|
1869 | documentation; an en_GB catalogue is the only translation |
---|
1870 | currently, so please send me .po files for your native languages! |
---|
1871 | |
---|
1872 | New option `--disable-nls' to disable i18n |
---|
1873 | |
---|
1874 | * New functions `call-after-property-changed' and |
---|
1875 | `gtkrc-call-after-changed' to allow themes to receive these events |
---|
1876 | (hooks are now off-limits to themes) |
---|
1877 | |
---|
1878 | * New command `raise-window-and-pass-through-click'; bind it to a |
---|
1879 | mouse button in the `window-keymap' to get the "raise window on |
---|
1880 | click" behaviour that seems popular |
---|
1881 | |
---|
1882 | * New commands to move windows incrementally: `slide-window-X' and |
---|
1883 | `slide-group-X' for X one of: `left', `right', `up', `down' |
---|
1884 | |
---|
1885 | * New commands to control `ignored' property of windows (Julian |
---|
1886 | Missig) |
---|
1887 | |
---|
1888 | * New commands to toggle GNOME skip-winlist and skip-tasklist |
---|
1889 | properties of windows |
---|
1890 | |
---|
1891 | * Respect window gravity with program-specified window placement |
---|
1892 | (<merlin@merlin.org>) |
---|
1893 | |
---|
1894 | * Fixed a memory leak in the `stacking-order' function |
---|
1895 | |
---|
1896 | * Fixed the `bevel-image' function (Scott Sams) |
---|
1897 | |
---|
1898 | * Never look in the focused window's keymap by default with mouse |
---|
1899 | events |
---|
1900 | |
---|
1901 | * Hacked around the "need an X11 connection to compile" misfeature |
---|
1902 | |
---|
1903 | * Fixed bug in `gnome-menu' code when GNOME binaries aren't in the |
---|
1904 | first $PATH item; also accept non-alphanumeric language codes |
---|
1905 | |
---|
1906 | * Fixed interactive window placement (again) |
---|
1907 | |
---|
1908 | * Rewrote obscure documentation for some custom options |
---|
1909 | |
---|
1910 | * Fixed bug when grabbing events with `AnyModifier' and a specific |
---|
1911 | button |
---|
1912 | |
---|
1913 | |
---|
1914 | 0.16 |
---|
1915 | ==== |
---|
1916 | |
---|
1917 | * Support window groups, both as defined by applications, and |
---|
1918 | defined by the user (either interactively through the window's |
---|
1919 | menu, or via the `auto-group-alist' and `persistent-group-ids' |
---|
1920 | variables). |
---|
1921 | |
---|
1922 | For most commands working on single windows, there's also one |
---|
1923 | operating on the group that the current window is a member of. |
---|
1924 | (With the notable exception currently of moving windows.) There's |
---|
1925 | also options controlling whether (de)iconification operates on |
---|
1926 | windows or groups |
---|
1927 | |
---|
1928 | * Improved GNOME menu support--merge duplicate sub-menus, scan PATH |
---|
1929 | for `gnome-share-directory', also look in `/etc/X11/applnk' for |
---|
1930 | menu entries |
---|
1931 | |
---|
1932 | * Option to control whether edge-flipping flips viewports or |
---|
1933 | workspaces (`edge-flip-type') |
---|
1934 | |
---|
1935 | * New hook `after-framing-hook': called whenever a window's frame is |
---|
1936 | changed or recalibrated |
---|
1937 | |
---|
1938 | * New window placement mode: `first-fit-or-interactive' |
---|
1939 | |
---|
1940 | * Variables specifying common cursor shapes: (`move-cursor-shape', |
---|
1941 | `resize-cursor-shape', `select-window-cursor-shape') |
---|
1942 | |
---|
1943 | * Fix interactive placement |
---|
1944 | |
---|
1945 | * Fix problem of window losing focus when `cycle-windows' only finds |
---|
1946 | a single window; also, abort immediately if there's no windows to |
---|
1947 | cycle through at all |
---|
1948 | |
---|
1949 | * Fix how the `WM_NORMAL_HINTS' property is read after it's been |
---|
1950 | updated |
---|
1951 | |
---|
1952 | * Fix `maximize-fill' functions to respect the |
---|
1953 | `maximize-ignore-when-filling' option |
---|
1954 | |
---|
1955 | * Fix interactive move/resize aborting if keyboard is already grabbed |
---|
1956 | |
---|
1957 | * Ungrab the keyboard as well as the pointer before popping menus |
---|
1958 | |
---|
1959 | |
---|
1960 | 0.15 |
---|
1961 | ==== |
---|
1962 | |
---|
1963 | * Changed how themes are loaded from tar files--the tar file must |
---|
1964 | now contain a directory with the same name as the theme; it's this |
---|
1965 | directory that stores the data files |
---|
1966 | |
---|
1967 | * Allow viewport edge-flipping to be enabled by the customization |
---|
1968 | system, also enable flipping while moving windows |
---|
1969 | |
---|
1970 | * Unified the method of marking which windows should be avoided when |
---|
1971 | maximizing, and which windows should be avoided when using the |
---|
1972 | fitted placement methods. Set the `avoid' property instead of the |
---|
1973 | `maximize-avoid' property; new functions `window-avoided-p' and |
---|
1974 | `avoided-windows'; new regexp `avoided-windows-re' |
---|
1975 | |
---|
1976 | * New command `delete-empty-workspaces' |
---|
1977 | |
---|
1978 | * Default theme is now `microGUI' |
---|
1979 | |
---|
1980 | * When resizing only one edge of a window, moving the pointer past |
---|
1981 | one of the perpendicular edges grabs that edge also |
---|
1982 | |
---|
1983 | * Only the first three buttons focus a window in click-to-focus mode |
---|
1984 | |
---|
1985 | * Changed behaviour of `window-id' and `window-frame-dimensions' |
---|
1986 | functions. Replaced `query-last-pointer' function by |
---|
1987 | `query-button-press-pointer' |
---|
1988 | |
---|
1989 | * New hooks: `while-moving-hook', `while-resizing-hook' |
---|
1990 | |
---|
1991 | * Notice when `WM_TRANSIENT_FOR' property changes |
---|
1992 | |
---|
1993 | * More bug fixes to the maximization code, mainly for efficiency; |
---|
1994 | also make first-fit placement work from top-left again |
---|
1995 | |
---|
1996 | * Fix bug when matching events with `Any' modifier as well as other |
---|
1997 | modifiers |
---|
1998 | |
---|
1999 | * Fix bug in `window-outside-viewport-p' (Andreas Degert) |
---|
2000 | |
---|
2001 | * Fix bug in `sawmill-client --' with long inputs |
---|
2002 | |
---|
2003 | * Fix bug when matching windows with session data--`SM_CLIENT_ID' or |
---|
2004 | `WM_COMMAND' _has_ to match |
---|
2005 | |
---|
2006 | * Fix bugs when passive grabbing non-button-press pointer events |
---|
2007 | |
---|
2008 | |
---|
2009 | 0.14 |
---|
2010 | ==== |
---|
2011 | |
---|
2012 | * Rewrote window-maximization, many new options |
---|
2013 | |
---|
2014 | * New option `resize-by-frame-class', when enabled (the default), |
---|
2015 | the resized window edges are chosen to match the class of the |
---|
2016 | clicked frame part (i.e. matching the cursor shape) |
---|
2017 | |
---|
2018 | * Load GNOME support code automatically if it looks like GNOME is |
---|
2019 | being used |
---|
2020 | |
---|
2021 | * Create unix-domain sockets in `/tmp' |
---|
2022 | |
---|
2023 | * New hooks: `window-moved-hook', `window-resized-hook', |
---|
2024 | `after-initialization-hook', `shape-notify-hook'. |
---|
2025 | |
---|
2026 | * Improved how menus are displayed; the window-ops menu is shown by |
---|
2027 | ButtonPress not ButtonRelease events |
---|
2028 | |
---|
2029 | * Refocus most-recently-focused window when switching viewport |
---|
2030 | |
---|
2031 | * Added `centered' placement style |
---|
2032 | |
---|
2033 | * Added symbol-completion to readline-based client |
---|
2034 | |
---|
2035 | * Fix bug of not noticing WM_NORMAL_HINTS property changes; follow |
---|
2036 | the window's maximum size hints |
---|
2037 | |
---|
2038 | * Fix bug of not reframing windows when they change from unshaped to |
---|
2039 | shaped, or vice versa |
---|
2040 | |
---|
2041 | |
---|
2042 | 0.13 |
---|
2043 | ==== |
---|
2044 | |
---|
2045 | * New option to only highlight frame parts when their window is |
---|
2046 | focused (`highlight-when-unfocused') |
---|
2047 | |
---|
2048 | * Typing `ESC' while moving/resizing a window cancels the operation, |
---|
2049 | restoring the original geometry |
---|
2050 | |
---|
2051 | * New session management hook `sm-after-restore-hook' |
---|
2052 | |
---|
2053 | * New function `set-frame-part-value'--makes customizing the |
---|
2054 | `frame-part-classes' variables easier |
---|
2055 | |
---|
2056 | * Support for loading themes from tar files; needs librep 0.7 |
---|
2057 | |
---|
2058 | * Fix bug when allocating colors (choosing an incorrect cached color) |
---|
2059 | |
---|
2060 | * Fix image tiling in frame part backgrounds |
---|
2061 | |
---|
2062 | * Handle shifted keysyms when passive grabbing |
---|
2063 | |
---|
2064 | * Fix another race condition when active grabbing |
---|
2065 | |
---|
2066 | * Fix `_WIN_CLIENT_LIST' property not being set properly (both |
---|
2067 | missing windows immediately after they're adopted, and of |
---|
2068 | intentionally skipping ignored windows) |
---|
2069 | |
---|
2070 | * Fix some problems with viewports when exiting/restarting |
---|
2071 | |
---|
2072 | * Fix broken stacking of windows after they're mapped |
---|
2073 | |
---|
2074 | * Prevent smart window placement blowing up when large numbers of |
---|
2075 | windows are open/opened (throttle back to random placement when the |
---|
2076 | event queue is too large, as well as trying to prune the search |
---|
2077 | space) |
---|
2078 | |
---|
2079 | |
---|
2080 | 0.12 |
---|
2081 | ==== |
---|
2082 | |
---|
2083 | * Remember most recently focused windows on each workspace, activate |
---|
2084 | that window after changing workspaces; also, try to preserve focus |
---|
2085 | when moving windows between workspaces |
---|
2086 | |
---|
2087 | * Option to disable auto-raise while cycling through windows |
---|
2088 | (`cycle-disable-auto-raise'); option to restrict cycling to the |
---|
2089 | current viewport (`cycle-all-viewports') |
---|
2090 | |
---|
2091 | * Option `lock-first-workspace' is now enabled by default, and |
---|
2092 | prevents both the first and last interesting workspaces being moved |
---|
2093 | inwards |
---|
2094 | |
---|
2095 | * Added readline support to the client program, pass |
---|
2096 | `--with-readline' option to configure (from Christopher P Goller |
---|
2097 | <goller@eng.utah.edu>) |
---|
2098 | |
---|
2099 | * Added shaped-transient frame to microGUI theme |
---|
2100 | |
---|
2101 | * New frame part attribute `below-client' |
---|
2102 | |
---|
2103 | * Release passive grabs when unadopting windows |
---|
2104 | |
---|
2105 | * When no window has the focus, the `root-window-keymap' is searched |
---|
2106 | for key-press events |
---|
2107 | |
---|
2108 | * Fix bug when binding to the unix-domain socket |
---|
2109 | |
---|
2110 | * Fix focus sometimes being lost when the focused window is destroyed |
---|
2111 | |
---|
2112 | * Fix bug when reading GNOME menu entries without `Type' fields |
---|
2113 | |
---|
2114 | * Fix bug when removing title or border of `shaped-transient' window |
---|
2115 | types (make the window completely unframed) |
---|
2116 | |
---|
2117 | * Fix bug when shading a transient window with `decorate-transients' |
---|
2118 | enabled |
---|
2119 | |
---|
2120 | * Fix some bugs when placing windows that are almost as big or |
---|
2121 | bigger than the screen |
---|
2122 | |
---|
2123 | * Fix some race-conditions between wm-generated and client-generated |
---|
2124 | map/unmap/reparent events |
---|
2125 | |
---|
2126 | * Fix infamous "jerky pointer" bug, this will also make overlapping |
---|
2127 | shaped frame-parts display correctly |
---|
2128 | |
---|
2129 | * Fix bug where `cycle-windows' could leave a window originally |
---|
2130 | under the pointer that's unfocused, drawn as though it is focused |
---|
2131 | |
---|
2132 | |
---|
2133 | 0.11 |
---|
2134 | ==== |
---|
2135 | |
---|
2136 | * New option `lock-first-workspace', prevent the first workspace |
---|
2137 | from being deleted when it's empty |
---|
2138 | |
---|
2139 | * New option `ignore-window-input-hint', to always give windows the |
---|
2140 | focus, whether they say they will accept it or not |
---|
2141 | |
---|
2142 | * New options when cycling windows: `cycle-warp-pointer' and |
---|
2143 | `cycle-focus-windows' |
---|
2144 | |
---|
2145 | * Restore the old method of setting the focus, should fix bug of |
---|
2146 | losing focus totally when switching to a new workspace |
---|
2147 | |
---|
2148 | |
---|
2149 | 0.10 |
---|
2150 | ==== |
---|
2151 | |
---|
2152 | * Implemented virtual workspaces, bind to the `move-viewport-X' and |
---|
2153 | `move-window-X' commands (for X being `left', `right', `up', or |
---|
2154 | `down') |
---|
2155 | |
---|
2156 | * Added a new theme: `microGUI' by Ryan Lovett |
---|
2157 | <ryan@ocf.berkeley.edu>, based on the QNX Photon screenshots |
---|
2158 | |
---|
2159 | * Added a `Grab key' button in the bindings widget, replaces the |
---|
2160 | current binding with the next pressed key |
---|
2161 | |
---|
2162 | * Lisp module to load the GNOME menus and use them to replace the |
---|
2163 | applications menu. Add `(require 'gnome-menu)' to your |
---|
2164 | `~/.sawmillrc' file to load it |
---|
2165 | |
---|
2166 | * Network server is disabled by default (since it can provide a |
---|
2167 | security hole if X access control is disabled); re-enabled the old |
---|
2168 | unix domain socket code (see the FAQ for more details) |
---|
2169 | |
---|
2170 | * Only give the input focus to windows that actually want it |
---|
2171 | |
---|
2172 | * New option to keep transient windows above their parents |
---|
2173 | (`transients-above-parents') |
---|
2174 | |
---|
2175 | * New option to control how the workspace boundary is handled when |
---|
2176 | moving windows between workspaces (`workspace-send-boundary-mode') |
---|
2177 | |
---|
2178 | * New commands `send-to-workspace:X' for X from 1 to 9 |
---|
2179 | |
---|
2180 | * While windows are hidden or shaded, unmap the client (for ICCCM |
---|
2181 | compliance) |
---|
2182 | |
---|
2183 | * Slightly different method of handling destroyed clients, hopefully |
---|
2184 | results in fewer annoying error messages |
---|
2185 | |
---|
2186 | * Support X installations without X11R6 session management (by not |
---|
2187 | doing any session management) |
---|
2188 | |
---|
2189 | * Don't ask the session manager to save our environment |
---|
2190 | |
---|
2191 | * Fix bug where a window is destroyed/unmapped while it's being |
---|
2192 | resized or moved |
---|
2193 | |
---|
2194 | * Fix bug where window can still be auto-raised even if it's been |
---|
2195 | defocused |
---|
2196 | |
---|
2197 | * Fix problems when `--prefix' option has a trailing slash |
---|
2198 | |
---|
2199 | * Now handles client windows being reparented by a third party (i.e. |
---|
2200 | swallowing apps) |
---|
2201 | |
---|
2202 | |
---|
2203 | 0.9 |
---|
2204 | === |
---|
2205 | |
---|
2206 | * The first-fit and best-fit algorithms are now much more |
---|
2207 | intelligent, e.g. instead of falling back to random placement when |
---|
2208 | a window can't be placed without overlapping an existing window, |
---|
2209 | they will attempt to minimize this degree of overlapping |
---|
2210 | |
---|
2211 | * The `foreground' property of each frame part may now be an image |
---|
2212 | instead of a piece of text |
---|
2213 | |
---|
2214 | * New theme `smaker', uses the foreground images capability to do a |
---|
2215 | somewhat WindowMaker-like theme (with the absolute-e images). This |
---|
2216 | theme is extensively customizable--all images, colors, dimensions, |
---|
2217 | etc... |
---|
2218 | |
---|
2219 | * Use Imlib's fuzzy color matching for all color allocation; this |
---|
2220 | should help on `PseudoColor' visuals |
---|
2221 | |
---|
2222 | * Added an `xterm' command to launch an xterm |
---|
2223 | |
---|
2224 | * Improved the bindings customization widget layout; added a `Copy' |
---|
2225 | button to insert a copy of the current binding |
---|
2226 | |
---|
2227 | * Added `next-workspace-row' and `previous-workspace-row' commands. |
---|
2228 | Together with the `workspace-columns' variable these mimic a 2d |
---|
2229 | desktop |
---|
2230 | |
---|
2231 | * Removed the `cycle-through-workspaces' option, there's now |
---|
2232 | `workspace-boundary-mode'--one of `stop', `wrap-around' or |
---|
2233 | `keep-going' |
---|
2234 | |
---|
2235 | * Added option to include ignored windows when edge snapping |
---|
2236 | (`move-snap-ignored-windows') |
---|
2237 | |
---|
2238 | * Fix race condition between startup of sawmill and gmc; sawmill now |
---|
2239 | has earlier priority |
---|
2240 | |
---|
2241 | * Fix seg fault when running out of color cells while generating a |
---|
2242 | window frame |
---|
2243 | |
---|
2244 | * Fix bug where the window-workspace mapping wasn't reloaded from |
---|
2245 | saved sessions |
---|
2246 | |
---|
2247 | * Fix cancel/revert problems in bindings widget |
---|
2248 | |
---|
2249 | * Fix problems binding to shifted keys when using the XKEYBOARD |
---|
2250 | extension and XFree86 |
---|
2251 | |
---|
2252 | * Be ICCCM compliant when a client requests to be moved |
---|
2253 | |
---|
2254 | * Fix crash when tiling small images into large images |
---|
2255 | |
---|
2256 | * Fix bug where windows could be snapped totally off-screen |
---|
2257 | |
---|
2258 | * Fix bug when windows change their `override_redirect' attribute |
---|
2259 | while unmapped |
---|
2260 | |
---|
2261 | * Fix bug associated with WordPerfect's menu window |
---|
2262 | |
---|
2263 | |
---|
2264 | 0.8 |
---|
2265 | === |
---|
2266 | |
---|
2267 | * First attempt at best-fit window placement (doesn't really work |
---|
2268 | properly yet...) |
---|
2269 | |
---|
2270 | * Added a customization option to focus windows when they're |
---|
2271 | un-iconified (`focus-windows-on-uniconify') |
---|
2272 | |
---|
2273 | * Fix bug in click-to-focus mode where the click is only passed |
---|
2274 | through to the client window, not to any local bindings of the wm |
---|
2275 | |
---|
2276 | * Don't leave windows unframed if there's an error in the user's |
---|
2277 | startup files |
---|
2278 | |
---|
2279 | * Fix bug in `preallocated-workspaces' option |
---|
2280 | |
---|
2281 | * Don't place windows off-screen in first-fit mode |
---|
2282 | |
---|
2283 | |
---|
2284 | 0.7 |
---|
2285 | === |
---|
2286 | |
---|
2287 | * Added stack-based window cycling, bound to `M-TAB' by default. |
---|
2288 | Hold <Meta>, keep pressing <TAB> until the correct window is |
---|
2289 | reached, then let go of <Meta>. |
---|
2290 | |
---|
2291 | * Added first-fit window placement (a.k.a smart-placement) |
---|
2292 | |
---|
2293 | * Completed first stage of workspace rewrite--shouldn't go ballistic |
---|
2294 | when windows are removed anymore |
---|
2295 | |
---|
2296 | * Added `override-frame-part-classes' variable--allows all frame |
---|
2297 | properties to be overridden on a per-class basis |
---|
2298 | |
---|
2299 | * Click-to-focus now accepts any button and any modifiers |
---|
2300 | |
---|
2301 | * Don't snap to gmc icons or panels |
---|
2302 | |
---|
2303 | * Added an `auto-window-type-alist' variable mapping window names to |
---|
2304 | border types |
---|
2305 | |
---|
2306 | * New variables `eval-modifier-events' and `eval-key-release-events' |
---|
2307 | to allow catching these types of keyboard events, disabled by |
---|
2308 | default |
---|
2309 | |
---|
2310 | * Added functions for actively grabbing the keyboard |
---|
2311 | |
---|
2312 | * Removed the long names of the keyboard modifiers, only the single |
---|
2313 | character modifiers are left |
---|
2314 | |
---|
2315 | * If no alt modifier, set it to the same as meta; new variables |
---|
2316 | `alt-keysyms' and `meta-keysyms' describe the virtual modifier |
---|
2317 | assignments |
---|
2318 | |
---|
2319 | * Fix bug when handling shaped frame parts--it was possible to go |
---|
2320 | into a long enter-, leave-notify loop when the old shape was |
---|
2321 | cleared |
---|
2322 | |
---|
2323 | * Fix bug where opaque resizing with snap-to-edges on moved the |
---|
2324 | window as well as resizing it |
---|
2325 | |
---|
2326 | * Fix bug when raising the only managed window |
---|
2327 | |
---|
2328 | * Fix bug where very small client windows got weirdly shaped frames |
---|
2329 | |
---|
2330 | |
---|
2331 | 0.6 |
---|
2332 | === |
---|
2333 | |
---|
2334 | * Define the standard "classes" of frame parts (i.e. things like |
---|
2335 | close button, title, left border, etc...) then allow the state of |
---|
2336 | members of these classes to be set in one place (the |
---|
2337 | `frame-part-classes' variable). This should ensure that different |
---|
2338 | themes have the same feel (but a feel that may be customized by the |
---|
2339 | user) |
---|
2340 | |
---|
2341 | * Allow frame parts to be removed if possible (if they have the |
---|
2342 | `removable' property). Nothing makes use of this yet |
---|
2343 | |
---|
2344 | * Added window-shading, double-click button1 on the title bar |
---|
2345 | |
---|
2346 | * Created a sawmill capplet for the GNOME control center. Use the |
---|
2347 | `--enable-capplet' configure option to build it |
---|
2348 | |
---|
2349 | * First attempt at a technical manual (very quickly written, so |
---|
2350 | probably some inaccuracies) |
---|
2351 | |
---|
2352 | * In the `gtk' theme, draw bevels on window decorations |
---|
2353 | |
---|
2354 | * Use spin-buttons in the configurator to enter numbers |
---|
2355 | |
---|
2356 | * Add option `focus-proxy-click' controlling whether to pass the |
---|
2357 | focus-inducing button-press event to the underlying window (in |
---|
2358 | click-to-focus mode) |
---|
2359 | |
---|
2360 | * Changed the bindings in window borders, it's now the more usual |
---|
2361 | button1 to resize, button2 to move |
---|
2362 | |
---|
2363 | * When clicking and dragging windows, ensure that the clicked frame |
---|
2364 | part stays clicked until the button is released |
---|
2365 | |
---|
2366 | * If in click-to-focus mode, and there's no parent window to focus |
---|
2367 | when the focused window is closed, focus the topmost window (not |
---|
2368 | the window under the pointer as in the other focus modes) |
---|
2369 | |
---|
2370 | * Changing window frames is _much_ less ugly, no flicker at all! |
---|
2371 | |
---|
2372 | * Try to optimise window restacking some more |
---|
2373 | |
---|
2374 | * Sped up opaque window moving when the position display is enabled |
---|
2375 | |
---|
2376 | * Preserve iconified state across restarts |
---|
2377 | |
---|
2378 | * Optimise updating the shape of an unframed window (this stops gmc |
---|
2379 | icons flashing annoyingly) |
---|
2380 | |
---|
2381 | * Fix bugs in click-to-focus mode where some windows were |
---|
2382 | un-focusable |
---|
2383 | |
---|
2384 | * Fix bug where cycling through windows in click-to-focus mode |
---|
2385 | didn't focus the activated window |
---|
2386 | |
---|
2387 | * Fix bug where comparing sawmill lisp objects caused a crash |
---|
2388 | |
---|
2389 | * Fix bug where initiating a resize in the middle of the window |
---|
2390 | didn't allow any of the edges to be moved |
---|
2391 | |
---|
2392 | * Fix bug where changing the "decorate transients" option didn't |
---|
2393 | alter any existing transient windows |
---|
2394 | |
---|
2395 | * Fix bug where iconifying a sticky or ignored window gave no way of |
---|
2396 | reclaiming it--these windows now appear at the end of the window |
---|
2397 | menu |
---|
2398 | |
---|
2399 | |
---|
2400 | 0.5 |
---|
2401 | === |
---|
2402 | |
---|
2403 | * Now does session management. The scheme is extensible, arbitrary |
---|
2404 | Lisp modules can save and restore window state due to their own |
---|
2405 | functionality (using the `sm-window-save-functions' and |
---|
2406 | `sm-restore-window-hook' hooks). See `lisp/workspace.jl' for an |
---|
2407 | example |
---|
2408 | |
---|
2409 | * Displays window position or dimensions whilst interactively moving |
---|
2410 | or resizing a window (`move-show-position', |
---|
2411 | `resize-show-dimensions') |
---|
2412 | |
---|
2413 | * Mechanism for setting frame styles on a per-window basis (this was |
---|
2414 | always possible, just not easy). The `auto-frame-style-alist' |
---|
2415 | variable associates window name regular expressions with frame |
---|
2416 | styles. Also, the `window-ops-menu' has a new submenu with all |
---|
2417 | possible styles |
---|
2418 | |
---|
2419 | * New option `preallocated-workspaces', the number of workspaces to |
---|
2420 | create at startup |
---|
2421 | |
---|
2422 | * Window-workspace mapping is preserved through restart (as long as |
---|
2423 | the GNOME hints are enabled) |
---|
2424 | |
---|
2425 | * Theme directories may contain a short `README' file that will be |
---|
2426 | displayed in the configuration tool |
---|
2427 | |
---|
2428 | * Changed the custom file to `~/.sawmill/custom' instead of |
---|
2429 | `~/.sawmill-custom'. The old file will be moved to the new |
---|
2430 | location if it exists |
---|
2431 | |
---|
2432 | * Install `sawmill-menu' under `libexec' since it shouldn't be run |
---|
2433 | manually |
---|
2434 | |
---|
2435 | * Option in `gradient' theme to create full-sized gradient images, |
---|
2436 | trading memory for quality |
---|
2437 | |
---|
2438 | * Workaround the flicker when raising windows |
---|
2439 | |
---|
2440 | * Changed most of the `menus' and `custom' customize options into |
---|
2441 | normal variables (they're not particularly intuitive) |
---|
2442 | |
---|
2443 | |
---|
2444 | 0.4 |
---|
2445 | === |
---|
2446 | |
---|
2447 | * Frame parts can now be highlighted when the mouse is over them, |
---|
2448 | also they "un-click" and "re-click" as the pointer leaves and |
---|
2449 | re-enters their window. ButtonRelease bindings are only activated |
---|
2450 | when the mouse is in the window at the time |
---|
2451 | |
---|
2452 | * Frame part backgrounds can now be rendered on-the-fly using the |
---|
2453 | new `renderer' property in frame definitions. This property is a |
---|
2454 | function called with args `(IMAGE STATE)'; it should draw a |
---|
2455 | background into IMAGE for the specified state (`nil', `focused', |
---|
2456 | `highlighted' or `clicked') |
---|
2457 | |
---|
2458 | * New theme `gtk'. This reads the default GTK style and uses the |
---|
2459 | associated colors and pixmaps to decorate windows. It doesn't try |
---|
2460 | to handle engine-based themes. It should automatically detect when |
---|
2461 | the default style changes (if changed by the GNOME control |
---|
2462 | center). Do `sawmill-client -c gtk-reload-style' in the shell to |
---|
2463 | reload the style manually |
---|
2464 | |
---|
2465 | * Functions for drawing color gradients and bevels into images. The |
---|
2466 | new `gradient' theme uses these and on-the-fly rendering to do |
---|
2467 | `afterstep'-like window titles |
---|
2468 | |
---|
2469 | * Configurator changes: use a paned widget to separate the list of |
---|
2470 | groups from the settings (stops their relative sizes changing), |
---|
2471 | allow each group to be customized separately, either through a new |
---|
2472 | set of root-submenus or the commands `customize:GROUP' for each |
---|
2473 | GROUP. |
---|
2474 | |
---|
2475 | * Changed the way that "themes" are organised, each theme now gets |
---|
2476 | its own directory, which must include a `theme.jl' or `theme.jlc' |
---|
2477 | script to initialise a frame-style of the same name as the |
---|
2478 | directory. While this script is being evaluated the image path is |
---|
2479 | set so that the theme can load any images stored in its directory. |
---|
2480 | |
---|
2481 | Also created the variable `theme-load-path' containing the list of |
---|
2482 | directories searched when trying to load a theme. By default it |
---|
2483 | contains two directories: `~/.sawmill/themes/' and |
---|
2484 | `PREFIX/share/sawmill/VERSION/themes'. |
---|
2485 | |
---|
2486 | * Resizing now chooses the direction to resize the window in by the |
---|
2487 | initial position of the pointer in relation to the window. The |
---|
2488 | window is divided into a 3x3 grid, the pointer must be in one of |
---|
2489 | the outer rectangles to resize in that direction |
---|
2490 | |
---|
2491 | * New commands `select-workspace:X' for X between 1 and 9 |
---|
2492 | |
---|
2493 | * Support multiple depths, or layers, of windows |
---|
2494 | |
---|
2495 | * It's now possible to move the current workspace up or down the |
---|
2496 | list of all workspaces |
---|
2497 | |
---|
2498 | * New option `-c COMMAND' to `sawmill-client'; invokes the named |
---|
2499 | interactive function |
---|
2500 | |
---|
2501 | * When an app asks for no title and no border, give it what it |
---|
2502 | wants--use the new `unframed' window type |
---|
2503 | |
---|
2504 | * The maximize button works |
---|
2505 | |
---|
2506 | * Option to control placement of transient windows |
---|
2507 | (`place-transient-mode') |
---|
2508 | |
---|
2509 | * Changing the frame style preserves the original window stacking |
---|
2510 | order |
---|
2511 | |
---|
2512 | * Added documentation strings for most built-in functions |
---|
2513 | |
---|
2514 | * Fix bug of evaluating both KeyPress _and_ KeyRelease events |
---|
2515 | |
---|
2516 | * Fix bug of making the shape mask of unshaped client windows too big |
---|
2517 | |
---|
2518 | * Fix bug where already-handled BadWindow errors were being reported |
---|
2519 | |
---|
2520 | * Fix bug where the `window-ops-menu' could be displayed from one |
---|
2521 | window but then affect a different window |
---|
2522 | |
---|
2523 | * Fix bug where click-to-focus doesn't work for new windows |
---|
2524 | |
---|
2525 | * Fix bug where deleting the last workspace selected the first, not |
---|
2526 | the new last workspace |
---|
2527 | |
---|
2528 | * Fix bug where changing a colormap when no window is focused causes |
---|
2529 | a segfault |
---|
2530 | |
---|
2531 | * Fix bug where iconifying a window may leave it in the clicked |
---|
2532 | state after it's uniconified |
---|
2533 | |
---|
2534 | * Fix Caps_Lock and Num_Lock modifiers interfering with bindings |
---|
2535 | |
---|
2536 | * Fix accessing X properties on 64-bit architectures |
---|
2537 | |
---|
2538 | * Fix bug where pointer may be left grabbed after moving a window |
---|
2539 | |
---|
2540 | |
---|
2541 | 0.3a |
---|
2542 | ==== |
---|
2543 | |
---|
2544 | * Support the maximized GNOME window states |
---|
2545 | |
---|
2546 | * Where available, show documentation strings of commands in the |
---|
2547 | configurator |
---|
2548 | |
---|
2549 | * Improve the method of handling clicks in frame-parts |
---|
2550 | |
---|
2551 | * Fix asynchronous client-server protocol |
---|
2552 | |
---|
2553 | * Fix interactive window moving/resizing (don't leave traces of the |
---|
2554 | rubber-band, stop the window initially "jumping" to the pointer) |
---|
2555 | |
---|
2556 | |
---|
2557 | 0.3 |
---|
2558 | === |
---|
2559 | |
---|
2560 | * Implemented window maximization |
---|
2561 | |
---|
2562 | * Added support for snapping to window edges when interactively |
---|
2563 | moving windows (`move-snap-edges' and `move-snap-epsilon') |
---|
2564 | |
---|
2565 | * First attempt at handling a subset of the Motif and OpenLook |
---|
2566 | window hints |
---|
2567 | |
---|
2568 | * Removed the `sloppy-focus' variable, it's replaced by |
---|
2569 | `focus-mode'. This can currently be one of `enter-exit' (normal |
---|
2570 | focus follows pointer), `enter-only' ("sloppy" focus) or `click' |
---|
2571 | (click to focus) |
---|
2572 | |
---|
2573 | * When resolving pointer events, scan the `keymap' property of the |
---|
2574 | window under the pointer, not the focused window (as with keypress |
---|
2575 | events) |
---|
2576 | |
---|
2577 | * The `sawmill-client' program can now communicate inter-host, since |
---|
2578 | it uses X properties not raw sockets |
---|
2579 | |
---|
2580 | * New hook `before-exit-hook', called immediately before shutting |
---|
2581 | down |
---|
2582 | |
---|
2583 | * Rewrote the GNOME support as a Lisp module |
---|
2584 | |
---|
2585 | * Placing windows interactively now works |
---|
2586 | |
---|
2587 | * Fixed the bug on Solaris where deleting windows could cause a |
---|
2588 | segmentation fault |
---|
2589 | |
---|
2590 | |
---|
2591 | 0.2 |
---|
2592 | === |
---|
2593 | |
---|
2594 | * Added a user-customization system, inspired by Emacs' customize |
---|
2595 | facility. Invoke this through the `sawmill-ui' program, or from |
---|
2596 | the `Customize...' entry in the main menu. All changes are stored |
---|
2597 | in the Lisp script `~/.sawmill-custom' |
---|
2598 | |
---|
2599 | * Selected windows may now be raised (`raise-selected-windows') |
---|
2600 | |
---|
2601 | * It's possible to prevent the mouse pointer being warped to |
---|
2602 | selected windows (`warp-to-selected-windows') |
---|
2603 | |
---|
2604 | * The `brushed-metal' and `simple' themes now define all four |
---|
2605 | standard frame types |
---|
2606 | |
---|
2607 | * Frame themes are now stored in a separate directory |
---|
2608 | (`PREFIX/share/sawmill/VERSION/lisp/themes') so that the list of |
---|
2609 | all available themes can be made automatically |
---|
2610 | |
---|
2611 | * The frame colors of the `simple' frame style can now be customized |
---|
2612 | (`simple-normal-color' and `simple-active-color') |
---|
2613 | |
---|
2614 | * The `sawmill-defaults.jl' script enables GNOME compliance |
---|
2615 | unconditionally (since it has no ill-effects even if GNOME isn't |
---|
2616 | being used) |
---|
2617 | |
---|
2618 | * Transient windows can be given the same frames as normal windows |
---|
2619 | (`decorate-transients') |
---|
2620 | |
---|
2621 | * Newly-displayed transient windows can be automatically given the |
---|
2622 | focus if their parent window is focused (`transients-get-focus') |
---|
2623 | |
---|
2624 | * Any newly-displayed windows can be automatically given the input |
---|
2625 | focus (`focus-windows-when-mapped') |
---|
2626 | |
---|
2627 | * The `foreground', `background' and `font' attributes of each frame |
---|
2628 | part may now refer to a function |
---|
2629 | |
---|
2630 | * Fixed the window-move bug whereby the first motion event was |
---|
2631 | discarded |
---|
2632 | |
---|
2633 | * Fixed the bug where windows may be placed partially off the root |
---|
2634 | window, even if they needn't be |
---|
2635 | |
---|
2636 | * Fixed the shaped frame parts bug (they didn't work) |
---|
2637 | |
---|
2638 | * Miscellaneous other bug-fixes |
---|
2639 | |
---|
2640 | |
---|
2641 | 0.1 |
---|
2642 | === |
---|
2643 | |
---|
2644 | First proper release |
---|
2645 | |
---|