[ANNOUNCE] Sawfish 1.7.0 "Frozen Flame"
- From: Christopher Roy Bratusek <zanghar freenet de>
- To: sawfish-list gnome org, gnome-announce-list gnome org
- Subject: [ANNOUNCE] Sawfish 1.7.0 "Frozen Flame"
- Date: Sat, 2 Oct 2010 15:30:01 +0200
Hi folks,
in the name of the Sawfish-Team I'm proud to announce the immediate availability of
Sawfish 1.7.0
"Frozen Flame"
What's Sawfish?
===============
Sawfish is an extensible window manager using a Lisp-based scripting language. Its
policy is very minimal compared to most window managers. Its aim is simply to manage
windows in the most flexible and attractive manner possible. All high-level WM
functions are implemented in Lisp for future extensibility or redefinition.
These are some of the features that set Sawfish apart from other window managers:
* Powerful key-binding: Virtually every functionality provided by Sawfish can be
bound to keys (or mouse buttons).
* Event hooking: For many events (moving windows etc.) you can customize the way
Sawfish will respond.
* Window matching: When windows are created you can match them to a set of rules and
automatically perform actions on them.
* Flexible theming: Sawfish allows for very different themes to be created and a
variety of third-party themes are readily available.
Sawfish was formerly known as Sawmill but then renamed to Sawfish due to pending
patents on the name Sawmill. It's original Author is John Harper who got employed by
Apple which prohibited him to continue working on Sawfish (and librep/rep-gtk). In
Mid 2007 Janek 'The Re-Animator' Kozicki overtook the development of Sawfish. In Mid
2008 Christopher 'Flashrider' Bratusek overtook development of librep and rep-gtk,
followed by Sawfish and SawfishPager in December 2008.
Downloads
=========
Tar/BZ2: http://download.tuxfamily.org/sawfish/sawfish/sawfish-1.7.0.tar.bz2 3,56 MB
SHA1SUM: http://download.tuxfamily.org/sawfish/sawfish/sawfish-1.7.0.tar.bz2.sha1
Tar/XZ : http://download.tuxfamily.org/sawfish/sawfish/sawfish-1.7.0.tar.xz 2,38 MB
SHA1SUM: http://download.tuxfamily.org/sawfish/sawfish/sawfish-1.7.0.tar.xz.sha1
What's new?
===========
1.7.0 "Frozen Flame"
====================
* Update dependencies
- librep 0.90.5 -> 0.91.0
- rep-gtk 0.90.2 -> 0.90.4
* Notes
- When you report a crash, please add the backtrace, by
invoking Sawfish with the command line option "--interp".
Read the file `CONTRIBUTING' for more infos.
- Prompt API change [Jeremy Hankins]
If you have code which utilizes prompt, it is affected. When
you call the function `prompt', directly pass helper functions
as function arguments. They used to be set as global
variables.
This change is straightforward, so it's not difficult to
update your code. See `sawfish.wm.util.prompt' for details.
- Mouse-button support state
Sawfish claimed to support mouse-buttons 1 - 9, but it is
known that drag of buttons 6 - 8 may not work. The button 9
doesn't work at all, so we withdraw it.
- Functions `maybe-raise-window' and `maybe-lower-window' are
now obsolete. [Teika Kazura]
Replace them with `raise-window*' and `lower-window*' defined
in `sawfish.wm.util.stacking'. Only difference is that the
obsolete version supports a feature of Nautilus (GNOME file
manager) which was dropped long ago.
* Build and Installation
- Configure-option `--with-nine-mousebuttons' is dropped.
See the item "Keyboard layout switching support" below.
* Bug Fixes
- Maximized windows wrongly covering other windows on startup
[Jeremy Hankins]
Sometimes maximized windows would overlap "avoided" windows
(e.g., the gnome-panel, or a trayer) on startup. Sawfish now
defers maximization until the initialization is complete,
preventing this problem.
- Viewport initialization bugfix [Jeremy Hankins]
Under certain circumstances viewport slots were wrongly
shifted when Sawfish was restarted, ending up with some
windows outside of the virtual desktop. This has been fixed.
- Keyboard-layout switching support [Teika Kazura]
Previously, when you switched the keyboard-layout, or more
correctly the keyboard-"group" (which is mainly for
multilinguals) keyboard- and mouse-bindings got messed-up.
Now, this can be prevented by invoking Sawfish with the new
commandline-option `--5-buttons'. It is assumed that modifiers
are common among keyboard groups.
More precisely, what's supported is switching by
`ISO_Next_Group' or similar, bound to a key (for example ctrl
+ alt). It appears as "option" in X keyboard configuration,
like "grp:ctrl_alt_toggle". If you use some utility to
switch the layout and it confuses Sawfish keybindings, please
restart Sawfish.
With that commandline-option, you won't be able to bind
Sawfish commands to mouse buttons 6 - 8. This may be fixed in
future.
- Atom handling fix on 32-bit architecture (Java fix). [Teika
Kazura]
Function `x-atom-name' now accepts all 32 bits. Previously
only 30 bits were treated if the architecture was 32-bit.
64-bit systems hadn't had this bug.
It used to cause "Bad argument" error, most notably on Java
applications. (In theory, an atom is set by X server, not a
client. But Java applications seem to be affected often by
this bug.)
- Applications menu bugfix [Matthew Love]
Correct alphabetic ordering of menu-entries is done.
Previously they were sorted [A-Z][a-z] (first all upper- then
all loser-case entries).
Also the function for detecting the language has been
improved. It now better follows the freedesktop.org
specification.
- Edge-flip and infinite-desktop now work after
screen-resolution change. [Christopher Bratusek]
- Sawfish now starts up correctly when receiving a session-id or
session-prefix from GNOME-Session [Clinton Ebadi, Christopher
Bratusek]
- Draft animator bugfix. [Christopher Bratusek]
The "draft" animator had two issues: on one hand the drawn
numbers were always black (therefore possibly invisible), on
the other hand those numbers weren't erased from the screen.
Both have been fixed. Internally, it's done by the new
`x-draw-text' function described below.
- Resurrection of two variables [Teika Kazura]
User options `workspace-boundary-mode' and
`workspace-send-boundary-mode' couldn't be set from the
configurator, but this is fixed.
- Command `xterm' fix [Teika kazura]
It couldn't be invoked as a key binging if the optional
"command" argument was unset by the configurator, i.e. an
empty string.
* New Features
- Desktop-environment integration [Christopher Bratusek]
Support for XFCE integration was added. It's just like
GNOME/KDE4 integration: it sets `xterm-program' and
`browser-program' (unless already set by user), and adds XFCE
logout/help/customization menu-entries to the Sawfish
root-menu.
Improvements: All menu-entries for GNOME/KDE4 do now have
accelerators. Entries for invoking `gnome-control-center' or
KDE `systemsettings' have been added. The KDE4 detection has
been improved. See also the item "Applications menu
improvements" below.
A new variable `desktop-environment' tells which desktop
environment is running (*note External Applications::).
- Applications menu improvements [Matthew Love]
Applications menu now looks more like that of GNOME / KDE /
XFCE if one is running. (further improvements are planned)
The user option `apps-menu-ignore-no-display' is now gone and
replaced by `apps-menu-show-all'.
If `apps-menu-show-all' is `nil' (default), the menu looks
much like that of GNOME / KDE / Xfce, by hiding some
applications. If it's `t', then all installed applications are
shown. An intermediate option, the symbol `maybe' is
possible, as described below.
Technically, fields `NotShowIn' and `OnlyShowIn' in files
`/usr/share/applications/*.desktop' tell under which desktop
environment that application wants to be shown. If
`apps-menu-show-all' is `nil' or `maybe', they are respected.
Items with field `Hidden' or `NoDisplay' are usually not to
be shown. They are respected if `apps-menu-show-all' is `nil'.
The KDE specific directory is now searched, too while menu
generation.
- New window rules [Christopher Bratusek]
* `fixed-size': this disables resizing, or more precisely,
functions `resize-window-interactively',
`halve-window-size' and `double-window-size'.
(Maximization is still possible. Use `never-maximize'
to prevent maximization.)
* `never-close': this disables closing. Only interactive
closing is prevented, and you can delete windows with
`never-close' property from a lisp program.
- Update of emacs major mode `sawfish.el' [Teika kazura]
It is now distributed with Sawfish window manager.
Improvements are:
* Evaluation used to choke when it encountered `#f' or
`#t'. This is fixed.
* Highlighting of the keywords like `define' works again.
* `describe-function' have been broken, but it works again.
* In `describe-variable', the value of the variable is
pretty-printed.
* `sawfish-load-symbols' can be called interactively to
update the cached symbols.
* Better introductory part.
- New frame-parts `border-width' and `border-color' [Alexey I.
Froloff]
A "border" of a window surrounds the window and all other
frame parts. (*note Frame Part Definition::)
- New commandline-option `--5-buttons'
See the item "Keyboard-layout switching support" above.
- `x-draw-text' function [Christopher Bratusek]
It is similar to `x-draw-string'. Generally, if you use a
`display-message' like message, call `x-draw-string'. If you
want to draw on the screen directly use `x-draw-text' (*note
X Drawing::.)
* Translation updates
Updated translations since 1.6.0 are Danish (da), British English
(en_GB), German (de), Spanish (es), Slovenian (sl), and Swedish
(sv).
All translation files are now in UTF-8. Changed languages are
Galician (gl), Italian (it), Romanian (ro), and Turkish (tr). The
rest were already UTF-8. [Teika Kazura]
* Miscellaneous Changes
- More error and backtrace printing [Teika Kazura]
Due to librep >= 0.91.0, the backtrace is printed by default
when an error was signaled. It is printed for sawfish-client,
too, but it's sent to Sawfish's standard error, not to
sawfish-client's, sorry.
Phrase "Sawfish error:" is prepended to error messages which
are printed to standard error.
Sawfish-pager's errors are printed to Sawfish's output. More
precisely, when you connected to Sawfish as a server
asynchronously, then the error was not printed. But now it is
printed, to Sawfish's output. (In contrast, a client which
connects synchronously receives the error message itself.)
- Pointer warping in window cycling [Teika Kazura]
In window cycling, some unnecessary pointer warping is
avoided. Previously, the necessity of a warp was judged by
the geometry before the raise was done. Now the updated one
is used.
- Configurator changes (user visible parts) [Christopher
Bratusek]
Icon is now provided. (If it doesn't show up, first run
`gtk-update-icon-cache'.)
If you run the configurator but the Sawfish window manager is
not running, then an alert window is displayed before
abortion. [Teika Kazura, Christopher Bratusek]
Two obsolete features are deleted. One is the command line
option `--socket-id', which was for "capplets", part of very
early GNOME 2.x. The other is the command line option
`--single-level' which has been broken.
- Doc improvements
FAQ items, on how to hide the mouse-pointer, and on
application execution.
Manuals (1) describe all options. KEYBINDINGS file was revised
Newly described functions are: `grab-keymap' and
`ungrab-keymap' (*note Keymaps::), `x-raise-window' and
`x-lower-window' (*note Raising and Lowering Windows::),
`frame-state-mutex' (*note Frame Functions::).
- Root-Menu improvements [Christopher Bratusek]
All menu-entries do now have accelerators. Labels for help
entries have been improved.
- Configurator internals [Christopher Bratusek]
The module `widget-test' is deleted. It provided testing
function of widgets in modules `sawfish.gtk.*'. But allegedly
it is broken and crashed Sawfish.
`widget-dialog.jl' was merged into `simple-dialog.jl'
Previously the functions `remove-newlines' and
`beautify-symbol-name' were defined in several modules, with
the same contents. Now they are defined (only once) in a new
module `sawfish.cfg.utils'.
The `stock-button' function was defined in Sawfish, but now
it's replaced by directly using `gtk-button-new-from-stock'.
Same for the `about-dialog' function, replaced (in version
1.6.0) by `gtk-about-dialog'.
`/usr/bin/sawfish-config' is now minimal, moving most of it's
content to `sawfish.cfg.shell' [Teika Kazura]
- Module `3d-hack' is deleted. [Christopher Bratusek]
The `3d-hack' module was an animation demo, not a feature. It
provided two functions similar to `glxgears', rendered in 2d.
If you want it, it can be downloaded from the Sawfish Wiki,
from the page "3d-hack".
Have Fun!
Chris
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]