[sawfish] */ChangeLog.pre-1.5.0: removed old changelog files
- From: Christopher Bratusek <chrisb src gnome org>
- To: svn-commits-list gnome org
- Subject: [sawfish] */ChangeLog.pre-1.5.0: removed old changelog files
- Date: Wed, 6 May 2009 12:51:06 -0400 (EDT)
commit e8c1ca609aace3fd7f243c0ce987fbd3164624cb
Author: chrisb <zanghar freenet de>
Date: Wed May 6 18:47:49 2009 +0200
*/ChangeLog.pre-1.5.0: removed old changelog files
---
ChangeLog | 2 +
lisp/ChangeLog.pre-1.5.0 | 6814 ----------------------------------
lisp/sawfish/gtk/ChangeLog.pre-1.5.0 | 200 -
lisp/sawfish/ui/ChangeLog.pre-1.5.0 | 568 ---
man/news.texi | 2 +
po/ChangeLog.pre-1.5.0 | 323 --
scripts/ChangeLog.pre-1.5.0 | 139 -
src/ChangeLog.pre-1.5.0 | 3778 -------------------
8 files changed, 4 insertions(+), 11822 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index da120a9..03e240c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,8 @@
2009-05-06 Christopher Bratusek <zanghar freenet de>
* sawfish.spec.in: don't re-define %{_host} [Ritz]
+ * */ChangeLog.pre-1.5.0: remove old ChangeLog files
+
2009-05-05 Christopher Bratusek <zanghar freenet de>
* lisp/sawfish/wm/util/window-outline.jl: some fixups for the draft animator [Teika]
diff --git a/lisp/ChangeLog.pre-1.5.0 b/lisp/ChangeLog.pre-1.5.0
deleted file mode 100644
index 3482613..0000000
--- a/lisp/ChangeLog.pre-1.5.0
+++ /dev/null
@@ -1,6814 +0,0 @@
-2008-08-04 Janek Kozicki <cosurgi gmail com>
- * this file is deprecated now. From now on all changes are in ../Changelog
-
-2005-06-26 Philip Langdale <philipl mail utexas edu>
-
- * sawfish/wm/state/wm-spec.jl (init): Add a
- configure-notify-hook to detect changes to the size of the root
- window, which implies a screen resolution change, and call
- update-workspace-hints
-
-2005-02-06 John Harper <jsh unfactored org>
-
- * sawfish/wm/menus.jl (popup-menu): synchronize with the server
- after ungrabbing, just to be sure, instead of flushing
- (suggested by Michal Maru¹ka <mmc maruska dyndns org>)
-
-2004-03-20 John Harper <jsh unfactored org>
-
- * sawfish/wm/util/prompt.jl: added motion and editing commands
- to list of exported bindings (patch from Ewan Mellor)
-
-2004-01-05 John Harper <jsh unfactored org>
-
- * sawfish/wm/ext/tooltips.jl (display-tooltip): fixed font
- thing again
-
-2003-11-24 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl (wm-spec-below-depth): changed
- from +2 to -2 (Patch from Aron Griffis <agriffis gentoo org>)
-
-2003-10-21 John Harper <jsh unfactored org>
-
- * sawfish/wm/frames.jl, sawfish/wm/state/shading.jl: patch from
- David Reid <dreid dreid ath cx> to fix support shading on new
- window types
-
-2003-08-16 John Harper <jsh unfactored org>
-
- Integrated patches from Shun-ichi TAHARA <jado flowernet gr jp>:
-
- * sawfish/wm/ext/tooltips.jl (display-tooltip): fixed how fonts
- are included in the call to display-message
-
-2003-08-15 John Harper <jsh unfactored org>
-
- * sawfish/wm/frames.jl (frame-type-fallback-alist): utility
- should degrade to default not transient (so it has controls)
- #111970
-
- * sawfish/wm/session/init.jl (sm-get-window-prop): ignore
- WM_CLIENT_LEADER property set to zero, may fix #98315
-
-2003-08-13 John Harper <jsh unfactored org>
-
- Integrated patches from Shun-ichi TAHARA <jado flowernet gr jp>:
-
- * sawfish/wm/util/font.jl:
-
- Pango fontname handler has a bug on some font name, for
- example, "Nimbus Sans L". When set one of those fonts in
- "appearance" menu of sawfish-ui, and call that menu again, then
- the font name in dialog is reset to the default value of
- "Sans". Pango font name needs comma after the font family name
- if the last word of family name matches the style name (for
- example, "L" in "Nimbus Sans L" matches "Light"). So if set
- "Nimbus Sans L" with its size 12, sawfish holds the pango
- fontname "Nimbus Sans L 12", but GTK+ font selector extract it
- with the family name to be "Nimbus Sans", the style "L
- (=Light)", the size "12". In this case, sawfish must have the
- pango fontname as "Nimbus Sans L, 12".
-
- When using xft-type fonts, cannot set the font with hyphens in
- its name, for example, "Eras-Black". Xft font name separates
- the font family name and font size by hyphen, so Xft font
- loader cannot extract font name and size correctly. Xft
- requires hyphens in the font family name escaped by backslash,
- so sawfish must have the xft fontname as "Eras\-Black-12", not
- "Eras-Black-12".
-
- When using xlfd-type fonts, selecting "medium" or "r" style (in
- XLFD description) are sometime void, because the descripiton of
- "-*-" in XLFD often matches "-bold-" or "-i-". Sawfish must
- have xlfd font name with its weight or slant description to be
- set explicitly; like "-medium-" or "-r-", not "-*-".
-
- * sawfish/wm/gnome/integration.jl: don't use the module that
- reads GNOME menus, it only handles the old style menus. Also,
- remove the "Programs" entry from the root menu
-
- * sawfish/wm/ext/beos-window-menu.jl (window-suitable-p):
- ignore desktop windows
-
-2003-06-29 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl: update a window's workspace
- hints when its stickyness changes. #113599
-
-2003-04-02 John Harper <jsh unfactored org>
-
- * sawfish/wm/workspace.jl (window-appears-in-workspace-p):
- revert to 1.2 definition (but as a function, not a macro),
- don't know why I added the bogus viewable check..?
-
-2003-03-26 John Harper <jsh unfactored org>
-
- * sawfish/wm/workspace.jl: activating or creating a window
- means we leave "show desktop" mode
-
- * sawfish/wm/windows.jl (activate-window): call
- activate-window-hook before returning
-
- * sawfish/wm/workspace.jl (select-workspace*): don't forget to
- show sticky windows when coming out of "show desktop" mode
-
-2003-03-25 John Harper <jsh unfactored org>
-
- * version 1.3
-
-2003-03-16 John Harper <jsh unfactored org>
-
- * sawfish/wm/workspace.jl (show-desktop, hide-desktop,
- showing-desktop-p): implement the "showing desktop" mode
-
- * sawfish/wm/state/wm-spec.jl: implement _NET_SHOWING_DESKTOP
- property
-
-2003-02-24 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl (init): set WM_NAME as
- UTF8_STRING property, not STRING. Patch from Christian Krause
- <chkr plauener de>
-
-2003-02-19 John Harper <jsh unfactored org>
-
- Added support for task-list-skip property. Adapted from a patch
- sent to sawfish mailing list originally by Chris Boyle:
-
- * sawfish/wm/state/wm-spec.jl: support SKIP_TASKBAR state
-
- * sawfish/wm/state/ignored.jl (toggle-task-list-skip): new
- function and command
-
- * sawfish/wm/state/gnome.jl: support task-list-skip property
- instead of ad hoc hint setting
-
- * sawfish/wm/ext/match-window.jl: added task-list-skip property
-
-2003-02-06 John Harper <jsh unfactored org>
-
- * sawfish/wm/commands/gnome.jl (gnome-logout): save-session got
- renamed to gnome-session-save in gnome 2
-
-2003-02-03 John Harper <jsh unfactored org>
-
- * sawfish/wm/gnome/menus.jl (gnome-share-directory): if the
- method of finding the gnome share directory fails, default to
- /usr/gnome
-
-2003-01-26 John Harper <jsh unfactored org>
-
- * sawfish/wm/ext/window-history.jl (window-history-key):
- changed formatting so that some compatibility is kept with old
- keys (except for transient windows)
-
-2003-01-15 John Harper <jsh unfactored org>
-
- * sawfish/wm/ext/workspace-grid.jl (num-workspace-rows):
- removed libwnck workaround at request of Michael Toomin
-
-2003-01-14 John Harper <jsh unfactored org>
-
- * sawfish/wm/ext/window-history.jl (window-history-key,
- window-history-key-property): the variable may now be a list,
- in which case the list of named properties is used as the key.
- It now defaults to (WM_CLASS WM_WINDOW_ROLE)
-
-2003-01-12 John Harper <jsh unfactored org>
-
- * sawfish/wm/placement.jl: applied patch from Steve Hill
- <firefury sucs org> to make several placement modes use the
- current-head, not the head of the placed window
-
-2002-11-13 John Harper <jsh unfactored org>
-
- Merged from HEAD:
-
- * sawfish/wm/windows.jl (adjust-position-for-gravity/y): fixed
- typo when accessing window-frame-offset. Fixes #98315
-
-2002-11-09 John Harper <jsh unfactored org>
-
- * version 1.2
-
-2002-11-08 John Harper <jsh unfactored org>
-
- Merged from HEAD:
-
- * sawfish/wm/util/font.jl: handle XLFD fonts with no dashes,
- e.g. like "fixed", also, be more intelligent when creating
- Pango names
-
-2002-11-03 John Harper <jsh unfactored org>
-
- Merged these changes from HEAD:
-
- * sawfish/wm/session/init.jl, sawfish/wm/session/load.jl
- (sm-sloppy-id-matching): added this option to let me get some
- level of session management from broken applications (xterm in
- this case, which doesn't seem to set SM_CLIENT_ID by the time
- it maps the window)
-
- * sawfish/wm/util/font.jl (xlfd-description->face,
- face->xlfd-description): the missing pieces to this module.
-
- Also, handle the Xft abbreviated styles more correctly
-
- * sawfish/wm/windows.jl (dock-window-depth): changed this
- again, now to zero, the depth of normal windows
-
-2002-11-03 John Harper <jsh unfactored org>
-
- Merged these changes from HEAD:
-
- * sawfish/wm/custom.jl: font [de]serializers now export (TYPE .
- NAME), they accept both this and the old untyped form
-
- * sawfish/wm/util/font.jl: new file, some functions for
- representing font (face) names, and converting between Xft and
- Pango representations of these names. Somewhat incomplete
- (doesn't know how to map Pango widths to Xft yet)
-
- 2002-11-02 John Harper <jsh unfactored org>
-
- * sawfish/wm/menus.jl: added some more accelerators
- * sawfish/wm/workspace.jl (static-workspace-menus): added a few
- accelerators (for #76286)
-
-2002-11-02 John Harper <jsh unfactored org>
-
- * sawfish/wm/keymaps.jl (wm-modifier-value): shorter doc string
-
-2002-11-02 John Harper <jsh unfactored org>
-
- * more merging:
-
- 2002-11-02 John Harper <jsh unfactored org>
-
- * sawfish/wm/gaol.jl: added get-font-typed, font-type-exists-p
- and font-name functions
-
- * sawfish/wm/windows.jl (dock-window-depth): changed to -3,
- places the dock above the desktop, but below pretty much
- everything else
-
-2002-10-20 John Harper <jsh unfactored org>
-
- * more merging:
-
- 2002-10-20 John Harper <jsh unfactored org>
-
- * sawfish/wm/windows.jl (window-transient-p,
- mark-window-as-transient): new functions. window-transient-p
- used to be in C code
-
- * sawfish/wm/state/wm-spec.jl: _TYPE_DIALOG now marks the
- window as transients of the root window, this means that
- windows with this type pick up all facets of transient window
- behaviour, not just their frame type. (E.g., it stops
- _TYPE_DIALOG windows being placed like application windows)
-
- * sawfish/wm/frames.jl: import sawfish.wm.windows, not
- sawfish.wm.windows.subrs, to get window-transient-p
-
- 2002-10-19 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl (set-window-hints): handle
- windows not on the current desktop (they may have recently
- changed workspaces). Fixes #95158
-
- 2002-10-18 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl (client-message-handler):
- half-assed implementation of _MOVERESIZE_SIZE_KEYBOARD and
- _MOVE_KEYBOARD. Fixes #95772
-
- 2002-10-17 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl: support some 1.1 features:
- _NET_WM_STATE_BELOW, _NET_WM_STATE_ABOVE, _NET_WM_TYPE_UTILITY,
- _NET_WM_TYPE_SPLASH, _NET_WM_TYPE_MENU, _NET_WM_TYPE_TOOLBAR.
- (Last two are actually 1.0)
-
- * sawfish/wm/frames.jl (frame-type-fallback-alist): added more
- types: utility, toolbar, menu, splash
-
- * sawfish/wm/windows.jl (mark-window-as-desktop,
- mark-window-as-dock): set more properties, including window
- depth and type
-
- * sawfish/wm/stacking.jl: exported window-depth function
-
- 2002-10-06 John Harper <jsh unfactored org>
-
- * sawfish/wm/workspace.jl: don't add ``iconified'' as a
- workspace-local property, it's global by nature. Fixes #94530
-
- 2002-10-03 John Harper <jsh unfactored org>
-
- * sawfish/wm/misc.jl (get-x-text-property,
- set-x-text-property): these functions now written in lisp so
- that they use the property cache
-
-2002-09-30 John Harper <jsh unfactored org>
-
- * merged more changes from HEAD:
-
- 2002-09-29 <jsh unfactored org>
-
- * sawfish/wm/state/configure.jl (configure-request-handler): fixed
- bug of not checking for locked dimensions before overwriting the
- dims variable. This fixes #88788
-
- * sawfish/wm/state/wm-spec.jl (_NET_WM_STATE_FULLSCREEN): fixed
- stupid bug I recently introduced stopping windows putting
- themselves into fullscreen mode
-
- 2002-09-28 John Harper <jsh unfactored org>
-
- Work to fix #83431:
-
- * sawfish/wm/state/configure.jl (configure-request-handler):
- handle nil x or y components of `position' request.
-
- * sawfish/wm/windows.jl (adjust-position-for-gravity/x,
- adjust-position-for-gravity/y): new functions, factored out of
- adjust-position-for-gravity, which is now defined in terms of
- these two
-
- 2002-09-26 John Harper <jsh unfactored org>
-
- * sawfish/wm/commands/grow-pack.jl (bump-distance): patch from
- Daniel Pfeiffer <occitan esperanto org> to fix bug "when two
- windows have the same size in the direction perpendicular to
- the pack"
-
- 2002-09-25 John Harper <jsh unfactored org>
-
- * sawfish/wm/ext/match-window.jl (match-window): don't modify
- the list returned by get-x-property, copy it first
-
- 2002-09-23 John Harper <jsh unfactored org>
-
- Work to fix #81616 (fullscreen windows lose their original
- frame type when loaded from saved session):
-
- * sawfish/wm/state/maximize.jl: more work on session
- management. Fullscreen windows shouldn't lose their unmaximized
- 'type property anymore
-
- * sawfish/wm/frames.jl (push-window-type, pop-window-type):
- mechanism for setting a temporary window type (that doesn't get
- saved in the session file)
-
- * sawfish/wm/session/load.jl, sawfish/wm/session/init.jl
- (sm-add-restored-properties, sm-restored-properties):
- properties to restored but not save (i.e. assumes they're saved
- by hand using the sm-window-save-functions hook)
-
- 2002-09-22 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl (wm-spec-maximize-handler): don't
- mark the window as maximized when it's fullscreen, avoids
- confusing the restart handler. Also, some other cleanup of the
- fullscreen code
-
- * sawfish/wm/state/maximize.jl (after-add-window): check for
- queued-fullscreen-maximize property
-
- * sawfish/wm/state/maximize.jl: added a function to
- sm-window-save-functions to save the queued-foo-maximize
- properties into the session file, not the actual properties.
- Makes restart process cleaner
-
- 2002-09-22 John Harper <jsh unfactored org>
-
- Work to (partially) support _NET_WORKAREA property, for #90291:
-
- * sawfish/wm/util/workarea.jl (workarea-changed-hook): new
- hook, emitted whenever the set of struts changes
-
- (calculate-workarea-from-struts): new function, calculates the
- workarea solely from struts
-
- * sawfish/wm/state/wm-spec.jl (update-workspace-hints): set
- _NET_WORKAREA to the workarea as defined by all "strut"
- properties. This isn't quite the same as sawfish's native idea
- of "workarea", but it's not possible to set that value on the
- root, since it's a function of each window (i.e. each window
- may have a different workarea)
-
- 2002-08-18 John Harper <jsh unfactored org>
-
- * sawfish/wm/ext/edge-flip.jl (edge-flip-for-edge): use
- workspace-grid module in workspace mode. Patch from Michael
- Toomim <toomim cs berkeley edu>
-
- * sawfish/wm/ext/workspace-grid.jl (send-to-workspace-right):
- added magic autoload comments
-
- 2002-08-18 John Harper <jsh unfactored org>
-
- * sawfish/wm/ext/workspace-grid.jl: new module from Michael
- Toomim <toomim cs berkeley edu> to interpret the
- _NET_DESKTOP_LAYOUT wm-spec hints and provide two dimensional
- workspace commands
-
- 2002-08-03 John Harper <jsh unfactored org>
-
- * sawfish/wm/windows.jl (dock-window-properties): fix typo.
- Patch from Greg Morris <gmorris pscs org>
-
- 2002-07-23 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/maximize.jl (window-unmaximized-position):
- patch from Claudio Bley <bley cs uni-magdeburg de> to fix typo
-
- 2002-07-01 John Harper <jsh unfactored org>
-
- * Makefile.in: invoke sawfish script directly when compiling
-
- 2002-06-30 John Harper <jsh unfactored org>
-
- * sawfish/wm/placement/smart.jl (sp-padding): defaults to zero
-
-2002-06-28 John Harper <jsh unfactored org>
-
- * version 1.1
-
-2002-06-28 John Harper <jsh unfactored org>
-
- * more merging:
-
- 2002-06-17 John Harper <jsh unfactored org>
-
- * sawfish/wm/util/display-window.jl
- (display-window-without-focusing): patch from merlin to recover
- "lost" windows
-
-2002-05-29 John Harper <jsh unfactored org>
-
- * more merging:
-
- 2002-05-28 John Harper <jsh unfactored org>
-
- * sawfish/wm/commands/move-resize.jl (motion): when displaying
- logical size, use (or base 0) not 1 to get the correct result.
- Patch from merlin <merlin merlin org>
-
- 2002-05-26 John Harper <jsh unfactored org>
-
- * sawfish/wm/placement/stagger.jl: respects workarea now. Fixes
- #74307
-
- 2002-05-24 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl (client-message-handler): don't
- select the new desktop when moving window after _NET_WM_DESKTOP
-
- * sawfish/wm/workspace.jl
- (send-window-to-workspace-from-first): added optional SELECT
- param
-
-2002-05-21 John Harper <jsh unfactored org>
-
- * More merging from HEAD:
-
- 2002-05-13 John Harper <jsh unfactored org>
-
- * sawfish/wm/gnome/integration.jl: admit defeat and go back to
- loading xterm module all the time
-
- 2002-05-11 John Harper <jsh unfactored org>
-
- * sawfish/wm/gnome/integration.jl (gnome-use-capplet-changed):
- removed duplicate eval-when-compile
-
- 2002-05-10 John Harper <jsh unfactored org>
-
- * sawfish/wm/frames.jl (cursor-for-frame-part): require
- maximize module to fix #81441
-
- 2002-05-06 John Harper <jsh unfactored org>
-
- * sawfish/wm.jl: patch from Christophe Fergeau
- <teuf users sourceforge net> to call bindtextdomaincodeset
- function. Modified to only call it if it exists
-
-2002-05-06 John Harper <jsh unfactored org>
-
- * More merging from HEAD:
-
- 2002-05-03 John Harper <jsh unfactored org>
-
- * sawfish/wm/gnome/integration.jl (gnome-use-capplet-changed):
- require xterm module when compiling
-
- 2002-04-27 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/transient.jl (transient-map-window,
- transient-unmap-window): use set-input-focus not
- activate-window (which raises the window..)
-
- 2002-04-25 John Harper <jsh unfactored org>
-
- * sawfish/wm/session/init.jl (sm-init): make the
- CurrentDirectory a valid filename (e.g., no "~" characters)
-
- 2002-04-23 John Harper <jsh unfactored org>
-
- Work to support _NET_WM_STRUT. Fixes #66608 (not tested):
-
- * sawfish/wm/util/workarea.jl: new module, moved the workarea
- calculations here from the maximize module. Added support for
- "struts"
-
- * sawfish/wm/state/wm-spec.jl (honour-client-state): call
- define-window-strut if _NET_WM_STRUT is set
-
- * sawfish/wm/windows.jl (dock-window-properties): new variable,
- list of properties to set on dock windows
-
- 2002-04-23 John Harper <jsh unfactored org>
-
- * sawfish/wm/menus.jl (window-ops-menu): removed viewport
- operations. Fixes #73122
-
- 2002-04-22 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl (set-ws-hints):
- _NET_DESKTOP_NAMES property is in UTF8_STRING encoding. Adapted
- from Gregory Merchan <merchan phys lsu edu>
-
- * sawfish/wm/util/window-order.jl (on-viewport-change): only
- don't focus most recent in enter-exit mode. Fixes #67007
-
- * sawfish/wm/workspace.jl, sawfish/wm/viewport.jl,
- sawfish/wm/state/wm-spec.jl: Fixed #74904, support
- _NET_NUMBER_OF_DESKTOPS and _NET_DESKTOP_GEOMETRY client
- messages
-
-2002-04-21 John Harper <jsh unfactored org>
-
- * Merged changes from HEAD:
-
- 2002-04-21 John Harper <jsh unfactored org>
-
- More reorganization. Removed all mentions of viewports and
- viewport commands from the configurator, simplified workspace
- configuration, etc..
-
- * sawfish/wm/workspace.jl, sawfish/wm/viewport.jl,
- sawfish/wm/placement.jl, sawfish/wm/autoload.jl:
-
- * sawfish/wm/commands/xterm.jl,
- sawfish/wm/commands/viewport-linear.jl,
- sawfish/wm/commands/viewport-extras.jl,
- sawfish/wm/commands/move-resize.jl,
- sawfish/wm/commands/groups.jl:
-
- * sawfish/wm/ext/shade-hover.jl,
- sawfish/wm/ext/hide-dialogs.jl, sawfish/wm/ext/edge-flip.jl,
- sawfish/wm/ext/auto-raise.jl:
-
- * sawfish/wm/gnome/menus.jl, sawfish/wm/gnome/integration.jl:
-
- * sawfish/wm/state/iconify.jl:
-
- * sawfish/wm/util/compat.jl, sawfish/wm/util/autoloader.jl:
-
- 2002-04-20 John Harper <jsh unfactored org>
-
- More slash and burning. Removed user levels (a failed
- experiment). Removed more options, etc
-
- * sawfish/wm/workspace.jl, sawfish/wm/windows.jl,
- sawfish/wm/stacking.jl, sawfish/wm/placement.jl,
- sawfish/wm/keymaps.jl, sawfish/wm/frames.jl,
- sawfish/wm/focus.jl, sawfish/wm/custom.jl,
- sawfish/wm/commands.jl, sawfish/wm/autoload.jl:
-
- * sawfish/wm/commands/xterm.jl, sawfish/wm/commands/x-cycle.jl,
- sawfish/wm/commands/slide-window.jl,
- sawfish/wm/commands/size-window.jl,
- sawfish/wm/commands/raise-commands.jl,
- sawfish/wm/commands/move-resize.jl,
- sawfish/wm/commands/groups.jl, sawfish/wm/commands/describe.jl:
-
- * sawfish/wm/ext/window-history.jl, sawfish/wm/ext/tooltips.jl,
- sawfish/wm/ext/shade-hover.jl, sawfish/wm/ext/error-handler.jl,
- sawfish/wm/ext/edge-flip.jl, sawfish/wm/ext/auto-raise.jl,
- sawfish/wm/ext/audio-events.jl, sawfish/wm/ext/3d-hack.jl:
-
- * sawfish/wm/placement/top-left.jl,
- sawfish/wm/placement/smart.jl:
-
- * sawfish/wm/state/transient.jl, sawfish/wm/state/iconify.jl:
-
- * sawfish/wm/util/play-audio.jl, sawfish/wm/util/nokogiri.jl,
- sawfish/wm/util/display-window.jl, sawfish/wm/util/compat.jl:
-
- 2002-04-20 John Harper <jsh unfactored org>
-
- Removed a lot of dead wood. Deleted some options altogether,
- made a lot more into standard variables (i.e. they can still be
- set using setq, but don't appear in the configurator). Also got
- rid of all warp-pointer type options, this is now part of the
- focus mode -- click to focus doesn't warp, focus follows mouse
- does
-
- Still to do: remove user levels, more pruning of move-resize
- and workspace groups
-
- * sawfish/wm/workspace.jl, sawfish/wm/windows.jl,
- sawfish/wm/viewport.jl, sawfish/wm/stacking.jl,
- sawfish/wm/menus.jl, sawfish/wm/keymaps.jl,
- sawfish/wm/frames.jl, sawfish/wm/focus.jl,
- sawfish/wm/defaults.jl, sawfish/wm/custom.jl,
- sawfish/wm/custom-defaults.jl, sawfish/wm/autoload.jl:
-
- * sawfish/wm/commands/xterm.jl, sawfish/wm/commands/x-cycle.jl,
- sawfish/wm/commands/move-resize.jl,
- sawfish/wm/commands/grow-pack.jl:
-
- * sawfish/wm/ext/window-history.jl, sawfish/wm/ext/tooltips.jl,
- sawfish/wm/ext/error-handler.jl, sawfish/wm/ext/edge-flip.jl,
- sawfish/wm/ext/beos-window-menu.jl,
- sawfish/wm/ext/auto-raise.jl, sawfish/wm/ext/audio-events.jl:
-
- * sawfish/wm/state/transient.jl, sawfish/wm/state/shading.jl,
- sawfish/wm/state/maximize.jl, sawfish/wm/state/iconify.jl,
- sawfish/wm/state/configure.jl:
-
- * sawfish/wm/util/stacking.jl, sawfish/wm/util/nokogiri.jl,
- sawfish/wm/util/groups.jl, sawfish/wm/util/display-window.jl,
- sawfish/wm/util/compat.jl:
-
- 2002-04-14 Kai Großjohann <Kai Grossjohann CS Uni-Dortmund DE>
-
- * sawfish/wm/commands/grow-pack.jl (grow-pack): New group, parent
- is `misc'.
- (grow-is-maximize, pack-warp-pointer, grow-pack-bump-obscured)
- (grow-pack-bump-other-depth, grow-pack-bump-ignored): Use the new
- group for the customization options.
- Suggestion from John Harper.
-
- 2002-04-11 Kai Großjohann <Kai Grossjohann CS Uni-Dortmund DE>
-
- * sawfish/wm/commands/grow-pack.jl (grow-pack-bump-ignored): New
- user option. Suggestion from Markus Holmberg.
- (bump-distance): Optionally ignore ignored windows.
-
- 2002-04-18 John Harper <jsh unfactored org>
-
- * sawfish/wm/ext/match-window.jl: accept #f for false in
- options. Adapted from merlin <merlin merlin org>
-
- * sawfish/wm/ext/edge-flip.jl (edge-flip-warp-pointer): made
- the description a bit clearer (hopefully). #77668
-
- * sawfish/wm/windows.jl (mark-window-as-dock): set
- fixed-position property. Should fix #78582
-
- 2002-04-10 John Harper <jsh unfactored org>
-
- Fixed #70071:
-
- * sawfish/wm/windows.jl (mark-window-as-dock, dock-window-p):
- new functions
- * sawfish/wm/state/gnome.jl (gnome-window-class-hacks): call
- mark-window-as-dock
- * sawfish/wm/state/wm-spec.jl (wm-class-hacks, DOCK type): call
- mark-window-as-dock
- * sawfish/wm/commands/x-cycle.jl (cycle-dock,
- cycle-dock-backwards): new commands. Also made it so that the
- selection functions have to call window-in-cycle-p themselves
- * sawfish/wm/windows.jl (window-in-cycle-p): new keyword arg
- IGNORE-CYCLE-skip
-
- 2002-04-02 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl (client-message-handler): before
- doing move-resize requests, fetch and save a timestamp so that
- grabs don't fail. Fixes #77041
-
- 2002-03-24 John Harper <jsh unfactored org>
-
- * sawfish/wm/animation/outline.jl: add error handling around
- calls to the window-outline drawing code. Ungrab the server on
- an error. Band-aid for #75984
-
-2002-04-12 John Harper <jsh unfactored org>
-
- * sawfish/wm/commands/help.jl, sawfish/wm/commands/gnome.jl:
- use "gnome-help" program instead of "gnome-help-browser".
- Should fix #77343
-
-2002-04-02 John Harper <jsh unfactored org>
-
- * sawfish/wm/gnome/integration.jl (gnome-use-capplet): removed
- this option; marked it obsolete
-
-2002-03-19 John Harper <jsh unfactored org>
-
- * Merged changes from HEAD:
-
- 2002-03-09 John Harper <jsh pixelslut com>
-
- * sawfish/wm/state/wm-spec.jl (supported-atoms): updated to
- include all atoms we recognize, not just top-level things
-
- * sawfish/wm/state/maximize.jl (window-maximized-fullscreen-p,
- maximize-window-fullscreen, maximize-window-fullscreen-toggle):
- support a new type of maximization, called `fullscreen'. In
- this mode the window's borders are removed and it fills the
- entire area of the head (even if it's size hints would dictate
- otherwise)
-
- * sawfish/wm/state/wm-spec.jl: support _NET_WM_STATE_FULLSCREEN
-
- (the above two changes fix #73970)
-
- * sawfish/wm/util/ping.jl: actually tested this code (Gtk+ 2
- supports the protocol). Fixed some bugs. Don't use X server
- timestamps as the unique id anymore (since they may not be
- unique), use a unique sequence number instead
-
- (ping-window): TIMEOUT-MSECS is now optional and defaults to
- one second
-
- 2002-03-03 John Harper <jsh pixelslut com>
-
- * sawfish/wm/placement/off-center.jl (workarea-for): replaced
- by a single call to maximize-find-workarea
-
- * sawfish/wm/placement.jl: added `#:head-fallback t' in some
- calls to maximize-find-workarea. Should fix #73297
-
- * sawfish/wm/state/maximize.jl (maximize-find-workarea):
- removed extra #!key token
-
- 2002-02-22 John Harper <jsh pixelslut com>
-
- * sawfish/wm/viewport.jl (viewport-load-state): add the current
- viewport offsets into any set window geometries
-
- * sawfish/wm/state/wm-spec.jl (set-ws-hints): fixed using
- screen-width instead of screen-height (noticed by
- tal00r ecs soton ac uk)
-
- 2002-02-21 John Harper <jsh unfactored org>
-
- * sawfish/wm/stacking.jl (stacking-add-window): don't put
- windows below the default depth just because their parent is.
- Fixes #67978
-
- 2002-02-17 John Harper <jsh unfactored org>
-
- * sawfish/wm/commands/move-resize.jl (move-resize-map): added
- any-off2 and any-off3 bindings. Fixes #67134
-
- 2001-12-02 Daniel Pfeiffer <occitan esperanto org>
-
- * grow-pack.jl: This fixes some bugs:
-
- - If a window was less than width-inc or height-inc away from the
- next window, that next window was also ignored for packing.
- - The variable grow-window-repeat did not serve it's purpose.
- Instead it influenced whether width-inc or height-inc were
- respected, which is an error (or at least a hacker option :-), no
- matter what the variable is called.
- - Typo preventing vertical growing to behave as maximize (maximzed).
- - The underlying functions of the commands were not exported,
- making them inaccessible to lisp and their documentation strings
- somewhat useless.
-
- One esthetical bug remains: depending on focus-mode neither
- frame-draw/state-mutex nor focus-ignore-pointer-events prevent two
- flickering frame highlights. When moving, focus leaves the window
- if it moves beyond pointer, when warping it goes back. Any ideas?
-
- And adds a few features:
-
- - Optionally separate layers/depths (as discussed on the
- mailing-list some time ago). I found this to also have to handle
- avoided windows (panel may be on its own depth).
- <http://lists.eazel.com/pipermail/sawfish/2001-August/001634.html>
- - Optionally ignore totally obscured windows.
- - Optionally grow or pack by given amount of pixels. To be useful
- requires a prefix setter. Until that makes it into sawfish 1.0.2,
- get a patch.
- http://dapfy.bei.t-online.de/sawfish/move-viewport/
- - Optionally maximize in one direction.
- - Do i18n on menu. (Eight new strings to be done by translators.)
-
- Despite added functionality the new code is both smaller and faster.
-
-2001-11-17 John Harper <jsh unfactored org>
-
- * Makefile.in: just call the libtool-created sawfish script
- directly
-
-2001-12-17 Federico Mena Quintero <federico ximian com>
-
- Fixes GNOME bug #67138. However, the rest of smart.jl seems to be
- using screen-width and screen-height all over the place, so this
- may not be complete yet.
-
- * sawfish/wm/placement/top-left.jl (workarea-for): Removed.
- (place-window-top-left): Use maximize-find-workarea with the
- head-fallback parameter instead of workarea-for.
-
- * sawfish/wm/state/maximize.jl (maximize-find-workarea): Added a
- key parameter head-fallback. If non-nil and the workarea turns
- out to be empty, it will fall back to a rectangle that represents
- the head area.
-
- * sawfish/wm/placement/smart.jl (sp-do-placement): Use the
- workarea width and height instead of the screen width and height.
-
-2001-12-14 John Harper <jsh unfactored org>
-
- [Committed by Federico Mena Quintero <federico ximian com> on
- behalf of J.S.H.]
-
- * sawfish/wm/placement.jl (place-window-randomly): fixed bug of
- possibly adding the head offset twice.
-
-2001-12-11 Federico Mena Quintero <federico ximian com>
-
- Fixes GNOME bug #66761.
-
- * sawfish/wm/state/gnome.jl (gnome-set-hint): Moved over from
- commands/gnome.jl; these should really be here.
- (gnome-clear-hint): Likewise.
- (gnome-toggle-hint): Likewise.
-
- * sawfish/wm/state/gnome.jl (gnome-hint-set-p): New exported
- function; queries whether a property in _WIN_HINTS is set.
-
- * sawfish/wm/state/gnome.jl: Added a predicate to the
- `(add-window-menu-toggle "In GNOME task list' so that we can show
- the menu item as a proper toggle.
-
-2001-12-09 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl (set-window-hints): don't mark
- the window as being sticky just because it's not swapped into
- any workspace..
-
-2001-12-06 John Harper <jsh unfactored org>
-
- * sawfish/wm/workspace.jl (select-workspace-interactively):
- remove the interactive spec. Pointed out by Michal Maru¹ka
- <mmc maruska dyndns org>
-
-2001-12-04 Federico Mena Quintero <federico ximian com>
-
- * sawfish/wm/viewport.jl
- (move-window-to-viewport-and-move-viewport): Per JSH's suggestion,
- use raise-window* instead of plain raise-window so that any
- transients are raised if appropriate.
-
-2001-12-04 Federico Mena Quintero <federico ximian com>
-
- * sawfish/wm/viewport.jl
- (move-window-to-viewport-and-move-viewport): New function that
- generalizes move-window-left and friends. Also raises the window
- in its layer so that it doesn't appear occluded when flipping the
- viewport. Sticks/unsticks the window to avoid flashing, as well.
- (move-window-left): Use move-window-to-viewport-and-move-viewport.
- (move-window-right): Likewise.
- (move-window-down): Likewise.
- (move-window-up): Likewise.
-
-2001-12-04 Federico Mena Quintero <federico ximian com>
-
- * sawfish/wm/viewport.jl (set-viewport): Grab the server while we
- move the windows.
-
-2001-12-02 John Harper <jsh unfactored org>
-
- * sawfish/wm/state/wm-spec.jl: check that some values are
- symbolp before calling get on them. Patch from Michal
- Politowski <mpol charybda icm edu pl> via Christian Marillat
- <marillat christian wanadoo fr>
-
-2001-10-27 John Harper <jsh unfactored org>
-
- Fixed the bug where `transients-above' and `layer' stacking
- constraints can conflict and stop stacking working (gnome
- bugzilla 48412):
-
- * sawfish/wm/stacking.jl
- (stacking-constraint:transients-above-parent,
- stacking-constraint:transients-above-all): check the depth of
- the windows being compared. Depth overrides the transient-of
- stacking relation
-
- (stacking-add-window): transient windows get the depth of their
- highest parent window instead of the default of zero
-
-2001-10-14 John Harper <jsh unfactored org>
-
- * version 1.0.1
-
-2001-09-20 John Harper <jsh unfactored org>
-
- * sawfish/wm/workspace.jl (select-workspace): fixed bug in last
- change, don't keep the server grabbed for so long
-
-2001-09-19 John Harper <jsh unfactored org>
-
- Fixed bug of window flicker when switching workspaces:
-
- * sawfish/wm/workspace.jl (select-workspace): don't remove all
- windows not in the new space, then add all windows in the new
- space. Instead add all windows in the new space in
- top-to-bottom order, then remove unneeded windows
- bottom-to-top. This always generates the minimum exposed area
-
-2001-09-17 John Harper <jsh unfactored org>
-
- * sawfish/wm/commands.jl (apply-command-keys): fixed type of
- 'dommand-doc instead of 'command-doc. Spotted by David Bustos
- <bustos its caltech edu>
-
-2001-09-14 John Harper <jsh pixelslut com>
-
- * sawfish/wm.jl: when possible, disable error reporting on
- stdio streams
-
-2001-09-13 John Harper <jsh pixelslut com>
-
- Fixed bug of nautilus desktop window covering panel:
-
- * sawfish/wm/state/wm-spec.jl (desktop-layer, dock-layer): set
- to -/+ 4 respectively, not -/+ 1(which are the actual values
- used in the GNOME 1 spec)
-
-2001-09-02 John Harper <jsh pixelslut com>
-
- Fixed 6693 (restarting sawfish with a maximized window and the
- gnome panel will make the maximized window too big):
-
- * ~/src/sawfish/lisp/sawfish/wm/state/maximize.jl
- (property-notify): don't install check-if-maximizable into the
- add-window-hook immediately. Instead use
- after-initialization-hook to run c-i-m over all windows, then
- install it as before
-
-2001-08-31 John Harper <jsh pixelslut com>
-
- * ~/src/sawfish/lisp/sawfish/wm/util/stacking.jl
- (maybe-raise-window, maybe-lower-window): when adding server
- timestamp to the client message, subtract one from the actual
- last seen timestamp. Done for same reason as in windows.c
-
- * ~/src/sawfish/lisp/sawfish/wm/util/display-window.jl
- (display-window-without-focusing): new (private) keyword
- parameter WILL-REFOCUS. Pass this value along to
- select-workspace
-
- (display-window): pass WILL-REFOCUS as true when we'll be
- focusing a window afterwards (helps avoid some race conditions)
-
-2001-08-24 John Harper <jsh pixelslut com>
-
- * sawfish/wm/menus.jl: ensure menu-process is nil after being
- killed. Also, never try to kill it unless it's non-nil
-
-2001-08-23 John Harper <jsh pixelslut com>
-
- * sawfish/wm/commands.jl (no-operation): new command. Fixes
- 8463
-
- * sawfish/wm/state/configure.jl (configure-request-handler):
- don't allow the window to be moved or resized when it's
- maximized. Fixes 8410
-
- * sawfish/wm/state/maximize.jl (window-locked-vertically-p,
- window-locked-horizontally-p): new functions
-
- * sawfish/wm/placement.jl (place-window-randomly): removed
- bogus middle cases from from x and y position calculations.
- Fixes 8415
-
- * sawfish/wm/ext/match-window.jl
- (match-window-grab-x-property): take a symbol with the actual
- name of the X property, not one of the strings in the
- match-window-x-properties list
-
-Sat Aug 18 16:32:37 2001 Owen Taylor <otaylor redhat com>
-
- * sawfish/wm/windows.jl: Offset windows properly whose gravity
- point is centered horizontally or vertically.
-
-2001-07-23 John Harper <jsh pixelslut com>
-
- * sawfish/wm/state/gnome.jl (gnome-event-proxyer): fixed bug
- caused by Click1 events now printing as Click. This caused only
- button-release events to be proxied
-
-2001-07-02 John Harper <jsh pixelslut com>
-
- * version 0.99
-
-2001-06-18 John Harper <jsh pixelslut com>
-
- * sawfish/wm/menus.jl (menu-program-stays-running): by popular
- demand this now defaults to `t'
-
- * sawfish/wm/windows.jl (focus-desktop): new command, focuses
- the desktop window if one exists
-
-2001-06-04 John Harper <jsh pixelslut com>
-
- * sawfish/wm/commands/move-resize.jl (do-move-resize): move the
- call to draw-window-outline to immediately before entering the
- recursive event loop (avoids drawing and not erasing it on a
- non-viable drag)
-
-2001-05-04 John Harper <jsh eazel com>
-
- * sawfish/wm/state/gnome.jl (gnome-event-proxyer): support
- `OffN' events
- * sawfish/wm/util/decode-events.jl: ditto
-
- * sawfish/wm/keymaps.jl (title-keymap): bind
- toggle-window-shaded to an X-Off2 binding instead of X-Click2
-
-2001-04-22 John Harper <jsh eazel com>
-
- Fixed bug 4250 (pointer can confuse focus follows mouse when
- cycling):
-
- * sawfish/wm/focus.jl (focus-ignore-pointer-events): new
- variable. When true, pointer in/out events have no effect on
- the input focus
-
- * sawfish/wm/commands/x-cycle.jl (cycle-begin): while cycling
- set focus-ignore-pointer-events to true. Don't restore it to
- false until 100ms after the cycling finishes (so that any
- pointer out events generated by, e.g., removing the message
- window are ignored)
-
-2001-04-22 John Harper <jsh eazel com>
-
- * sawfish/wm/viewport.jl (set-viewport): rewrote the code that
- changes viewports. It now tries to order the window moves in
- such a way as to minimize redundant pointer in/out and expose
- events. The ordering algorithm was suggested by Jan Kasprzak
- <kas informatics muni cz> last September
-
-2001-04-20 John Harper <jsh eazel com>
-
- * sawfish/wm/state/gnome.jl (gnome-property-handler): monitor
- _WIN_AREA as well as _WIN_WORKSPACE. This definitely
- fundamentally flawed, but can be useful in some cases..
-
- Extra i18n work. Adapted from a patch by Vlad Harchev
- <hvv hippo ru>
-
- * sawfish/wm.jl (i18n-defvar, i18n-define): new macros, expand
- to a `defvar' or `define'. Just used to mark variables that
- need special attention when extracting translatable strings
-
- * sawfish/wm/ext/match-window.jl: import sawfish.wm instead of
- a bunch of specific modules, so we get i18n-defvar. Then use it
- when declaring match-window-x-properties and
- match-window-properties
-
-2001-04-17 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/beos-window-menu.jl (make-label): surround the
- name in parentheses if the window is on a different viewport as
- well as if it's on a different workspace
-
-2001-04-12 John Harper <jsh eazel com>
-
- * sawfish/wm/frames.jl (apply-frame-style,
- apply-frame-style-and-save): new functions. These provide a
- future-proof interface for programmatically selecting themes
-
-2001-04-11 John Harper <jsh eazel com>
-
- Committed some work-in-progress changes. The end goal is to
- store customized keymaps as deltas from their default value.
- That doesn't happen yet, but these changes will make it easier.
-
- Work to record default values of all custom options:
-
- * sawfish/wm/custom.jl (variable-default-value,
- variable-declared-p): new functions
-
- (custom-declare-variable): new keyword parameter DEFAULT-VALUE.
-
- (defcustom): the expansion now passes the DEFAULT-VALUE to
- custom-declare-variable
-
- * sawfish/wm/keymaps.jl: Rewrote all keymap initializations to
- use a single form instead of side-effecting the keymap after
- it's created. This lets the default value be known
-
- (custom-set-keymap): use an ugly hack to prevent the default
- value being destructively modified
-
-
- Added an extra deserialize/serialize pair when applying values
- from the UI. This is so that the customize-set function can do
- some kind of transformation at some point in the future..
-
- * sawfish/wm/custom.jl (make-custom-form): now requires an
- unserialized VALUE. It serializes it before creating the form
-
- * sawfish/wm/util/nokogiri.jl (nokogiri-apply-changes):
- deserialize the value from the UI before passing it to
- customize-set
-
-
- * sawfish/wm/util/keymap-diff.jl (diff-keymaps, patch-keymap):
- new file. Experimental code for keymap abuse
-
-2001-04-11 John Harper <jsh eazel com>
-
- Fixed bug 8047 (SOLARIS: Setting Gnomecc Workspaces spin button
- to decrease no of workspaces fails.):
-
- * sawfish/wm/workspace.jl: set
- {first,last}-interesting-workspace to nil when the workspace
- configuration changes
-
- this isn't a great fix, but imho it's better than the current
- behaviour
-
-2001-04-08 John Harper <jsh eazel com>
-
- * sawfish/wm/state/transient.jl (transient-frame-type):
- s/shaped/shaded/ to fix the bug where the decorate-transients
- option doesn't work for shaded windows
-
-2001-04-05 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/tooltips.jl (command-info): use the
- `command-documentation' function to get doc strings, not the
- `documentation' function (which no longer works)
-
-2001-04-02 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/window-history.jl: added special save and
- restore code for the `sticky' state (handles _both_ sticky
- states)
-
-2001-03-24 John Harper <jsh eazel com>
-
- * sawfish/wm/state/maximize.jl (maximize-window,
- maximize-find-workarea): some bug fixes for multi-headed
- displays. Adapted from a patch by Florent Guillaume
- <florent guillaume mail com>
-
-2001-03-20 John Harper <jsh eazel com>
-
- Fixed bug 6971 (cancelling resizing a maximized window loses
- the maximimized status):
-
- * sawfish/wm/commands/move-resize.jl (do-move-resize): when
- calling after-move-hook or after-resize-hook pass a SUCCESSFUL
- keyword arg, whose value is true if the move or resize was
- successfully completed
-
- * sawfish/wm/state/maximize.jl (maximize-discard-move,
- maximize-discard-resize): these now have a SUCCESSFUL keyword
- parameter, they only do the discarding if it's true
-
-2001-03-17 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/tooltips.jl (tooltips-delay,
- tooltips-timeout-delay): minimum allowed value is now one not
- zero (zero timeouts don't work)
-
-2001-03-14 John Harper <jsh eazel com>
-
- * version 0.38
-
-2001-03-09 John Harper <jsh eazel com>
-
- * sawfish/wm/commands/grow-pack.jl: applied patch from Kai
- Großjohann <Kai Grossjohann CS Uni-Dortmund DE>:
-
- `It makes growing work even for windows which have a
- height/width increment.
-
- With the old code, repeat-growing xterms didn't always work
- right, since the old code only added 1 to the height/width,
- and that was often not enough to overlap the next window
- edge. Now I'm adding height/width increment, and
- preliminary testing indicates that this is working well.'
-
-2001-03-06 John Harper <jsh eazel com>
-
- * sawfish/wm/focus.jl (scan-windows-for-bugs): disabled the
- code to beep and print warning messages if the click to focus
- keymap gets lost
-
- * sawfish/wm/state/gnome.jl (gnome-property-handler): fixed to
- work better when the window is on multiple workspaces
-
- * sawfish/wm/state/maximize.jl: don't add maximize-discard-move
- to the after-move-hook any longer
-
-2001-02-28 John Harper <jsh eazel com>
-
- * sawfish/wm/state/gnome.jl (gnome-property-handler): new
- function, added to property-notify-hook. Currently just watches
- for _WIN_WORKSPACE changes, and responds by moving the window
-
- * sawfish/wm/workspace.jl
- (send-window-to-workspace-from-first): don't do any copying and
- moving if the FROM and TO workspaces are the same
-
- * sawfish/wm/commands/move-resize.jl (move-cursor-shape,
- resize-cursor-shape): default to the value of the
- default-cursor function
-
- * sawfish/wm/frames.jl (cursor-for-frame-part): don't use a
- special cursor in titles
-
-2001-02-24 John Harper <jsh eazel com>
-
- * sawfish/wm/commands.jl (command-sequence): define
- `kill-client' command (using the x-kill-client function)
-
- Fixed off-by-one error when placing windows flush with the
- right or bottom of the screen
-
- * sawfish/wm/placement/smart.jl (sp-make-grid): don't subtract
- one from screen-width or screen-height
- (sp-prune-points): allow (<= X RANGE) instead of (< X RANGE)
-
-2001-02-23 John Harper <jsh eazel com>
-
- * sawfish/wm/state/iconify.jl (window-sticky-p/workspace,
- make-window-sticky/workspace, make-window-unsticky/workspace,
- window-sticky-p/viewport, make-window-sticky/viewport,
- make-window-unsticky/viewport): new functions, used to
- implement the combined sticky functions. They're also exported
-
- * sawfish/wm/state/wm-spec.jl: uses the new /workspace or
- /viewport sticky functions throughout
-
- Fixed typo of _NET_WM_STATE_MAXIMIZED_HORIZ instead of HORZ
-
- Add update-client-list-hints to after-restacking-hook instead
- of workspace-state-change-hook
-
- (update-client-list-hints): added keyword arg
- ONLY-STACKING-LIST; reverse the result of the stacking-order
- function before storing it in the _NET_CLIENT_LIST_STACKING
- property
-
- (client-message-handler): use the display-window function to
- implement the _NET_ACTIVE_WINDOW request. Added a
- _NET_WM_DESKTOP handler - handles making the window sticky or
- changing its workspace
-
-2001-02-22 John Harper <jsh eazel com>
-
- * sawfish/wm/placement.jl (place-window): don't try to place
- windows with the fixed-position property
-
-2001-02-14 John Harper <jsh eazel com>
-
- * version 0.37.2
-
- * sawfish/wm/commands/move-resize.jl (viable-move-resize-p):
- doh! fixed this properly now, was using the wrong variable to
- get the edge list
-
- * version 0.37.1
-
- * sawfish/wm/commands/move-resize.jl (viable-move-resize-p):
- fixed stupid typo in `region' and `border' modes (using
- direction instead of edge list)
-
-2001-02-13 John Harper <jsh eazel com>
-
- * version 0.37
-
- * sawfish/wm/state/gnome.jl (gnome-window-class-hacks):
- * sawfish/wm/state/wm-spec.jl (wm-class-hacks):
- Look for `Panel/panel_window' instead of `Panel/panel'. This
- may not work well immediately, but it will with the forthcoming
- gnome-core release
-
- * sawfish/wm/ext/window-history.jl: new command line option
- `--window-history-file=FILE' to specify where to load and store
- the history information
-
- * sawfish/wm/user.jl (rc-files): new internal variable - the
- list of rc files to try, currently ~/.sawfishrc, ~/.sawfish/rc
- and ~/.sawmillrc
-
-2001-02-10 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/match-window.jl
- (match-window-grab-x-property): enclose grabbed regexp in
- `^...$' so that it only matches the exact string
-
-2001-02-07 John Harper <jsh eazel com>
-
- * sawfish/wm/util/window-order.jl (on-viewport-change): only
- call window-order-focus-most-recent if in click-to-focus mode,
- not when not in enter-exit mode
-
-2001-02-06 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/match-window.jl (match-window-x-properties):
- added WM_WINDOW_ROLE to list of properties
-
- * sawfish/wm/state/transient.jl (transient-unmap-window): in
- sloppy focus mode avoid focusing on the desktop window just
- because the pointer is over it
-
-2001-02-05 John Harper <jsh eazel com>
-
- * sawfish/wm/util/recolor-image.jl (make-lut): subtract
- mid-point from 255 not 256. Pointed out by Simon Budig
- <Simon Budig unix-ag org>
-
-2001-01-28 John Harper <jsh eazel com>
-
- Work to fix bug 5758 (session management doesn't work in `don't
- automatically save' mode).
-
- Most of the credit goes to Timo Korvola
- <tkorvola e math helsinki fi> for working out what was wrong
- and providing the initial implementation
-
- * sawfish/wm/session/init.jl: lots of rewriting. The end result
- is that we never overwrite session files when saving data.
- Instead we use a unique prefix (the time in us in base 36) to
- the client id. (This is how XSM is supposed to work)
-
- * sawfish/wm/session/save.jl, sawfish/wm/session/load.jl
- (save-session, load-session): these functions now accept a
- filename argument instead of the client id
-
- * sawfish/wm.jl: check for --sm-prefix option, and pass it to
- sm-init when found
-
-2001-01-27 John Harper <jsh eazel com>
-
- * sawfish/wm/state/configure.jl
- (configure-ignore-stacking-requests): new option. Controls
- whether stacking requests from windows are honoured or not. The
- window property `ignore-stacking-requests' has the same effect
-
- [ adapted from Matt Tucker <tuck whistlingfish net> ]
-
- * sawfish/wm/ext/match-window.jl (match-window-properties):
- added ignore-stacking-requests to the `Other' section
-
-2001-01-25 John Harper <jsh eazel com>
-
- Fixed bug 5984 (locked-size-when-maximized is confusing):
-
- * sawfish/wm/frames.jl (frame-part-classes): use calls to
- define-frame-class to populate this alist
-
- (cursor-for-frame-part): new function, creates functions to
- return the correct cursor. Uses frame-part-movable-p to see
- which cursor should be displayed
-
- * sawfish/wm/state/maximize.jl (frame-part-movable-p): new
- function
-
- * sawfish/wm/state/maximize.jl (move-lock-when-maximized):
- moved this option here (from sawfish.wm.commands.move-resize)
-
- * sawfish/wm/commands/move-resize.jl
- (delete-unmovable-directions, delete-unresizable-edges): new
- functions
-
- (viable-move-resize-p): new function, tests if it's worth
- starting a move/resize (only if there's something that can be
- moved or resized)
-
-2001-01-26 John Harper <jsh eazel com>
-
- * sawfish/wm/placement.jl (place-window-randomly): fixed bug
- where windows could be left off-screen. Problem was due to
- confusing right or bottom edges of the workarea with its width
- or height
-
-2001-01-25 John Harper <jsh eazel com>
-
- * sawfish/wm/state/wm-spec.jl (init): the change to restore the
- selected desktop on restart introduced a bug, so I've changed
- it to not reselect the desktop until after the initialization
- process has finished (using the after-initialization-hook)
-
- * sawfish/wm/util/recolor-image.jl (make-image-recolorer*): new
- function, can recolour multiple channels at once (uses a common
- zero-channel, recolours based on whichever channel is non-zero
- for each pixel)
-
- (make-image-recolorer): now defined in terms of
- make-image-recolorer*
-
-2001-01-23 John Harper <jsh eazel com>
-
- * sawfish/wm/state/wm-spec.jl (init): check for an old value of
- _NET_CURRENT_DESKTOP before overwriting it. If set, switch to
- that desktop. This fixes the annoying `desktop always reset to
- zero on restart' bug
-
-2001-01-22 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/auto-raise.jl (rw-on-focus, rw-out-focus):
- reverted the test for (eq mode 'normal). (See 2000-11-02 entry
- for reason.) This causes worse problems than it solves (e.g.
- switch desktops, M-TAB to a new window, but the old window gets
- raised)
-
-2001-01-20 John Harper <jsh eazel com>
-
- * version 0.36
-
-2001-01-19 John Harper <jsh eazel com>
-
- * sawfish/wm/user.jl (fallback-frame-style): changed this to
- `Crux' theme
-
- * sawfish/wm/frames.jl (frame-part-classes): added shade-button
- frame part class
- * sawfish/wm/keymaps.jl (shade-button-keymap): new keymap
-
- * sawfish/wm/util/recolor-image.jl (make-image-recolorer): new
- module, exports this function. A factory for creating functions
- that recolour images based on a white -> <color> -> black
- gradient. Abstracted this code out of the new `Crux' theme
-
- * sawfish/wm/gaol.jl (fully-safe-features): added
- sawfish.wm.util.recolor-image
-
-2001-01-18 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/hide-dialogs.jl: new module, hide dialog
- windows in groups that don't have the focus. Currently there's
- no way to enable this except by loading it by hand..
-
-2001-01-15 John Harper <jsh eazel com>
-
- * sawfish/wm/util/gtkrc.jl (gtkrc-handle-client-msg): removed
- leftover debugging output
-
-2001-01-08 John Harper <jsh eazel com>
-
- * sawfish/wm/util/gtkrc.jl (reload-gaol): new function, sets
- all the variables that are loaded into the gaol (since they
- don't update themselves automatically, doh!). Fixes bug 5505
-
- * sawfish/wm/commands/groups.jl (delete-group): added special
- case so that desktop windows don't get deleted
-
-2001-01-07 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/audio-events.jl (audio-events-alist): change
- "" doc string to nil (patch from Christian Marillat
- <marillat christian wanadoo fr>)
-
-2001-01-06 John Harper <jsh eazel com>
-
- * sawfish/wm/commands/groups.jl (delete-group): new command
-
- * sawfish/wm/keymaps.jl (close-button-keymap): bind
- `delete-group' to `S-Button1-Off'
-
-2001-01-05 John Harper <jsh eazel com>
-
- * version 0.35
-
-2001-01-05 John Harper <jsh eazel com>
-
- * sawfish/wm/state/shading.jl (shading-add-window): don't need
- to call shade-window, just set hide-client property when
- necessary
-
-2001-01-04 John Harper <jsh eazel com>
-
- * sawfish/wm/workspace.jl: don't include hide-client in the
- call to add-swapped-properties
-
- * sawfish/wm/state/shading.jl (shading-after-swap-in): added to
- the after-workspace-swap-in-hook, updates the hide-client
- property to match the shaded property and reframes the window
- if necessary
-
- * sawfish/wm/swapper.jl (workspace-swap-in): before exiting,
- run after-workspace-swap-in-hook with two args (W SPACE)
-
- [ Last three changes fix bug 5179 (shaded state is fixed for
- all workspaces) ]
-
- * sawfish/wm/state/transient.jl (focus-windows-when-mapped):
- defaults to t; changed doc string to reflect the earlier change
- in semantics
-
- * sawfish/wm/placement.jl (place-window-mode): set to
- `top-left' by default now
-
- * sawfish/wm/placement/top-left.jl (windows-around): ignore
- windows that have yet to be placed
-
- * sawfish/wm/focus.jl (focus-click): before exiting, reinstall
- the click-to-focus-map if the window isn't actually focused
-
-2001-01-03 John Harper <jsh eazel com>
-
- * sawfish/wm/state/transient.jl (transient-map-window): altered
- semantics of focus-windows-when-mapped option to only apply to
- non-transient windows (or transient windows whose parent is the
- root window)
-
- * sawfish/wm/user.jl: load sawfish.wm.state.wm-spec by default
- (instead of only if KDE2 is being used)
-
-2000-12-31 John Harper <jsh eazel com>
-
- * sawfish/wm/windows.jl (window-supports-wm-protocol-p): new
- function, saves consing up a list just to call memq on it
- (delete-window-safely): use the new function
-
- * sawfish/wm/util/ping.jl (window-supports-ping-p): use
- window-supports-wm-protocol-p
-
- * sawfish/wm/util/stacking.jl (maybe-raise-window,
- maybe-lower-window): new functions. These introduce two new
- WM_PROTOCOLS: _SAWFISH_WM_RAISE_WINDOW and
- _SAWFISH_WM_LOWER_WINDOW.
-
- These are similar to WM_TAKE_FOCUS, in that if the window
- supports the protocol, it's up to it whether or not it raises
- (or lowers) the window in question. These functions should only
- be used where the user hasn't explicitly requested the
- restacking
-
- An example usage is an application that doesn't want its window
- to be raised due to a button-press event that initiates a drag
- operation
-
- * sawfish/wm/ext/auto-raise.jl, sawfish/wm/util/stacking.jl:
- use the maybe-raise-window function instead of raise-window*
-
-2000-12-30 John Harper <jsh eazel com>
-
- * sawfish/wm/placement/off-center.jl: another new placement
- mode. This one places windows in the centre of the screen.
- However if doing so would fully cover another window, then try
- another position roughly in the centre
-
-2000-12-22 John Harper <jsh eazel com>
-
- * sawfish/wm/placement/smart.jl (sp-cost-components): removed
- the pointer and focus locality components by default
-
- * sawfish/wm/placement/top-left.jl: new placement mode,
- staggers from top-left, filling along the diagonal. Supports
- resizing windows to fit, but this is currently disabled
-
- * sawfish/wm/menus.jl (menus-include-shortcuts): this option
- defaults to nil
-
- * sawfish/wm/commands/grow-pack.jl (gp-avoid-windows): ignore
- iconified windows
-
-2000-12-20 John Harper <jsh eazel com>
-
- * sawfish/wm/state/transient.jl (transient-of-p,
- indirect-transient-of-p): added keyword arg ALLOW-ROOT which
- enables the (= transient-for ROOT) checking code
-
- (transient-map-window): pass `#:allow-root t' to transient-of-p
-
- * sawfish/wm/placement.jl (place-window-centered-on-parent): if
- no single known parent, check if the currently focused window
- is in the same group as the window being placed. If so, take it
- as the implicit parent while placing
-
- * sawfish/wm/state/transient.jl (transient-of-p): disabled the
- code that checks if (= transient-for ROOT), it causes havoc in
- too many places
-
-2000-12-19 John Harper <jsh eazel com>
-
- * sawfish/wm/state/iconify.jl (iconify-window,
- uniconify-window): support `group' and `transients'
- [un]iconification modes better. Don't use a recursive method,
- instead identify all the windows to be changed, then do
- everything in one go. For `transients' mode, only change state
- of shared transients if they [will] have no visible parents
- left
-
- * sawfish/wm/commands/groups.jl (iconify-group,
- uniconify-group, iconify-transient-group,
- uniconify-transient-group): use [un]iconify-window to implement
- these (by temporarily binding the necessary special variables)
-
- [ Last two changes fix #5252 ]
-
- * sawfish/wm/util/keymap.jl (where-is,
- make-memoizing-where-is): use substitute-wm-modifier to avoid
- showing W- in results
-
- * sawfish/wm/util/decode-events.jl (substitute-wm-modifier):
- new function, given an event, replaces the W- bit by whatever
- it's actually assigned to
-
- * sawfish/wm/state/gnome.jl (gnome-client-message-handler):
- handle a _WIN_HINTS client message type, format is similar to
- _WIN_STATE message
-
- * sawfish/wm/state/gnome.jl (gnome-window-class-hacks): removed
- the hardcoding of the `avoid' property for the panel. (George
- Lebl asked me to)
-
-2000-12-18 John Harper <jsh eazel com>
-
- * sawfish/wm/menus.jl (menus-include-shortcuts): new option,
- when set, include `shortcut' attributes in created menu
- descriptions. Adapted from Unai Uribarri <unaiur telecable es>
-
- * sawfish/wm/util/keymap.jl (make-memoizing-where-is): new
- function, when called repeatedly has better time complexity
- than multiple calls to where-is (since it builds a temporary
- hash table)
-
-2000-12-10 John Harper <jsh eazel com>
-
- * sawfish/wm/util/stacking.jl (raise-window*, lower-window*,
- raise-lower-window*): added doc strings
-
- * sawfish/wm/gaol.jl (safe-functions): added font-ascent and
- font-descent
-
-2000-12-09 John Harper <jsh eazel com>
-
- * sawfish/wm/util/display-wininfo.jl (event-handler): removed
- the code to fade iconified windows
-
- * sawfish/wm/commands/x-cycle.jl (cycle-warp-pointer): this is
- no longer in the `expert' user-level
-
-2000-12-08 John Harper <jsh eazel com>
-
- Random work to support KDE2 better:
-
- * sawfish/wm/user.jl: if there's a property on the root window
- matching `^_KDE_', load sawfish.wm.state.wm-spec module
-
- * sawfish/wm/state/wm-spec.jl: bug-fixes and hacks to make KDE2
- support a lot better
-
- * sawfish/wm/state/transient.jl (indirect-transient-of-p): test
- for windows that set WM_TRANSIENT_FOR to themselves! (broken
- KDE apps)
-
-2000-12-06 John Harper <jsh eazel com>
-
- * sawfish/wm/user.jl: use safe-load when loading site-init and
- rep-defaults files
-
- * sawfish/wm/commands/viewport-extras.jl: new module, includes
- some viewport navigation commands sent to the mailing list by
- Dams Nadé <anvil amin unice fr>
-
- * sawfish/wm/util/groups.jl (persistent-group-ids): use `nil'
- instead of `""' to denote a null doc string
- * sawfish/wm/workspace.jl (workspace-names): ditto
-
- * sawfish/wm/state/iconify.jl (window-iconifiable-p): new
- function, the old logic plus it checks for `never-iconify'
- property
-
- * sawfish/wm/state/maximize.jl (window-maximizable-p): check
- for `never-maximize' property
-
- * sawfish/wm/state/wm-spec.jl, sawfish/wm/state/gnome.jl: set
- never-iconify and never-maximize properties of panel/gmc-icon
- windows
-
- * sawfish/wm/menus.jl (window-ops-menu): set `insensitive'
- properties of iconify and maximize menus when appropriate
-
-2000-12-04 John Harper <jsh eazel com>
-
- * sawfish/wm/frames.jl (frame-style-directory): check if the
- directory exists before returning the result. Fixes #4902
-
- * version 0.34
-
- * sawfish/wm/keymaps.jl (wm-modifier-value): moved to the
- `novice' user-level
-
-2000-11-28 John Harper <jsh eazel com>
-
- * sawfish/wm/custom-defaults.jl: changed some bindings to use
- `W-' modifier
-
- * sawfish/wm/util/decode-events.jl (decode-modifier,
- encode-modifier): new functions
- (should-grab-button-event-p): groks the `W-' modifier
-
- * sawfish/wm/ext/match-window.jl (match-window-properties):
- removed ignore-when-cycling property (didn't I already do
- this?)
-
- * sawfish/wm/keymaps.jl: changed default bindings to use the
- new `W-' modifier, the customizable `WM' modifier
-
- * sawfish/wm/keymaps.jl (wm-modifier-value): new option. Has
- type `modifier-list'. Added [de]serialization for this type
-
- * sawfish/wm/customize.jl (customize-read-user-file): fixed for
- new format of custom-default-file
-
- * sawfish/wm/util/ping.jl (ping-window): fixed bug whereby
- CALLBACK would get called twice if the ping is ponged before
- the timer fires
-
- * sawfish/wm/state/gnome.jl (gnome-window-class-hacks): broke
- out the WM_CLASS based hacks for parts of the GNOME desktop.
- Also made panel windows and gmc icons unplacable (otherwise, if
- the ignore-program-position option is set the windows get
- placed by the wm, even though they really shouldn't be)
-
- * sawfish/wm/state/wm-spec.jl: added the unplacable panel hack
- here also
-
-2000-11-27 John Harper <jsh eazel com>
-
- * sawfish/wm/state/wm-spec.jl: removed the evil hardcoded list
- of properties in update-client-state by a `get' method in each
- state function. Also added a PSEUDO keyword arg to
- define-wm-spec-window-state for properties that should not be
- set in the _NET_WM_STATE property
-
- * sawfish/wm/ext/window-history.jl: save and restore
- `maximized' state of windows. Fixes #4790
-
- * sawfish/wm/ext/window-history.jl (window-history-apply): when
- setting properties, check for `window-history-setter'
- properties - a function to call to set the property
-
- * sawfish/wm/ext/match-window.jl: added `maximized' pseudo
- property. Fixes #4808
-
- * sawfish/wm/util/display-wininfo.jl: new module, exports a
- single function to display a message with some user-relevant
- details of the window (currently icon and name)
-
- * sawfish/wm/commands/x-cycle.jl (cycle-show-window-icons): new
- option
- (cycle-display-message): if cycle-show-window-icons is set,
- use display-wininfo function
- (remove-message): new function
-
- The above two changes from a patch by Unai Uribarri
- <unaiur telecable es>, with minor changes. Fixes #4265
-
- * sawfish/wm/frames.jl, sawfish/wm/workspace.jl,
- sawfish/wm/ext/audio-events.jl, sawfish/wm/util/groups.jl:
- changed flags of some widgets
-
- * sawfish/wm/swapper.jl, sawfish/wm/stacking.jl,
- sawfish/wm/menus.jl, sawfish/wm/commands/x-cycle.jl,
- sawfish/wm/ext/tooltips.jl, sawfish/wm/ext/match-window.jl,
- sawfish/wm/ext/edge-flip.jl, sawfish/wm/gnome/match-window.jl,
- sawfish/wm/placement/smart.jl, sawfish/wm/state/maximize.jl,
- sawfish/wm/theming/make-theme.jl, sawfish/wm/util/gtkrc.jl:
- Added some `(unused ...)' declarations to turn off some
- meaningless warnings (needs a recent cvs librep for this to
- actually work)
-
-2000-11-26 John Harper <jsh eazel com>
-
- * sawfish/wm/util/ping.jl: new module, implements the
- _NET_WM_PING protocol of the new window manager spec. Exports
- functions `window-supports-ping-p' and `ping-window'. (This
- code is totally untested)
-
- * sawfish/wm/state/wm-spec.jl: added code to monitor
- _NET_WM_ICON_GEOMETRY; when present the `icon-position' window
- property is set from its value. Fixes #4245
-
-2000-11-21 John Harper <jsh eazel com>
-
- * sawfish/wm/focus.jl: now that unfocusable windows don't
- contain the click-to-focus keymap, use the state-change-hook to
- be notified when the never-focus state changes
-
- * sawfish/wm/workspace.jl, sawfish/wm/ext/audio-events.jl,
- sawfish/wm/util/groups.jl: put titles of some list widgets into
- the actual title of the list, not above the list widget
-
- * sawfish/wm/ext/audio-events.jl (audio-events-alist): now in
- `intermediate' user-level
-
-2000-11-20 John Harper <jsh eazel com>
-
- * sawfish/wm/stacking.jl (raise-window, lower-window,
- stack-window-above, stack-window-below, restack-window,
- window-on-top-p): use stacking-order instead of
- stacked-mapping-order. Otherwise strange things can happen when
- unmapped windows are present (e.g. fixes #4824 where raising a
- nautilus window with (eq user-raise-type 'groups) also raises
- the desktop window..)
-
- * sawfish/wm/viewport.jl (move-window-to-current-viewport,
- set-window-viewport): don't move sticky-viewport windows
-
- * sawfish/wm/animation/outline.jl (make-outline-animator): new
- exported function. Fixes #4816
-
- * sawfish/wm/focus.jl: removed all code to support the
- focus-click-through option on non-client windows (mfleming
- convinced me it was a bad idea, and it fixes a hard bug)
-
- * sawfish/wm/focus.jl (focus-within-click-event): new fluid,
- set to t when calling a command from within the click-to-focus
- event
-
- * sawfish/wm/commands/raise-commands.jl (replay-pointer):
- function to do the replaying, dependent on whether or not we're
- in the click-to-focus event or not
-
- * sawfish/wm/state/wm-spec.jl: support SKIP_PAGER state (linked
- to the `window-list-skip' property)
-
- (honour-client-state): set `no-history' property of panels
-
- (honour-client-state): fixed typo of _NET_WM_WINDOW_STATE
- instead of _NET_WM_STATE
-
- (update-workspace-hints): for sticky windows, set
- _NET_WM_DESKTOP to #xffffffff instead of deleting it
-
- (define-wm-spec-window-state): records the names of all
- registered states in `supported-states' variable
- (supported-state-p): new function
-
- (client-message-handler): deleted _NET_INSERT_DESKTOP and
- _NET_DELETE_DESKTOP messages, they're not in the spec anymore?
- Fixed paren bug in _NET_ACTIVE_WINDOW message handler
-
-2000-11-16 John Harper <jsh eazel com>
-
- * sawfish/wm/state/gnome.jl (gnome-honour-client-state): set
- the `no-history' property of panel windows
-
- * sawfish/wm/custom.jl: new defcustom option `:widget-flags'
-
- * sawfish/wm/util/nokogiri.jl (nokogiri-report-slot): pass
- widget-flags across
-
- * sawfish/wm/workspace.jl, sawfish/wm/frames.jl,
- sawfish/wm/ext/audio-events.jl, sawfish/wm/util/groups.jl:
- marked some list options with `(expand framed)' flags
-
- * sawfish/wm/state/mwm.jl (mwm-add-window): support the
- min/max/close options of the mwm function hints
-
- * sawfish/wm/state/iconify.jl: don't add minimize to the
- toggles menu
-
- * sawfish/wm/menus.jl: simplified the window-ops-menu, just
- have minimize/maximize/close at the top of the menu, with other
- stuff below
-
- * sawfish/wm/menus.jl (menu-preprocessor): labels can now be
- functions, they will be called (with any menu-args) to get the
- actual string
-
- * sawfish/wm/frames.jl (after-setting-default-frame): used as
- :after-set function of default-frame-style. Checks that the new
- frame style is available, signals an error otherwise
-
- * sawfish/wm/custom.jl (define-custom-setter, custom-setter):
- store these in a dedicated hash table
-
- (custom-set-symbol): function to catch exceptions while
- committing custom changes, then revert back to the old value if
- necessary (resignalling the exception)
-
- (custom-set-variable, custom-set-typed-variable): use
- custom-set-symbol instead of custom-set directly
-
- (custom-load): new function, parses and executes a custom file
- by hand
- (custom-eval): don't just call eval, deref the function and
- apply it to the arguments
-
- (custom-load-user-file): use custom-load instead of load
-
- * sawfish/wm.jl: use sawfish-locale-directory when calling
- bindtextdomain
-
- * sawfish/wm/misc.jl (call-with-error-handler): new function
-
- * sawfish/wm/windows.jl: fix typo in name of
- uniquify-window-name command
-
-2000-11-15 John Harper <jsh eazel com>
-
- * sawfish/wm/menus.jl (window-ops-menu): renamed the `Delete'
- item as `Close'
-
- * sawfish/wm/menus.jl (window-ops-menu): deleted `Destroy' item
-
- * sawfish/wm/ext/window-history.jl (window-history-clear): new
- function and command
-
- * sawfish/wm/ext/window-history.jl
- (window-history-ignore-transients): new option, disables auto
- history saving for transient windows (t by default)
-
- * sawfish/wm/placement/smart.jl (sp-cost:overlap): changed the
- function calculating this to (exp (- (/ overlap (*
- (screen-width) (screen-height))))). Patch from Unai Uribarri
- <unaiur telecable es>
-
- * sawfish/wm/keymaps.jl (window-keymap): deleted C-M-Left and
- C-M-Right bindings (send window to previous/next workspace).
- They can be confusing when hit by mistake
-
- * sawfish/wm/ext/error-handler.jl: expanded this to stash all
- errors in a ring buffer. Functions `retrieve-errors' and
- `display-errors' to access this buffer. Also added an option
- error-destination controlling where error messages are
- displayed (stderr, screen, /dev/null)
-
- * sawfish/wm/defaults.jl: require sawfish.wm.ext.error-handler
-
- * sawfish/wm/util/window-order.jl (on-viewport-change): don't
- call window-order-focus-most-recent if using the `enter-exit'
- focus mode
-
-2000-11-14 John Harper <jsh eazel com>
-
- * sawfish/wm/state/maximize.jl (unmaximize-window-1): added an
- optional arg BEFORE, a thunk to call immediately before doing
- the resize
- (unmaximize-window): use the new BEFORE param to ensure that
- the window's properties get updated before it's resized. This
- way the theme will get the correct values of window-maximized-p
- when it rebuilds the frame
-
- * sawfish/wm/util/window-order.jl (on-viewport-change):
- reinstated this function; this time it removes ordering
- information from all viewport-sticky windows in the current
- workspace/viewport pair
-
- * sawfish/wm/commands/grow-pack.jl (gp-avoid-windows): ignore
- unmapped windows
-
-2000-11-13 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/match-window.jl (match-window-properties):
- deleted obsolete ignore-when-cycling property
-
- * version 0.33.1
-
- * sawfish/wm/state/gnome.jl (gnome-honour-client-state): go
- back to setting `avoid' manually for panel windows
-
-2000-11-13 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/edge-flip.jl: import rep.io.timers
-
- * sawfish/wm/state/transient.jl (transient-map-window): fix
- stupid typo in `cond' statement breaking focus-on-map option
- (#4698). Patch from Unai Uribarri Rodríguez
- <unaiur telecable es>
-
-2000-11-12 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/beos-window-menu.jl: fixed the code that was
- supposed to add `unused' windows. It now also includes
- iconified windows (even if they wouldn't normally be in the
- menu)
-
- * sawfish/wm/ext/beos-window-menu.jl (make-label): abbreviate
- menu items the default amount (so that they match the parent
- items if they get moved up a level)
-
-2000-11-10 John Harper <jsh eazel com>
-
- * sawfish/wm/focus.jl (focus-push-map, focus-pop-map): set the
- ignore-fp-keymap property of windows to t while they have the
- click-to-focus keymap. Fixes #4233
-
- * sawfish/wm/focus.jl: add a function to the
- after-initialization-hook to call focus-add-window on all
- windows (map-notify-hook doesn't get called for these windows)
-
-2000-11-08 John Harper <jsh eazel com>
-
- * version 0.33
-
-2000-11-08 John Harper <jsh eazel com>
-
- * sawfish/wm/state/transient.jl (transient-map-window): fix
- error when no window is focused
-
-2000-11-06 John Harper <jsh eazel com>
-
- * sawfish/wm/focus.jl: add focus-add-window to the
- map-notify-hook not after-add-window-hook. When checking for
- the `click-to-focus windows unfocusable' bug, only check mapped
- windows, and use focus-push-map to recover, not custom hackery
-
- * sawfish/wm/state/transient.jl (transient-map-window): cleaned
- up control flow (removed unnecessary variable), and using
- transient-of-p instead of checking manually (this means that
- the transient-for = root-window convention is supported)
-
-2000-11-03 John Harper <jsh eazel com>
-
- * sawfish/wm/state/maximize.jl: immediately before exiting
- unmaximize all maximized windows. But be careful not to reflect
- this change in their properties (either wm-local or in the X
- server). Fixes #4336
-
- * sawfish/wm/state/wm-spec.jl (wm-spec-init): changed
- _NET_SUPPORTING_WM_CHECK properties to type 'WINDOW. Also set
- _NET_WM_NAME property on the identifying client window
-
-2000-11-02 John Harper <jsh eazel com>
-
- * sawfish/wm/ext/auto-raise.jl (rw-on-focus, rw-out-focus):
- only do anything if (eq MODE 'normal); fixes #15526 in Red Hat
- bugzilla. Not totally sure that this doesn't break anything,
- but it's easily revertable if it does..
-
- * sawfish/wm/frames.jl (frame-class-removed-p): new function
-
- * sawfish/wm/state/maximize.jl (check-if-maximizable,
- property-notify): new functions, added to add-window-hook and
- property-notify-hook respectively. When WM_NORMAL_HINTS changes
- in any way, check if the window is maximizable or not; then
- hide (or reshow) the maximize button as necessary. Fixes #4260
-
-2000-11-01 John Harper <jsh eazel com>
-
- * sawfish/wm.jl: load sawfish.wm.state.maximize at startup,
- since it adds things to hooks
-
- * sawfish/wm/ext/edge-flip.jl (before-edge-flip-hook,
- after-edge-flip-hook): new hooks
-
- (before-flip, after-flip, edge-flip-while-moving): edge
- flipping while dragging windows now obeys the edge-flip-delay
- setting
-
-2000-10-31 John Harper <jsh eazel com>
-
- * sawfish/wm/state/maximize.jl: added a function to the
- after-window-hook that checks for `queued-{vertical,horizontal}-
- maximize' properties on windows. When found the window is
- maximized. This gets around the problem of not being able to
- maximize a window before it's been framed
-
- * sawfish/wm/state/wm-spec.jl, sawfish/wm/state/gnome.jl: set
- queued maximize properties if a newly-created window needs to
- be maximize
-
- * sawfish/wm/state/gnome.jl: now understands
- WIN_HINTS_DO_NOT_COVER flag to be the same as the `avoid'
- property
-
-2000-10-30 John Harper <jsh eazel com>
-
- * sawfish/wm/theming/make-theme-preview.jl: add the function
- that watches for preview windows to after-add-window-hook not
- before-add-window-hook to make sure that any given frame sticks
-
- * sawfish/wm/state/transient.jl (transient-unmap-window): when
- unmapping a transient, before deciding to focus on its parent,
- look for the most recently focused window in the same group.
- This may well be more intuitive in some circumstances
-
- * sawfish/wm/util/window-order.jl (window-order-most-recent):
- new keyword arg WINDOWS, a list of windows to restrict the
- returned value to
-
-2000-10-29 John Harper <jsh eazel com>
-
- * sawfish/wm/placement/smart.jl (sp-make-grid): don't add root
- window points if they're already in the list; add (1-
- (screen-width)) etc, so that these points aren't chopped
-
- (sp-get-windows): new optional parameter PRED, a predicate
- function to use to select the windows to check for overlap.
- Also included a fix from David Bustos <bustos its caltech edu>
- to fix a typo in the window-mapped-p check
-
- (sp-do-placement): new keyword arg #:window-filter, passed to
- sp-get-windows
-
- (place-window-best-fit-group): new placement mode
- `best-fit-group'. Same as `best-fit', except that windows not
- in the same group as the window being placed aren't included in
- the overlap calculation (useful for transients)
-
-2000-10-28 John Harper <jsh eazel com>
-
- * sawfish/wm/custom-defaults.jl: added some more settings;
- hopefully they give a better default configuration..
-
- * sawfish/wm/custom.jl: added command line option
- `--custom-file' to set the value of custom-user-file
-
-2000-10-26 John Harper <jsh eazel com>
-
- * sawfish/wm/workspace.jl, sawfish/wm/commands/describe.jl,
- sawfish/wm/ext/3d-hack.jl: made some commands #:user-level
- expert
-
- * sawfish/wm/util/nokogiri.jl (nokogiri-report-commands): fixed
- and/or typo
-
- * sawfish/wm/util/groups.jl (persistent-group-ids): changed
- type of this option from `(list string)' to `(list symbol)' as
- it should have been
-
-2000-10-25 John Harper <jsh eazel com>
-
- * sawfish/wm/focus.jl (focus-click): the logic to ungrab the
- pointer in non-click-through mode was reversed (i.e. broken)
-
- * sawfish/wm/workspace.jl (ws-add-window): set swapped-in
- property of sticky windows, otherwise they don't get swapped
- out the first time a new workspace is selected
-
-2000-10-24 John Harper <jsh eazel com>
-
- * sawfish/wm/swapper.jl (workspace-swap-out,
- workspace-swap-in): don't swap non-plist attributes of sticky
- windows (this means that sticky geometry is fixed, probably as
- it should be)
-
- * sawfish/wm/util/window-order.jl: made the `order' property
- workspace-local once more (there's a remark earlier in this
- ChangeLog about that being non-intuitive, but it's better that
- way for sticky windows)
- (window-order-pop-low-sticky-windows): removed this hack, it's
- not required now order is workspace-local
-
- * sawfish/wm/workspace.jl (select-workspace): swap-in data for
- all sticky windows as well as normal windows in the new
- workspace
-
- * sawfish/wm/ext/match-window.jl: fixed :require fields to use
- sawfish.wm.ext.match-window instead of just match-window
-
- * sawfish/wm/focus.jl (focus-enter-fun, focus-leave-fun):
- accept an extra MODE parameter
- (enter-exit mode): pointer-leave events only cause focus to be
- jettisoned if (eq MODE 'normal)
-
- * sawfish/wm/focus.jl (focus-click): call forget-button-press
- after either replaying or ungrabbing pointer events (otherwise
- following events are marked as click2, which won't trigger the
- bindings in the click-to-focus-map)
-
- * sawfish/wm/state/gnome.jl (gnome-honour-client-state):
- magically set never-focus property of gmc-desktop-icon windows
-
-2000-10-23 John Harper <jsh eazel com>
-
- * sawfish/wm/focus.jl: added a hack to the idle-hook to check
- that unfocused click-to-focus windows have the correct keymap
- installed (it would be better to fix the cause not the
- symptoms, but until then..)
-
-2000-10-22 John Harper <jsh eazel com>
-
- * sawfish/wm/placement.jl (place-window-interactively): after
- calling accept-x-input, check that the window wasn't destroyed
- before placing the window.. (patch from merlin)
-
- * sawfish/wm/state/maximize.jl (maximize-find-workarea): new
- parameter #:head
-
- Integrated a patch from Geoff Reedy <vader21 imsa edu> to
- support Xinerama better
-
- * sawfish/wm/commands/x-cycle.jl (cycle-display-message): put
- the message on the head associated with the window
-
- * sawfish/wm/placement.jl (place-window-under-pointer): centre
- on the head under the pointer, not the current head
-
- * sawfish/wm/misc.jl (pointer-head): new function, returns the
- head that the pointer is on
-
-2000-10-20 John Harper <jsh eazel com>
-
- * sawfish/wm/util/nokogiri.jl (nokogiri-report-commands): use
- keys to pass back type and user-level of commands that have
- them
-
- * sawfish/wm/ext/shade-hover.jl (shade-hover-before): check for
- windowp before window-get'ing
-
- * sawfish/wm/keymaps.jl: use user-customizable raise commands
- by default
-
- * sawfish/wm/commands/x-cycle.jl,
- sawfish/wm/commands/move-resize.jl,
- sawfish/wm/commands/grow-pack.jl, sawfish/wm/ext/auto-raise.jl,
- sawfish/wm/state/shading.jl, sawfish/wm/state/maximize.jl,
- sawfish/wm/state/configure.jl,
- sawfish/wm/util/display-window.jl: use raise-window* instead of
- raise-window
-
- * sawfish/wm/util/stacking.jl (raise-window*, lower-window*,
- raise-lower-window*): new functions, they choose a raise mode
- based on the customization option user-raise-type
-
- * sawfish/wm/stacking.jl, sawfish/wm/commands/groups.jl,
- sawfish/wm/state/transient.jl: put raise/lower commands at
- 'expert level
-
- * sawfish/wm/commands/raise-commands.jl: new command
- raise-and-pass-through-click, uses user's preferred raise mode
-
- * sawfish/wm/stacking.jl: renamed raise-window, lower-window,
- and raise-lower-window as raise-single-window, etc..
-
- * sawfish/wm/commands.jl (apply-command-keys): abstracted
- command #!key args here. New parameter #:user-level
- (command-type, command-user-level): new functions
-
-2000-10-19 John Harper <jsh eazel com>
-
- * version 0.32
-
- * sawfish/wm/windows.jl (mark-window-as-desktop): new function
- * sawfish/wm/state/gnome.jl (gnome-honour-client-state): use
- mark-window-as-desktop
-
- * sawfish/wm/commands/x-cycle.jl: included patch from merlin
- for a different reverse-cycling implementation, with minor
- cleanups
-
-2000-10-18 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/windows.jl: added window-urgent-p to the gaol
-
- * sawfish/wm/focus.jl (focus-click): in non-click-through mode,
- ungrab the pointer so that the release event can't trigger
- window decorations
-
- * sawfish/wm/ext/match-window.jl (match-window-properties):
- `dimensions' property was called `size' by mistake
-
-2000-10-14 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/placement/smart.jl: export the various sp-cost:
- functions
-
-2000-10-12 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/ext/shade-hover.jl: miscellaneous improvements
- inspired by a patch to the mailing list from Eli Barzilay
- <eli barzilay org>. Unshading a hovered window doesn't flicker,
- reshade the window if it loses focus
-
- * sawfish/wm/commands.jl (call-command): allow pre-command-hook
- to modify this-command and current-prefix-arg. If it sets
- this-command to false then the command is ignored
-
-2000-10-11 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/stacking.jl (apply-group-order): swap do for let
-
- * sawfish/wm/commands/x-cycle.jl (cycle-prefix): match `Foo -
- ...' as well as `Foo: ...'
-
-2000-10-09 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/stacking.jl (raise-windows, lower-windows):
- rewritten to be more intelligent. These now search for the
- required stacking order of the windows then restack the windows
- in a single pass such that the minimum number of expose events
- are generated on the windows.
-
- [ Rob Hodges <s323140 student uq edu au> found the algorithm
- and made the initial implementation of raise-windows. I
- translated it to tail-recursive iteration and implemented
- lower-windows along the same lines ]
-
- * sawfish/wm/state/transient.jl (transient-of-p): only apply
- the `(= WM_TRANSIENT_FOR Root) => transient for whole group'
- rule to non-transient windows
- (transient-children): new function
-
- * sawfish/wm/commands/x-cycle.jl: added ::doc: style embedded
- doc strings for the cycle commands
-
- * sawfish/wm/state/maximize.jl (window-maximizable-p,
- maximize-truncate-dims): fixed some bugs introduced by quoted
- nil no longer being boolean false
-
- * sawfish/wm/commands/x-cycle.jl (cycle-reverse-event): deleted
- (define-cycle-command): new function, used to create a pair of
- commands for cycling backwards and forwards through a given
- list of windows
- (cycle-begin): renamed from cycle-windows; search global-keymap
- for bindings of the command that cycles in the opposite
- direction to the currently executing command
-
- * sawfish/wm/state/gnome.jl (gnome-honour-client-state):
- SKIP_FOCUS no longer sets never-focus and ignored properties,
- instead it just sets cycle-skip. SKIP_FOCUS defining whether
- the window is focusable or not wasn't very clever, WM_HINTS
- defines that
-
- Added a `window-list-skip' property to allow windows to be
- taken out of the windows menu
-
- * sawfish/wm/state/ignored.jl (toggle-window-list-skip): new
- function / command
-
- * sawfish/wm/state/gnome.jl (gnome-honour-client-state):
- if SKIP_WINLIST set, then set window-list-skip property
- (gnome-set-client-hints): new function, updates _WIN_HINTS when
- the user changes something. Currently just maps
- window-list-skip to SKIP_WINLIST
-
- * sawfish/wm/gnome/match-window.jl: no longer handles
- SKIP_WINLIST, that's now tied to the window-list-skip property
-
- * sawfish/wm/ext/window-history.jl (window-history-states):
- added window-list-skip property
-
- * sawfish/wm/ext/old-window-menu.jl,
- sawfish/wm/ext/beos-window-menu.jl: check for window-list-skip
- property
-
- * sawfish/wm/ext/match-window.jl (match-window-properties):
- added cycle-skip and window-list-skip properties
-
- * sawfish/wm/commands/gnome.jl: implemented skip-winlist
- commands in terms of window-list-skip property and
- toggle-window-list-skip function
-
-2000-10-08 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/user.jl: catch and print errors while calling
- custom-load-user-file
-
- * sawfish/wm/ext/match-window.jl (match-window): ensure that
- each property is a symbol before calling get-prop
-
- * sawfish/wm/ext/auto-raise.jl (rw-on-focus): minimum timeout
- is now one millisecond, not zero
-
- * sawfish/wm/ext/auto-raise.jl (rw-on-focus): in the timer
- callback, if disable-auto-raise is set, reset the timer for
- another try later
-
-2000-10-07 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/ext/beos-window-menu.jl (group-name): only look
- for window-class of an integer id if it's positive
-
-2000-10-05 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/windows.jl (window-in-cycle-p): use
- window-really-wants-input-p instead of just checking
- 'never-focus property
-
- * sawfish/wm/focus.jl (focus-click): on exit, if the window
- isn't focused push the click-to-focus-map back onto the window
-
- * sawfish/wm/windows.jl (ignore-window-input-hint): defaults to
- false now that window-accepts-input-p defaults to true if no
- WM_HINTS property
-
-2000-10-03 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/user.jl: fix typo when loading the `defaults' file
- (patch from Ronald Wahl
- <ronald wahl informatik tu-chemnitz de>)
-
- * sawfish/wm/viewport.jl: fix command spec's of move-window-foo
- commands (patch from Yoshiki Hayashi <yoshiki xemacs org>)
-
-2000-09-29 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/state/wm-spec.jl: fixed some minor bugs
-
- (wm-spec-honour-client-state): treat _NET_WM_WINDOW_TYPE as a
- vector of atoms, the first atom we have a type definition for
- is the one we use
-
- (define-wm-spec-window-type, define-wm-spec-window-type): new
- functions
-
-2000-09-26 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/commands/x-cycle.jl: don't pass EVENT parameter
- between commands. Export cycle-next function
-
- * sawfish/wm/commands/x-cycle.jl: the reverse key is now used
- to cycle one step `backwards'. The cycle-windows function now
- has a keyword arg STEP defining the direction (and magnitude)
- of cycle steps
-
- * sawfish/wm/util/decode-events.jl (modifier-keysym-p): new
- function
-
- * sawfish/wm/commands/x-cycle.jl (cycle-windows): add the
- modifiers of the invoking event to the cycle-reverse-event when
- creating its binding
-
- * sawfish/wm/util/decode-events.jl (decode-event): use a `do'
- statement instead of while and setq
-
-2000-09-25 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/commands/x-cycle.jl (cycle-reverse-event): new
- option, the name of the event that causes cycling to reverse
- direction. (My rationale is that this is less fiddly to use
- than, e.g., making M-S-TAB go backwards, and also is cleaner to
- implement)
-
- * sawfish/wm/misc.jl (current-head): fall back to checking the
- pointer position if no head is found for the window
-
- * sawfish/wm/windows.jl, sawfish/wm/frames.jl,
- sawfish/wm/ext/shade-hover.jl: added some :tooltip's
-
- * sawfish/wm/custom.jl (defcustom): new keyword `:tooltip
- STRING'. Embed it into the doc string (following a `\n\n'
- marker)
-
-2000-09-23 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/ext/3d-hack.jl: export 3d-make-cube and
- 3d-make-saw
-
-2000-09-22 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/gnome/integration.jl (gnome-use-capplet): fix typo
- (patch from Christian Marillat <marillat christian wanadoo fr>)
-
-2000-09-20 John Harper <john dcs warwick ac uk>
-
- * version 0.31
-
-2000-09-19 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/user.jl: set *user-structure* to 'user
- * sawfish/wm.jl: set *user-structure* (temporarily) to
- 'sawfish.wm, don't set *root-structure* (it's been removed)
-
- * sawfish/wm/util/window-order.jl (on-viewport-change): use the
- same hack for sticky windows used when changing workspaces
-
-2000-09-17 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/ext/3d-hack.jl (3d-hack): check if current-event
- returns something before passing it to decode-event
-
- * sawfish/wm/focus.jl (focus-click): only try to pass through
- the click (or whatever) if current-event returns something
-
-2000-09-14 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/state/ignored.jl (toggle-window-cycle-skip): new
- command, also added to the toggle menu
-
- * sawfish/wm/ext/window-history.jl,
- sawfish/wm/ext/match-window.jl: include the cycle-skip property
-
- * sawfish/wm/commands/cycle.jl, sawfish/wm/commands/x-cycle.jl:
- use window-in-cycle-p to decide which windows to include
-
- * sawfish/wm/windows.jl (window-in-cycle-p): new function
-
- [ adapted from a patch from Dave Dribin <yhdrib yahoo com> ]
-
-2000-09-13 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/ext/tooltips.jl (display-tooltip): the TEXT
- argument may now be a function (which should produce a string
- when called)
-
- * sawfish/wm/ext/tooltips.jl (display-tooltip-after-delay): new
- exported function
-
-2000-09-11 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/workspace.jl, sawfish/wm/windows.jl,
- sawfish/wm/user.jl, sawfish/wm/server.jl, sawfish/wm/misc.jl,
- sawfish/wm/menus.jl, sawfish/wm/gaol.jl, sawfish/wm/frames.jl,
- sawfish/wm/customize.jl, sawfish/wm/commands.jl:
- * sawfish/wm/commands/xterm.jl,
- sawfish/wm/commands/viewport-linear.jl,
- sawfish/wm/commands/move-resize.jl,
- sawfish/wm/commands/help.jl, sawfish/wm/commands/describe.jl:
- * sawfish/wm/ext/window-history.jl, sawfish/wm/ext/tooltips.jl,
- sawfish/wm/ext/match-window.jl,
- sawfish/wm/ext/error-handler.jl, sawfish/wm/ext/3d-hack.jl:
- * sawfish/wm/gnome/menus.jl:
- * sawfish/wm/session/save.jl, sawfish/wm/session/load.jl,
- sawfish/wm/session/init.jl:
- * sawfish/wm/util/with-output.jl, sawfish/wm/util/prompt.jl,
- sawfish/wm/util/prompt-wm.jl, sawfish/wm/util/nokogiri.jl,
- sawfish/wm/util/keymap.jl, sawfish/wm/util/gtkrc.jl,
- sawfish/wm/util/compat.jl:
-
- No need to explicitly open `rep.io.streams' anymore
-
-2000-09-10 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/util/gtkrc.jl (gtkrc-get-style): ungrab the X
- server before running `gtk-style'. Otherwise it may not be able
- to connect
-
- * sawfish/wm/misc.jl (call-with-server-ungrabbed): new function
-
-2000-09-08 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm.jl:
-
- * sawfish/wm/workspace.jl, sawfish/wm/windows.jl,
- sawfish/wm/window-anim.jl, sawfish/wm/viewport.jl,
- sawfish/wm/user.jl, sawfish/wm/swapper.jl,
- sawfish/wm/stacking.jl, sawfish/wm/server.jl,
- sawfish/wm/placement.jl, sawfish/wm/misc.jl,
- sawfish/wm/menus.jl, sawfish/wm/keymaps.jl, sawfish/wm/gaol.jl,
- sawfish/wm/frames.jl, sawfish/wm/focus.jl,
- sawfish/wm/customize.jl, sawfish/wm/custom.jl,
- sawfish/wm/commands.jl:
-
- * sawfish/wm/commands/xterm.jl, sawfish/wm/commands/x-cycle.jl,
- sawfish/wm/commands/viewport-linear.jl,
- sawfish/wm/commands/move-resize.jl,
- sawfish/wm/commands/help.jl, sawfish/wm/commands/gnome.jl,
- sawfish/wm/commands/describe.jl:
-
- * sawfish/wm/ext/window-history.jl, sawfish/wm/ext/tooltips.jl,
- sawfish/wm/ext/shade-hover.jl, sawfish/wm/ext/match-window.jl,
- sawfish/wm/ext/error-handler.jl, sawfish/wm/ext/edge-flip.jl,
- sawfish/wm/ext/auto-raise.jl, sawfish/wm/ext/audio-events.jl,
- sawfish/wm/ext/3d-hack.jl:
-
- * sawfish/wm/gnome/menus.jl:
-
- * sawfish/wm/session/save.jl, sawfish/wm/session/load.jl,
- sawfish/wm/session/init.jl:
-
- * sawfish/wm/state/wm-spec.jl, sawfish/wm/state/transient.jl,
- sawfish/wm/state/shading.jl, sawfish/wm/state/open-look.jl,
- sawfish/wm/state/mwm.jl, sawfish/wm/state/maximize.jl,
- sawfish/wm/state/ignored.jl, sawfish/wm/state/iconify.jl,
- sawfish/wm/state/gnome.jl, sawfish/wm/state/configure.jl:
-
- * sawfish/wm/theming/make-theme.jl,
- sawfish/wm/theming/make-theme-preview.jl:
-
- * sawfish/wm/util/with-output.jl,
- sawfish/wm/util/window-order.jl, sawfish/wm/util/prompt.jl,
- sawfish/wm/util/prompt-wm.jl, sawfish/wm/util/prompt-extras.jl,
- sawfish/wm/util/play-audio.jl, sawfish/wm/util/nokogiri.jl,
- sawfish/wm/util/keymap.jl, sawfish/wm/util/gtkrc.jl,
- sawfish/wm/util/groups.jl, sawfish/wm/util/compat.jl:
-
- Open the necessary modules that aren't included in `rep'
- structure anymore (rep.regexp, rep.system, rep.io.streams,
- rep.io.files, rep.io.file-handlers)
-
-2000-09-07 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/user.jl (safe-load): convenience function to catch
- errors from `load'. Used when loading user scripts
-
- * sawfish/wm/ext/old-window-menu.jl (old-window-menu): fixed
- the `do' iteration parameters
-
- * sawfish/wm/customize.jl, sawfish/wm/custom.jl: added module
- aliases
-
- * sawfish/wm/menus.jl:
- * sawfish/wm/state/iconify.jl: moved the `Iconify' window menu
- item to the `Toggle' submenu, and called it `Minimized'
-
- * sawfish/wm/workspace.jl, sawfish/wm/frames.jl:
- * sawfish/wm/ext/old-window-menu.jl,
- sawfish/wm/ext/beos-window-menu.jl:
- * sawfish/wm/util/groups.jl: create radio-button menu-items
- where appropriate
-
- * sawfish/wm/ext/beos-window-menu.jl
- (beos-window-menu-simplifies): new option, when t singleton
- submenus are lifted to replace their parent item
-
- * sawfish/wm/menus.jl (add-window-menu-toggle): new function,
- adds items to the `Toggle' submenu of the window-ops-menu
- (menu-preprocessor): menu items may be dotted to an alist of
- options (sawfish-menu currently supports `(check . STATE)')
- (menu-args): fluid providing arg-list for functions called
- while preprocessing menus
- (popup-window-menu): now takes a window as its sole arg, then
- sets menu-args to the singleton list containing this value
-
- * sawfish/wm/frames.jl, workspace.jl:
- * sawfish/wm/ext/old-window-menu.jl,
- sawfish/wm/ext/beos-window-menu.jl:
- * sawfish/wm/util/groups.jl: use check-items where appropriate
- when creating menus
-
- * sawfish/wm/state/shading.jl, sawfish/wm/state/ignored.jl,
- sawfish/wm/state/iconify.jl, sawfish/wm/state/gnome.jl: add
- window-menu toggle items
-
- * sawfish/wm/state/iconify.jl (window-iconified-p,
- window-sticky-p):
- * sawfish/wm/state/shaded.jl (window-shaded-p):
- * sawfish/wm/state/ignored.jl (window-ignored-p): new functions
-
- * sawfish/wm/frames.jl (frame-type-menu): broke this out of
- sawfish.wm.menus
-
- * sawfish/wm.jl: intern and export sawfish.wm.state.ignored
-
-2000-09-06 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/window-anim.jl, sawfish/wm/animation/outline.jl:
- added structure aliases
-
- * sawfish/wm/animation/outline.jl (anim-outline-entry): check
- the 'icon-position property of the window before looking at
- anim-outline-icon-coords
-
- * sawfish/wm/custom.jl (custom-set-variable,
- custom-set-typed-variable): use user-require to load :require'd
- modules (in case they're bare code)
-
- * sawfish/wm/misc.jl (user-require): new function
-
-2000-09-04 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/commands.jl (define-command): new keyword args DOC
- and DOC-KEY
- (command-documentation): new function, a bit of a kludge
-
-2000-09-03 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/misc.jl (quote-menu-item): function to translate
- `_' to `__' in menu items (to avoid introducing unintended
- keyboard accelerators)
-
- * sawfish/wm/workspace.jl, sawfish/wm/frames.jl,
- sawfish/wm/ext/old-window-menu.jl,
- sawfish/wm/ext/beos-window-menu.jl, sawfish/wm/util/groups.jl:
- use quote-menu-item when creating menus
-
- * sawfish/wm/commands/describe.jl (describe-symbol): include
- null STRUCTURE arg in call to `documentation'
-
- * sawfish/wm/gaol.jl: added some more known-to-be-safe modules,
- export define-gaol-structure
-
-2000-09-02 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/frames.jl (load-frame-style): name each gaol
- containing a theme as `themes.FOO' for a theme called FOO. This
- allows the theme's definitions to be inspected using the repl
-
- * sawfish/wm/util/nokogiri.jl (nokogiri-report-slot,
- nokogiri-report-group): use actual keywords in the results
-
-2000-09-01 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/gnome/integration.jl: when adding to the `Help'
- menu, add an `About GNOME' item
-
- * sawfish/wm/menus.jl (root-menu): add an `About Sawfish' item
-
- * sawfish/wm/commands/help.jl (help:about): new command,
- launches the new `sawfish-about' script
-
- * sawfish/wm/commands/gnome.jl (gnome-about): new command,
- launches the `gnome-about' program
-
- * sawfish/wm/workspace.jl, sawfish/wm/util/groups.jl: tweaked a
- few doc strings
-
- * sawfish/wm/defaults.jl: aliased to sawmill-defaults
-
- * sawfish/wm/keymaps.jl (pointer-motion-threshold): declare
- this built-in customization option
-
-2000-08-31 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/menus.jl: action parts of menu items may now be
- arbitrary lisp objects, instead of just those with a read
- syntax. This is achieved by using a hash table to map
- non-symbol objects to integer ``nicknames'' before passing the
- menu structure to the helper process. When a nickname comes
- back as the result, dereference the table to find the actual
- object. The reason for this is to allow menu items to contain
- closures, avoiding the gratuitous use of `eval' that was
- happening
-
- * sawfish/wm/ext/old-window-menu.jl,
- sawfish/wm/ext/beos-window-menu.jl, sawfish/wm/workspace.jl,
- sawfish/wm/frames.jl, sawfish/wm/util/groups.jl: use closures
- instead of bare code in menu items
-
-2000-08-30 John Harper <john dcs warwick ac uk>
-
- Some work to help the desktop-in-a-window approach work
- properly, as used by nautilus:
-
- * sawfish/wm/focus.jl: use desktop-window-p to recognize
- root/desktop windows. Make focusing work logically for desktop
- windows
-
- * sawfish/wm/windows.jl (desktop-window-p): new function, true
- if arg is 'root or a window with 'desktop property set
-
- * sawfish/wm/state/gnome.jl (gnome-honour-client-state): match
- class `Nautilus/desktop_window' and set its 'desktop property.
- Also set its 'keymap property to the root-window-keymap
-
- * sawfish/wm/state/wm-spec.jl: set 'desktop and 'keymap
- properties of TYPE_DESKTOP windows
-
- * sawfish/wm/ext/shade-hover.jl (shade-hover-leave): use
- desktop-window-p to decide when to ignore the event
-
- * sawfish/wm/commands/x-cycle.jl (next): don't include windows
- that are desktop-window-p in the list to be selected from
-
-2000-08-29 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/placement.jl (adjust-window-for-gravity): new
- optional arg UNADJUST, passed to adjust-position-for-gravity
- (place-window): if 'placed property is set, treat it like a
- user-specified position
- (unplace-window): new function added to remove-window-hook to
- undo gravity compensation
-
- * sawfish/wm/windows.jl (adjust-position-for-gravity): new
- optional arg UNADJUST, when set, adjust the window in the
- opposite directions to normal
-
- [ these last two changes are adapted from E. Jay Berkenbilt
- <ejb ql org> ]
-
- * sawfish/wm/windows.jl (window-gravity): new function
-
- * sawfish/wm/state/maximize.jl (do-horizontal, do-vertical):
- fixed for non-zero current-head offsets
-
- * sawfish/wm/state/maximize.jl (window-unmaximized-position,
- window-unmaximized-dimensions): new functions, unused yet
-
- * sawfish/wm/util/edges.jl (get-visible-window-edges): removed
- `#:include-root' keyword, added `#:include-heads LIST-OR-t' and
- `#:include-screen t' giving more control over what gets added
-
- Changed all callers.
-
-2000-08-26 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/misc.jl (current-head-dimensions): if no current
- head, return (screen-dimensions)
- (current-head-offset): if no current head, return '(0 . 0)
-
-2000-08-25 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/custom.jl (defcustom): don't (erroneously) rely on
- defvar evaluating the DEFAULT-VALUE form
-
-2000-08-21 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/gaol.jl: added x-gc-set-dashes
-
-2000-08-18 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/commands.jl (define-command): spec and type args
- are now keyword parameters
-
- * sawfish/wm/workspace.jl, sawfish/wm/windows.jl,
- sawfish/wm/viewport.jl, sawfish/wm/swapper.jl,
- sawfish/wm/stacking.jl, sawfish/wm/server.jl,
- sawfish/wm/gaol.jl, sawfish/wm/frames.jl:
- * sawfish/wm/commands/x-cycle.jl,
- sawfish/wm/commands/viewport-linear.jl,
- sawfish/wm/commands/slide-window.jl,
- sawfish/wm/commands/size-window.jl,
- sawfish/wm/commands/raise-commands.jl,
- sawfish/wm/commands/move-resize.jl,
- sawfish/wm/commands/grow-pack.jl,
- sawfish/wm/commands/groups.jl, sawfish/wm/commands/gnome.jl,
- sawfish/wm/commands/describe.jl:
- * sawfish/wm/ext/window-history.jl, sawfish/wm/ext/tooltips.jl,
- sawfish/wm/ext/edge-flip.jl:
- * sawfish/wm/gnome/menus.jl:
- * sawfish/wm/placement/smart.jl:
- * sawfish/wm/session/load.jl:
- * sawfish/wm/state/transient.jl, sawfish/wm/state/shading.jl,
- sawfish/wm/state/maximize.jl, sawfish/wm/state/ignored.jl,
- sawfish/wm/state/iconify.jl:
- * sawfish/wm/util/prompt.jl, sawfish/wm/util/prompt-extras.jl,
- sawfish/wm/util/nokogiri.jl, sawfish/wm/util/gtkrc.jl,
- sawfish/wm/util/edges.jl, sawfish/wm/util/display-window.jl,
- sawfish/wm/util/compat.jl:
-
- Updated for new define-command interface
-
-2000-08-16 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/commands.jl: fixed bug of functions with
- `(interactive)' not being commandp
-
- * sawfish/wm/commands.jl: give interactive spec for
- destroy-window command
-
-2000-08-16 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/workspace.jl, sawfish/wm/windows.jl,
- sawfish/wm/stacking.jl, sawfish/wm/misc.jl,
- sawfish/wm/menus.jl, sawfish/wm/frames.jl,
- sawfish/wm/customize.jl, sawfish/wm/custom.jl,
- sawfish/wm/commands.jl, sawfish/wm/animation/outline.jl,
- sawfish/wm/commands/xterm.jl, sawfish/wm/commands/x-cycle.jl,
- sawfish/wm/commands/describe.jl, sawfish/wm/ext/tooltips.jl,
- sawfish/wm/ext/match-window.jl,
- sawfish/wm/ext/beos-window-menu.jl,
- sawfish/wm/ext/audio-events.jl, sawfish/wm/placement/smart.jl,
- sawfish/wm/session/init.jl, sawfish/wm/state/transient.jl,
- sawfish/wm/state/maximize.jl, sawfish/wm/state/configure.jl,
- sawfish/wm/theming/make-theme-preview.jl,
- sawfish/wm/util/with-output.jl,
- sawfish/wm/util/window-order.jl, sawfish/wm/util/rects.jl,
- sawfish/wm/util/prompt.jl, sawfish/wm/util/prompt-wm.jl,
- sawfish/wm/util/prompt-extras.jl, sawfish/wm/util/keymap.jl,
- sawfish/wm/util/groups.jl, sawfish/wm/util/edges.jl,
- sawfish/wm/util/display-window.jl, sawfish/wm/util/compat.jl:
-
- use #!optional and #!rest instead of deprecated &optional and
- &rest
-
-2000-08-15 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/workspace.jl: some renaming, ws-move-window ->
- move-window-to-workspace, ws-copy-window ->
- copy-window-to-workspace, ws-insert-workspace -> insert
- workspace, ws-move-workspace -> move-workspace (and exported),
- ws-remove-workspace -> move-workspace
- (insert-workspace): this command renamed as
- insert-workspace-after
-
- Updated all callers
-
- * sawfish/wm/compat.jl: handle workspace renamings
-
- * sawfish/wm/viewport.jl (select-workspace-and-viewport): new
- function
-
- * sawfish/wm/commands.jl (command-fun): renamed command-ref and
- exported
-
-2000-08-14 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/gaol.jl (safe-functions): added
- make-image-from-x-drawable
-
- * sawfish/wm/state/configure.jl (configure-request-handler): be
- ICCCM compliant when handling move requests -- honour the
- gravity if given, or default to NorthWest. Previously was
- always doing the equivalent of Static gravity (has this broken
- [m]any apps?)
-
-2000-08-13 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/server.jl: server now reliably communicates errors
- back to the client (as `(signal 'remote-sawfish (list DATA))'
- where DATA is a string). Also renamed the sockets and X
- properties. The X protocol now includes a version number
-
-2000-08-11 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/commands/grow-pack.jl (pack-warp-pointer): new
- option. Update from Kai Grossjohann
-
-2000-08-10 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/placement.jl (adjust-window-for-gravity): use
- adjust-position-for-gravity
-
- * sawfish/wm/windows.jl (adjust-position-for-gravity): new
- function (abstracted from adjust-window-for-gravity)
-
- * sawfish/wm/commands.jl (function-spec): interactive spec in
- bytecode subr is now 5th element, not 6th
-
-2000-08-08 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/ext/match-window.jl (safe-string-match): wrapper
- for string-match that catches and prints regexp errors
-
-2000-08-03 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm.jl: include sawfish.wm.state.{transient,iconify,
- shading} in the exports of this module
-
- * sawfish/wm/state/shading.jl, sawfish/wm/state/maximize.jl:
- added aliases
-
- * sawfish/wm/commands/x-cycle.jl, sawfish/wm/ext/tooltips.jl:
- misc fixes
-
-2000-07-31 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/custom.jl (define-custom-setter, custom-setter):
- kludged to use structure- functions
-
- * sawfish/wm/user.jl: configure this structure so that setq
- binds unbound variables
-
- * sawfish/wm.jl: removed obsolete reference to autoload-verbose
-
-2000-07-30 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/workspace.jl: export ws-copy-window
-
- * sawfish/wm/custom.jl (custom-set-variable,
- custom-set-typed-variable): convert values which are the symbol
- `nil' to boolean false (let's hope nothing actually uses the
- symbol `nil'!)
-
- * sawfish/wm.jl, sawfish/wm/user.jl, sawfish/wm/defaults.jl:
- user module is now called `user', not `sawfish.wm.user'
-
- * sawfish/wm/customize.jl (customize-args): deleted this
- variable
-
-2000-07-28 John Harper <john dcs warwick ac uk>
-
- * sawfish/wm/ext/audio-events.jl (audio-event-handler): export
- this function
-
- * sawfish/wm/ext/tooltips.jl (display-tooltip, remove-tooltip):
- public interface of this module
-
- * sawfish/wm/state/maximize.jl (maximize-avoid-avoided): new
- option, when nil, avoided windows are covered when maximizing
- (from a mailing list post by Jonas Linde <jonas init se>)
-
- * sawfish/wm/user.jl: support --call, --load and --quit long
- equivalents for -f, -l and -q
-
- * sawfish/wm/util/display-window.jl
- (display-window:uniconify-to-current-workspace): put in expert
- user-level
-
- * sawfish/wm/workspace.jl, sawfish/wm/state/iconify.jl
- (uniconify-to-current-workspace, raise-windows-on-uniconify,
- focus-windows-on-uniconify): moved from workspace to iconify,
- raise option is put at expert user-level
-
-2000-07-27 John Harper <john dcs warwick ac uk>
-
- Non-trivial changes to modularize sawfish. Instead of one
- unmaintainably huge namespace, each file gets its own module.
- Use sawfish.wm. hierarchy for modules that only apply to the
- wm. Other modules under sawfish. will appear soon. Modules can
- be imported separately, or `sawfish.wm' can be imported to get
- all core definitions
-
- * sawfish/wm.jl: does initialization and creates the sawfish.wm
- structure
-
- * sawfish/wm/commands.jl: all command handling is now written
- in Lisp. Fully compatible except for how commands are defined.
- Since we have no unified namespace, the mapping from names ->
- command definitions is maintained separately. define-command
- and autoload-command add entries to this mapping.
- define-command takes a name and a function, and optionally an
- interactive spec and a custom-type spec. The old style of
- defining commands still works, but only in the user module
-
- * x-cycle.jl, workspace.jl, wm-spec.jl, with-output.jl,
- window-outline.jl, window-order.jl, window-history.jl,
- window-anim.jl, viewport.jl, viewport-linear.jl, transient.jl,
- tooltips.jl, stagger-placement.jl, stacking.jl,
- smart-placement.jl, sm-save.jl, sm-load.jl, sm-init.jl,
- sm-common.jl, slide-window.jl, size-window.jl, shading.jl,
- shade-hover.jl, server.jl, select-window.jl, sawmill.jl,
- sawmill-gaol.jl, sawmill-defaults.jl, rects.jl,
- raise-commands.jl, prompt.jl, prompt-wm.jl, prompt-extras.jl,
- play-audio.jl, place-window.jl, open-look.jl,
- old-window-menu.jl, nokogiri-sawfish.jl, mwm.jl,
- move-resize.jl, move-cursor.jl, menus.jl, maximize.jl,
- match-window.jl, make-theme.jl, make-theme-preview.jl,
- keymaps.jl, keymap.jl, ignore-window.jl, iconify.jl, help.jl,
- gtkrc.jl, grow-pack.jl, groups.jl, group-funs.jl, gnome.jl,
- gnome-menu.jl, gnome-match.jl, gnome-int.jl, gnome-commands.jl,
- functions.jl, frames.jl, focus.jl, error-handler.jl, edges.jl,
- edge-flip.jl, describe.jl, decode-events.jl, cycle.jl,
- customize.jl, custom.jl, custom-defaults.jl, cursors.jl,
- configure.jl, compat.jl, beos-window-menu.jl, autoload.jl,
- auto-raise.jl, audio-events.jl, anim-outline.jl, 3d-hack.jl:
-
- Moved (and maybe renamed) these files under sawfish.wm module
- hierarchy (also made most into modules)
-
-2000-07-24 John Harper <john dcs warwick ac uk>
-
- * version 0.30.3
-
-2000-07-23 John Harper <john dcs warwick ac uk>
-
- * sawmill.jl: don't require 'define. Also, only load "environ"
- when (< rep-interface-id 10) (cvs rep correctly autoloads this
- from a different location)
-
- * custom.jl (custom-add-to-group): don't require 'sort, it's
- not necessary and fails in cvs rep
-
- * window-outline.jl (draw-box-outline): ensure numbers are
- exact after rounding
-
- * anim-outline.jl (anim-outline-run): use integer arithmetic
-
- * stacking.jl (make-constraint): check for 'transients-above
- property on the window, else use global value
- * match-window.jl (match-window-properties): added
- 'transients-above property
-
-2000-07-19 John Harper <john dcs warwick ac uk>
-
- * shading.jl (shading-add-window): reinstate code to set
- 'shaded property to nil before calling shade-window
-
- * keymaps.jl (custom-set-keymap): don't pass REQ arg to
- custom-set, just ignore it
-
- * custom.jl (custom-set): removed REQ parameter, has to be
- conditional on the value of the option
- (custom-set-variable, custom-set-typed-variable): if both REQ
- and VALUE are non-nil, require REQ. Make SYMBOL special before
- setting it
-
-2000-07-18 John Harper <john dcs warwick ac uk>
-
- * custom.jl (custom-convert): fixed some stupid bugs when
- recursing into `list', `pair' and `and' types
-
-2000-07-17 John Harper <john dcs warwick ac uk>
-
- * gnome-menu.jl: require 'menus when compiling (otherwise when
- setting apps-menu, don't know that it's special)
-
-2000-07-16 John Harper <john dcs warwick ac uk>
-
- * wm-spec.jl: set 'fixed-position and 'never-focus properties
- of TYPE_DESKTOP windows
-
- * configure.jl: renamed the 'fixed-position property as
- 'client-set-position. Changed all users
-
- * gnome.jl: support FIXED_POSITION hint, sets the
- 'fixed-position property
-
- * move-resize.jl, slide-window.jl: when 'fixed-position is set,
- don't allow the window to be moved
-
- * workspace.jl: add 'fixed-position to those saved with the
- session data
-
-2000-07-14 John Harper <john dcs warwick ac uk>
-
- * version 0.30.2
-
-2000-07-13 John Harper <john dcs warwick ac uk>
-
- Work to correct the problem that defcustom's with secondary
- types that need converting to-from strings weren't being
- converted, since only the outer type was being looked at:
-
- * custom.jl (custom-serialize, custom-deserialize,
- define-custom-serializer, define-custom-deserializer):
- functions to do deep conversions across (type, value) pairs
-
- (custom-set-typed-variable): similar to custom-set-variable,
- but with an extra arg, the type of the variable. This will
- slowly replace c-s-v in `custom' files. The type allows the
- conversion to work even if the variable has not yet been
- defined
-
- (variable-type): new function
-
- (custom-set-color, custom-set-font): removed, just conversion
- functions now. Compatibility functions in compat.jl
-
- * customize.jl (customize-set): emitted forms call
- custom-set-typed-variable not custom-set-variable and include
- type of variable (unless variable has a custom-set property)
-
- * nokogiri-sawfish.jl (nokogiri-report-slot): serialize the
- value to something that's printable (unless it has a custom-get
- property)
-
-2000-07-13 John Harper <john dcs warwick ac uk>
-
- * match-window.jl: removed unused group-widget definition
-
- * wm-spec.jl, gnome.jl: use ws-set-window-workspaces instead of
- window-add-to-workspaces when honouring _WIN_WORKSPACE and
- _NET_WM_DESKTOP properties
-
- * gnome-int.jl: only redefine xterm-program if it's not been
- customized
-
-2000-07-12 John Harper <john dcs warwick ac uk>
-
- * menus.jl (popup-menu): when writing the menu spec across the
- pipe, format it to a string, then write that. This only does a
- single system call
-
- * custom.jl (custom-set): new function, wraps a thunk to do the
- actual variable setting in the necessary pre- and post-fix
- code. Also sets a property 'custom-user-value on all variables
- that have been customized
- (variable-customized-p): new function
- (custom-set-variable): now in terms of custom-set
-
- * keymaps.jl (custom-set-keymap): now in terms of custom-set
-
- * viewport.jl (move-window-to-viewport): remember to correct
- for 1.. to vs 0.. indexing
-
- * transient.jl (transient-of-p): if WM_TRANSIENT_FOR is set to
- the root window, only compare group ids if non-nil
- (transient-parents, transient-group): ignore unmapped windows
-
-2000-07-11 John Harper <john dcs warwick ac uk>
-
- * menus.jl (popup-menu): catch errors and unset menu-active
-
- * x-cycle.jl, workspace.jl, window-order.jl, viewport.jl,
- transient.jl, stacking.jl, smart-placement.jl, sm-save.jl,
- sm-load.jl, sawmill-gaol.jl, place-window.jl, grow-pack.jl,
- group-funs.jl, gnome.jl, frames.jl, edges.jl: replace `(mapc
- foo (managed-windows))' by `(map-windows foo)', and similar
- for filter-windows variants
-
- * functions.jl (map-windows): deleted, now a C function
- (get-window-by-name, get-window-by-name-re): deleted optional
- LST parameters; use filter-windows
-
- Cleaned up frame style and window type management:
-
- * frames.jl (define-frame-type-mapper): used to register a
- function that maps (WINDOW FRAME-TYPE) -> FRAME-TYPE. Used by
- find-frame-type-definition to factor window state into the type
- asked for from the theme
-
- (reframe-window): reframes a window, according to its current
- 'type and 'frame-style properties
-
- (set-frame-style): sets 'frame-style property and acts on it
- (set-window-type): sets 'type property and acts on it
-
- (window-type): removed junk to handle decorate-transients
- option. Window type is _never_ changed for window state
-
- (set-window-frame-style, set-frame-for-window,
- reframe-one-window): deleted
-
- * shading.jl: don't mess with 'type property any more. But
- register a frame type mapper to handle conversion to shaded
- frames when 'shaded property is set
-
- * transient.jl: register a frame type mapper to handle
- decorate-transients option
-
- * workspace.jl, wm-spec.jl, window-history.jl, sawmill.jl,
- sawmill-gaol.jl, open-look.jl, mwm.jl, match-window.jl,
- ignore-window.jl, groups.jl: updated all users of the changed
- window frame & type interfaces
-
- [ amongst other things, these changes make changing the type of
- a window while it's shaded work correctly ]
-
-2000-07-10 John Harper <john dcs warwick ac uk>
-
- * keymap.jl (quote-event): new implementation that uses event
- replaying to forward the events, so that it works with clients
- that don't accept synthesized events. Adapted from code posted
- to the mailing list by Timo Korvola in March (but without the
- complexity of also grabbing the pointer)
-
- * x-cycle.jl (cycle-windows): grab the keyboard synchronously,
- then if the M-TAB sequence is terminated by a non-release event
- that doesn't have a wm binding, replay it to the focused client
- window. Also, when calling any tail commands, ensure that
- current-event-window returns the newly-focused window
-
-2000-07-09 John Harper <john dcs warwick ac uk>
-
- * version 0.30
-
-2000-07-08 John Harper <john dcs warwick ac uk>
-
- * functions.jl (command-sequence): new command, allows the
- bindings ui to bind _sequences_ of commands to a single event
-
- * viewport.jl (activate-viewport-column,
- activate-viewport-row): new commands
-
-2000-07-06 John Harper <john dcs warwick ac uk>
-
- * transient.jl (map-transient-group): new function
-
- * iconify.jl (iconify-group-mode, uniconify-group-mode): new
- options
-
- * groups.jl (iconify-transient-group,
- uniconify-transient-group): new commands
-
- * workspace.jl, custom.jl, audio-events.jl: translate some
- strings in defcustom types
-
- * custom.jl (custom-option-alist): added `:type*' key, similar
- to `:type' but value isn't quoted
-
-2000-07-05 John Harper <john dcs warwick ac uk>
-
- * stacking.jl (stacking-constraint:transients-above-parent):
- handle transients with more than one parent window
- (raise-windows, lower-windows): map across the list of windows
- twice to ensure that the optimum layout is found
-
- * transient.jl (transient-of-p, transient-parents): new
- functions. All these functions now understand the convention of
- setting WM_TRANSIENT_FOR to the root window to denote that the
- window is a transient for the whole group
-
- * sawmill.jl: load-all "autoload" not "autoload.jl"
-
- * workspace.jl, viewport.jl (workspace-geometry): new
- defcustom, replaces preallocated-workspaces and
- viewport-dimensions (which are now just defvars)
-
- * customize.jl (customize-read-user-file): delete items whose
- `custom-obsolete' property is set
-
- * compat.jl: set some custom-obsolete properties
-
-2000-07-03 John Harper <john dcs warwick ac uk>
-
- * move-resize.jl: use constrain-dimension-to-hints instead of
- local hack
-
- * functions.jl (constrain-dimension-to-hints): new function,
- implements the size hints checking correctly (I was using
- base-size instead of min-size in some places)
-
- * stacking.jl (transients-above): stack above parents by
- default
-
- * keymaps.jl: use the commands that raise a window and its
- transients by default
-
- * transient.jl (indirect-transient-of-p, transient-group): new
- functions
-
- * transient.jl
- ({raise,lower,raise-or-lower}-window-and-transients): new
- commands
-
- * groups.jl ({raise,lower,raise-lower}-group): use the new
- functions for stacking lists of windows
-
- * stacking.jl (raise-windows, lower-windows,
- raise-lower-windows): new functions for stacking groups of
- windows
-
- * raise-commands.jl (raise-transients-and-pass-through-click):
- new command
-
-2000-07-02 John Harper <john dcs warwick ac uk>
-
- * window-history.jl (window-history-apply): use
- resize-window-with-hints* to apply any saved dimensions. Fixes
- bug of making windows too small
-
- * functions.jl (resize-window-with-hints*): new function,
- similar to resize-window-with-hints, but with dimensions
- specified in pixels
-
- * version 0.29
-
-2000-07-01 John Harper <john dcs warwick ac uk>
-
- * gnome-int.jl (gnome-use-capplet): make this an option
-
- * workspace.jl (activate-workspace, send-window-to-workspace,
- copy-window-to-workspace): customizable commands
- (select-workspace:N, send-to-workspace:N, copy-to-workspace:N):
- deprecated, moved to compat.jl
-
- * viewport.jl (activate-viewport, move-window-to-viewport):
- customizable commands
-
- * viewport-linear.jl (set-viewport-linear,
- set-window-viewport-linear): customizable commands. Deprecate
- the rest
-
- * nokogiri-sawfish.jl: Set `deprecated-command' property of
- commands that I don't want to show up in the configurator
- (nokogiri-report-commands): new function.
-
- * keymaps.jl (custom-get-keymap, custom-set-keymap): allow
- non-symbol commands to pass through to the configurator if they
- specify the type of their argument list
-
- * functions.jl (run-shell-command): new command, forks its
- argument using `system', is customizable
-
- * custom.jl (define-command-args): new function, associates a
- custom type with a command, should describe the _list_ of
- arguments that can be given to the function (i.e. an `and'
- widget usually)
-
-2000-06-30 John Harper <john dcs warwick ac uk>
-
- * nokogiri-sawfish.jl (nokogiri-report-slot): convert
- `file-name' -> `file' and `program-name' -> `program' for
- backwards compatibility
-
- * frames.jl (frame-type-fallback-alist): call
- after-setting-frame-option when this option changes
-
- * sawmill.jl: add ~/.sawfish/lisp to load-path
-
- * groups.jl (send-group-to-workspace): remember to tell
- ws-move-window which workspace to move _from_. Also, don't try
- to move sticky windows
-
-2000-06-29 John Harper <john dcs warwick ac uk>
-
- * match-window.jl (match-window-grab-x-property): tidied up,
- should handle non-string properties now
-
- * place-window.jl (place-window-centered,
- place-window-centered-on-parent, place-window-under-pointer):
- clamp the placement position into the current workarea (as
- defined by the windows that must not be covered)
-
- * functions.jl (clamp, clamp*): new functions
-
- * x-cycle.jl, workspace.jl, wm-spec.jl, viewport.jl,
- transient.jl, place-window.jl, nokogiri-sawfish.jl,
- move-resize.jl, maximize.jl, iconify.jl, functions.jl,
- frames.jl, edge-flip.jl, customize.jl, autoload.jl,
- audio-events.jl: various changes to defcustom's, mostly just
- trying to improve the descriptions
-
- * gnome.jl (gnome-honour-client-state): set `ignored' as well
- `never-focus' for SKIP_FOCUS windows
-
- * stacking.jl (mapped-stacking-order): new function, used to
- ignore unmapped windows when restacking
-
-2000-06-28 John Harper <john dcs warwick ac uk>
-
- * nokogiri-sawfish.jl: server-side functions for nokogiri
-
- * x-cycle.jl, workspace.jl, window-history.jl, window-anim.jl,
- viewport.jl, tooltips.jl, stacking.jl, smart-placement.jl,
- slide-window.jl, size-window.jl, shade-hover.jl, sawmill.jl,
- play-audio.jl, nokogiri-sawfish.jl, move-resize.jl,
- move-cursor.jl, maximize.jl, match-window.jl, keymaps.jl,
- iconify.jl, group-funs.jl, gnome-match.jl, functions.jl,
- frames.jl, focus.jl, edge-flip.jl, customize.jl, custom.jl,
- configure.jl, autoload.jl, auto-raise.jl, audio-events.jl:
- Suitable changes for new `nokogiri' config interface
-
- * gnome.jl (gnome-honour-client-state): SKIP_FOCUS hint now
- sets `never-focus' property, not `ignored'
-
-2000-06-27 John Harper <john dcs warwick ac uk>
-
- * groups.jl (raise-lower-group): try to be cleverer about
- detecting when to raise and when to lower. But it's still based
- on assumptions about the constraints..
-
- * stacking.jl (window-on-top-p, raise-lower-window): removed
- check for window visibility to latter
-
- * raise-commands.jl (raise-group-and-pass-through-click): new
- command
-
- * groups.jl (raise-group, lower-group, raise-lower-group):
- assume less, so they work better with the new stacking code
-
-2000-06-26 John Harper <john dcs warwick ac uk>
-
- * stacking.jl: rewritten to be totally `constraint' based.
- (Actually these constraints are just predicates.) Anyway, this
- lets me generalize the layer code into one rule, and to do
- proper stacking of transients using other rules. (So, e.g.,
- when (eq transients-above 'parents), transient windows are
- actually only stacked _their own_ parents -- two people asked
- me for this today)
-
-2000-06-24 John Harper <john dcs warwick ac uk>
-
- * iconify.jl (iconify-ignored): new option, whether or not to
- allow ignored windows to be iconified, nil by default. (Closes
- bugs.gnome #11114)
-
-2000-06-23 John Harper <john dcs warwick ac uk>
-
- * frames.jl (frame-type-fallback-alist): map `shaded' and
- `shaded-transient' to `shaped' and `shaped-transient'
- respectively
-
- * shading.jl (shade-window): give windows `shaded' or
- `shaded-transient' type while they are shaded (not `shaped', or
- `shaped-transient')
-
- * frames.jl (frame-part-classes): removed the cursor
- definitions from the `-button' classes
-
- * sawmill.jl: fixed bug of not load-all'ing site-init within
- the `sawfish' structure
-
-2000-06-22 John Harper <john dcs warwick ac uk>
-
- * stacking.jl (restack-window): new function, given a window,
- ensure that it has a consistent place in the stacking order
- (stacking-after-map): don't call raise-window, just use
- restack-window to ensure consistency
-
- * functions.jl (member-if): new function
-
-2000-06-21 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (ws-add-window): if the window has a non-null
- set of workspaces, clear it before adding the window to each of
- these spaces, in case (/= logical-id actual-id)
-
- * match-window.jl: in `workspace' setter, use
- ws-window-set-workspaces not window-add-to-workspace; also the
- `workspaces' property must contain logical workspace ids before
- the add-window-hook has been run
-
- * window-history.jl: moved customizations to `placement' group.
- Changed menu items to be `Remember foo' not `Save foo'
-
-2000-06-20 John Harper <john dcs warwick ac uk>
-
- * configure.jl (windows-intersect-p, window-occludes-p): new
- functions
- (configure-request-handler): handle the newly complex `stack'
- field of the request (with all relations and siblings)
-
- [ patch from Brad Thompson <yak mit edu> ]
-
- * window-history.jl (window-history-apply): ignore `dimensions'
- attribute if the size-hints has a `user-size' property
-
- * stagger-placement.jl: new placement mode
-
- * smart-placement.jl (sp-best-fit): don't discard possible
- placement with more than the minimum overlap, keep all points,
- but add a cost component function sp-cost:overlap that includes
- the overlap. Currently overlap is weighted to 75%, pointer and
- focus locality combine to give the other 25%
-
- * place-window.jl (place-window-centered-on-parent): ensure
- that the chosen position is never negative
-
-2000-06-19 John Harper <john dcs warwick ac uk>
-
- * wm-spec.jl, decode-events.jl: s/0x/#x/
-
- * window-history.jl: ensure that our addition to
- before-add-window-hook is added at the end of the hook (i.e.
- after the session-management function)
-
-2000-06-18 John Harper <john dcs warwick ac uk>
-
- * sawmill.jl, sawmill-gaol.jl, describe.jl: remove any
- rep-compatibility cruft, we require 0.12 now
-
- * window-history.jl: set the options to automatically save
- dimensions and state to nil (since the module may sometimes
- misidentify the `same' window)
-
-2000-06-16 John Harper <john dcs warwick ac uk>
-
- * version 0.28.1
-
-2000-06-15 John Harper <john dcs warwick ac uk>
-
- * custom.jl (custom-declare-variable): allow variables to be
- declare in the null (top-level) group
-
- * window-history.jl (window-history-key): for transient
- windows, include the window title in the key
-
- * beos-window-menu.jl (group-name): use the class name to name
- the group when possible
-
- * old-window-menu.jl: new file, contains the original
- window-menu function
-
- * sawmill.jl: set window-menu to beos-window-menu by default
-
-2000-06-13 John Harper <john dcs warwick ac uk>
-
- * window-history.jl: don't save the `iconified' and `shaded'
- states (they relate to the current instance of the window
- only). Also when restoring window state, use the current value
- of window-history-states to decided which properties to update
-
- * iconify.jl (iconify-workspace-windows): new command
-
-2000-06-12 John Harper <john dcs warwick ac uk>
-
- * version 0.28
-
- * frames.jl (find-frame-definition): detect and abort if
- frame-type-fallback-alist contains closed cycles
-
-2000-06-10 John Harper <john dcs warwick ac uk>
-
- * frames.jl (frame-type-fallback-alist): added `icon' and
- `dock' items
-
- * menus.jl (root-menu): added `Help' sub-menu
-
- * help.jl: new file, some functions to launch Info nodes, web
- pages, etc..
-
- * gnome-int.jl: added code to use GNOME help prog and url
- launcher; also add a couple of GNOME menus to the Help menu
-
- * gnome-commands.jl (gnome-www-page, gnome-help-browser): new
- commands
-
- * decode-events.jl: support `super' modifier
-
-2000-06-08 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl (cycle-windows): added a handler to catch unbound
- (non-release) events, store them, exit the command, but first
- tail-call the command bound to the saved event
-
- * gnome-int.jl: require customize at compile-time so that
- variables are defined..
-
-2000-06-05 John Harper <john dcs warwick ac uk>
-
- * sawmill.jl: removed setting of fonts-are-fontsets, handled by
- C main ()
-
-2000-05-31 John Harper <john dcs warwick ac uk>
-
- * window-history.jl: changed the option names, added a more
- extensive menu, with commands to explicitly save state
-
- * sawmill-defaults.jl: load window-history module
-
- * move-resize.jl (move-resize-motion): call
- while-{moving,resizing}-hook _before_ updating the status
- message
-
-2000-05-30 John Harper <john dcs warwick ac uk>
-
- * smart-placement.jl (sp-prune-points): if the number of points
- is less than the maximum, randomly add points to make up the
- distance
-
- (sp-cost-from-distance): made this function not depend on the
- order of its input positions (doh!)
-
- (sp-cost-components): reversed the order of the individual
- cells
-
- * stacking.jl (stacking-after-map): raise the window _after_
- possibly moving it to a higher layer (else it may end up below
- the other windows in its layer)
-
-2000-05-27 John Harper <john dcs warwick ac uk>
-
- * window-history.jl: added a custom property getter for `type',
- it groks window shading
-
-2000-05-26 John Harper <john dcs warwick ac uk>
-
- * place-window.jl (acceptable-placement): require the `rects'
- feature [ patch from John H. Palmieri
- <palmieri math washington edu> ]
-
-2000-05-25 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (display-window:uniconify-to-current-workspace):
- new option
- * iconify.jl (display-window-without-focusing): bind
- uniconify-to-current-workspace to the value of the above option
- before uniconifying
- [ adapted from from John N S Gill ]
-
- * prompt-extras.jl: don't bind special variables in parameter
- lists
-
-2000-05-22 John Harper <john dcs warwick ac uk>
-
- * edge-flip.jl (edge-flip-warp-pointer): new option, whether or
- not to warp the pointer to the opposite screen edge after
- flipping (from Paul Warren <pdw ferret lmh ox ac uk>)
-
-2000-05-19 John Harper <john dcs warwick ac uk>
-
- * window-history.jl: ignore null keys
-
-2000-05-18 John Harper <john dcs warwick ac uk>
-
- * window-history.jl (window-history-apply): don't reposition
- windows whose `placed' property is already set
-
-2000-05-17 John Harper <john dcs warwick ac uk>
-
- * sawmill-gaol.jl: added some more `x' functions
-
- * smart-placement.jl (sp-cost): split each cost component into
- a separate function, the variable sp-cost-components tells how
- to combine them into a single value
-
- * rects.jl (rectangle-center, rectangle-center*): new functions
-
- * place-window.jl (place-transient-mode): defaults to
- centered-on-parent
-
-2000-05-16 John Harper <john dcs warwick ac uk>
-
- * beos-window-menu.jl: new file, replaces window-menu by
- something that creates sub-menus by window group
-
- * window-history.jl: use a hash table to record history
-
-2000-05-15 John Harper <john dcs warwick ac uk>
-
- * sawmill-gaol.jl (sawmill-safe-specials): added batch-mode
-
- * frames.jl (frame-type-fallback-alist): variable mapping frame
- types to type to try if the original type isn't available in
- the chosen frame style
- (find-frame-definition): iterate over frame types using the
- above variable until a frame definition is found
- (set-window-frame-style): use find-frame-definition
-
- Note that for this to work, themes must return `nil' when they
- don't support the requested frame type, until now, the
- convention had been to return the default frame definition, so
- most if not all themes will need changing. Themes defined using
- the themer (or gimpmill?) will still work okay
-
- * make-theme.jl (make-theme): rewritten the returned lambda to
- conform to the new theme conventions
-
-2000-05-14 John Harper <john dcs warwick ac uk>
-
- * window-history.jl: various enhancements, including: only save
- state file if data needs updating, window-history-forget
- command to remove saved state for a window, customizations
- controlling what gets saved (position, size, or other)
-
- * frames.jl (set-window-frame-style, frame-style-menu): call
- window-state-changed-hook, with states `frame-style' and `type'
-
- * auto-raise.jl (raise-groups-on-focus): commented out this
- option, it causes window groups to flicker (sometimes
- repeatedly) in certain cases due to the extra focus events it
- causes
-
-2000-05-12 John Harper <john dcs warwick ac uk>
-
- * gnome-menu.jl (gnome-menu-lang): now a list of strings, made
- by destructuring the language code, e.g. if LANG=de_DE, then
- the list will be ("de" "de_DE")
-
- (gnome-menu-read-desktop-entry): match encountered languages
- against all items in gnome-menu-lang
-
- * gnome-menu.jl, sawmill.jl: search LANGUAGE, LC_ALL,
- LC_MESSAGES, LANG for the language code to use, in that order
-
- * describe.jl (describe-symbol): new command, replaces
- describe-function and describe-variable
-
- (apropos-function, apropos-variable): moved these here from
- rep, this is necessary for rep 0.11+
-
- * keymap.jl (describe-key): use describe-symbol instead of
- describe-function
-
- * with-output.jl (define-command-to-screen): new macro, defines
- a command that will have its output redirected to the screen,
- given the name of an existing command to call, and an
- interactive spec
-
-2000-05-11 John Harper <john dcs warwick ac uk>
-
- * focus.jl (focus-enter-fun, focus-enter-fun): generate events
- when the root window is entered/left, enter-root and leave-root
- (enter-exit): unfocus the window when the root window is
- entered, as well as when the window is left
-
- * transient.jl (transient-unmap-window): fix bug of looking for
- window under pointer _in_ click to focus mode, it should be
- only done when _not in_ this mode
-
-2000-05-10 John Harper <john dcs warwick ac uk>
-
- * window-history.jl: new file, first attempt at remembering
- window state across window instances, still quite rough
-
- * version 0.27.1
-
- * 3d-hack.jl (3d-rotate flatten): use inexact->exact on
- transformed coordinates (fixes bug introduced by rounding
- functions now preserving inexactness)
-
- * maximize.jl (maximize-do-horizontal, maximize-do-vertical):
- use current-head-dimensions and current-head-offset of the
- maximized window to give the maximization bounds
-
- (maximize-find-max-rectangle): new optional arg HEAD, the head
- to constrain the rectangle to. Also, the output rectangle may
- only span a single head
-
- (maximize-do-both): constrain the maximized window to its
- current head
-
- * functions.jl (current-head, current-head-dimensions,
- current-head-offset): all now take an optional window
- parameter, which means to find the current head in relation to
- this window (else use the focused window)
-
- * functions.jl (get-window-by-name-re): new function
-
- * sawmill.jl: after renaming .sawmill -> .sawfish, create a
- symlink .sawmill in case user code refers to it
-
-2000-05-09 John Harper <john dcs warwick ac uk>
-
- * version 0.27
-
- * transient.jl (transient-unmap-window): misc improvements,
- should fix the reported problems in click-to-focus mode
-
- * window-order.jl (window-order-most-recent): new function
-
- * focus.jl (focus-click): only pass events through to the
- window if they're not bound, _and_ none of their successor
- events (move, release, etc) are bound
-
- * decode-events.jl (should-grab-button-event-p): new function,
- returns t if a button event needs to be grabbed so that the
- events that follow it are received
-
- * transient.jl (transient-map-window): only ever focus the
- window if it's visible (i.e. on the current workspace and not
- iconified)
-
-2000-05-08 John Harper <john dcs warwick ac uk>
-
- * viewport.jl (window-outside-workspace-p): handle non-zero
- viewport origins correctly (I think)
-
- * iconify.jl (ws-set-client-state): add this function to
- `map-notify-hook' instead of `add-window-hook', since the wm
- deletes WM_STATE when windows are withdrawn (one of the
- alternatives suggested by the icccm). This fixes the Code
- Crusader bug
-
-2000-04-30 John Harper <john dcs warwick ac uk>
-
- * shade-hover.jl (shade-hover-delay): changed range lower limit
- from one to zero (from Nils Barth <nbarth fas harvard edu>)
-
- * stacking.jl (raise-window): check that (/= pred w) before
- using it to raise above (else, do nothing, since it means that
- w is already on top)
-
-2000-04-29 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (workspace-swap-in): use move-resize-window-to
- so that window reconfiguration happens in one step, not two
-
- * edges.jl, rects.jl: removed uses of `named let' construct,
- only later sub-versions of required rep 0.11 support it
-
- * stacking.jl (raise-window): should have fixed long-standing
- problem of raising managed windows above override_redirect
- windows (e.g. menus) in certain cases
-
-2000-04-28 John Harper <john dcs warwick ac uk>
-
- * functions.jl (current-head): use focused window to determine
- current head, only use pointer position if no focused window
-
-2000-04-27 John Harper <john dcs warwick ac uk>
-
- * sawmill-gaol.jl: added window-icon-image to list
-
- * rectangles.jl (rectangle-area, rect-1d-overlap): changed from
- macros to functions
- (rectangle-from-coords, rectangle-corners): new functions
- (rectangle-heads): return the number of screen heads that a
- given rectangle appears on
-
- * smart-placement.jl (sp-least-overlap): ignore points where
- the window appear on more than one screen head
-
- * edges.jl (get-visible-window-edges): when :include-root
- option is given, include edges of all the screen's heads
-
- * place-window.jl (place-window-randomly,
- place-window-centered): support multi-headed screens
-
- * functions.jl (current-head, current-head-dimensions,
- current-head-offset): convenience functions (uses pointer
- position to define current head)
-
- * functions.jl (screen-dimensions): new function
-
-2000-04-26 John Harper <john dcs warwick ac uk>
-
- * edge-flip.jl: moved `edge-flip' group under `workspaces'
-
- * wm-spec.jl: first attempt at implementing the new GNOME/KDE
- window manager spec. (this spec. is not yet finalised)
-
- * sawmill.jl: require 'define for older compilers
-
-2000-04-25 John Harper <john dcs warwick ac uk>
-
- * sm-save.jl, sm-init.jl, sawmill.jl, play-audio.jl, menus.jl,
- make-theme-preview.jl, gtkrc.jl, gnome-int.jl, frames.jl,
- customize.jl, custom.jl, compat.jl, autoload.jl, Makefile.in:
- s/sawmill/sawfish/ where appropriate
-
-2000-04-24 John Harper <john dcs warwick ac uk>
-
- * tooltips.jl: put `tooltips' customization group under `misc'
-
-2000-04-20 John Harper <john dcs warwick ac uk>
-
- * auto-raise.jl (raise-groups-on-focus): new option (in
- focus/advanced)
-
- * groups.jl (raise-group, lower-group): preserve the stacking
- order of the group, then raise/lower the indicated window
- (raise-lower-group): new command
-
- * group-funs.jl (windows-by-group, windows-in-group): added an
- optional parameter `BY-DEPTH', when t the windows are returned
- by order of depth, not creation time
-
-2000-04-18 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (workspace-menu): fixed to put the focus marking
- asterisk when using workspace names (from John N S Gill)
-
-2000-04-17 John Harper <john dcs warwick ac uk>
-
- * custom.jl: require 'define to work around broken compiler
-
-2000-04-15 John Harper <john dcs warwick ac uk>
-
- * sawmill-gaol.jl (sawmill-safe-functions): added
- custom-option-alist and custom-group-option-alist
-
- * custom.jl (custom-groups, custom-required,
- custom-quoted-keys, custom-option-alist,
- custom-group-option-alist): these are now lexically bound
-
-2000-04-14 John Harper <john dcs warwick ac uk>
-
- * play-audio.jl (play-sample): run audio playing programs
- asynchronously so they can't block the wm
-
- * menus.jl (popup-menu): only set the frame-draw-mutex if
- there's a clicked frame part. This is still a kludge..
-
- * menus.jl: added some underscores marking menu accelerators
-
- * place-window.jl (place-window-interactively): set
- move-outline-mode to `box' not `nil' (from Timo Korvola)
-
-2000-04-09 John Harper <john dcs warwick ac uk>
-
- * version 0.26
-
- * sawmill.jl: don't load sawmill-gaol until all functions it
- exports have been defined; set *root-structure* and
- *user-structure* to suitable values; support load-all variants;
- try to decide when to `load' and when to `require' command line
- arguments
-
- * sawmill-gaol.jl: should now support both rep 0.12+ and
- 0.11- gaols
-
- * tooltips.jl, edge-flip.jl, customize.jl, custom.jl: minor
- tweaks to work with modularized rep
-
-2000-03-30 John Harper <john dcs warwick ac uk>
-
- * gnome-menu.jl (gnome-menu-read-desktop-entry): use
- xterm-program when starting in terminals (from James Antill)
-
-2000-03-29 John Harper <john dcs warwick ac uk>
-
- * decode-events.jl (decode-event): fixed typo
-
- * play-audio.jl (play-sample-program): new variable, a program
- to call instead of the built-in primitive-play-sample function
-
-2000-03-28 John Harper <john dcs warwick ac uk>
-
- * play-audio.jl, audio-events.jl: audio support (mapping events
- to samples, finding and playing samples)
-
-2000-03-27 John Harper <john dcs warwick ac uk>
-
- * smart-placement.jl (sp-avoided-windows-weight): increased by
- an order of magnitude (mentioned by Dan Winship)
-
- * place-window.jl (place-window-randomly): use
- maximize-find-workarea then randomize within that part of the
- screen
-
- * maximize.jl (maximize-find-max-rectangle): new function,
- broken out of maximize-do-both
- (maximize-find-workarea): new function, a nicer interface to
- maximize-find-max-rectangle
-
- * iconify.jl (toggle-window-iconified): new function (from
- Jens-Ulrik Petersen <jens-ulrik petersen nokia com>)
-
-2000-03-26 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl (cycle-class): use window-class (avoids error if
- any window has no WM_CLASS property)
-
- * functions.jl (window-class): new function
-
- * sawmill.jl: require window-anim
-
- * window-anim.jl, anim-outline.jl: support for animations after
- window events, and a simple example animation (only does
- anything when iconifying windows)
-
- * 3d-hack.jl: finally added this display hack (now rep 0.11 is
- required)
-
-2000-03-21 John Harper <john dcs warwick ac uk>
-
- * window-outline.jl (draw-window-outline,
- erase-window-outline): these are now implemented in lisp
-
- * iconify.jl (make-window-sticky): when sticking a window not
- on the current viewport, move it to the current viewport (from
- merlin merlin org)
-
- * shading.jl (raise-windows-when-unshaded): new option
- * shade-hover.jl (shade-hover-enter): use
- raise-windows-when-unshaded to implement the shade-hover-raise
- option
-
- * sawmill-gaol.jl: added safe `x' plugin functions (e.g. no
- window creation). Also workaround some rep versions not
- including the case special form
-
- * gtkrc.jl (gtkrc-light, gtkrc-dark, gtkrc-mid): new color list
- variables
-
- * iconify.jl (display-window): split into two functions, this
- and display-window-without-focusing
-
- * maximize.jl (maximize-window): call display-window-without-focusing
- on the window before maximizing it (fixes the bug of sometimes
- changing the window's viewport)
-
-2000-03-20 John Harper <john dcs warwick ac uk>
-
- * tooltips.jl (tooltips-background-color): made into a defcustom
- (tooltips-foreground-color): new option
- [ patch from Erik Assum <erik infostream se>, with different
- default colors ]
-
- * workspace.jl: defvar all hooks
-
- * x-cycle.jl (cycle-windows): add code to enter-workspace-hook
- to try to regrab the keyboard if we had previously grabbed on a
- window (since the window will be unmapped, thus losing the
- grab)
-
-2000-03-14 John Harper <john dcs warwick ac uk>
-
- * keymap.jl (describe-key): new command
-
- * prompt-wm.jl: small update from davep
-
- * sawmill.jl (fontset-languages-re): added ko and zh languages
- to this list, fixed to match xx_foo codes
-
- * keymaps.jl (global-keymap): removed A-x binding, many systems
- have A- and M- on the same keys
-
-2000-03-13 John Harper <john dcs warwick ac uk>
-
- * iconify.jl (display-window): calls prompt-for-window when
- called interactively
-
- * prompt-wm.jl: new file (from Dave Pearson <davep davep org>)
-
-2000-03-12 John Harper <john dcs warwick ac uk>
-
- * version 0.25.2
-
- * customize.jl (customize-read-user-file): if no user file,
- read the custom-default-file (and thus preserve any unchanged
- default options)
-
- * functions.jl (locate-file): new function
-
-2000-03-11 John Harper <john dcs warwick ac uk>
-
- * stacking.jl, rects.jl, group-funs.jl, edges.jl, custom.jl:
- added some doc strings
-
- * stacking.jl (stack-window-below, stack-window-above): handle
- the case where the two windows aren't in the same layer
-
- * with-output.jl (with-output-to-screen): new macro (from
- Jens-Ulrik Petersen and Dave Pearson)
-
-2000-03-10 John Harper <john dcs warwick ac uk>
-
- * stacking.jl: avoid calling restack-by-depth since it's often
- flickery, instead raise-window, lower-window and
- stacking-after-map do all their own work, only ever using
- x-raise-window or x-lower-window
-
- * sawmill-gaol.jl (sawmill-safe-functions): added input-focus
-
- * transient.jl (transient-unmap-window): don't try to focus
- parent windows not on the current viewport
-
- * iconify.jl (display-window): Unconditionally uniconify the
- window, and do it _before_ doing anything else
-
- * sawmill.jl (fontset-languages-re): new variable. Used to test
- if current language needs to use FontSets (i.e. multibyte
- encoding)
-
-2000-03-08 John Harper <john dcs warwick ac uk>
-
- * move-resize.jl (move-resize-update-edges): new function,
- updates the list of window edges for snapping
- (move-resize-window): arrange for move-resize-update-edges to
- be called after switching workspace or viewport
-
- * keymaps.jl (custom-get-keymap, custom-set-keymap): filter out
- and then restore bindings to non-symbol commands (avoids trying
- to parse commands with unreadable printed representations)
-
- * configure.jl (configure-request-handler): use fixed-position
- property to decide whether or not to clamp window within the
- workspace boundaries
-
- * workspace.jl (ws-move-window, ws-copy-window): ignore cases
- where (= DEST SRC), handle other cases properly
-
- * workspace.jl (send-to-previous-workspace,
- send-to-next-workspace, copy-to-previous-workspace,
- copy-to-next-workspace, append-workspace-and-send,
- prepend-workspace-and-send): new optional arg SELECT, whether
- the destination space is selected. t when called interactively
-
-2000-03-07 John Harper <john dcs warwick ac uk>
-
- * gnome.jl (gnome-set-workspace): never place windows on
- workspaces that don't exist (from the pager's POV). (from Rob
- Hodges)
-
- * workspace.jl (ws-move-window): don't remove the window if
- source and destination are the same (from Rob Hodges)
-
- * smart-placement.jl (sp-prune-points): fixed this function
- (patch from Dan Winship <danw helixcode com>)
-
-2000-03-06 John Harper <john dcs warwick ac uk>
-
- * viewport.jl (move-viewport-to-window): only flip viewports if
- the window is not actually on the current viewport (from merlin)
-
- * version 0.25.1
-
- * configure.jl (configure-request-handler): only force the
- window onto the workspace if it didn't explicitly set its
- position
-
- * sawmill-gaol.jl (sawmill-safe-features): remembered to
- replace / with `quotient'. Real / is available as `divide'
-
-2000-03-05 John Harper <john dcs warwick ac uk>
-
- * version 0.25
-
- * transient.jl (transient-unmap-window): don't try to focus
- parent windows if they're not mapped and visible
-
-2000-03-04 John Harper <john dcs warwick ac uk>
-
- * customize.jl (customize-ui-spec): don't put single widgets
- into vboxes (they don't expand properly)
-
- * x-cycle.jl (cycle-windows): if the window that the original
- keyboard grab was made on is unmapped, grab on the root window
-
-2000-03-02 John Harper <john dcs warwick ac uk>
-
- * functions.jl (warp-cursor-to-window): clamp the warp
- coordinates to be within the screen boundaries (from Merlin)
-
- * prompt.jl (prompt-display-fun): function to somehow format
- the prompt contents before displaying it
- (prompt): use call-with-keyboard-grabbed
-
- * prompt-extras.jl (pwd-prompt): new function
-
- * functions.jl (call-with-keyboard-grabbed): new function,
- allows nested keyboard grabbing to work correctly (only
- ungrabbing when the outermost exits)
-
- * keymap.jl (read-event): use call-with-keyboard-grabbed
-
-2000-02-29 John Harper <john dcs warwick ac uk>
-
- * keymaps.jl (global-keymap): bind A-x to cc-with-output-to-screen
-
- * with-output.jl (call-with-output-to-screen,
- call-command-with-output-to-screen): new functions
-
- * prompt.jl: Method of requesting user input, with completion,
- validation, etc. From Topi Paavola <tjp cc jyu fi> with a bunch
- of my dirty hacks to make it act moslty like Jade's `prompt'
-
- * prompt-extras.jl: Some functions ported from Jade to do more
- esoteric prompting (files, directories, from a list, etc..)
-
-2000-02-28 John Harper <john dcs warwick ac uk>
-
- * shade-hover.jl (shade-hover-enter): allow shade-hover to be
- enabled by window shade-hover property
- * match-window.jl (match-window-properties): added shade-hover
-
- * gnome-menu.jl: on startup, arrange to read the menus off disk
- when the wm gets its first idle cycles -- this reduces latency
- when first displaying the root-menu
-
-2000-02-27 John Harper <john dcs warwick ac uk>
-
- * edges.jl (edges-within-epsilon,
- snap-window-position-to-edges): removed the need for separate
- `hysteresis' state, much simpler now (from merlin merlin org)
-
- * iconify.jl (uniconify-window): if the window is already in
- the current workspace never remove it
-
- * edges.jl (snap-window-position-to-edges): replaced the
- HYSTERESIS parameter by STATE. This cons cells records previous
- delta values and any currently snapped edges
- (edges-within-epsilon): new parameter OLD-EDGE, any previously
- snapped edge. Use this in resistance mode when the direction
- changes, but the pointer is still past the edge
- (adapted from merlin merlin org)
-
- * move-resize.jl (move-resize-snap-state): replaces the
- hysteresis variable
-
-2000-02-26 John Harper <john dcs warwick ac uk>
-
- * customize.jl (customize-ui-spec): when returning a sub-group
- get all its children as well
- * custom.jl: the iconify and maximize groups are now sub groups
- of the new group min-max
- (custom-menu-includes-all-settings): new variable
- * gnome-int.jl: use the capplet for configuring again
-
- * workspace.jl, viewport.jl, move-resize.jl, maximize.jl,
- grow-pack.jl: change min/max :group keys
-
-2000-02-25 John Harper <john dcs warwick ac uk>
-
- * sawmill.jl: define `quotient' as `/' unless already bound
- (backwards compatibility)
-
- * viewport.jl, viewport-linear.jl, tooltips.jl, size-window.jl,
- shade-hover.jl, place-window.jl, move-resize.jl, functions.jl,
- edge-flip.jl, configure.jl, auto-raise.jl: use `quotient'
- instead of `/' where appropriate
-
-2000-02-24 John Harper <john dcs warwick ac uk>
-
- * grow-pack.jl: update from Kai
-
- * x-cycle.jl (cycle-class): new command (from Kai Großjohann)
-
-2000-02-22 John Harper <john dcs warwick ac uk>
-
- * configure.jl (configure-choose-gravity): new method of
- choosing gravity from window geometry
- (configure-request-handler): deleted the equal-ratio thing,
- it's too complex, too many grey areas and special cases
-
- * grow-pack.jl: new file implements ctwm-like pack and grow
- functions, from Kai Grossjohann
-
-2000-02-21 John Harper <john dcs warwick ac uk>
-
- * edges.jl (get-visible-window-edges): don't include edges from
- unmapped windows, or windows on other viewports (bug pointed
- out by Tigert)
-
- * edges.jl (edges-within-epsilon): only snap open edges into
- closed edges and vice versa (and only when moving towards the
- edge)
-
- * configure.jl (configure-request-handler): handle all sorts of
- weird cases for the `equal-ratio' hack (from John N S Gill
- <jng renre com>, with extra cases added by me)
-
- * edges.jl (snap-window-position-to-edges): new arg HYSTERESIS,
- a cons cell to buffer deltas in (adapted from merlin merlin org)
- * move-resize.jl (move-resize-hysteresis): new variable
-
-2000-02-20 John Harper <john dcs warwick ac uk>
-
- * keymap.jl (quote-event): new command
- * keymaps.jl (window-keymap): bind `C-M-q' to quote-event
-
- * configure.jl (configure-request-handler): avoid
- divide-by-zero errors
-
- * edges.jl (edges-within-epsilon): support three modes of
- snapping now: `magnetism' (snap in and out), `resistance' (snap
- inwards), and `attraction' (snap outwards)
- (snap-window-position-to-edges): two extra parameters, the
- snapping mode, and the move deltas since the last call
-
- * move-resize.jl (move-snap-mode): new option
- (move-resize-motion): handle the new snapping methods,
- including saving the previous pointer position
- (move-resize-pos): removed this function
-
- * sawmill.jl: changed the load order (again). Load all
- libraries _before_ loading autoloads now
-
-2000-02-19 John Harper <john dcs warwick ac uk>
-
- * place-window.jl (define-placement-mode): new function, used
- for defining placement modes
- * smart-placement.jl: use define-placement-mode
-
- * focus.jl: reorganized, focus modes are now implemented
- modularly, each mode as a single function. Also enable focus
- modes to be defined on a per-window basis
- (define-focus-mode): new function
-
- * match-window.jl (match-window-properties): allow focus-mode
- to be settable
-
- * size-window.jl (size-window-vertically-plus,
- size-window-vertically-minus, size-window-horizontally-plus,
- size-window-horizontally-minus): new commands, to resizing as
- slide-window is to moving
-
-2000-02-18 John Harper <john dcs warwick ac uk>
-
- * smart-placement.jl (sp-prune-points): use a better medthod of
- pruning
- (sp-make-grid): ensure the screen edges aren't pruned
-
- * match-window.jl (match-window-properties): added
- `auto-gravity' option
-
- * configure.jl: don't infer gravity from position, it doesn't
- work too well. Instead keep position of window relative to each
- screen edge constant (unless gravity is specified)
-
-2000-02-17 John Harper <john dcs warwick ac uk>
-
- * match-window.jl (match-window-properties): new boolean
- property `unique-name'
-
- * functions.jl (uniquify-name): new function
- (uniquify-window-name): new command
-
- * move-resize.jl (resize-edge-mode): new option `border-grab'
-
-2000-02-16 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl (cycle-windows): handle multiply-modified events
- by decoding the event fully (adapted from Timo Korvola
- <tkorvola e math helsinki fi>)
-
- * decode-events.jl (string->keysym, modifier->keysyms): new
- functions
-
- * edge-flip.jl (edge-flip-only-when-moving): new option (from
- Yaron M. Minsky <yminsky cs cornell edu>)
-
-2000-02-15 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl (cycle-prefix): new command, look for a
- colon-delimited prefix in the name of the current window, then
- cycle around windows matching that prefix
-
-2000-02-14 John Harper <john dcs warwick ac uk>
-
- * version 0.24
-
- * workspace.jl: add calls to add-to-workspace-hook and
- remove-from-workspace-hook (they must have got deleted)
-
-2000-02-11 John Harper <john dcs warwick ac uk>
-
- * sawmill-defaults.jl: remove the custom-add-required thing,
- and don't require tooltips (custom-defaults will do this)
-
- * sawmill.jl: do the custom-add-required thing
-
- * sawmill.jl: require 'configure
-
- * configure.jl (choose-window-gravity-by-position): sets window
- gravity by the sector of the screen that the centre of the
- window is in
- (configure-auto-gravity): customize option controlling if the
- above function is called automatically
-
- * configure.jl (configure-request-handler): ConfigureRequest
- events are now handled in software. This handler also groks
- window gravity (default gravity may now be overridden by the
- `gravity' window property)
-
- * place-window.jl (adjust-window-for-gravity): look for gravity
- first in `gravity' window property
-
- * place-window.jl (place-window-centered-on-parent): new window
- placement mode, option `centered-on-parent'
-
- * move-resize.jl (resize-edge-mode): replaces options
- resize-by-frame-class and resize-add-edges. Also allows
- twm-style resizing (adapted from Mark Probst
- <schani mips complang tuwien ac at>)
-
- * decode-events.jl (decode-event, encode-events): new
- functions, map from opaque events to symbolic forms, and back
-
- * workspace.jl (ws-insert-workspace): fix off-by-one error if
- no BEFORE given (from Kirk Saranathan <ksaranat yahoo com>)
-
- * custom.jl (custom-add-to-group): don't add options more than once
-
-2000-02-10 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (window-menu): don't separate extra windows from
- normal windows if no normal windows (adapted from James Antill)
-
-2000-02-09 John Harper <john dcs warwick ac uk>
-
- * match-window.jl (match-window-properties): use
- placement-modes to get the list of placement options
-
- * place-window.jl (place-window-under-pointer): new placement
- mode `under-pointer'
- (place-window-modes): new variable, the list of all placement modes
-
-2000-02-08 John Harper <john dcs warwick ac uk>
-
- * customize.jl (customize-spec): translate group names
-
- * sm-init.jl (sm-init): remove -clientId as well as
- --sm-client-id options from saved-command-line-args
-
- * tooltips.jl (tooltips-unmapped): remove tooltips when their
- window is unmapped
-
-2000-02-06 John Harper <john dcs warwick ac uk>
-
- * maximize.jl: fixed single direction maximization toggle
- commands
-
- * tooltips.jl: option to display actual command documentation
- in tooltips. Use a monospaced font by default, and align the
- columns correctly
-
-2000-02-04 John Harper <john dcs warwick ac uk>
-
- * transient.jl (transient-map-window): look for
- focus-when-mapped window property
- * match-window.jl (match-window-properties): added
- focus-when-mapped
-
-2000-02-03 John Harper <john dcs warwick ac uk>
-
- * move-resize.jl, menus.jl: fixed for variables becoming
- functions
-
- * custom.jl (custom-default-file): new variable
- (custom-load-user-file): if no custom-user-file, then load
- custom-default-file (if it's non-nil)
- * custom-defaults.jl: new file
-
- * match-window.jl (match-window-features): new variable, map
- properties to features to load when they're set
-
-2000-02-01 John Harper <john dcs warwick ac uk>
-
- * sawmill-defaults.jl: don't (setq tooltips-enabled t)
-
- * move-resize.jl (move-resize-inhibit-configure): new option
-
-2000-01-31 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl: moved customization group to the focus tree
-
-2000-01-30 John Harper <john dcs warwick ac uk>
-
- * shade-hover.jl (shade-hover-before): only look for a binding
- of the current-event if the current-event actually exists
-
- * version 0.23
-
- * gnome-menu.jl: avoid generating empty submenus
-
- * workspace.jl (delete-empty-workspaces): avoid infinite loop
- when empty workspaces at ends of interesting subsequence
-
-2000-01-29 John Harper <john dcs warwick ac uk>
-
- * shade-hover.jl (shade-hover-raise): new option, raise windows
- as they're unshaded
-
- * custom.jl (custom-menu): generate a tree of menu items, not
- just a list of the top-level groups
-
- * shade-hover.jl: defcustom-ized (in group Focus/Shade Hover)
- * sawmill-defaults.jl: add shade-hover to the list of features
- required by customize
-
- * shade-hover.jl: use window enter/notify hooks instead of
- frame parts. This means that the window stays unshaded until
- the pointer leaves the _entire window_
-
-2000-01-28 John Harper <john dcs warwick ac uk>
-
- * menus.jl (root-menu): removed the `About' menu, it didn't
- work anymore anyway..
-
- * iconify.jl (display-window): call uniconify-window whenever
- the window is iconified, not only if it's also sticky or the
- uniconify-to-current-workspace option is set
-
- * shade-hover.jl: new file, temporarily unshades windows while
- the pointer is over their frame
-
-2000-01-27 John Harper <john dcs warwick ac uk>
-
- * smart-placement.jl (sp-normal-windows-weight): new variable
-
- * custom.jl (custom-declare-group): don't set custom-group-doc
- of group, it's not used anywhere and is redundant
-
- * functions.jl (warp-to-window-x-offset,
- warp-to-window-y-offset): customization options for
- warp-cursor-to-window (patch from Kai Großjohann
- <Kai Grossjohann CS Uni-Dortmund DE>)
-
- * viewport.jl (window-absolute-position): if the window is in
- the current viewport, return the _actual_ position, in case its
- top or left edges are off the screen
-
- * workspace.jl (ws-move-workspace): fixed this function
- (realized that there are four cases to the id transforms)
-
- * gnome-int.jl: don't use the gnome cc to invoke the
- configurator for now, they're are some issues to be resolved
-
- * customize.jl, custom.jl: custom groups are now organized as a
- tree. Specify the list of nodes to identify a subtree.
- Top-level groups are still addressable as single symbols. So,
- e.g., there's now a group `(appearance advanced)'
-
- * keymaps.jl (custom-keymap-group-widget): fixed for tree
- organization
-
- * workspace.jl, move-resize.jl, functions.jl, focus.jl: moved
- some customizations to `advanced' subgroups
-
- * sawmill-defaults.jl: add a default set of features to
- custom-required, if the user wants anymore, or has a
- .sawmillrc, they'll need to do it themselves
- * tooltips.jl, match-window.jl, edge-flip.jl, auto-raise.jl:
- don't add their features to custom-required anymore
-
-2000-01-26 John Harper <john dcs warwick ac uk>
-
- * functions.jl (delete-window-safely): new command, if the
- window doesn't support the WM_DELETE_WINDOW protocol, just beep
-
- * viewport-linear.jl (define-linear-viewport-commands): made
- into a user-visible function
-
-2000-01-25 John Harper <john dcs warwick ac uk>
-
- * functions.jl (get-window-wm-protocols): new function, returns
- a list of atoms
- (delete-window): now defined in lisp
-
- * slide-window.jl: provide 'slide-window
-
- * move-cursor.jl: new file, commands to move the cursor
- * move-resize.jl (move-resize-map): added bindings to cursor
- movement commands
-
-2000-01-24 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl (x-cycle-next): ignore windows with never-focus
- set, for obvious reasons
-
- * raise-commands.jl (raise-or-pass-through-click): new function
-
- * workspace.jl (window-menu): fix bug when calling make-label
- for sticky windows
-
-2000-01-23 John Harper <john dcs warwick ac uk>
-
- * workspace.jl: removed `order' from the swapped properties,
- doesn't work very intuitively
-
- * gnome-menu.jl: support for the `TryExec' field (from
- Ian <ijc25 cam ac uk>)
-
- * raise-commands.jl: new file, moves the
- raise-window-and-pass-through-click from stacking.jl, and
- adds raise-and-pass-through-click-if-focused
-
-2000-01-22 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl, move-resize.jl: require at compile time those
- modules whose variables we bind to
-
- * maximize.jl (maximize-window, unmaximized-window): use
- move-resize-window-to instead of separate calls
-
-2000-01-21 John Harper <john dcs warwick ac uk>
-
- * window-order.jl (window-order-focus-most-recent): ignore
- windows with their `never-focus' property set
-
- * ignore-window.jl (toggle-window-never-focus): new command
- * menus.jl (window-ops-toggle-menu): added `Focusable' item
-
- * edge-flip.jl (edge-flip-while-moving): only move non-sticky
- windows to the new workspace when flipping
-
- * move-resize.jl, menus.jl, frames.jl: removed all uses of
- `beep' to signal user errors, either ignore the error, or
- signal a real error
-
-2000-01-20 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (window-menu): include iconified windows, even
- when they're ignored; shorten sticky entries as usual (patch
- from James Antill)
-
- * move-resize.jl (move-resize-window): set
- synthetic-configure-mutex to t while moving
-
- * move-resize.jl (move-resize-finished, move-resize-apply): use
- move-resize-window-to to do simultaneous move&resize --
- elminates flicker
-
- * match-window.jl: in workspace setter function, convert the id
- from logical to physical where needed. Also, commented out the
- call to select the workspace
-
- * workspace.jl (workspace-id-to-logical,
- workspace-id-from-logical): functions for converting between
- workspace ids and offsets
-
- * gnome-match.jl: fix the property names I'd forgotten to change
-
- * maximize.jl (maximize-truncate-dims): fixed the truncation
- method
-
-2000-01-19 John Harper <john dcs warwick ac uk>
-
- * error-handler.jl: new file, displays rep errors in a message
- window
-
- * version 0.22
-
- * sawmill-gaol.jl: added most new frame-part functions
-
- * match-window.jl: adds its hook at the _end_ of
- before-add-window-hook
- * gnome.jl: adds its hook at the _start_ of
- before-add-window-hook
-
-2000-01-18 John Harper <john dcs warwick ac uk>
-
- * gnome-match.jl: new file, adds skip-winlist and skip-tasklist
- properties to window matching (from Ben Liblit
- <liblit cs berkeley edu>)
- * gnome.jl: if match-window has already been loaded, load
- gnome-match, otherwise arrange for gnome-match to be loaded
- immediately after match-window
-
-2000-01-15 John Harper <john dcs warwick ac uk>
-
- * iconify.jl (uniconify-window): when removing a window to put
- it onto the current workspace, ensure it's not hidden
- temporarily
-
-2000-01-14 John Harper <john dcs warwick ac uk>
-
- * gnome.jl (gnome-client-message-handler): change how
- WIN_STICKY and WIN_SHADED states are handled, don't bother with
- the cumbersome toggle method, just set the states directly
-
- * functions.jl (call-after-property-changed): can now be given
- a _list_ of X properties to monitor
- (call-after-state-changed): new function, monitors a list of
- window states (i.e. things like iconified, shaded, ...) and
- calls a function when any of them change. The
- window-state-change-hook now has a second argument (apart from
- the window), the list of symbolic states that changed
- * iconify.jl, ignore-window.jl, maximize.jl, shading.jl,
- stacking.jl: call window-state-change-hook with the list of
- changed states
- * iconify.jl, gnome.jl: use call-after-state-changed to prevent
- updating X properties that don't need changing
- * sticky.jl (make-window-sticky, make-window-unsticky): merge
- sticky and sticky-viewport properties more correctly
- * sawmill-gaol.jl: add call-after-state-changed to the list of
- safe functions
- [ these are mostly by James Antill <james and org> ]
-
- * sawmill.jl: load gettext _before_ loading standard libraries,
- otherwise many strings aren't translated up correctly
-
-2000-01-12 John Harper <john dcs warwick ac uk>
-
- * tooltips.jl, move-resize.jl, menus.jl: updated for changes to
- frame-part functions
-
-2000-01-11 John Harper <john dcs warwick ac uk>
-
- * sawmill-defaults.jl: removed default-font setting
-
- * frames.jl (mark-frame-style-editable, frame-style-editable-p,
- edit-frame-style): new functions (keeps track of which themes
- are defined using make-theme, and hence are editable)
- (sawmill-themer-program): variable naming program to launch to
- edit a theme
-
- * custom.jl (custom-menu): if the current theme is editable,
- add an entry for the edit-frame-style command
-
- * sawmill-gaol.jl (sawmill-safe-functions): added
- mark-frame-style-editable
-
-2000-01-10 John Harper <john dcs warwick ac uk>
-
- * gnome-menu.jl (gnome-menu-read-order): ensure that blank
- lines in .order files are ignored
-
- * keymaps.jl (window-keymap): bind move-window-interactively to
- M-Button1-Move not M-Button1-Click1. Pointed out by Matt Krai
- <krai ghs com>
-
- * gnome-menu.jl (gnome-menu-read-desktop-entry): handle null
- names when building menu items
-
-2000-01-09 John Harper <john dcs warwick ac uk>
-
- * iconify.jl (toggle-single-window-mode): set
- raise-windows-on-uniconify to nil while executing this command
-
- * version 0.21
-
- * iconify.jl (toggle-single-window-mode): new function
-
- * group-funs.jl (map-other-window-groups): new function
-
- * gnome.jl (gnome-event-proxyer): only proxy root button clicks
- if we don't want to keep the grab so as to receive future
- events
-
-2000-01-08 John Harper <john dcs warwick ac uk>
-
- * make-theme.jl (make-theme): memoize images as they're loaded
- so each one is only loaded once (no built-in image caching
- anymore)
-
- * frames.jl (reload-themes-when-changed): new defcustom
- (theme-update-interval): new variable, defaults to 60 seconds
-
- * frames.jl (reload-frame-style): new function, reload the
- named style, then reframe any windows using it
-
-2000-01-07 John Harper <john dcs warwick ac uk>
-
- * make-theme.jl (make-theme): handle the new pattern output
- from the themer (alist of states)
-
- * frames.jl (highlight-when-unfocused): deleted the defcustom,
- the variable has been removed
-
- * workspace.jl (workspace-swap-in): swap in the saved
- properties before the geometry, so that state is set by the
- time the window-moved and window-resized hooks are run
-
-2000-01-04 John Harper <john dcs warwick ac uk>
-
- * gnome-int.jl: new file, sets some things, deletes some menu
- items; tries to integrate further with GNOME
-
- * sawmill-defaults.jl: if it looks like we're running under
- GNOME, require gnome-int
-
-2000-01-03 John Harper <john dcs warwick ac uk>
-
- * sawmill-gaol.jl (sawmill-safe-functions): added the
- maximization predicates
-
- * maximize.jl (unmaximize-window): ensure that the window isn't
- maximized-p when it's moved and resized
-
- * make-theme-preview.jl (make-theme-preview): new optional arg TYPE
-
- * workspace.jl (ws-add-window-to-workspace): ensure that
- iconified windows are hidden
- (ws-add-window): fix adding of iconified sticky windows
-
- * iconify.jl (uniconify-window): fix the ``uniconify to current
- workspace'' option by reordering conditions
-
-2000-01-02 John Harper <john dcs warwick ac uk>
-
- * make-theme.jl: image decls now have attributes
-
-1999-12-31 John Harper <john dcs warwick ac uk>
-
- * make-theme.jl, make-theme-preview.jl: initial support for GUI
- theme builder
- * sawmill-gaol.jl: make-theme is safe to call
-
-1999-12-24 John Harper <john dcs warwick ac uk>
-
- * gnome.jl (gnome-set-workspace): set _WIN_AREA properties on
- client windows; by my reading of the spec this isn't correct,
- but the GNOME tasklist applet seems to require it
-
-1999-12-21 John Harper <john dcs warwick ac uk>
-
- * move-resize.jl (move-resize-map): Any-RET now completes the
- move or resize
-
- * tooltips.jl (tooltips-timeout-enabled): support for removing
- tooltips after a period of time (from Morgan Schweers
- <mrs BEST COM>)
-
- * edge-flip.jl (edge-flip-while-moving): fixed for new
- ws-move-window function; also, let edge-flip-delay be zero, to
- avoid nasty delayed effects
-
-1999-12-20 John Harper <john dcs warwick ac uk>
-
- * match-window.jl (match-window-grab-x-property): if a string,
- quote regexp meta-characters
-
-1999-12-19 John Harper <john dcs warwick ac uk>
-
- * version 0.20
-
- * match-window.jl (match-window): fix bug when matching against
- zero-element vectors
-
- * match-window.jl: added new pseudo property `ungrouped'
- meaning to put windows in their own anonymous group
-
- * menus.jl (window-ops-menu): removed/shortened a few items
-
-1999-12-18 John Harper <john dcs warwick ac uk>
-
- * workspace.jl: define copy-to-workspace:N commands.
- Fixed some problems with the merge-when-empty feature
-
-1999-12-17 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (delete-window-instance): new command
-
- * viewport-linear.jl: new file, based on code posted by Eric
- Kidd <eric kidd pobox com> to the mailing list
-
- * sawmill.jl: require iconify, set define-value if unbound
-
- * menus.jl (menu-preprocessor): removed the deprecated
- variable-expansion thing
-
- * iconify.jl: new file, extracted from workspace.jl
-
- * frames.jl, custom.jl, workspace.jl: use closures to create
- dynamic commands
-
-1999-12-16 John Harper <john dcs warwick ac uk>
-
- * move-resize.jl (move-resize-pos): move the position
- calculation to a separate function, fixes the problem of
- showing incorrect details while snapping (from merlin merlin org)
-
- * move-resize.jl (move-resize-apply): check that the window
- isn't being placed totally off-screen in either dimension
-
-1999-12-15 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (workspace-swap-in): handle frame-style
- specially (use knowledge that if frame-style property isn't
- set, then we should use the default-frame-style)
- (add-swapped-properties): new function
- * sawmill.jl: require 'workspace earlier
-
- * window-order.jl, stacking.jl, shading.jl, maximize.jl,
- frames.jl: use add-swapped-properties
-
- * gnome.jl (gnome-set-workspace): show windows on the workspace
- theyre currently swapped into, not the closest to the current one
-
- * sm-init.jl (sm-add-saved-properties): only add properties once
-
-1999-12-14 John Harper <john dcs warwick ac uk>
-
- * tooltips.jl (tooltips-delay): reduced to 500ms
-
- * gnome.jl (gnome-set-workspace): don't set _WIN_WORKSPACE
- property of sticky windows
-
- * workspace.jl: rewritten to use a cleaner set of abstractions,
- but more importantly to allow windows to appear on multiple
- workspaces (and to have different properties on each)
-
- * x-cycle.jl, window-order.jl, smart-placement.jl, menus.jl,
- match-window.jl, gnome.jl: updated to use the new workspace
- interface
-
- * viewport.jl (window-absolute-position): new function
-
- * functions.jl (map-windows): new macro, map a function over
- all windows
-
-1999-12-13 John Harper <john dcs warwick ac uk>
-
- * gnome-menu.jl (gnome-menu-read-desktop-entry): recurse into
- directories if the desktop file is called ".directory", not if
- it has Type=directory (these may actually be files)
-
- * tooltips.jl: ignore null keymaps; yellow background color
-
- * sawmill-defaults.jl: turn on tooltips by default
-
- * tooltips.jl: massively simplified how we know when to remove
- the tooltip window--just hook into pre-command-hook and
- frame-part-leave-hook
-
- * stacking.jl (raise-window-and-pass-through-click): only call
- forget-button-press if a frame part isn't clicked
-
- * gnome-commands.jl (gnome-logout): should be --kill not --quit
- (from Jens Finke <pearl darkride net>)
-
-1999-12-12 John Harper <john dcs warwick ac uk>
-
- * version 0.19
-
- * x-cycle.jl: disable tooltips while cycling
-
- * tooltips.jl: new file, implements tooltips for frame parts
- with keymaps
-
- * window-order.jl: hack around the annoying behaviour when
- switching workspace with sticky windows existing
-
- * move-resize.jl (move-resize-window): if
- move-resize-raise-window is set, and mode is not opaque, then
- raise the window _after_ the move/resize
-
-1999-12-10 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (window-in-workspace-p,
- windows-share-workspace-p): new functions, first attempt at
- abstracting workspace interface; only gnome.jl groks the
- `workspace' property now (though others use it as a black box)
-
- * x-cycle.jl, window-order.jl, stacking.jl, smart-placement.jl:
- use window-in-workspace-p and windows-share-workspace-p
-
- * select-window.jl, move-resize.jl: the foo-cursor-shape
- variables may now contain actual cursor objects
-
- * custom.jl (custom-menu): gettextized a string
-
-1999-12-09 John Harper <john dcs warwick ac uk>
-
- * gnome-menu.jl (gnome-menu-read-directory): sort entries whose
- order wasn't specified by a `.order' file
-
- * keymaps.jl (custom-set-keymap): ensure that we ungrab the
- keymap _before_ destructively modifying the original value, not
- afterwards
-
- * workspace.jl (ws-set-client-state): WM_STATE property should
- have two values, not only one
-
- * customize.jl (default-bevel-percent): defcustom for this new
- built-in variable
-
-1999-12-08 John Harper <john dcs warwick ac uk>
-
- * sawmill.jl: recognize -clientId as a synonym for
- --sm-client-id; always look for --disable-nls option
-
- * menus.jl (window-ops-toggle-menu): into a separate variable
-
- * match-window.jl: added `never-focus'; added `size' pseudo
- property; negative `position' components count in from the
- right/bottom
-
- * gnome.jl (gnome-honour-client-state): recognize panel and gmc
- icons by WM_CLASS. Set `never-focus' property of icons
-
- * gnome-commands.jl (gnome-logout): new command
-
- * functions.jl (window-really-wants-input-p): look for a
- property `never-focus'
- (resize-window-with-hints): resize window by increments
-
- * focus.jl: add `never-focus' to the properties saved with the
- session
-
- * stacking.jl (raise-window-and-pass-through-click): call
- forget-button-press so that double-clicks pass through okay
-
-1999-12-07 John Harper <john dcs warwick ac uk>
-
- * auto-raise.jl (raise-windows-on-focus): this may no longer be
- a regexp, instead there's a window property `raise-on-focus'
- allowing per-window settings
- * move-window.jl, x-cycle.jl (move-resize-window,
- cycle-windows): disable auto-raising when appropriate
- * match-window.jl: added new property `raise-on-focus'
-
- * frames.jl (define-frame-class): if creating a keymap, make
- its variable special
-
- * match-window.jl (match-window-grab-x-property): new function,
- used by the ui to grab properties
-
- * custom.jl (custom-declare-variable): fix conversion of old
- `set' types to the new method
-
-1999-12-06 John Harper <john dcs warwick ac uk>
-
- * frames.jl (define-frame-class): if creating a keymap, add it
- to the gaolled environment
-
- * menus.jl (popup-apps-menu): fixed (from Gérard Milmeister
- <gemi bluewin ch>)
-
-1999-12-05 John Harper <john dcs warwick ac uk>
-
- * version 0.18
-
- * x-cycle.jl, move-resize.jl, keymap.jl: replaced show-message
- by display-message
-
- * menus.jl (window-ops-menu, root-menu): just use function
- names of dynamic sub-menus, don't create closures
-
-1999-12-04 John Harper <john dcs warwick ac uk>
-
- * frames.jl (rebuild-frames-with-style,
- reframe-windows-with-style): new functions
-
- * maximize.jl (maximize-window): respect the window's size
- hints, both to see if the window is maximizable, and to
- truncate the maximized dimensions to an integral size
-
-1999-12-03 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (select-workspace): only hide/show windows whose
- `placed' property is set
-
- * x-cycle.jl (x-cycle-modifier-alist): support the Hyper
- modifier
-
- * workspace.jl (ws-after-removing-window): fix the logic
- deciding when it's necessary to switch workspaces after merging
-
- * x-cycle.jl (cycle-windows): grab the keyboard to the
- currently focused window, prevents the ``lose focus with a
- single bug''
-
- * move-resize.jl (resize-add-edges): new option, controls
- whether single direction resizes can be upgraded to two
- directions
-
- * smart-placement.jl (sp-max-queued-events): increased from 20
- to 256, seems to still have the desired effect (passes the
- `gimp /usr/share/pixmaps/*.png &' test)
-
-1999-12-02 John Harper <john dcs warwick ac uk>
-
- * match-window.jl: added pseudo-properties: position and
- viewport
-
- * workspace.jl, viewport.jl, gnome.jl, focus.jl: changed
- property names: fixed-position => sticky-viewport, and
- focus-proxy-click => focus-click-through
-
- * menus.jl (menu-preprocessor): deprecated the ``expand
- variables when first in list'' behaviour, it's too crufty to
- live. Now we have lisp-1 behaviour it's possible to expand
- variables when the list is dotted to them, as was previously
- done only for functions
- * gnome-menu.jl: changed how apps-menu is hijacked
-
- * workspace.jl, transient.jl, stacking.jl, group-funs.jl,
- functions.jl, frames.jl: removed all the auto-foo-alist and
- bar-windows-re variables -- match-window can do all this stuff
- in one place
-
- * frames.jl (site-theme-directory): new variable, put in the
- theme-load-path, set to ${prefix}/share/sawmill/themes by default
-
-1999-12-01 John Harper <john dcs warwick ac uk>
-
- * match-window.jl: added customize support
-
- * custom.jl: deprecated the `(set SYMBOLS..)' type, replaced by
- `symbol' with an extra tag `:options (SYMBOLS...)'
- (custom-get-options, custom-add-option): new macros for
- extending symbol-type defcustom's
-
- * workspace.jl, stacking.jl, place-window.jl, move-resize.jl,
- focus.jl, edge-flip.jl, customize.jl: work with the new
- `symbol' custom type
-
-1999-11-30 John Harper <john dcs warwick ac uk>
-
- * match-window.jl: new file, a method of matching windows (by
- their X properties) to sawmill window properties without the
- need for custom hook functions. Will get a GUI at some point
-
-1999-11-29 John Harper <john dcs warwick ac uk>
-
- * functions.jl (warp-cursor-to-window): rewritten in lisp; also
- when given no position it focuses on the inside top-left corner
- of the frame, should overlay more frame styles
-
- * maximize.jl (maximize-expand-edges): fix typos from updates
- for single namespace (Gérard Milmeister <gemi bluewin ch>)
-
- * workspace.jl: reworked the map-notify and unmap-notify hook
- functions; they work again now
-
- * compat.jl (show-message): implemented in terms of the new
- display-message function
-
-1999-11-28 John Harper <john dcs warwick ac uk>
-
- * version 0.17
-
- * menus.jl (window-ops-menu): added some more `Toggle' items
-
- * ignore-window.jl: new file, mostly by Julian Missig
- <julian linuxpower org> (X-ViRGE) controls the `ignored'
- property of windows on-the-fly
-
- * gnome.jl: call gnome-set-client-list from the
- workspace-state-change-hook
-
- * gnome-commands.jl: new file, a few commands to toggle the
- skip-tasklist and skip-winlist hints
-
-1999-11-26 John Harper <john dcs warwick ac uk>
-
- * keymaps.jl (custom-set-keymap): catch and ignore errors when
- parsing event descriptions
-
- * place-window.jl (place-window): adjust position for window
- gravity (mostly from merlin <merlin merlin org>)
-
- * slide-window.jl: new file, commands to move windows/groups
- incrementally
-
-1999-11-25 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl, workspace.jl, window-order.jl, viewport.jl,
- transient.jl, stacking.jl, smart-placement.jl, sm-save.jl,
- sm-load.jl, sm-init.jl, shading.jl, server.jl, sawmill.jl,
- sawmill-gaol.jl, rects.jl, place-window.jl, open-look.jl,
- mwm.jl, move-resize.jl, menus.jl, maximize.jl, keymaps.jl,
- keymap.jl, gtkrc.jl, groups.jl, group-funs.jl, gnome.jl,
- gnome-menu.jl, functions.jl, frames.jl, focus.jl, edges.jl,
- edge-flip.jl, customize.jl, custom.jl, auto-raise.jl: updated
- for single namespace and scheme-like function semantics
-
-1999-11-20 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl, workspace.jl, move-resize.jl, maximize.jl,
- group-funs.jl, frames.jl, edge-flip.jl, customize.jl: rewrote
- documentation for some options
-
-1999-11-19 John Harper <john dcs warwick ac uk>
-
- * sawmill.jl: check LC_ALL and LC_MESSAGES before LANG
-
- * gnome-menu.jl (gnome-menu-lang): look in LC_ALL before LANG
- (gnome-menu-read-desktop-entry): accept wider language types
-
- * sm-init.jl (sm-init): use process-id instead of getpid
-
- * viewport.jl, custom.jl: remerged viewport and workspace
- custom groups
-
- * viewport.jl (window-outside-workspace-p): fixed for off left
- or top of workspace
-
- * sawmill.jl: load i18n support when $LANG is defined and != `C'
-
-1999-11-18 John Harper <john dcs warwick ac uk>
-
- * transient.jl, auto-raise.jl: change some custom docs
-
- * workspace.jl, menus.jl, keymap.jl, group-funs.jl,
- gnome-menu.jl, frames.jl, customize.jl: mark strings for i18n
-
- * frames.jl (find-all-frame-styles): sort case-insensitively
-
-1999-11-17 John Harper <john dcs warwick ac uk>
-
- * sawmill-gaol.jl (sawmill-safe-functions): removed window-put
-
- * stacking.jl (raise-window-and-pass-through-click): new
- command
-
-1999-11-15 John Harper <john dcs warwick ac uk>
-
- * gtkrc.jl: call gaol-rebuild-environment after being loaded
-
- * sawmill-gaol.jl: added the gradient functions to the list
- (since the gaol now handles non-fboundp functions)
-
-1999-11-11 John Harper <john dcs warwick ac uk>
-
- * frames.jl (themes-are-gaolled): new variable, set it to nil
- to remove the gaol around loaded themes
-
- * sawmill-gaol.jl: new file, customize rep's gaol for sawmill
- * sawmill.jl: require sawmill-gaol
-
- * functions.jl (call-after-property-changed): new function, a
- safe alternative to property-notify-hook (only accepts closures)
-
- * gtkrc.jl: add safe functions and variables to the gaol
- (gtkrc-call-after-changed): safe alternative to gtkrc-changed-hook
-
-1999-11-10 John Harper <john dcs warwick ac uk>
-
- * workspace.jl, menus.jl, group-funs.jl, gnome-menu.jl,
- frames.jl, custom.jl: updated for lexically scoped rep
-
-1999-11-09 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (ws-window-mapped): call ws-add-window to move
- the window to the correct workspace
-
- * place-window.jl: fix interactive placement
-
- * gnome-menu.jl (gnome-share-directory): fix PATH searching
-
-1999-11-07 John Harper <john dcs warwick ac uk>
-
- * version 0.16
-
- * gtkrc.jl: moved some code back to the gtk theme, since it's
- pretty non-reusable; don't load bg pixmaps unless asked to by
- the theme; new variable gtkrc-base
-
-1999-11-06 John Harper <john dcs warwick ac uk>
-
- * group-funs.jl: added a third type of group id: symbols for
- user defined named groups, only these are session-managed
- (auto-group-alist, persistent-group-ids): new variables
-
- * functions.jl (get-window-by-id): deleted, now a subr
-
- * group-funs.jl: moved all window groups functions froms
- functions.jl to this new file. Added support for user-defined
- groups--the `group' property may define the group-id of a
- window (so far always an integer, but eq is okay)
- * sawmill.jl: require 'group-funs
-
- * menus.jl (window-ops-menu): slightly reorganised, added a
- submenu for the window's group
-
-1999-11-05 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl (cycle-group): new command, cycle through all
- windows in the group of the current window
-
- * x-cycle.jl (x-cycle-next): abort immediately if there's no
- windows to cycle through
-
- * place-window.jl: placement modes are now defined by symbols
- having the `placement-mode' property--a function to call
-
- * smart-placement.jl (place-window-first-fit-or-interactive):
- new placement mode, fall back to interactive placement if
- there's not enough space for the window
-
- * move-resize.jl (move-cursor-shape, resize-cursor-shape): new
- variables
- * select-window.jl (select-window-cursor-shape): new variable
-
-1999-11-04 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (iconify-whole-group, uniconify-whole-group):
- new options
- (make-window-sticky, make-window-unsticky): new commands
- (uniconify-to-current-workspace, raise-windows-on-uniconify,
- focus-windows-on-uniconify): moved to iconify group
-
- * groups.jl: new file, provides window-group variants of many
- window commands
-
- * functions.jl (transients-are-group-members): new option, put
- transient windows in the same group as their parent window
-
- * custom.jl: added `iconify' group
- * viewport.jl (uniconify-to-current-viewport): moved to iconify
- group
-
- * menus.jl (popup-menu): when specifying a position, ensure
- that it's not less than zero
-
- * functions.jl (windows-in-group, map-window-group): new
- functions
-
- * menus.jl (popup-menu): ungrab the keyboard as well as the
- pointer
-
-1999-11-03 John Harper <john dcs warwick ac uk>
-
- * gtkrc.jl (gtkrc-background-colors): new variable, always set
- to the list of background colors
-
- * frames.jl (theme-suffix-regexps): fixed for `.tar' suffix
-
-1999-11-02 John Harper <john dcs warwick ac uk>
-
- * edge-flip.jl: reinstated the separate edge-flip custom group
-
- * gnome-menu.jl: scan $PATH for gnome-share-directory, added
- /etc/X11/applnk to list of directories, added code to merge
- duplicated sub-menus
-
- * move-resize.jl (move-resize-window): don't abort if it's not
- possible to grab the keyboard, only the ESC binding depends on it
-
- * edge-flip.jl (edge-flip-type): new option, allows the user to
- choose to flip workspaces, not viewports
-
-1999-11-01 John Harper <john dcs warwick ac uk>
-
- * gnome-menu.jl: catch and ignore errors when opening files
-
- * maximize.jl (maximize-fill-window): use dont-avoid-ignored
- variable instead of non-existent avoid-ignored
-
- * functions.jl (dont-avoid-ignored): set to t by default
-
- * frames.jl (find-all-frame-styles): ignore duplicates
-
-1999-10-31 John Harper <john dcs warwick ac uk>
-
- * version 0.15
-
- * move-resize.jl (move-resize-motion): use call-window-hook to
- invoke the while-moving-hook and while-resizing-hook
-
- * sawmill.jl (fallback-frame-style): now set to microGUI
-
- * keymaps.jl (custom-set-keymap): preserve eq-ness of old and
- new keymap when overwriting an existing keymap definition
-
-1999-10-30 John Harper <john dcs warwick ac uk>
-
- * custom.jl: added a viewport customization group
- * viewport.jl, edge-flip.jl: options now in viewport group
-
- * edge-flip.jl: only require things when they're actually
- needed
-
- * menus.jl: removed the unneeded custom-require autoload
-
- * edge-flip.jl: let this be enabled/disabled via customization
-
- * frames.jl (frame-style-directory): themes in tar files are
- now expected to have a top-level directory with the same name
- as the theme
-
-1999-10-29 John Harper <john dcs warwick ac uk>
-
- * move-resize.jl (move-resize-motion): when only one edge is
- being resized, and the pointer moves past the end of that edge,
- start resizing that edge as well
-
- * workspace.jl (delete-empty-workspaces): new command
-
- * focus.jl (focus-push-map, focus-pop-map): functions for
- installing and remove the click-to-focus map, they preserve the
- original keymap
-
-1999-10-28 John Harper <john dcs warwick ac uk>
-
- * smart-placement.jl (sp-make-grid): sort the grid (so
- first-fit always works from top-left)
-
- * viewport.jl (window-outside-viewport-p): don't include
- windows at the left border of the next viewport (from Andreas
- Degert <ad papyrus-gmbh de>)
-
- * custom.jl: removed support for old-style ~/.sawmill-custom
- files
-
- * focus.jl (click-to-focus-keymap): only bind the first three
- mouse buttons (the others are often apparently used for the
- wheel thing)
-
-1999-10-27 John Harper <john dcs warwick ac uk>
-
- * rects.jl (rectangles-from-windows): replace the weight-alist
- parameter by weight-fun, an optional function to return the
- window's weight
-
- * functions.jl (avoided-windows-re, window-avoided-p,
- avoided-windows): moved from maximize.jl and generalized,
- property to set is now `avoid' instead of `maximize-avoid'
- * maximize.jl: use the common avoided windows mechanism
- * gnome.jl: set `avoid' property not `maximize-avoid'
-
- * smart-placement.jl (sp-important-windows,
- sp-auto-weight-alist): deleted these variables, any windows
- that aren't avoided-p get given weight sp-avoided-windows-weight;
- other windows can have their `placement-weight' property set
-
- * stacking.jl (transients-above): changed default value to none
-
- * move-resize.jl: use query-button-press-pointer instead of
- query-last-pointer
-
- * maximize.jl (maximize-avoided-windows): don't include
- unmapped windows
-
- * maximize.jl (maximize-expand-edges): rewrote the (not
- maximize-always-expands) case, so that it works (find the
- largest gap)
-
-1999-10-26 John Harper <john dcs warwick ac uk>
-
- * sm-load.jl (sm-match-window-to-alist): match isn't successful
- _unless_ either SM_CLIENT_ID or WM_COMMAND matches
-
- * move-resize.jl (move-resize-motion): call while-moving-hook
- or while-resizing-hook in between erasing the old outline and
- drawing the new one
-
- * edge-flip.jl (edge-flip-while-moving): make edge flipping
- work while dragging windows
-
- * maximize.jl (maximize-expand-edges): fix problem with
- immediately adjacent edges being ignored
-
- * functions.jl (uniquify-list): new function
- * edges.jl, rects.jl (grid-from-edges, grid-from-rectangles):
- uniquify the grid
-
-1999-10-25 John Harper <john dcs warwick ac uk>
-
- * version 0.14.2
-
- * maximize.jl (maximize-do-both): sort grid before passing it
- to rectangles-from-grid, this stops things going _really_
- ballistic
-
- * edge-flip.jl: new file, viewport flipping by pushing the
- pointer against the screen edges
-
- * viewport.jl (set-screen-viewport, move-viewport): document
- that these now return t if they actually move the viewport
-
- * version 0.14.1
-
- * maximize.jl (maximize-do-both): only choose rectangles that
- are fully on the screen
-
- * rects.jl (rect-wholly-visible-p): new function
-
- * rects.jl (rectangles-from-grid): fixed this function (only
- traversing the list of y points once)
-
- * smart-placement.jl (sp-do-placement): fix for when
- sp-important-windows is nil
-
- * maximize.jl (maximize-do-both): deleted unused `center'
- variable
- (maximize-window): delete the window itself from the list of
- avoided windows
- (both from Rob Hodges <s323140 student uq edu au>)
-
-1999-10-24 John Harper <john dcs warwick ac uk>
-
- * version 0.14
-
- * workspace.jl (static-workspace-menus): expanded some items
- * menus.jl (root-menu): swapped position of Workspace and
- Window menus
-
- * place-window.jl (place-window-interactively): swallow any
- pending X events before doing the interactive placement
-
- * frames.jl: reframe the window when it's shape changes (in
- case it changed from unshaped to shaped, or vice versa)
-
- * move-resize.jl (resize-by-frame-class): new option, link
- edges moved when resizing to the clicked frame part, not to the
- mouse position (so the behaviour matches the cursor shape)
-
-1999-10-23 John Harper <john dcs warwick ac uk>
-
- * menus.jl (window-ops-menu): cleaned up a bit; added some more
- items
-
- * stacking.jl (transients-above): replaces the
- transients-above-parents option
-
- * viewport.jl (uniconify-to-current-viewport): new option
-
- * stacking.jl (raise-window-depth): add restack-by-depth to the
- after-initialization-hook
-
-1999-10-22 John Harper <john dcs warwick ac uk>
-
- * maximize.jl (maximize-avoided-windows): look for a
- maximize-avoid property
-
- * gnome.jl (gnome-honour-client-state): for panel windows, set
- the focus-proxy-click and maximize-avoid properties
-
- * menus.jl: set frame-draw-mutex while menus are popped up
-
- * keymaps.jl (menu-button-keymap): bind popup-window-menu to
- `Button1-Click1' instead of `Button1-Off'
-
- * sawmill.jl: if the root window has any property whose name
- starts with `GNOME_', then require 'gnome
-
- * menus.jl (popup-menu): if the menu is popped from a frame
- part whose class ends in `-button', align the menu to the
- bottom-left corner of the button
-
-1999-10-21 John Harper <john dcs warwick ac uk>
-
- * maximize.jl (maximize-ignore-when-filling): new option, other
- cleanups
-
- * custom.jl: added `maximize' group
- * move-resize.jl (move-lock-when-maximized): now in maximize
- group
-
- * maximize.jl: handle 2D maximization separately, look for the
- largest rectangle that doesn't contain any reserved windows
-
- * rects.jl: new file, operations on rectangles, some functions
- copied from smart-placement.jl and renamed, some new functions
- * smart-placement.jl: use rects.jl
-
- * edges.jl (grid-from-edges): new function
-
-1999-10-20 John Harper <john dcs warwick ac uk>
-
- * frames.jl (def-frame-class): new macro
-
- * keymaps.jl (window-keymap): bind popup-window-menu to
- button-press not button-release event
-
- * move-resize.jl (move-lock-when-maximized): new option, lock
- geometry on x/y/both axes depending how the window is maximized
- * menus.jl (popup-menu): pass the server timestamp argument
- across
-
- * maximize.jl: discard/update maximized window state when
- window is moved or resized
-
- * move-resize.jl: call hooks before-move-hook, after-move-hook,
- before-resize-hook, and after-resize-hook
-
- * maximize.jl (maximize-avoided-windows-re): new option,
- controls which windows shouldn't be obscured when maximizing.
- Also added `maximize-fill' commands, these maximize a window
- without obscuring any other windows. 2D maximization is treated
- as two 1D maximizations, this is sub-optimal..
- * menus.jl (window-ops-menu): added maximize-fill menus
-
- * edges.jl (get-visible-window-edges): new arg :windows,
- supplies the list of windows to include. The edge structure is
- now (X Y1 Y2 OPEN-P) or equiv. where OPEN-P defines if the edge
- opens or closes a window
-
-1999-10-19 John Harper <john dcs warwick ac uk>
-
- * move-resize.jl (move-resize-roundup): take an optional MAX
- argument, from the window's size hints
-
- * place-window.j: added `centered' placement style
-
- * menus.jl (popup-menu): if the spec is a function, call it
-
-1999-10-18 John Harper <john dcs warwick ac uk>
-
- * viewport.jl: added window-order-focus-most-recent to the
- viewport-moved-hook
-
- * gtkrc.jl (gtkrc-apply-style): fall back to default-font if
- the gtk style font isn't available
-
-1999-10-17 John Harper <john dcs warwick ac uk>
-
- * version 0.13
-
- * stacking.jl, transient.jl: moved the code to handle raising
- transient windows on mapping to stacking.jl, renamed
- transient-layer-delta as transient-depth, this is now the
- _minimum_ depth
-
- * frames.jl: support for loading themes stored in tar files
-
- * gnome.jl (gnome-honour-client-state): disable use of the
- _WIN_MAXIMIZED_ hints, since it doesn't work properly, and it
- breaks other stuff
-
-1999-10-15 John Harper <john dcs warwick ac uk>
-
- * transient.jl (transient-layer-delta): new variable
- (transient-map-window): don't only raise windows with parents
-
- * Makefile.in: use old method of compiling lisp files, just
- call compile-lib-batch
-
- * compat.jl: new file, provide some compatibility for obsolete
- functions
- * sawmill.jl: require 'compat
-
- * workspace.jl: renamed ws-workspace-limits as workspace-limits
- and ws-workspace-empty-p as workspace-empty-p
-
-1999-10-14 John Harper <john dcs warwick ac uk>
-
- * smart-placement.jl (sp-max-queued-events): new variable, acts
- as a throttle, revert to random placement when more than this
- many X events are pending
-
- * transient.jl (transient-unmap-window): added to
- iconify-window-hook
-
- * frames.jl (set-frame-part-value): new function
-
-1999-10-13 John Harper <john dcs warwick ac uk>
-
- * sm-init.jl (sm-after-restore-hook): new hook
-
- * window-order.jl: after loading session compress the stack
- (window-order-compress): remove `order' properties of windows
- not in the order stack
-
- * move-resize.jl: typing `ESC' during move/resize cancels the
- operation, restoring the original geometry
-
- * workspace.jl (select-workspace): only call
- window-order-focus-most-recent if not in enter-exit focus mode
-
- * transient.jl (transient-unmap-window): unless enter-exit
- focus mode, refocus the most recently focused window
-
- * smart-placement.jl (sp-prune-points): try to prune the grid
- of tested positions (otherwise the algorithm becomes
- intractable for large numbers of windows)
-
- * gnome.jl: don't use WIN_AREA to preserve window->viewport
- mapping during restart
-
- * viewport.jl: don't move all windows to single viewport on
- exit
- (move-window-to-current-viewport): only move if the window is
- really outside the viewport
-
- * stacking.jl: hook into map-notify-hook instead of
- reparent-notify-hook (which isn't called any longer)
-
- * gnome.jl (gnome-set-client-list): include ignored clients
- (gnome-ignored-windows-in-client-list): new variable, defaults
- to t
-
-1999-10-12 John Harper <john dcs warwick ac uk>
-
- * frames.jl (highlight-when-unfocused): declare this option
-
- * viewport.jl (window-outside-workspace-p): fix bug
-
- * workspace.jl (ws-move-window): only move a window if it's not
- already on the destination workspace
-
- * viewport.jl (window-viewport): new function
-
- * gnome.jl: use _WIN_AREA properties on windows to preserve
- window->viewport mapping during restart
-
- * viewport.jl (viewport-before-exiting): add this to the
- before-exit-hook instead of an anonymous function
-
-1999-10-10 John Harper <john dcs warwick ac uk>
-
- * version 0.12
-
- * workspace.jl (ws-add-window): if window is iconified hide it
- (ws-remove-workspace): twiddle first-interesting-workspace if
- necessary
-
- * workspace.jl (ws-saved-state): fixed
-
- * customize.jl (default-font): add after-setting-frame-option
- as :after-set function
-
-1999-10-08 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (select-workspace): grab the server while
- hiding/showing windows, should decrease the actual number of
- grabs required
-
- * functions.jl (ignore-window-input-hint): t by default (law of
- least-surprises..)
-
-1999-10-07 John Harper <john dcs warwick ac uk>
-
- * frames.jl (window-type): handle the decorate-transients
- property here now, instead of in set-window-frame-style
-
- * place-window.jl (place-window): ignore-program-position may
- now be set for each window
- (place-window-randomly): handle dimensions >= the screen
- * smart-placement.jl (sp-do-placement): handle window
- dimensions near or greater the screen size better
-
- * workspace.jl (lock-first-workspace): enabled by default (too
- many people think the other behaviour is a bug)
-
- * viewport.jl (window-outside-viewport-p): new function
-
- * window-order.jl (window-order): new optional arg ALL-VIEWPORTS
-
- * x-cycle.jl (cycle-all-viewports): new option
-
- * workspace.jl (lock-first-workspace): this option now locks
- the last interesting workspace as well as the first
- (ws-normalize-indices): normalise the first- and
- last-interesting-workspace variables
- (ws-load-state): don't treat saved workspace indices as logical
- indices (this could merge workspaces)
-
- * frames.jl (frame-style-menu): affect the current-event-window
- instead of the input-focus
-
- * gnome.jl: map _WIN_HINTS_SKIP_FOCUS to our ignored property,
- remove hack of matching window names
-
-1999-10-06 John Harper <john dcs warwick ac uk>
-
- * frames.jl (window-type-remove-title,
- window-type-remove-border): map shaped-transient to unframed
-
- * gnome-menu.jl (gnome-menu-read-desktop-entry): bug fix when
- type isn't specified
-
- * menus.jl (popup-apps-menu): new command
-
-1999-10-05 John Harper <john dcs warwick ac uk>
-
- * gnome.jl: set the _WIN_UNIFIED_AREA root property; I'm using
- this to tell desk-guide to move the viewport on all desktops at
- once, this may have to change..
-
- * x-cycle.jl (cycle-disable-auto-raise): new option
-
- * x-cycle.jl: use the new window-order code for maintaining the
- stack
-
- * workspace.jl (ws-move-window): new optional arg, WAS-FOCUSED,
- when t the window is refocused when moved to the new space
- (select-workspace): new optional arg DONT-FOCUS, if nil the
- most recently used window on the new workspace is focused
-
- * workspace.jl: when moving windows, try to preserve focus
- where desirable
-
- * window-order.jl: new file, generalize interface to the stack
- of most recently used windows kept by the cycle-windows
- function
-
- * focus.jl (focus-in-fun): unless focus-dont-push is set, add
- the focused window to the top of the order stack
-
- * version 0.11
-
- * workspace.jl (lock-first-workspace): new option
-
- * transient.jl: put transient-add-window in the
- before-add-window-hook instead of the add-window-hook
-
-1999-10-04 John Harper <john dcs warwick ac uk>
-
- * functions.jl (window-really-wants-input-p): new function,
- calls window-wants-input-p unless the
- `ignore-window-input-hint' option, or window property, is t
- * x-cycle.jl, workspace.jl, transient.jl, focus.jl: use
- window-really-wants-input-p instead of window-wants-input-p
-
- * x-cycle.jl (cycle-warp-pointer, cycle-focus-windows): new
- options
-
- * version 0.10.1
-
- * smart-placement.jl (sp-do-placement): if no position with
- padding, try without padding
-
- * gnome.jl (gnome-set-workspace): delete the _WIN_WORKSPACE
- property of sticky windows
-
- * workspace.jl (ws-add-window): ensure that sticky windows are
- added to no workspaces and are visible
-
-1999-10-03 John Harper <john dcs warwick ac uk>
-
- * version 0.10
-
- * workspace.jl (auto-workspace-alist): new variable, maps
- window names to the workspace they should start on
-
- * gnome.jl (gnome-honour-client-state): when _WIN_WORKSPACE is
- set, just set the window's `workspace' property
-
- * smart-placement.jl (sp-important-windows-weight): new
- variable, also, changed the weight from 1000 to 10
- (sp-auto-weight-alist): new variable, map window names to
- overlap weights
- (sp-do-placement): truncate the window's dimensions to those of
- the screen
-
- * menus.jl: instead of saving and restoring the _focused_
- window while the menu is popped, save the window that gave us
- the current event, then reinstate it when dispatching the
- selected command
-
- * workspace.jl: replace all %f interactive decls by %W
-
- * keymaps.jl: noted in doc strings that certain keymaps are
- only useful for mouse-bindings
-
- * viewport.jl (set-viewport): call viewport-moved-hook from
- here, instead of set-screen-viewport
-
-1999-10-02 John Harper <john dcs warwick ac uk>
-
- * gnome-menu.jl: new file, read the GNOME menu entries and
- replace the apps-menu
-
- * workspace.jl (ws-saved-state, ws-load-state): normalize
- workspace numbers to zero when saving/loading the session
-
- * viewport.jl (set-window-viewport, move-window-viewport): new
- functions
- (move-window-left, move-window-right, move-window-up,
- move-window-down): new commands
-
-1999-10-01 John Harper <john dcs warwick ac uk>
-
- * viewport.jl (move-viewport-to-window): new function
- * x-cycle.jl, workspace.jl: call move-viewport-to-window when
- necessary
-
- * frames.jl (set-window-frame-style): if decorate-transients is
- set and the window is a transient, only upgrade the type if it
- hasn't been set explicitly
-
- * keymap.jl (read-event): new function, grab the keyboard then
- return the next event
-
-1999-09-30 John Harper <john dcs warwick ac uk>
-
- * gnome.jl (gnome-exit): delete _WIN_AREA and _WIN_AREA_COUNT
- from the root window
-
- * keymaps.jl (global-keymap): removed the C-Up and C-Down
- bindings
-
- * viewport.jl: new file, support virtual workspaces
- * workspace.jl: deleted the workspace-columns hack, set
- fixed-position property of sticky windows
- * gnome.jl: handle _WIN_AREA properties
- * sawmill.jl: require viewport
-
- * transient.jl (transient-add-window): set fixed-position as
- well in sticky windows
-
- * sm-save.jl, sm-load.jl: don't save position of windows,
- handled by viewport module
-
- * workspace.jl (workspace-send-boundary-mode): new option
- (send-to-workspace:X): new commands, 0 < X < 10
-
-1999-09-29 John Harper <john dcs warwick ac uk>
-
- * server.jl (server-eval): function to evaluate a string to a
- result string
- (server-net-init, server-net-exit): functions to enable/disable
- the X property based server, disabled by default
-
- * auto-raise.jl: in the focus-out-hook as well now, disable any
- pending timer
-
- * workspace.jl (workspace-names): new variable, not yet
- customizable
- * gnome.jl (gnome-set-workspace): set _WIN_WORKSPACE_NAMES if
- necessary
-
-1999-09-28 John Harper <john dcs warwick ac uk>
-
- * customize.jl (customize-group-opt, customize-args): new
- variables, control how the cutomize-program is called
-
- * x-cycle.jl (cycle-windows): stop the cycling when the
- invoking modifier is released with _any_ other modifiers held
-
- * x-cycle.jl, workspace.jl, transient.jl, focus.jl: only give
- windows the focus if they've said they want it (through the
- input field of their WM_HINTS property)
-
- * sm-init.jl (sm-init): don't set the `Environment' property,
- I've had reports that it may prevent $SESSION_MANAGER being
- connected with on restart
-
- * move-resize.jl (move-resize-lost-window): hooked into the
- unmap and destroy notify hooks, if the window being
- moved/resized is gone, then quit
-
-1999-09-27 John Harper <john dcs warwick ac uk>
-
- * transient.jl (transients-above-parents): new option
-
-1999-09-26 John Harper <john dcs warwick ac uk>
-
- * version 0.9
-
- * open-look.jl (ol-add-window): fix for single atom
- _OL_WIN_ATTR property (wordperfect)
-
- * sawmill.jl: set $DISPLAY to the display we opened (for our
- subprocesses)
-
-1999-09-25 John Harper <john dcs warwick ac uk>
-
- * workspace.jl: remove the requirement that workspace indices
- are always >= 0. This makes moving beyond the first inhabited
- workspace a lot easier. Also removed the total-workspaces
- variable, there's now a ws-workspace-limits function that
- returns the first and last workspaces. Various other minor
- changes..
-
- * keymaps.jl, gnome.jl, cycle.jl: small changes for modified
- workspace.jl
-
- * customize.jl (customize-symbol-spec): file-name type now has
- its own widget
-
- * edges.jl (snap-window-position-to-edges): don't allow windows
- to be snapped off screen
-
- * move-resize.jl (move-snap-ignored-windows): new option
-
-1999-09-24 John Harper <john dcs warwick ac uk>
-
- * gtkrc.jl: abstracted the gtkrc code from the gtk theme
-
- * gnome.jl (gnome-set-workspace): only set _WIN_WORKSPACE and
- _WIN_WORKSPACE_COUNT on the root window when the values have
- actually changed
-
- * workspace.jl (jump-workspaces-forwards,
- jump-workspaces-backwards): new commands
- * keymaps.jl (global-keymap): bind c-down and c-up to the
- jump-workspaces- commands
-
-1999-09-23 John Harper <john dcs warwick ac uk>
-
- * frames.jl (find-all-frame-styles): new optional arg: sorted,
- whether or not to sort the list
-
- * place-window.jl (place-window-mode): use best-fit placement
- by default
-
- * functions.jl (xterm): new command
-
- * sm-init.jl (sm-init): encapsulates the connection process
- * sawmill.jl: connect with the session manager last of all
-
-1999-09-22 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (window-menu): only include non-ignored windows
-
- * smart-placement.jl (sp-cost): multiple x-edges by y-edges
- instead of adding when calculating space usefulness
-
-1999-09-21 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (ws-add-window): if `workspace' property is
- already set, then add to that workspace
-
- * smart-placement.jl (sp-padding): new option--the number of
- pixels to try and leave between window edges
-
- * smart-placement.jl (sp-cost): now tries to maximize the
- number of grid lines crossed, and the length of the shared
- window edges
-
- * smart-placement.jl: improved first-fit fallback algorithm,
- looks for the position where the window has the smallest
- overlap with all other windows
-
-1999-09-20 John Harper <john dcs warwick ac uk>
-
- * sawmill.jl: set autoload-verbose to nil
-
- * workspace.jl (preallocated-workspaces): fix bug in the
- after-set function (calling unquoted hook)
-
- * gnome.jl (gnome-client-message-handler): only handle
- WIN_STATE and WIN_LAYER if we actually have a window object to
- act on
-
- * smart-placement.jl (place-window-best-fit): first attempt at
- best-fit placement (cost function is still not right)
- * place-window.jl: added best-fit option
-
- * sawmill.jl: move setting a fallback frame style to outside
- the condition-case
-
- * x-cycle.jl: remove windows from stack when iconified
-
- * workspace.jl (focus-windows-on-uniconify): new defcustom
-
- * focus.jl (focus-click): since XAllowEvents () ignores passive
- grabs when it replays events, manually search for a binding of
- the focus-inducing click
-
-1999-09-19 John Harper <john dcs warwick ac uk>
-
- * version 0.7
-
- * x-cycle.jl (x-cycle-next): if the next window was iconified,
- display its name surrounded by square brackets
-
- * smart-placement.jl (place-window-first-fit): do first-fit
- window placement
- * place-window.jl: added first-fit option
-
-1999-09-18 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl (x-cycle-modifier-alist): use alt-keysyms and
- meta-keysyms, instead of hard-coding the names (which may not
- work if, for example, `M' is generated by Alt_L and Alt_R)
-
- * workspace.jl (next-workspace, previous-workspace): support
- the cycling option again
-
-1999-09-17 John Harper <john dcs warwick ac uk>
-
- * x-cycle.jl: remove the possibility of the stack ids
- overflowing
-
- * keymap.jl (substitute-key-definition): renamed
- substitute-keymap-command
- (substitute-keymap-event): new function
-
- * stacking.jl (raise-window): handle case where there's only
- one window, the window being raised
-
-1999-09-16 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (select-workspace): only select the workspace if
- it's not the current workspace
-
- * workspace.jl: removed cycling functions
- (ws-workspace-windows): renamed workspace-windows
-
- * cycle.jl: new file, old cycle functions plus `previous'
- variants
-
- * x-cycle.jl: new file, stack-based window cycling
- * keymaps.jl (global-keymap): bound M-TAB to cycle-windows
-
-1999-09-15 John Harper <john dcs warwick ac uk>
-
- * frames.jl (override-frame-part-classes): new variable
-
- * workspace.jl (append-workspace-and-send,
- prepend-workspace-and-send): new commands
-
-1999-09-14 John Harper <john dcs warwick ac uk>
-
- * workspace.jl, stacking.jl, shading.jl, move-resize.jl,
- maximize.jl, frames.jl, focus.jl: changed interactive `f', `w'
- and `W' codes to `%f', `%w' and `%W'
-
- * frames.jl (auto-window-type-alist): new variable
-
- * workspace.jl (unshade-selected-windows): new option
-
- * gnome.jl (gnome-set-workspace): updated for new workspace
- implementation
-
- * workspace.jl: major rewrite, removed workspace-list variable,
- workspaces are now just non-negative integers, no state stored
- except in each window's plist and the current and last
- workspace indices
-
- * mwm.jl (mwm-add-window): remove some buttons when asked
-
- * frames.jl (remove-frame-class, add-frame-class): only call
- rebuild-frame if there's a frame to rebuild
-
-1999-09-13 John Harper <john dcs warwick ac uk>
-
- * gnome.jl (gnome-add-window): set `ignored' property of gmc
- and panel windows
-
- * focus.jl (click-to-focus-keymap): now `Any-Click1'
-
- * move-resize.jl (move-resize-apply): don't snap when opaque
- resizing
-
-1999-09-12 John Harper <john dcs warwick ac uk>
-
- * version 0.6
-
-1999-09-11 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (ws-honour-client-state): new function,
- iconifies windows whose WM_STATE is IconicState
-
- * frames.jl (frame-part-classes): appended `-button' to names
- of `menu', `iconify', `close' and `maximize' classes
-
- * workspace.jl (uniconify-window, display-window): handle
- windows that don't have a workspace (i.e. are sticky)
- (window-menu): add an extra menu for iconified windows that
- aren't listed in any of the other menus (since they're not in
- any workspace)
-
- * sawmill.jl: rearranged loading order again
-
- * sm-init.jl (sm-saved-window-properties): initialised to nil
- (sm-add-saved-properties): new function
- * frames.jl, maximize.jl, shading.jl, stacking.jl,
- workspace.jl: tell the session manager which window properties
- to save
-
- * shading.jl (shading-add-window): reset window type to saved
- type if possible
-
- * menus.jl (popup-menu): be more careful about assuming that a
- menu is already displayed
-
-1999-09-10 John Harper <john dcs warwick ac uk>
-
- * shading.jl: in add-window-hook, monitoring `shaded' property
-
- * sawmill.jl: reorder module loading; always load shading
-
- * frames.jl (frame-part-classes): alist associating frame part
- "classes" and an alist of the properties they inherit
- (remove-frame-class, add-frame-class): adding and removing
- parts of frames (but only if the style allows it)
-
- * gnome.jl (gnome-honour-client-state): don't try to act on the
- state changes, just set the necessary window properties
-
- * keymaps.jl (border-keymap): new keymap
-
-1999-09-09 John Harper <john dcs warwick ac uk>
-
- * frames.jl (set-window-frame-style): don't set the window's
- `type' property if it's implicitly defined
-
- * shading.jl: new file, implements window shading (displaying
- only the title bar)
- * menus.jl (window-ops-menu): add a toggle-shaded item
- * keymaps.jl (title-keymap): bind button1-click2 to toggle
- shading
- * workspace.jl (display-window): unshade the window if necessary
- * gnome.jl: support WIN_STATE_SHADED
-
- * keymap.jl: new file, some keymap utility functions
-
- * select-window.jl, move-resize.jl, focus.jl: change
- make-sparse-keymap to make-keymap
-
- * custom.jl (defcustom): new option `:range (MIN . MAX)' for
- number type, either MIN or MAX may be nil, defaults to 0 and
- unlimited respectively
- * customize.jl (customize-symbol-spec): propagate :range option
-
- * workspace.jl, move-resize.jl: specify ranges in numeric
- options
-
-1999-09-08 John Harper <john dcs warwick ac uk>
-
- * server.jl (server-init): set the _SAWMILL_SERVER_WIN property
- on the window itself as well as on the root
-
-1999-09-07 John Harper <john dcs warwick ac uk>
-
- * frames.jl (set-window-frame-style): don't bother wrapping in
- save-stacking-order since set-window-frame preserves it anyway
-
- * transient.jl (transient-unmap-window): if in click-to-focus
- mode, and there's no parent window to focus, focus the topmost
- window not the window under the pointer
-
- * customize.jl: removed all the subprocess code, now we just
- fork off the configurator using the system function and forget
- about it
-
- * server.jl (server-client-message-handler): for async
- requests, delete the property immediately after reading it, not
- after evaluating the form
-
-1999-09-06 John Harper <john dcs warwick ac uk>
-
- * move-resize.jl (move-resize-infer-anchor): if no edges have
- been selected for moving, move the bottom and right
-
- * stacking.jl (restack-by-depth): try to optimise the
- restacking done, by comparing the old order with the new order
-
- * move-resize.jl (move-resize-window): set frame-state-mutex to
- `clicked' while dragging the window
-
- * select-window.jl, move-resize.jl: call (allow-events
- 'async-pointer) since active-grabs are now done with
- synchronous event handling
-
- * gnome.jl (gnome-add-window): new function, set
- focus-proxy-click to t in panel and gmc icons
-
- * focus.jl (focus-proxy-click): new option, the same symbol can
- also be set in a window's plist
- (focus-in-fun): when in click-to-focus mode, ensure that all
- non-focused windows have the click-to-focus keymap set
-
- * focus.jl: map focus-add-window over all existing windows at
- startup
-
- * workspace.jl (display-window): focus the window
-
-1999-09-05 John Harper <john dcs warwick ac uk>
-
- * version 0.5
-
- * workspace.jl (ws-index): renamed as workspace-index
- (select-workspace): ignore negative indices
-
- * gnome.jl (gnome-init): set the _WIN_AREA and _WIN_AREA_COUNT
- properties (even though we only have one area), the gnome pager
- doesn't take any notice if we just delete them
-
- * frames.jl (frame-style-menu): added a `Default' option.
- (set-window-frame-style): move the save-stacking-order macro
- call to this function
-
- * sm-init.jl (sm-saved-window-properties): save the frame-style
- property
-
- * frames.jl (auto-frame-style-alist): new variable
- (check-frame-availability): new function
- (set-window-frame-style): give a window a specified frame
- (frame-style-menu): menu constructor for all frame styles
-
- * menus.jl (window-ops-menu): added a `Frame style' submenu,
- from the frame-style-menu constructor
-
-1999-09-04 John Harper <john dcs warwick ac uk>
-
- * frames.jl (custom-make-frame-style-widget): use the new
- `frame-style' widget
-
- * frames.jl (after-setting-frame-option): call
- reframe-all-windows if always-update-frames is set
-
- * move-resize.jl (move-show-position, resize-show-dimensions):
- new options, when t the window attributes are displayed while
- moving or resizing the window
-
- * sm-init.jl (sm-init-properties): deleted this function, it's
- now inlined into the initialisation section (since it's only
- called once, why let it consume memory?)
-
- * frames.jl (set-frame-for-window): only use the
- decorate-transients option if the window actually _is_ a
- transient. Also, store the final window type (so it can be
- saved with the session)
-
- * workspace.jl (preallocated-workspaces): new defcustom
- (ws-add-window-to-space): abort if window is already in a
- space, remember to hide the window if it's not visible
- (ws-add-window): abort if window is in a space already
- (ws-add-window-to-space-by-index): new function
- (ws-remove-window): never delete the sole remaining workspace
- (ws-add-workspace): if no workspaces exists, make the new one
- current
- (ws-save-session, ws-restore-session): session management hooks
- to preserve the workspace that each window is on
-
- * sm-save.jl (sm-get-window-state): fixed how the
- sm-window-save-functions results are used
-
- * gnome.jl (gnome-honour-client-state): honour the
- _WIN_WORKSPACE property
-
- * mwm.jl, open-look.jl, gnome.jl: moved functions from
- add-window-hook to before-add-window-hook
-
- * functions.jl (make-directory-recursively): new function
- * customize.jl, custom.jl: when writing into `~/.sawmill', call
- make-directory-recursively first
-
-1999-09-03 John Harper <john dcs warwick ac uk>
-
- * menus.jl (menu-program): this is now under the libexec dir
-
- * sm-save.jl, sm-load.jl, sm-init.jl, sm-common.jl: the Lisp
- portion of the session management code. Allows arbitrary Lisp
- modules to save and reload their state as well as the standard
- stuff
- * sawmill.jl: require 'sm-init
-
- * custom.jl: moved the custom file from ~/.sawmill-custom to
- ~/.sawmill/custom. The old file will be renamed at startup if
- possible
-
-1999-09-02 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (uniconify-to-current-workspace): improved the
- doc string
-
- * menus.jl, customize.jl, custom.jl: removed the `menus' and
- `custom' customization groups
-
- * stacking.jl (stacking-order-by-depth, stack-window-below,
- stack-window-above): new functions
- (raise-window): use x-raise-window where possible, this removes
- the ugly flicker (at least when raising into the top layer)
-
- * version 0.4
-
- * menus.jl (menu-stop-process): optional arg FORCE
-
- * menus.jl (menu-start-process): redirect stderr to nil
-
-1999-08-31 John Harper <john dcs warwick ac uk>
-
- * workspace.jl, sawmill.jl, keymaps.jl: if batch-mode is
- non-nil, don't do anything that would access the display when
- initialising or shutting down
-
- * workspace.jl: added symbolic NormalState and IconicState
- constants
-
- * workspace.jl (ws-set-client-state): new function, in
- window-state-change-hook and add-window-hook
-
-1999-08-30 John Harper <john dcs warwick ac uk>
-
- * sawmill.jl: load custom-set values before .sawmillrc (but
- after sawmill-defaults if no .sawmillrc)
-
-1999-08-29 John Harper <john dcs warwick ac uk>
-
- * menus.jl (window-ops-menu): added some more sub-menus
-
- * frames.jl: create commands to set the frame of a window to
- each of the possible window types
- (set-frame-for-window): new optional arg TYPE
-
-
- * customize.jl (customize): require all the custom-require
- features
-
- * stacking.jl (window-on-top-p): new function
-
- * move-resize.jl: resizing now chooses the direction to resize
- in by the initial position of the pointer in relation to the
- window frame. The window is divided into a 3x3 grid, the
- pointer must be in one of the outer rectangles for the window
- to resize in that direction
-
- * server.jl, gnome.jl: only initialise these if not running in
- batch-mode
-
-1999-08-28 John Harper <john dcs warwick ac uk>
-
- * frames.jl (user-theme-directory, system-theme-directory,
- theme-load-path): new variables
- (load-frame-style, find-all-frame-styles): new functions for
- loading the new-style "themes"
-
-1999-08-27 John Harper <john dcs warwick ac uk>
-
- * workspace.jl: renamed ws-workspaces as workspace-list, and
- ws-current-workspace as current-workspace
-
-1999-08-26 John Harper <john dcs warwick ac uk>
-
- * move-resize.jl: set frame-draw-mutex to t whilst
- rubber-banding windows
-
- * themes/simple.jl, themes/brushed-metal.jl,
- themes/absolute-e.jl: reorder image definitions
-
- * workspace.jl: define commands `select-workspace:X' for 1 <= X
- <= 9
-
- * stacking.jl (auto-depth-alist): match window names to depths
-
- * focus.jl: add the click-to-focus keymap to new windows
-
- * menus.jl: record the input focus when starting a menu, then
- restore it afterwards
-
- * place-window.jl (place-transient-mode): new variable
-
- * customize.jl (customize-symbol-spec): propagate the :widget
- attribute to `set' elements
-
-1999-08-25 John Harper <john dcs warwick ac uk>
-
- * frames.jl (reframe-all-windows): preserve the original
- stacking order
-
- * functions.jl (save-stacking-order): new macro
-
- * stacking.jl: new file, implements `depth' of windows
- * gnome.jl: support the _WIN_LAYER hints
-
- * keymaps.jl (maximize-button-keymap): new keymap
-
- * select-window.jl (select-window): check that pointer-grab
- actually succeeds
-
- * workspace.jl (ws-remove-window): after deleting the last
- workspace, don't select the first workspace, select the last
-
-1999-08-24 John Harper <john dcs warwick ac uk>
-
- * gnome.jl (gnome-init): use the new
- `workspace-state-change-hook' instead of all the individual
- hooks
-
- * workspace.jl (move-workspace-forwards,
- move-workspace-backwards): new commands, slide the current
- workspace along the list of all workspaces
-
- * customize.jl (customize): passing this function a group name
- makes it customize that group only
- * custom.jl (custom-menu): menu constructor including all
- customize groups
- (custom-declare-group): create an interactive function
- `customize:FOO' for each group FOO
- * menus.jl: use custom-menu for the customize menu
-
-1999-08-23 John Harper <john dcs warwick ac uk>
-
- * frames.jl: (window-type-remove-title, window-type-remove-border,
- window-type-add-title, window-type-add-border): for windows
- with no title and no border, use the new type `unframed', not
- `shaped-transient'
- * themes/simple.jl, themes/brushed-metal.jl,
- themes/absolute-e.jl: set `unframed' windows to the `nil-frame'
-
- * server.jl (server-init): new function
-
- * version 0.3a
-
- * move-resize.jl: query the _current_ mouse position, not the
- last seen in an event
-
- * menus.jl: menus now work asynchronously, some hackery to get
- the focus back before calling the selected command
-
- * maximize.jl (unmaximize-window): optional arg DIRECTION as
- with maximize-window, allows selective unmaximization
-
- * gnome.jl: support the MAXIMIZED window states
-
- * server.jl: for asynchronous requests delete the property
- after reading it (so the client knows when it can continue)
-
- * edges.jl (snap-window-position-to-edges): minor fix
-
-1999-08-22 John Harper <john dcs warwick ac uk>
-
- * version 0.3
-
- * server.jl: new file, handle ClientMessages initiating
- sawmill-client requests
- * sawmill.jl: require server
- * sawmill-defaults.jl: don't call server-open anymore
-
- * maximize.jl: new file, window maximization
- * menus.jl (window-ops-menu): added maximize commands
-
- * customize.jl (customize-sentinel): write out the custom
- script when the process exits
-
- * auto-raise.jl (rw-on-focus): handle case where timeout is
- zero
-
- * move-resize.jl (move-resize-window): temporarily bind
- unbound-key-hook to nil, otherwise the gnome code may cause
- havoc
-
- * functions.jl (with-server-grabbed): new macro
-
- * move-resize.jl (move-resize-window): put the call to
- ungrab-server back into the tail of the unwind-protect where it
- should be; also be aware that move-resize-mode may have changed
-
- * place-window.jl (place-window): fix the `interactive'
- placement mode
-
- * open-look.jl, mwm.jl: new files, implement some of the Motif
- and OpenLook window hints
- * sawmill.jl: require mwm and open-look
-
- * frames.jl (window-type): moved from transient.jl; if the
- window has a `type' property, this is assumed to be the window
- type
- (window-type-remove-title, window-type-remove-border,
- window-type-add-title, window-type-add-border): new functions
-
-1999-08-21 John Harper <john dcs warwick ac uk>
-
- * focus.jl (focus-mode): new variable, replaces sloppy-focus.
- Implemented click-to-focus mode
-
- * move-resize.jl (move-window-interactively,
- resize-window-interactively): use the `W' interactive decl
-
- * workspace.jl (ws-client-msg-handler): handle WM_CHANGE_STATE
- messages (i.e. iconification requests)
-
- * gnome.jl: new file, replaces the libgnome.so dl
-
-1999-08-20 John Harper <john dcs warwick ac uk>
-
- * move-resize.jl (move-resize-window): fix error when there's
- no current-event
-
- * workspace.jl (next-window): new command, cycles through all
- uniconified windows on all workspaces
-
-1999-08-19 John Harper <john dcs warwick ac uk>
-
- * edges.jl: new file, some utilities for dealing with window
- edges
- * move-resize.jl (move-snap-edges, move-snap-epsilon):
- variables controlling window edge snapping whilst moving
-
- * custom.jl (custom-add-to-group): ensure that only one
- instance of any symbol is added to the group
-
-1999-08-16 John Harper <john dcs warwick ac uk>
-
- * version 0.2
-
- * transient.jl (transient-unmap-window): if the window being
- unmapped is focused, and there's no transient-parent to focus
- on, then focus on the window under the pointer (in case the
- pointer isn't in the unmapped window)
-
-1999-08-15 John Harper <john dcs warwick ac uk>
-
- * keymaps.jl: keymaps are now customizable
-
- * customize.jl (customize-ui-spec): call each group's :widget
- function if defined
- (about): a new group, just contains a label with some
- info/legalese
-
- * custom.jl (custom-declare-variable): new keyword :before-set,
- similar to :after-set
- (custom-declare-group): this now takes a list of keywords as
- with defcustom. The only keyword currently is :widget, a
- function to call to layout the page containing the user
- interface elements of the group
-
-1999-08-14 John Harper <john dcs warwick ac uk>
-
- * keymaps.jl: add a label to the `bindings' group noting that
- keybindings aren't implemented
- * custom.jl: added group `bindings'
-
- * transient.jl (focus-windows-when-mapped): new variable, any
- newly-mapped window is given the input focus
-
-1999-08-13 John Harper <john dcs warwick ac uk>
-
- * themes/simple.jl: defined the missing three frame types;
- border colors are now configurable
-
- * keymaps.jl (iconify-button-keymap): Button3 is now bound to
- `popup-window-menu'
-
- * customize.jl (customize-symbol-spec): use the `color' widget
- for colors
-
- * transient.jl (transients-get-focus): moved to custom group
- `focus'
-
- * custom.jl (custom-declare-variable): remember to check for
- :widget keyword
-
- * workspace.jl (ws-merge-workspaces): call the
- delete-workspace-hook after deleting the source workspace
-
-1999-08-12 John Harper <john dcs warwick ac uk>
-
- * place-window.jl (place-window): for random placement, use the
- dimensions of the window frame not the client window
-
- * transient.jl (transient-unmap-window): new function, used to
- return the focus from a transient to its parent when the
- transient window gets unmapped
-
- * move-resize.jl (move-resize-window): fix the bug whereby the
- first motion event was ignored (making the pointer and window
- get out of sync). If the command is called from a motion event,
- then look at the position of the _previous_ pointer event, and
- start moving from there
-
-1999-08-11 John Harper <john dcs warwick ac uk>
-
- * customize.jl (customize-stop-process): only kill the process
- when it's actually running
-
- * custom.jl (defcustom): new tag :after-set defines a function
- to call after setting the variable
-
- * frames.jl (decorate-transients): controls whether transient
- windows get reduced or normal frames
-
-1999-08-09 John Harper <john dcs warwick ac uk>
-
- * sawmill-defaults.jl: remove some settings that are normally
- set by customize
- * sawmill.jl: load absolute-e if no frame otherwise specified
-
- * simple.jl, brushed-metal.jl, absolute-e.jl: moved to the new
- `themes' subdirectory
-
- * frames.jl: new file, inherited the frame setting logic from
- transient.jl. Removed the frameset idea, now we have `frame
- styles' which are functions; they return the frame to use for a
- given window. Also support customization of the default style
- * transient.jl: moved frame stuff to frames.jl
-
- * custom.jl, customize.jl: new custom properties `custom-set',
- `custom-get' and `custom-widget'; inherited from type if not
- set in each symbol. New types `font' and `color'. New group
- `appearance'
-
-1999-08-07 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (raise-selected-windows,
- warp-to-selected-windows): new variables
-
- * custom.jl: new file, inspired by Emacs' customize system.
- This file allows Lisp libraries to declare their configurable
- settings (and their types)
-
- * customize.jl: new file, this uses the defcustom information
- to present the user a graphical configuration interface. These
- settings are stored in ~/.sawmill-custom and loaded on
- initialisation
-
- * workspace.jl, transient.jl, place-window.jl, move-resize.jl,
- menus.jl, focus.jl, auto-raise.jl: changed some defvar's to
- suitable defcustom's
-
- * sawmill.jl: load custom settings
-
-1999-08-06 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (display-window): raise the chosen window
-
-1999-08-03 John Harper <john dcs warwick ac uk>
-
- * version 0.1
-
-1999-08-02 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (ws-add-window-to-space): abort if the window is
- marked as being sticky
-
- * workspace.jl: call window-state-change-hook when the window's
- ``state'' (i.e. sticky, iconified, ..) changes
-
- * workspace.jl (toggle-window-sticky): new command
- (ws-remove-window): new optional argument DONT-HIDE
-
- * keymaps.jl (window-keymap): bind "M-Button2" to
- popup-window-menu
-
- * workspace.jl: where appropriate use call-window-hook instead
- of call-hook
-
- * workspace.jl (transients-on-parents-workspace): new variable
- (merge-next-workspace, merge-previous-workspace,
- insert-workspace): new commands, in the workspace menu
- (popup-workspace-list, popup-window-list): new commands
-
- * transient.jl (transients-get-focus): new variable, when t
- mapping transient windows whose parent is focused passes the
- focus to the transient
-
- * place-window.jl (place-window): fix a missing
- close-parenthesis
-
-1999-08-01 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (ws-remove-window): fix the bug whereby deleting
- the last workspace didn't nullify ws-current-workspace. Also
- ensure that both remove-from-workspace and
- delete-workspace-hook are only called _after_ the deletion has
- occurred. remove-from-workspace now gets two args: window and
- workspace
-
-1999-07-31 John Harper <john dcs warwick ac uk>
-
- * workspace.jl: new hook `delete-workspace-hook'
-
- * transient.jl (ignored-window-names, sticky-window-names): new
- variables, lists of regexps
-
- * sawmill-defaults.jl: removed the user-add-window function,
- added some comments about getting GNOME support
-
- * place-window.jl (ignore-program-positions): program specified
- window positions are ignored if this is set. User specified
- positions are never ignored
-
- * keymaps.jl: bind the root menu to Button2 not Button1
-
-1999-07-30 John Harper <john dcs warwick ac uk>
-
- * menus.jl (menu-program-stays-running): if this variable is a
- number, it defines how long (in seconds) that a menu subprocess
- is allowed to stay running between menus being required.
- Default is one minute
-
-1999-07-29 John Harper <john dcs warwick ac uk>
-
- * simple.jl, brushed-metal.jl, absolute-e.jl: changes for
- framesets
-
- * transient.jl: introduce the frameset idea, an alist of frames
-
- * auto-raise.jl: new file, uses a timer to work correctly
- (raise-windows-on-focus): can now be a regexp matching window
- names to raise
- * focus.jl: removed the auto-raise stuff
-
-1999-07-28 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (next-workspace-window): new command
-
- * focus.jl (focus-raise): synchronise the server before timing
- out
-
-1999-07-28 Stewart Perry <scp dcs warwick ac uk>
-
- * focus.jl (raise-windows-on-focus, raise-window-timeout): new
- variables, auto-raise functionality
-
-1999-07-28 John Harper <john dcs warwick ac uk>
-
- * sawmill-defaults.jl: set the frame to `nil-frame' to turn off
- the frame, not to nil
-
- * transient.jl (transient-add-window): only set the frame if
- it's currently nil, set it to default-frame if not transient or
- shaped
-
- * simple.jl, brushed-metal.jl, absolute-e.jl: frames are
- defined as lists now
-
- * absolute-e.jl: added shaped and shaped-transient frames
-
- * transient.jl: now looks for shaped windows as well as
- transients
-
-1999-07-26 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (raise-window-on-uniconify): new variable
-
- * menus.jl (apps-menu): new variable, the "Applications" item
- of the root menu
-
-1999-07-25 John Harper <john dcs warwick ac uk>
-
- * workspace.jl (cycle-through-workspaces,
- delete-workspaces-when-empty, uniconify-to-current-workspace,
- static-workspace-menus): new variables
- (workspace-menu, window-menu): dynamic menu constructors
- (iconify-window, uniconify-window): new commands
-
- * sawmill.jl: load some more libraries
-
- * place-window.jl: this uses the new place-window-hook. But
- random placement is still the only working option
-
- * move-resize.jl: now obeys most of the window's size hints
- (all but the aspect ratios)
-
- * menus.jl: implement popup menus using the sawmill-ui script
-
- * functions.jl (get-window-by-name, get-window-by-id): new
- functions
-
- * keymaps.jl: some more bindings
- (root-window-keymap): new keymap
-
diff --git a/lisp/sawfish/gtk/ChangeLog.pre-1.5.0 b/lisp/sawfish/gtk/ChangeLog.pre-1.5.0
deleted file mode 100644
index d8b77b1..0000000
--- a/lisp/sawfish/gtk/ChangeLog.pre-1.5.0
+++ /dev/null
@@ -1,200 +0,0 @@
-2003-08-16 John Harper <jsh unfactored org>
-
- * widgets/font.jl.in, widgets/font.jl: this file is now
- generated by configure so it can now if pango was configured or
- not
-
-2003-08-13 John Harper <jsh unfactored org>
-
- Integrated patch from Shun-ichi TAHARA <jado flowernet gr jp>:
-
- * widgets/font.jl (use-xft): use Gtk+ 2.2 logic for
- interpreting this variable
-
- * widgets/font.jl: support pango font type
-
-2003-07-29 John Harper <jsh unfactored org>
-
- * widget.jl (make-string-item): fold nil to "" when setting
- gtk-entry value. Should fix #87917
-
-2002-11-09 John Harper <jsh unfactored org>
-
- * version 1.2
-
-2002-11-03 John Harper <jsh unfactored org>
-
- * widgets/font.jl (make-font-item): use XLFD fonts when
- GDK_USE_XFT isn't set. (I couldn't test this, since the GTK
- font selector totally fails to work for me when this
- environment variable isn't set)
-
-2002-11-03 John Harper <jsh unfactored org>
-
- * widgets/font.jl (make-font-item): support for new typed font
- descriptions. Convert the Xft description to and from the Pango
- descriptions used by GtkFontSelection. Needs some work to
- handle XLFD fonts as well when $GDK_USE_XFT isn't set
-
- * widget.jl, stock.jl.gtk: fixed some button-box issues
-
-2002-11-02 John Harper <jsh unfactored org>
-
- * widgets/pair.jl (make-pair-item): added another (!) optional
- arg, PACKING. It defines how the widgets are packed into their
- containing box
-
-2002-05-21 John Harper <jsh unfactored org>
-
- * Merged from HEAD:
-
- 2002-05-14 John Harper <jsh unfactored org>
-
- * widgets/font.jl (make-font-item): made entry uneditable
-
-2002-04-21 John Harper <jsh unfactored org>
-
- * Merged changes from HEAD
-
- 2002-04-18 John Harper <jsh unfactored org>
-
- * widgets/scheme-boolean.jl, Makefile.in: new widget, a boolean
- but returns #f and #t (though it accepts nil and t still).
- Implemented as a toggle button. Adapted from merlin
- <merlin merlin org>
-
- * widget.jl (make-choice-item): if IDX is null, select the
- first item. Patch from merlin <merlin merlin org>
-
-2002-04-14 John Harper <jsh unfactored org>
-
- * widgets/list.jl: return false from button_press_event and
- key_press_event handlers, fixes #75866
-
-2002-04-13 John Harper <jsh unfactored org>
-
- * stock.jl.gtk, stock.jl.gnome: s/gtk-signal-/g-signal/
-
-2002-04-01 John Harper <jsh unfactored org>
-
- * widget.jl, widget-test.jl:
- * widgets/list.jl, widgets/font.jl, widgets/file.jl,
- widgets/color.jl: s/gtk-signal-/g-signal-/
-
-2002-02-13 John Harper <jsh unfactored org>
-
- * stock.jl.gtk, stock.jl.gnome (stock-button): new
- gtk-button-new-from-stock in both cases now
-
-2002-02-12 John Harper <jsh unfactored org>
-
- * widget.jl, stock.jl.gtk, color-preview.jl:
- * widgets/list.jl, widgets/file.jl:
-
- Ported to current gnome2 rep-gtk
-
-2002-01-29 John Harper <jsh unfactored org>
-
- * widget.jl, widget-test.jl, widget-dialog.jl, stock.jl.gtk,
- stock.jl.gnome, color-preview.jl:
- * widgets/pair.jl, widgets/list.jl, widgets/font.jl,
- widgets/file.jl, widgets/color.jl, widgets/alist.jl:
-
- Changed module names for gnome2 rep-gtk
-
-2001-01-05 John Harper <jsh eazel com>
-
- * version 0.35
-
-2000-12-30 John Harper <jsh eazel com>
-
- * widget.jl (make-choice-item): options for the `choice' widget
- can now be formatted as `(SYMBOL "REAL-NAME")' as well a
- `SYMBOL'. The REAL-NAME string will be displayed when given
-
-2000-12-22 John Harper <jsh eazel com>
-
- * widgets/list.jl: never destructively modify the list, fixes
- some weird bugs. E.g. it allows invalid event descriptions to
- be caught and reverted (fixing #5323)
-
-2000-12-04 John Harper <jsh eazel com>
-
- * version 0.34
-
-2000-11-28 John Harper <jsh eazel com>
-
- * widget.jl (make-symbol-item): connect to the changed signal
- _after_ calling set-popdown-strings, since that can raise the
- signal (which we don't want yet)
-
-2000-11-27 John Harper <jsh eazel com>
-
- * widget.jl (make-choice-item): `value' defaults to first item
- in the menu (as in GTK+)
-
- * widgets/font.jl (make-font-item): expand text entry when
- packing it
-
-2000-11-17 John Harper <jsh eazel com>
-
- * widget.jl (make-choice-item): call _ function when printing
- option names
-
-2000-11-16 John Harper <jsh eazel com>
-
- * widgets/alist.jl: use prin1 style printing (i.e. no double
- quotes in strings, etc)
-
-2000-11-14 John Harper <jsh eazel com>
-
- * widgets/list.jl (make-list-item): connect to
- `key_press_event' of the clist, on `RET' edit the current item
-
-2000-10-11 John Harper <john dcs warwick ac uk>
-
- * widget.jl (string->symbol): use intern not read-from-string
-
-2000-09-25 John Harper <john dcs warwick ac uk>
-
- * widget.jl (tooltip-split, tooltip-set): new functions
- (make-widget): if the widget advertised that it takes a doc
- string, then handle any tooltip embedded in that string
-
-2000-09-20 John Harper <john dcs warwick ac uk>
-
- * version 0.31
-
-2000-09-11 John Harper <john dcs warwick ac uk>
-
- * widget.jl, widget-test.jl, ChangeLog:
- * widgets/list.jl, widgets/color.jl, widgets/alist.jl:
-
- No need to explicitly open `rep.io.streams' anymore
-
-2000-09-08 John Harper <john dcs warwick ac uk>
-
- * widget.jl, widget-test.jl:
- * widgets/list.jl, widgets/color.jl, widgets/alist.jl:
-
- Open the necessary modules that aren't included in `rep'
- structure anymore (rep.regexp, rep.system, rep.io.streams,
- rep.io.files, rep.io.file-handlers)
-
-2000-09-01 John Harper <john dcs warwick ac uk>
-
- * stock.jl.gtk, stock.jl.gnome (about-dialog, make-url-widget):
- new functions
-
- * widgets/program.jl, widgets/pair.jl, widgets/list.jl,
- widgets/font.jl, widgets/file.jl, widgets/color.jl,
- widgets/alist.jl, widgets/.cvsignore:
-
- * widget.jl, widget-test.jl, widget-dialog.jl, stock.jl.gtk,
- stock.jl.gnome, color-preview.jl:
-
- Moved here from the `nokogiri' directory. The plan is to use
- some of these modules in other programs, e.g sawfish-themer
-
-
- -- See ../ui/ChangeLog for older history
diff --git a/lisp/sawfish/ui/ChangeLog.pre-1.5.0 b/lisp/sawfish/ui/ChangeLog.pre-1.5.0
deleted file mode 100644
index 7f9868f..0000000
--- a/lisp/sawfish/ui/ChangeLog.pre-1.5.0
+++ /dev/null
@@ -1,568 +0,0 @@
-2002-11-10 John Harper <jsh unfactored org>
-
- * shell.jl (add-active-slots): new function, used to add slots
- into the active-slots list. Ensures that slots aren't added
- more than once (which was the cause of #88718 and other similar
- bugs)
-
-2002-11-09 John Harper <jsh unfactored org>
-
- * version 1.2
-
-2002-11-03 John Harper <jsh unfactored org>
-
- * widgets/match-window.jl, widgets/keymap.jl:
-
- * shell.jl, widgets/match-window.jl, widgets/keymap.jl: some
- small UI tweaks
-
-2002-11-02 John Harper <jsh unfactored org>
-
- * widgets/keymap.jl (make-keymap:binding-item): fix packing of
- "Grab" button
-
- * widgets/command.jl (make-command-item): set minimum size of
- text and clist widgets
-
-2002-05-29 John Harper <jsh unfactored org>
-
- * more merging:
-
- 2002-05-29 John Harper <jsh unfactored org>
-
- * widgets/frame-style.jl (make-frame-style-item): added a 200ms
- delay before installing new themes, avoids overloading X when
- dragging over the combo box menu. Should fix #81723
-
-2002-05-21 John Harper <jsh unfactored org>
-
- * Merged changes from HEAD:
-
- 2002-05-06 John Harper <jsh unfactored org>
-
- * i18n.jl: patch from Christophe Fergeau
- <teuf users sourceforge net> to call bindtextdomaincodeset
- function. Modified to only call it if it exists
-
-2002-04-21 John Harper <jsh unfactored org>
-
- * Merged changes from HEAD:
-
- 2002-04-20 John Harper <jsh unfactored org>
-
- Removed user levels, button configuration:
-
- * wm.jl, user-level.jl, slot.jl, shell.jl, main.jl.in,
- apply.jl, Makefile.in:
-
- * widgets/command.jl:
-
- 2002-04-18 John Harper <jsh unfactored org>
-
- * widgets/match-window.jl: use optional scheme-boolean widgets
- to display booleans. Adapted from merlin <merlin merlin org>
-
-2002-04-01 John Harper <jsh unfactored org>
-
- * shell.jl, group.jl, layouts/keymaps.jl,
- widgets/match-window.jl, widgets/icon.jl,
- widgets/frame-style.jl, widgets/event.jl, widgets/command.jl:
- s/gtk-signal-/g-signal-/
-
-2002-03-03 John Harper <jsh pixelslut com>
-
- * shell.jl: display using a tree of notebook pages for now
-
- * widgets/frame-style.jl (make-frame-style-item): removed
- debugging spew
-
-2002-02-13 John Harper <jsh unfactored org>
-
- * widgets/frame-style.jl (make-frame-style-item): go to great
- lengths to avoid picking up fucked changes from the combo's
- entry widget
-
-2002-02-12 John Harper <jsh unfactored org>
-
- * slot.jl, shell.jl, main.jl.in, layout.jl, group.jl:
- * layouts/keymaps.jl:
- * widgets/match-window.jl, widgets/keymap.jl,
- widgets/frame-style.jl, widgets/command.jl:
-
- Ported to current gnome2 rep-gtk
-
-2002-01-29 John Harper <jsh unfactored org>
-
- * slot.jl, shell.jl, layout.jl, group.jl, apply.jl:
- * layouts/keymaps.jl:
- * widgets/workspace-geometry.jl, widgets/match-window.jl,
- widgets/keymap.jl, widgets/icon.jl, widgets/frame-style.jl,
- widgets/event.jl, widgets/command.jl:
-
- Changed module names for gnome2 rep-gtk
-
-2001-09-07 John Harper <jsh pixelslut com>
-
- * layouts/keymaps.jl (layout-keymaps): fixed bug of keymap
- popup menu being displayed even if there are no keymaps to
- configure
-
- * shell.jl (display-flattened): fixed bug of `--flatten
- --single-level' combination not working properly
-
-2001-08-23 John Harper <jsh pixelslut com>
-
- * widgets/match-window.jl (make-match-window:matchers): search
- the translated X properties for the real atom name when
- grabbing properties, don't pass the (translated) property name
-
-2001-07-02 John Harper <jsh pixelslut com>
-
- * version 0.99
-
-2001-04-20 John Harper <jsh eazel com>
-
- Extra i18n work. Adapted from a patch by Vlad Harchev
- <hvv hippo ru>
-
- * layouts/keymaps.jl (beautify-keymap-name): try to localize
- the name before returning it
- * widgets/keymap.jl (beautify-symbol-name): ditto
- * widgets/match-window.jl (beautify-symbol-name): ditto
-
- * widgets/match-window.jl (make-match-window:matchers):
- localizes all property names before starting, then uses that
- list of properties
-
-2001-02-13 John Harper <jsh eazel com>
-
- * version 0.37
-
-2001-02-07 John Harper <jsh eazel com>
-
- * widgets/event.jl (make-event-item): strip leading and
- trailing white space from the event name in the `ref' method
-
-2001-01-27 John Harper <jsh eazel com>
-
- * shell.jl (display-flattened-group): translate the real name
- of the group before making it the title of the notebook page
-
-2001-01-05 John Harper <jsh eazel com>
-
- * version 0.35
-
-2000-12-18 John Harper <jsh eazel com>
-
- * widgets/modifier-list.jl (validp): don't allow () as a valid
- modifier list
-
-2000-12-04 John Harper <jsh eazel com>
-
- * version 0.34
-
-2000-11-28 John Harper <jsh eazel com>
-
- * widgets/modifier-list.jl: new widget, manages a list of
- modifier key names
-
- * layouts/keymaps.jl: only put slots whose names end in
- `-keymap' into the popup menu, just stack any others in the
- vbox
-
- * shell.jl (display-flattened): if the layout widget is a
- container, give it a non-zero border-width
-
-2000-11-27 John Harper <jsh eazel com>
-
- * widgets/frame-style.jl (make-frame-style-item): reversed
- order of combo box and label; don't set usize of text box
-
- * layout.jl: renamed `expand' flag as `expand-vertically';
- added an `expand-horizontally' flag; changed `framed' flag to
- use a vbox instead of a frame widget
-
-2000-11-21 John Harper <jsh eazel com>
-
- * layout.jl (layout-box): don't set the border of the box
- (document-slot): when checking whether a doc string is given or
- not, also check if the value is the null string
-
- * widgets/command.jl (update-params): when ref'ing commands
- without arguments, remember to use command-name to remove any
- keywords in the command definition. Fixes #4827
-
-2000-11-17 John Harper <jsh eazel com>
-
- * main.jl.in: don't initialize backtrace-on-error
-
-2000-11-16 John Harper <jsh eazel com>
-
- * slot.jl: added a `flags' field to the slot structure, used to
- store flags for when displaying widgets
-
- * layout.jl: check slot-flags, handle `expand' and `framed'
-
- * wm.jl (wm-locale-dir): dereference sawfish-locale-directory
- on the remote side, instead of using bindtextdomain
-
-2000-11-14 John Harper <jsh eazel com>
-
- * widgets/workspace-geometry.jl (monitor-pixbuf-file): search
- load-path for the `../monitor.png' file, instead of just
- assuming that it's relative to the first item of the list
-
-2000-11-08 John Harper <jsh eazel com>
-
- * version 0.33
-
-2000-11-06 John Harper <jsh eazel com>
-
- * group.jl, shell.jl: fixed some bugs introduced by the change
- to refresh groups after slot commits
-
-2000-11-02 John Harper <jsh eazel com>
-
- * group.jl (fetch-group, select-group): added keyword parameter
- FORCE that overrides certain checks
-
- (refresh-groups-for-slots): new exported function; given a list
- of slots it will resync any groups that contain any of these
- slots
-
- * apply.jl (do-apply): call refresh-groups-for-slots after
- committing any changes
-
-2000-11-01 John Harper <jsh eazel com>
-
- * group.jl: some internal reorganization (may help reloading
- group info..)
-
-2000-10-26 John Harper <jsh eazel com>
-
- * widgets/command.jl: now supports #:user-level's in commands
-
-2000-10-20 John Harper <jsh eazel com>
-
- * widgets/command.jl: support (but currently ignore)
- user-levels associated with commands
-
- * user-level.jl (user-level-is-appropriate-p): new function
-
-2000-10-10 John Harper <john dcs warwick ac uk>
-
- * apply.jl (apply-changes-for): catch errors from
- wm-apply-changes and display them in a dialog after reverting
- the changed slots
-
-2000-09-25 John Harper <john dcs warwick ac uk>
-
- * widgets/keymap.jl (make-keymap:binding-item): add a `Key:'
- label to the event widget
-
- * widgets/event.jl (make-event-item): don't prefix the widget
- with a `Key:' label, it's more useful without it
-
- * layout.jl (document-slot): handle adding any tooltip embedded
- in the slots documentation string
-
-2000-09-20 John Harper <john dcs warwick ac uk>
-
- * version 0.31
-
-2000-09-12 John Harper <john dcs warwick ac uk>
-
- * shell.jl (initialize-shell): unless creating a plug, put the
- root widget inside a raised frame
-
-2000-09-11 John Harper <john dcs warwick ac uk>
-
- * slot.jl, shell.jl, main.jl.in, group.jl, ChangeLog:
- * layouts/keymaps.jl:
- * widgets/match-window.jl, widgets/keymap.jl,
- widgets/frame-style.jl, widgets/command.jl:
-
- No need to explicitly open `rep.io.streams' anymore
-
-2000-09-08 John Harper <john dcs warwick ac uk>
-
- * slot.jl, shell.jl, main.jl.in, layout.jl, i18n.jl, group.jl,
- apply.jl:
-
- * layouts/keymaps.jl:
-
- * widgets/workspace-geometry.jl, widgets/match-window.jl,
- widgets/keymap.jl, widgets/icon.jl, widgets/frame-style.jl,
- widgets/command.jl:
-
- Open the necessary modules that aren't included in `rep'
- structure anymore (rep.regexp, rep.system, rep.io.streams,
- rep.io.files, rep.io.file-handlers)
-
-2000-09-04 John Harper <john dcs warwick ac uk>
-
- * main.jl.in: /bin/sh on solaris 8 doesn't like to pass
- environment settings on the same line as exec stmts. So set
- REP_LOAD_PATH, export it, then run `rep'
-
- * wm.jl (wm-documentation): use the `command-documentation'
- function
-
-2000-09-02 John Harper <john dcs warwick ac uk>
-
- * group.jl (update-group): ':layout is now #:layout
-
- * slot.jl (make-slot): use keyword params
- (fetch-group): removed unused first arg
-
-2000-09-01 John Harper <john dcs warwick ac uk>
-
- * wm.jl, user-level.jl, slot.jl, shell.jl, main.jl.in,
- layout.jl, i18n.jl, group.jl, config.jl, apply.jl:
-
- * layouts/keymaps.jl:
-
- * widgets/workspace-geometry.jl, widgets/match-window.jl,
- widgets/keymap.jl, widgets/icon.jl, widgets/frame-style.jl,
- widgets/event.jl, widgets/command.jl:
-
- Moved to `sawfish.ui' branch of the module namespace
-
- * widgets/gtk/workspace-geometry.jl, widgets/gtk/icon.jl: GTK+
- only versions of widgets that normally require GNOME
-
-2000-08-21 John Harper <john dcs warwick ac uk>
-
- * nokogiri-shell.jl: connect to delete_event from capplet
- again; but connect to a function that returns t (to avoid
- destroying the widget) and sets a 10-second timeout to call
- on-quit
-
-2000-08-16 John Harper <john dcs warwick ac uk>
-
- * nokogiri-widgets/icon.jl: fixed bug in 'set method when
- called with false argument
-
-2000-08-16 John Harper <john dcs warwick ac uk>
-
- * nokogiri-wm.jl, nokogiri-widget.jl, nokogiri-widget-test.jl,
- nokogiri-widget-dialog.jl, nokogiri-shell.jl,
- nokogiri-no-gnome.jl, nokogiri-gnome.jl,
- nokogiri-widgets/workspace-geometry.jl,
- nokogiri-widgets/pair.jl, nokogiri-widgets/match-window.jl,
- nokogiri-widgets/list.jl, nokogiri-widgets/keymap.jl,
- nokogiri-widgets/alist.jl:
-
- use #!optional and #!rest instead of deprecated &optional and
- &rest
-
-2000-08-14 John Harper <john dcs warwick ac uk>
-
- * nokogiri-shell.jl (initialize-shell): only hook to
- `delete_event' signal if window isn't a plug (avoids race
- condition found by Havoc Pennington)
-
-2000-08-03 John Harper <john dcs warwick ac uk>
-
- * nokogiri-widget.jl (make-number-item): added backwards
- compatibility for (eq min/max 'nil)
-
-2000-07-31 John Harper <john dcs warwick ac uk>
-
- * nokogiri-widgets/list.jl: changed the buttons to be `delete,
- edit, add', not `delete, edit, insert'. `Add' inserts after the
- current selection, this behaves more sanely when adding a
- sequence of values
-
-2000-07-30 John Harper <john dcs warwick ac uk>
-
- * nokogiri-main.jl.in: handle --help option
-
-2000-07-27 John Harper <john dcs warwick ac uk>
-
- * nokogiri-wm.jl: use sawfish.client plugin instead of calling
- external program
-
-2000-07-24 John Harper <john dcs warwick ac uk>
-
- * version 0.30.3
-
-2000-07-23 John Harper <john dcs warwick ac uk>
-
- * nokogiri-widgets/font.jl: fix structure name in definition
-
- * nokogiri-widgets/match-window.jl (print-matcher): be more
- cautious, reports of broken input
-
-2000-07-14 John Harper <john dcs warwick ac uk>
-
- * version 0.30.2
-
-2000-07-11 John Harper <john dcs warwick ac uk>
-
- * nokogiri-no-gnome.jl, nokogiri-widgets/workspace-geometry.jl:
- use `Rows' and `Columns' as labels instead of `Y' and `X'
-
- * nokogiri-no-gnome.jl (workspace-geometry): fixed bug of not
- including `number' widget for number of workspaces
-
-2000-07-09 John Harper <john dcs warwick ac uk>
-
- * version 0.30
-
- * nokogiri-widget-dialog.jl: put the title above the widget,
- not beside it
-
- * nokogiri-widget.jl: new widget type `quoted'
-
-2000-07-08 John Harper <john dcs warwick ac uk>
-
- * nokogiri-widgets/pair.jl (make-pair-item): added optional arg
- REVERSED, when non-nil, the layout order of the widgets is
- swapped
-
- * nokogiri-widgets/event.jl, nokogiri-widgets/command.jl:
- factored these out of the `keymap' widget, since they may be of
- use individually
-
-2000-07-07 John Harper <john dcs warwick ac uk>
-
- * nokogiri-widgets/list.jl: set the clist to `browse' mode, and
- keep it frozen while modifying it
-
- * nokogiri-widgets/list.jl (edit-item): save the original value
- of the selection, since it may get changed asynchronously
-
-2000-07-06 John Harper <john dcs warwick ac uk>
-
- * nokogiri-widget.jl (list-index): made this function terminate
- even if the item isn't in the list!
-
- * nokogiri-no-gnome.jl, nokogiri-gnome.jl (simple-dialog): new
- function, replaces ok-cancel-dialog, uses GnomeDialog if possible
- * nokogiri-dialog.jl: deleted
-
- * nokogiri-widget-dialog.jl (widget-dialog): use simple-dialog,
- new optional arg MAIN_WINDOW
-
- * nokogiri-widgets/match-window.jl, nokogiri-widgets/list.jl,
- nokogiri-widgets/keymap.jl, nokogiri-widgets/alist.jl: updated
- to use simple-dialog and new widget-dialog arg
-
- * nokogiri-widgets/list.jl: make the `insert' button insert
- instead of appending, make `delete' preserve the selection,
- only allow `delete' or `edit' when the selection is set
-
-2000-07-05 John Harper <john dcs warwick ac uk>
-
- * nokogiri-interfaces.jl.in (*nokogiri-directory*): new special
- variable
-
- * monitor.png: install this locally instead of relying on GNOME
- version
- * nokogiri-widgets/workspace-geometry.jl (monitor-pixbuf): use
- the local version
-
- * Makefile.in: support GNOME and non-GNOME installations
-
- * nokogiri-widgets/workspace-geometry.jl: new widget, uses
- GNOME canvas to draw workspace/viewport representation
-
- * nokogiri-widgets/pair.jl: new optional arg, USE-VBOX
-
- * nokogiri-widgets/icon.jl: new widget, mostly from Bruce
- Miller <docmad md prestige net>
-
- * nokogiri-widgets/frame-style.jl: accepts a doc string
-
- * nokogiri-widget-test.jl (test-widget): added optional arg
- INITIAL-VALUE
-
- * nokogiri-no-gnome.jl, nokogiri-gnome.jl: new files
-
- * nokogiri-interfaces.jl.in: contains all module interfaces
-
- * nokogiri-wm.jl, nokogiri-widget.jl,
- nokogiri-widget-dialog.jl, nokogiri-user-level.jl,
- nokogiri-slot.jl, nokogiri-shell.jl, nokogiri-layout.jl,
- nokogiri-i18n.jl, nokogiri-group.jl, nokogiri-dialog.jl,
- nokogiri-config.jl, nokogiri-color-preview.jl,
- nokogiri-apply.jl: moved module interfaces to
- nokogiri-interfaces.jl.in
-
- * nokogiri-widget.jl (widget-accepts-doc-string,
- widget-accepts-doc-string-p): functions to allow passing of doc
- strings to widgets
-
- * nokogiri-dialog.jl: use stock-button, don't grab the window
- (e.g. it breaks GnomeIconEntry)
-
- * nokogiri-shell.jl (initialize-shell): use stock-button to
- create buttons
-
- * nokogiri-slot.jl (make-slot-widget): pass doc strings to
- widgets that accept them
-
-2000-07-03 John Harper <john dcs warwick ac uk>
-
- * nokogiri-group.jl (make-group-tree): translate real-name
-
-2000-07-02 John Harper <john dcs warwick ac uk>
-
- * version 0.29
-
-2000-07-01 John Harper <john dcs warwick ac uk>
-
- * nokogiri-shell.jl (*nokogiri-single-level*): new defvar
- * nokogiri-main.jl.in: new option, --single-level
-
- * nokogiri-widgets/keymap.jl: set the documentation widget
- uneditable
-
- * nokogiri-widgets/frame-style.jl: use a GtkText widget to
- display the theme README
-
- * nokogiri-apply.jl (revert-slot-changes): when updating widget
- values, call update-dependences on the slot
-
- * nokogiri-shell.jl (initialize-shell): when possible, use
- gtk-window-set-default-size instead of gtk-widget-set-usize
-
- * nokogiri-dialog.jl: set the TRANSIENT_FOR hint of the dialog
- when the necessary Gtk+ function is available
-
- * nokogiri-widgets/keymap.jl: support commands with arguments
-
- * nokogiri-wm.jl (wm-command-list): use nokogiri-report-commands
- (wm-documentation): require `lisp-doc' on server-side
-
- * nokogiri-widget.jl: removed all setting of borders from
- widgets
- (labelled): move the label to the left of the widget
-
- * nokogiri-dialog.jl: don't show-all the passed-in widget
-
-2000-06-28 John Harper <john dcs warwick ac uk>
-
- * nokogiri-shell.jl: when flattening the group tree for the
- GNOME capplet, use a notebook widget, not a series of frames
- (less vertical height, so removes the need to make the
- top-level widget a scrolled window)
-
- * nokogiri-wm.jl, nokogiri-widget.jl, nokogiri-widget-test.jl,
- nokogiri-widget-dialog.jl, nokogiri-user-level.jl,
- nokogiri-slot.jl, nokogiri-shell.jl, nokogiri-main.jl.in,
- nokogiri-layout.jl, nokogiri-i18n.jl, nokogiri-group.jl,
- nokogiri-dialog.jl, nokogiri-config.jl,
- nokogiri-color-preview.jl, nokogiri-apply.jl,
-
- nokogiri-layouts/keymaps.jl,
-
- nokogiri-widgets/program.jl, nokogiri-widgets/pair.jl,
- nokogiri-widgets/match-window.jl, nokogiri-widgets/list.jl,
- nokogiri-widgets/keymap.jl, nokogiri-widgets/frame-style.jl,
- nokogiri-widgets/font.jl, nokogiri-widgets/file.jl,
- nokogiri-widgets/color.jl, nokogiri-widgets/alist.jl:
-
- First check-in to main repository of new `nokogiri' config
- interface
diff --git a/man/news.texi b/man/news.texi
index 613bddd..d89be80 100644
--- a/man/news.texi
+++ b/man/news.texi
@@ -137,6 +137,8 @@ To use the old style, put @code{(define-special-variable customize-program "sawf
@item Move 'avoid' window-matcher from placement to state [Teika Kazura]
@item Updated compat.jl [Teika Kazura]
+
+ item Removed all old ChangeLog files [Christohper Bratusek]
@end itemize
@end itemize
diff --git a/po/ChangeLog.pre-1.5.0 b/po/ChangeLog.pre-1.5.0
deleted file mode 100644
index 5dc7288..0000000
--- a/po/ChangeLog.pre-1.5.0
+++ /dev/null
@@ -1,323 +0,0 @@
-2009-03-19 Jorge Gonzalez <jorgegonz svn gnome org>
-
- * es.po: Updated Spanish translation
-
-2009-03-16 Inaki Larranaga Murgoitio <dooteo euskalgnu org>
-
- * eu.po: Updated Basque translation.
-
-2009-02-28 Jorge Gonzalez <jorgegonz svn gnome org>
-
- * es.po: Updated Spanish translation by Jacinto Capote Robles
-
-2008-08-04 Janek Kozicki <cosurgi gmail com>
- * this file is deprecated now. From now on all changes are in ../Changelog
-
-2006-12-14 Pema Geyleg <pgeyleg gmail com>
-
- * dz.po: Added Dzongkha Translation.
-
-2006-11-19 Djihed Afifi <djihed gmail com>
-
- * ar.po: Added Arabic Translation.
- * LINGUAS: Added ar.
-
-2006-09-25 Pawan Chitrakar <pchitrakar gmail com>
-
- * ne.po: Updated Nepali Translation
-
-2006-08-29 Christophe Merlet <redfox redfoxcenter org>
-
- * fr.po: Updated French translation.
-
-2006-07-19 Satoru SATOH <ss gnome gr jp>
-
- * ja.po: Updated Japanese translation. Converted
- its encoding: EUC-JP -> UTF-8.
-
-2006-07-09 Nickolay V. Shmyrev <nshmyrev yandex ru>
-
- * ru.po: Updated Russian translation
- by Valek Filippov <frob df ru>.
-
-2006-06-15 Hendrik Richter <hendrikr gnome org>
-
- * de.po: Updated German translation.
-
-2006-04-06 Priit Laes <amd store20 com>
-
- * et.po: Translation updated by Tõivo Leedjärv.
-
-2006-01-10 Clytie Siddall <clytie riverland net au>
-
- * vi.po: Updated Vietnamese translation.
-
-2005-12-06 Kjartan Maraas <kmaraas gnome org>
-
- * nb.po: Updated Norwegian bokm�l translation.
- * no.po: Same
-
-2005-07-28 Frank Arnold <farnold cvs gnome org>
-
- * de.po: Fixed typo spotted by Jens Seidel <jensseidel users sf net>.
-
-2005-07-28 Ilkka Tuohela <hile iki fi>
-
- * fi.po: Bulk change to some Finnish translations.
-
-2005-07-07 Frank Arnold <farnold cvs gnome org>
-
- * de.po: Some additional fixes.
-
-2005-07-04 Hendrik Richter <hendi gnome-de org>
-
- * de.po: Fixed German translation by
- Jens Seidel <jensseidel users sf net>.
-
-2005-05-24 Pawan Chitrakar <pawan nplinux org>
-
- * ne.po: added nepali translation
-
-2005-04-14 I�aki Larra�aga <dooteo euskalgnu org>
-
- * eu.po: Updated Basque translation.
-
-2005-04-01 Steve Murphy <murf e-tools com>
-
- * rw.po: Added Kinyarwanda translation.
-
-2005-03-16 Adam Weinberger <adamw gnome org>
-
- * en_CA.po: Updated Canadian English translation.
-
-2005-01-13 Frank Arnold <farnold cvs gnome org>
-
- * de.po: Updated German translation.
-
-2004-11-26 Satoru SATOH <ss gnome gr jp>
-
- * ja.po: Updated Japanese translation
-
-2004-09-26 Adam Weinberger <adamw gnome org>
-
- * en_CA.po: Updated Canadian English translation.
-
-2004-09-09 Pablo Saratxaga <pablo mandrakesoft com>
-
- * wa.po: Updated Walloon file
-
-2004-08-21 Francisco Javier F. Serrador <serrador cvs gnome org>
-
- * es.po: Updated Spanish translation.
-
-2004-05-02 Vincent van Adrighem <adrighem gnome org>
-
- * nl.po: Translation updated by Tino Meinen.
-
-2004-04-25 Adam Weinberger <adamw gnome org>
-
- * en_CA.po: Added Canadian English translation.
-
-2004-04-18 Danilo Å egan <dsegan gmx net>
-
- * sr.po, sr Latn po: Added Serbian translation.
-
-2004-04-16 Gareth Owen <gowen72 yahoo com>
-
- * en_GB.po: Updated British English translation
-
-2004-04-16 Miloslav Trmac <mitr volny cz>
-
- * cs.po: Updated Czech translation.
-
-2004-04-05 Pablo Saratxaga <pablo mandrakesoft com>
-
- * wa.po: Updated Walloon file
-
-2004-03-31 Gareth Owen <gowen72 yahoo com>
-
- * en_GB.po: Updated British English translation
-
-2004-01-18 Christophe Merlet <redfox redfoxcenter org>
-
- * fr.po: Updated French translation.
-
-2004-01-16 Alastair McKinstry <mckinstry computer org>
-
- * ga.po: Updated Irish translation.
-
-2003-10-25 Metin Amiroff <metin karegen com>
-
- * az.po: Updated Azerbaijani translation.
-
-2003-09-07 Pauli Virtanen <pauli virtanen hut fi>
-
- * fi.po: Fix to Finnish translation from Tommi Vainikainen.
-
-2003-08-17 Pauli Virtanen <pauli virtanen hut fi>
-
- * fi.po: Updated Finnish translation from Tommi Vainikainen.
-
-2003-07-07 Evandro Fernandes Giovanini <evandrofg ig com br>
-
- * pt_BR.po: Updated Brazilian Portuguese translation
- from Alexandre Folle de Menezes <afmenez terra com br>.
-
-2003-07-07 Pablo Saratxaga <pablo mandrakesoft com>
-
- * wa.po: Updated Walloon file
-
-2003-04-06 Duarte Loreto <happyguy_pt hotmail com>
-
- * pt.po: Updated Portuguese translation.
-
-2003-03-25 John Harper <jsh unfactored org>
-
- * version 1.3
-
-2003-01-24 Stanislav Visnovsky <visnovsky nenya ms mff cuni cz>
-
- * sk.po: Updated Slovak translation.
-
-2003-01-23 Yuriy Syrota <rastaman renome.rovno.ua>
-
- * uk.po: Updated Ukrainian translation by
- Maxim Dzumanenko <mvd mylinux com ua>.
-
-2003-01-01 Daniel Yacob <locales geez org>
-
- * am.po: Updated Amharic file.
-
-2002-12-29 Daniel Yacob <locales geez org>
-
- * am.po: Updated Amharic file.
-
-2002-12-27 Daniel Yacob <locales geez org>
-
- * am.po: Updated Amharic file.
-
-2002-12-21 Daniel Yacob <locales geez org>
-
- * am.po: Updated Amharic file.
-
-2002-12-18 German Poo Caaman~o <gpoo ubiobio cl>
-
- * es.po: Updates Spanish translation
-
-2002-12-10 Daniel Yacob <locales geez org>
-
- * am.po: Updated Amharic file.
-
-2002-12-01 Gustavo Maciel Dias Vieira <gdvieira zaz com br>
-
- * pt_BR.po: Updated Brazilian Portuguese translation by Alexandre
- Folle de Menezes <afmenez terra com br>.
-
-2002-11-19 Kjartan Maraas <kmaraas gnome org>
-
- * no.po: Updated Norwegian (bokmål) translation.
-
-2002-11-16 Christian Neumair <chris gnome-de org>
-
- * de.po: Updated German translation.
- * Changelog: Removed in favour of ChangeLog.
-
-2002-11-11 Simos Xenitellis <simos74 gmx net>
-
- * el.po: Updated Greek translation from Kostas Papadimas
- <pkst gmx net> and reviewed translation.
-
-2002-11-09 Dmitry G. Mastrukov <dmitry taurussoft org>
-
- * be.po: Updated Belarusian translation
- * from Belarusian team <i18n infonet by>.
-
-2002-11-09 Jordi Mallach <jordi sindominio net>
-
- * ca.po: Updated Catalan translation.
-
-2002-11-05 Tõivo Leedjärv <toivo linux ee>
-
- * et.po: Updated Estonian translation.
-
-2002-11-05 Vincent van Adrighem <V vanAdrighem dirck mine nu>
-
- * nl.po: Dutch translation updated
-
-2002-11-05 Christian Rose <menthos menthos com>
-
- * sv.po: Updated Swedish translation.
-
-2002-11-04 Stanislav Visnovsky <visnovsk nenya ms mff cuni cz>
-
- * sk.po: Updated Slovak translation.
-
-2002-11-03 Dmitry G. Mastrukov <dmitry taurussoft org>
-
- * be.po: Added Belarusian translation
- * from Belarusian team <i18n infonet by>.
-
-2002-11-01 Daniel Yacob <locales geez org>
-
- * am.po: Added Amharic file.
-
-2002-10-18 Andras Timar <timar gnome hu>
-
- * hu.po: Updated Hungarian translation.
-
-2002-09-29 Yanko Kaneti <yaneti declera com>
-
- * bg.po: Updated Bulgarian translation by
- Sava Chankov <sava fmi uni-sofia bg>
-
-2002-09-19 Fatih Demir <kabalak gtranslator org>
-
- * tr.po: Committed updated Turkish translation by Ã?Â?mer.
-
-2002-08-29 Christian Neumair <christian-neumair web de>
-
- * de.po: Updated German translation.
-
-2002-08-23 Peteris Krisjanis <peteris krisjanis os lv>
-
- * lv.po: Updated Latvian translation.
-
-2002-08-20 Gustavo Noronha Silva <kov debian org>
-
- * pt_BR.po: translation update.
-
-2002-08-09 Christian Meyer <chrisime gnome org>
-
- * de.po: Updated German translation.
-
-2002-07-31 Dmitry G. Mastrukov <dmitry taurussoft org>
-
- * ru.po: updated Russian translation.
-
-2002-07-29 Fatih Demir <kabalak gtranslator org>
-
- * tr.po: Committed updated Turkish translation.
-
-2002-06-19 Hasbullah Bin Pit <sebol ikhlas com>
-
- * ms.po: Updated Malay Translation.
-
-2002-07-14 Jordi Mallach <jordi sindominio net>
-
- * ca.po: Updated Catalan translation.
-
-2002-07-05 Christophe Fergeau <teuf users sourceforge net>
-
- * fr.po: Updated French translation.
-
-2002-06-25 Hasbullah Bin Pit <sebol ikhlas com>
-
- * ms.po: Updated Malay Translation.
-
-2002-06-25 Vincent van Adrighem <V vanAdrighem dirck mine nu>
- * nl.po: Dutch translation updated
-
-2002-06-16 Vincent van Adrighem <V vanAdrighem dirck mine nu>
-
- * nl.po: Dutch translation updated
-
diff --git a/scripts/ChangeLog.pre-1.5.0 b/scripts/ChangeLog.pre-1.5.0
deleted file mode 100644
index ba58ee6..0000000
--- a/scripts/ChangeLog.pre-1.5.0
+++ /dev/null
@@ -1,139 +0,0 @@
-2008-08-04 Janek Kozicki <cosurgi gmail com>
- * this file is deprecated now. From now on all changes are in ../Changelog
-
-2003-04-02 John Harper <jsh unfactored org>
-
- * sawfish-menu.jl: handle case where menu doesn't get realized
- and so we shouldn't enter gtk-main. Fixes longstanding (for
- ever!) "menu already active" bug (#89139). Patch from Jan Hudec
- <bulb ucw cz>
-
-2002-04-09 John Harper <jsh unfactored org>
-
- * sawfish-menu.jl (create-menu): handle accelerators. Adapted
- from Mayurnath Puli <mayurnath puli wipro com>
-
-2002-04-01 John Harper <jsh unfactored org>
-
- * sawfish-menu.jl.in: s/gtk-signal-/g-signal-/
-
-2002-02-12 John Harper <jsh unfactored org>
-
- * sawfish-menu.jl:
-
- Ported to current gnome2 rep-gtk
-
-2002-01-29 John Harper <jsh unfactored org>
-
- * sawfish-menu.jl, sawfish-about.jl.in:
-
- Changed module names for gnome2 rep-gtk
-
-2001-05-09 John Harper <jsh pixelslut com>
-
- * sawfish-about.jl.in: don't add the link to the iwc.org site,
- since it disappeared a while ago..
-
-2001-02-13 John Harper <jsh eazel com>
-
- * version 0.36
-
- * sawfish-about.jl.in, Makefile.in: install sawfish.png as
- sawfish-logo.png, then reference that file (ensures that the
- session manager splash screen doesn't pick up this file as the
- progress icon for sawfish - looks hideous)
-
-2001-01-05 John Harper <jsh eazel com>
-
- * version 0.35
-
-2000-12-18 John Harper <jsh eazel com>
-
- * sawfish-menu.jl (create-menu): recognize a new menu item
- attribute: `(shortcut . NAME)'. Adapted from Unai Uribarri
- <unaiur telecable es>
-
-2000-12-10 John Harper <jsh eazel com>
-
- * sawfish-client.jl: `sawfish-client' is now an alias for
- `sawfish-client -'
-
-2000-12-04 John Harper <jsh eazel com>
-
- * version 0.34
-
-2000-11-22 John Harper <jsh eazel com>
-
- * sawfish-about.jl.in: fixed __localedir__ substitution not
- being in a string
-
-2000-11-16 John Harper <jsh eazel com>
-
- * sawfish-about.jl.in, Makefile.in: substitute __localedir__
- into the script
-
-2000-10-20 John Harper <jsh eazel com>
-
- * sawfish-about.jl.in: changed email address, (c) message
-
-2000-09-24 John Harper <john dcs warwick ac uk>
-
- * sawfish-menu.jl: don't bother calling gtk_set_locale, this
- will be done automatically when the gtk plugin is loaded
-
-2000-09-23 John Harper <john dcs warwick ac uk>
-
- * sawfish-about.jl.in: added link to sawfish homepage
-
-2000-09-20 John Harper <john dcs warwick ac uk>
-
- * version 0.31
-
-2000-09-17 John Harper <john dcs warwick ac uk>
-
- * sawfish-menu.jl (create-menu): added `(insensitive . BOOL)'
- option to allow ghosted menu items
-
-2000-09-08 John Harper <john dcs warwick ac uk>
-
- * sawfish-about.jl.in: Open the necessary modules that aren't
- included in `rep' structure anymore (rep.regexp, rep.system,
- rep.io.streams, rep.io.files, rep.io.file-handlers)
-
-2000-09-07 John Harper <john dcs warwick ac uk>
-
- * sawfish-menu.jl: added a `(group . ID)' option, radio-items
- are created such that all items with the same ID are in the
- same radio group
-
- * sawfish-menu.jl: menu items can now be dotted to an alist of
- options. Currently the only option is `(check . BOOL)'
-
-2000-09-04 John Harper <john dcs warwick ac uk>
-
- * Makefile.in: make sawfish-about.jl depend on ./Makefile
-
- * sawfish-about.jl.in: hacked the `exec' line to work with
- solaris /bin/sh
-
-2000-09-03 John Harper <john dcs warwick ac uk>
-
- * sawfish-client.jl: print a copyright banner when starting the
- repl
-
- * sawfish-client.jl (do-eval): remember to update current-repl
- after reading the new structure over the connection
-
- * sawfish-client.jl (rl-completion-generator): use
- repl-completions function to generate completions
-
-2000-09-01 John Harper <john dcs warwick ac uk>
-
- * sawfish-about.jl.in: an `about' program for sawfish, uses the
- GnomeAbout dialog when possible (via sawfish.gtk.stock)
-
- * sawfish.png: logo for the about program, borrowed from
- http://iwc.org/volunteers/archives/Oct98/spec_pg0.htm
-
- * sawfish-menu.jl, sawfish-client.jl: moved here from ../src
-
diff --git a/src/ChangeLog.pre-1.5.0 b/src/ChangeLog.pre-1.5.0
deleted file mode 100644
index 1a51926..0000000
--- a/src/ChangeLog.pre-1.5.0
+++ /dev/null
@@ -1,3778 +0,0 @@
-2008-08-04 Janek Kozicki <cosurgi gmail com>
- * this file is deprecated now. From now on all changes are in ../Changelog
-
-2006-05-15 John Harper <jsh unfactored org>
-
- * frames.c, events.c: merged changes from Philip Langdale to
- propagate input shape of client window to frame
-
-2006-05-08 John Harper <jsh unfactored org>
-
- * sawmill.h: frame x/y should be signed (from Yoshiaki Kasahara)
-
-2005-06-26 Philip Langdale <philipl mail utexas edu>
-
- * sawmill.h: Add StructureNotify to the root window event mask.
-
- * events.c (configure_notify): Add a configure-notify-hook and
- emit it on the expected occasions. Respond to configureNotify
- events on the root window by calling into Xrandr (if the
- extension is available) and updating the cached screen size
- and xinerama information.
-
- * functions.c, sawmill_subrs.h (update_xinerama_info): Refactor
- xinerama discovery into a separate function so it can be called
- on Xrandr screen size change events.
-
-2005-02-11 John Harper <jsh unfactored org>
-
- * windows.c (Fwindow_frame_id): new function to return the
- window id of the window's frame (adapted from patch from Philip
- Langdale <philipl mail utexas edu>)
-
- * frames.c (list_frame_generator): integrated patch from Amit
- Gurdasani <amitg alumni cmu edu> to detect windows with ARGB
- visuals and use that for the frame window as well
-
-2005-02-06 John Harper <jsh unfactored org>
-
- * functions.c (Fsync_server): added optional arg WAIT (when
- true, calls Xsync not XFlush)
-
-2005-01-04 John Harper <jsh unfactored org>
-
- * sawmill_subrs.h, main.c, display.c: cleaned up some global
- variables
-
- * x.c, windows.c, selection.c, images.c, frames.c, events.c:
- fix compiler warnings
-
- * events.c (property_notify): handle STRING properties through
- the XmbTextPropertyToTextList () function, needed to convert
- from Latin-1 to current locale (patch from Jean-Christophe
- Dubacq <jean-christophe dubacq ens-lyon org> via Christian
- Marillat)
-
-2004-11-15 John Harper <jsh unfactored org>
-
- * keys.c: applied patch from Tuukka Hastrup iki fi to support
- buttons 8 and 9
-
-2004-10-17 John Harper <jsh unfactored org>
-
- * fonts.c (Fget_font_typed): fix typo when checking for match
- with existing font objects (from rbasch mit edu, #155334)
-
-2004-02-19 John Harper <jsh unfactored org>
-
- * keys.c (find_meta): reset global modifier variables to zero
- before scanning keymap (suggested by Michal Maru¹ka
- <mmc maruska dyndns org>)
-
-2003-10-29 John Harper <jsh unfactored org>
-
- * functions.c (Fget_x_property): patch from David Mosberger to
- fix reading `negative' unsigned values on 64-bit platforms
- (with a special case I added to read XA_INTEGER properties)
-
-2003-08-18 John Harper <jsh unfactored org>
-
- * windows.c, sawmill_subrs.h, events.c, display.c: cleaned up
- some code
-
-2003-08-13 John Harper <jsh unfactored org>
-
- Integrated patches from Shun-ichi TAHARA <jado flowernet gr jp>:
-
- * fonts.c: check for GDK_USE_XFT and choose a different default
- font (Xft "Sans") if it's set
-
- * fonts.c: added `Pango' font class
-
-2003-07-17 John Harper <jsh unfactored org>
-
- * x.c, windows.c, frames.c, events.c: fixed gcc 3.3 type
- punning warnings
-
- * frames.c (list_frame_generator): propagate save-under setting
- from client window to its frame (patch from Michal Maru¹ka
- <mmc maruska dyndns org>)
-
-2003-05-06 John Harper <jsh unfactored org>
-
- * fonts.c (x_draw_string): don't try to return a void value,
- from Albert Chin
-
-2003-03-27 John Harper <jsh unfactored org>
-
- * windows.c (add_window): set w->name to the null string (patch
- from Michal Maru¹ka <mmc maruska dyndns org>)
-
-2003-03-25 John Harper <jsh unfactored org>
-
- * version 1.3
-
-2003-02-21 John Harper <jsh unfactored org>
-
- * events.c (button_press): don't cache the clicked frame part
- while evaluating the event - it may get garbage collected.
- Fixes valgrind errors while repeatedly shading/unshading
- windows (which should fix #69817)
-
-2003-02-19 John Harper <jsh unfactored org>
-
- * events.c (gravity_notify): empty function to avoid warnings
- about unhandled events
-
-2003-01-09 John Harper <jsh unfactored org>
-
- Merged from HEAD:
-
- * windows.c (install_window_frame, remove_window_frame):
- integrated patch from Michal Maru¹ka to set client's window
- gravity to StaticGravity while it's reparented
-
-2002-12-24 John Harper <jsh unfactored org>
-
- * gtk-style.c (print_rc_style): removed code to print font
- names, was protected by #if condition that fails for gtk 2.2
-
-2002-11-13 John Harper <jsh unfactored org>
-
- Merged from HEAD:
-
- * windows.c (remove_window): only call focus_off_window () when
- not being called from the X error handler. Fixes #98405
-
-2002-11-09 John Harper <jsh unfactored org>
-
- * version 1.2
-
-2002-11-03 John Harper <jsh unfactored org>
-
- * merged color changes from HEAD:
-
- * sawmill.h (Lisp_Color): now contains alpha value
-
- * colors.c (Fget_color_rgb, Fget_color): both now take an extra
- ALPHA parameter
- (Fcolor_rgb, Fcolor_rgb_8): both now return an extra element in
- the list, the alpha value
-
- * fonts.c (xft_draw): use alpha field in color, instead of
- defaulting to fully opaque
-
- * images.c, functions.c, frames.c, cursors.c: updated callers
-
-2002-11-02 John Harper <jsh unfactored org>
-
- * merged font changes from HEAD:
-
- 2002-11-02 John Harper <jsh unfactored org>
-
- * fonts.c, sawmill.h: different font rendering methods are now
- better abstracted, using the Lisp_Font_Class structure
-
- (get-font-typed, font-type-exists-p, font-type): new functions,
- allows a font to be loaded from a type+name combination,
- instead of just a name, which may be ambiguous when multiple
- renderers are being used
-
- Current types are "xlfd" for traditional X fonts, and "Xft" for
- Xft client-side rendered fonts. The old get-font function
- always tries to load xlfd fonts, for backwards compatibility
-
- For now, Xft fonts can be used like this:
-
- (when (and (boundp 'font-type-exists-p)
- (font-type-exists-p "Xft"))
- (setq default-font (get-font-typed "Xft" "Trebuchet MS-11")))
-
- 2002-11-02 John Harper <jsh unfactored org>
-
- * fonts.c (x_draw_string): now takes an explicit foreground
- color parameter, instead of using the one in the gc
-
- * x.c, sawmill_subrs.h, functions.c, frames.c: updated callers
-
-2002-10-20 John Harper <jsh unfactored org>
-
- * more merging:
-
- 2002-10-20 John Harper <jsh unfactored org>
-
- * windows.c, sawmill_subrs.h, sawmill.h, events.c: removed code
- to read WM_TRANSIENT_FOR property, handled by Lisp code now
-
- 2002-10-19 John Harper <jsh unfactored org>
-
- * keys.c (find_meta): use our own nconc function
-
- 2002-10-03 John Harper <jsh unfactored org>
-
- * functions.c (Fget_x_text_property, Fset_x_text_property):
- deleted, these are now written in lisp
-
-2002-09-30 John Harper <jsh unfactored org>
-
- * merging from HEAD:
-
- 2002-10-01 John Harper <jsh unfactored org>
-
- * property-cache.c (property_cache_ref): fixed silly bug
- (returning nil not null before cache is initialized)
-
- 2002-09-29 John Harper <jsh unfactored org>
-
- * sawmill.h, fonts.c: refactored some of the font loading code
-
- 2002-09-28 John Harper <jsh unfactored org>
-
- * events.c (configure_request): for `position' configuration,
- pass nil x or y if unset (instead of just ignoring it). Part of
- fixing #83431
-
- 2002-09-28 John Harper <jsh unfactored org>
-
- Some performance optimizations, especially avoiding server
- round trips:
-
- * property-cache.c: new file, cache results of
- [gs]et-x-property (doesn't do [gs]et-x-text-property yet)
-
- * functions.c, frames.c, events.c: use/maintain the property
- cache
-
- * frames.c (apply_mask, configure_frame_part): turn off
- graphics exposure events in GCs
- * functions.c (refresh_message_window): same
- * images.c (paste_image_to_drawable): same
-
- * frames.c (set_frame_part_bg): don't reshape frames every time
- we redraw the background, too expensive
-
- 2002-09-21 John Harper <jsh unfactored org>
-
- * stacking-list.c: replaced assert () instances by non-terminal
- macros, i.e. they'll print a message but not abort the program.
- Lame-ass way of "fixing" #81027
-
- * sawmill.h (return_if_fail, return_val_if_fail,
- nonterminal_assert): new macros
-
- * windows.c (Fwindow_size_hints): accept min size == 0 and set
- it to one, should fix #77639
-
- 2002-09-01 John Harper <jsh unfactored org>
-
- * server.c (server_accept_connection): don't pass null pointers
- to accept (), it's been reported to cause crashes (patch
- suggested by Sergey Bratus <sergey cs dartmouth edu>)
-
-2002-06-28 John Harper <jsh unfactored org>
-
- * version 1.1
-
-2002-05-06 John Harper <jsh unfactored org>
-
- * More merging from HEAD:
-
- 2002-04-22 John Harper <jsh unfactored org>
-
- * functions.c (Fset_x_text_property): added optional fourth arg
- ENCODING-ATOM. To allow #67397 to be fixed
-
- * events.c: more focus change fallout
-
-2002-04-21 John Harper <jsh unfactored org>
-
- * Merged changes from HEAD:
-
- 2002-04-21 John Harper <jsh unfactored org>
-
- * events.c (events_init): pointer-motion-threshold isn't set
-
- 2002-04-17 John Harper <jsh unfactored org>
-
- Work to fix fallout from fix for #67958 (focus getting lost
- sometimes):
-
- * windows.c (pending_focus_window): deleted this variable
-
- (focus_off_window): if the window is the one that's currently
- focused, call XSetInputFocus to immediately transfer focus to
- our window that gets the focus if nothing else has it. This
- avoids us getting left with nothing focused (e.g. if we send
- WM_TAKE_FOCUS to a window that doesn't accept the focus)
-
- * windows.c (commit_queued_focus_change): disabled call to
- check_for_lost_focus ()
-
- * windows.c (find_window_by_id, x_find_window_by_id): don't do
- debugging printing here
- * events.c (handle_input_mask): print names of windows when
- debugging is enabled
-
- 2002-04-12 John Harper <jsh unfactored org>
-
- * windows.c (remove_window, install_window_frame,
- remove_window_frame): update pending_focus_window and
- queued_focus_id as necessary (fixes a "lost focus" bug)
-
- 2002-04-09 John Harper <jsh unfactored org>
-
- * windows.c (commit_queued_focus_change, focus_on_window,
- focus_off_window): removed broken "timestamp - 1" kludge.
- Instead defer both sending WM_TAKE_FOCUS and focusing windows
- until idle time. Fixes #67958
-
- * events.c (button_press, motion_notify): only accept pointer
- events we're expecting (either directly on one of our windows,
- or while the pointer is grabbed)
- (mark_pointer_grabbed, ungrab_pointer): new functions
- * main.c, keys.c, functions.c, frames.c: call ungrab_pointer ()
- instead of XUngrabPointer (). Fixes #44239
-
- * images.c (bevel_pixel): use integer arithmetic
- * sawmill.h: define CLAMP macro
-
- * main.c (main): if DEBUG == 1, put stdout into line buffering
- mode
-
- 2002-04-08 John Harper <jsh unfactored org>
-
- * libclient.c (unix_server_init): print an error message if
- connect () fails
-
- 2002-04-03 John Harper <jsh unfactored org>
-
- * display.c (error_handler): only interpret BadWindow and
- BadDrawable errors as meaning that a window died. May fix
- #74799
-
- 2002-04-02 John Harper <jsh unfactored org>
-
- * events.c (Fx_server_timestamp): added another arg STORE. When
- true, save the timestamp for later use.. needed for #77041
-
- 2002-03-19 John Harper <jsh unfactored org>
-
- * functions.c (message_event_handler): only redraw on the final
- expose event
-
-2002-03-19 John Harper <jsh unfactored org>
-
- * Merged changes from HEAD:
-
- 2002-03-01 John Harper <jsh pixelslut com>
-
- * windows.c (manage_windows): unmap the window before faking
- the call to the map-request event handler. Fixes #67601 (causes
- the expected map-notify event to be sent when we later map it)
-
- 2002-02-17 John Harper <jsh unfactored org>
-
- * windows.c (remove_window): check for w->id == 0 immediately
- before calling remove_from_stacking_list (). Avoids triggering
- an assertion on logout (since remove_window () may be called
- recursively from the error handler!)
-
- 2002-01-24 John Harper <jsh unfactored org>
-
- * frames.c: fixed definitions of Qtop and Qbottom. This bug
- must have existed forever!
-
-2002-01-10 Sander Vesik <sander vesik sun com>
-
- * image.c: gdk_pixbuf_new_from_file now takes two parameters
-
- * main.c: conditionaly include glib-object.h and call
- g_type_init() if we are using gdk_pixbuf
-
- * gtk-style.c: GtkRcStyle no longer has font and font_set
- members
-
- * sawmill.h: gdk-pixbuf-xlib.h now lives in gdk-pixbuf-xlib
-
-2001-12-05 John Harper <jsh unfactored org>
-
- * windows.c (Fwindow_visibility): check argument is windowp
- (patch from Michal Maru¹ka <mmc maruska dyndns org>)
-
-2001-11-12 John Harper <jsh unfactored org>
-
- Fixed bug of not rereading WM_WINDOW_PROTOCOLS when it changes:
-
- * events.c (property_notify): call get_window_protocols on
- WM_WINDOW_PROTOCOLS events
-
- * windows.c (get_window_protocols): clear the window's
- does_wm_X flags before reading the property
-
-2001-11-03 John Harper <jsh unfactored org>
-
- Fixed bug where Nautilus windows often don't get focused in
- focus follows mouse mode:
-
- * windows.c (focus_on_window): don't call XSetInputFocus ()
- directly store the parameters for later
-
- (commit_queued_focus_change): new function, calls
- XSetInputFocus () if there's a queued focus change waiting
-
- * events.c (handle_input_mask): call commit_queued_focus_change
- () before exiting
-
-2001-10-21 John Harper <jsh unfactored org>
-
- Fixed bug where warp-cursor doesn't invalidate the pointer
- location cache:
-
- * functions.c (Fwarp_cursor): call
- invalidate_cached_mouse_position after warping the cursor
-
- * events.c (invalidate_cached_mouse_position): new function
-
-2001-10-14 John Harper <jsh unfactored org>
-
- * version 1.0.1
-
-2001-08-31 John Harper <jsh pixelslut com>
-
- * windows.c (focus_on_window): subtract one from the last seen
- server timestamp when sending the WM_TAKE_FOCUS message. The
- explanatory comment in the source reads:
-
- The -1 is an Ugly Hack. The problem is with the case where the
- window focuses itself after receiving the WM_TAKE_FOCUS
- message. If during the time between us sending the client
- message and the window focusing itself we focused another
- window using the same timestamp, the original window (that
- received the client message) will still get focused.
-
- I'm assuming that it's unlikely that two events will arrive
- generating focus changes with timestamps that only differ by
- one..
-
-2001-08-24 John Harper <jsh pixelslut com>
-
- * events.c (unmap_notify): call remove_window () on unmapped
- (withdrawn) windows. This fixes some standards-compliance bugs
- due to us handling windows differently the second time they're
- mapped than the first
-
-2001-07-02 John Harper <jsh pixelslut com>
-
- * version 0.99
-
-2001-06-20 John Harper <jsh pixelslut com>
-
- * sawmill_subrs.h, multihead.c, main.c, Makefile.in: support a
- `--multiehead' command-line option. When given and the X server
- has more than one screen, fork extra copies of sawfish for each
- extra screen. This has some fundamental problems (e.g. the
- copies share files in ~/.sawfish without any synchronization),
- but seems to be useful for some people..
-
- The other people who contributed to this feature are Michael
- Vogt and Mahmood Ali
-
-2001-06-12 John Harper <jsh pixelslut com>
-
- * display.c (sys_init): if XQueryShapeExtension fails, print a
- message and terminate the wm
-
-2001-06-04 John Harper <jsh pixelslut com>
-
- * windows.c (focus_on_window): don't update focus_window after
- calling XSetInputFocus (), instead wait for the focus-in event
- to do this
-
- (pending_focus_window): new variable to make this work
- correctly
-
- (focus_off_window): new function, called when a window becomes
- unfocusable
-
- * events.c (unmap_notify): call focus_off_window
- (focus_in): nullify pending_focus_window if it actually gets
- focused
-
-2001-05-22 John Harper <jsh pixelslut com>
-
- Fixed bug 8220 (Having Ctrl as default "modifier key used for
- default WM shortcuts" breaks everything...):
-
- * keys.c (wm_mod): default window manager modifier is once more
- `M-' instead of `C-'
-
-2001-05-04 John Harper <jsh eazel com>
-
- * keys.h, keys.c: added support for Off2 and Off3 event types
- (button release events). Also changed it so that Click1 events
- now print as `Click'
-
-2001-04-22 John Harper <jsh eazel com>
-
- * colors.c (colors_init): use `#000000' instead of `black'.
- This will still work even if rgb.txt doesn't exist. Also check
- for Fget_color () throwing an exception
-
-2001-04-11 John Harper <jsh eazel com>
-
- Fixed bug 6970 (X plugin doesn't update width and height of
- drawable structure):
-
- * x.c (x_window_note_changes): new function, called by
- Fx_configure_window () after making changes
-
-2001-03-29 John Harper <jsh eazel com>
-
- Fixed an ICCCM compliance problem:
-
- * functions.c, events.c (configure_request, Fresize_window_to,
- Fmove_resize_window_to): don't send a synthetic configure
- notify event if the window was resized (in which case a real
- configure notify was generated)
-
-2001-03-21 John Harper <jsh eazel com>
-
- * fonts.c (x_create_font_set): reverted the last change to
- merge calls to setlocale (). (I had failed to realize that the
- result of calling setlocale describes the current locale not
- the original one). Also added some code to copy the returned
- locale name since it's in a static buffer
-
-2001-03-19 John Harper <jsh eazel com>
-
- * windows.c, sawmill.h: moved XUrgencyHint definition to
- sawmill.h
-
-2001-03-14 John Harper <jsh eazel com>
-
- * version 0.38
-
-2001-03-09 John Harper <jsh eazel com>
-
- * cursors.c (cursors_init): set default_cursor to Qnil when in
- batch mode (to prevent Fdefault_cursor () returning a null
- value)
-
-2001-03-07 John Harper <jsh eazel com>
-
- * functions.c (Fx_raise_window, Fx_lower_window): when these
- functions are given a sibling, check if it has been destroyed.
- If so, do nothing to the stacking order
-
- (This should fix a failed assertion that Ramiro and Duane were
- seeing)
-
-2001-02-26 John Harper <jsh eazel com>
-
- * keys.c (wm_mod): changed default value from EV_MOD_META to
- ControlMask. Part of my fix to bug 7073
-
-2001-02-19 John Harper <jsh eazel com>
-
- * version 0.37.3
-
- * windows.c (install_window_frame, remove_window_frame): only
- do the reparenting if the window hasn't been destroyed
-
- * stacking-list.c (restack_window): just return immediately if
- the window has already been destroyed
-
- * stacking-list.c (window_in_stacking_list_p): new predicate,
- used to replace the assert_window_[not_]in_stacking_list
- functions (which have been deleted)
-
-2001-02-18 John Harper <jsh eazel com>
-
- * functions.c (Frestack_windows, Fx_raise_window,
- Fx_lower_window): be sure to never alter the stacking of
- destroyed windows
-
- [ I think this should fix the random crashes that some people
- have been experiencing - it was possible for a deleted window
- to be reinserted in the stacking list. Then, when the deleted
- window got garbage collected bogus pointers were left in the
- list.. ]
-
- * stacking-list.c: added yet more assertions, this time to
- check that destroyed windows aren't being manipulated where
- they shouldn't be
-
- * sawmill.h (WINDOW_IS_GONE_P): new macro, evaluates to true
- when the window object no longer has an associated client
- window
-
- * windows.c, frames.c, display.c, keys.c: use the above macro
- instead of `w->id == 0'
-
-2001-02-16 John Harper <jsh eazel com>
-
- * stacking-list.c (assert_window_in_stacking_list,
- assert_window_not_in_stacking_list): new functions
-
- * windows.c: use the stacking-list assertions in sensible
- places
-
-2001-02-15 John Harper <jsh eazel com>
-
- * stacking-list.c: added debugging assertions
-
-2001-02-13 John Harper <jsh eazel com>
-
- * version 0.37
-
- * windows.c (remove_window): only call
- remove_from_stacking_list () once per window
-
-2001-02-11 John Harper <jsh eazel com>
-
- * session.c (save_yourself_2): set outstanding_save_done to
- false after calling SmcSaveYourselfDone ()
-
-2001-02-09 John Harper <jsh eazel com>
-
- Work to cache the stacking order of windows locally - this
- fixes the bug where reparenting windows screws the stacking
- order and therefore makes the constraint-based stacking code go
- haywire. It's also an efficiency win since we don't need to
- keep asking the server for the order
-
- * stacking-list.c: new file, code to maintain and manipulate a
- doubly linked list of all managed windows, representing the
- current stacking order. Also has a function to restack a window
- such that it's consistent with its position in the list
-
- * sawmill.h (Lisp_Window): new fields `above' and `below' -
- linkage for the stacking list
-
- * functions.c (Frestack_windows, Fx_raise_window,
- Fx_lower_window): these are now implemented in terms of the
- stacking list primitives. The method is simple: get the list
- into the new order, then call restack_window () on any windows
- that changed position in the list
-
- * windows.c (Fstacking_order): just call make_stacking_list ()
-
- (add_window, remove_window): add and remove the window from the
- stacking list
-
- (install_window_frame, remove_window_frame): after calling
- XReparentWindow (), call restack_window () to fix the stacking
- order of the window - this fixes the original bug
-
-2001-02-07 John Harper <jsh eazel com>
-
- * colors.c (Fget_color): don't try to call XParseColor if we
- have no display connection, just return nil. Patch from merlin
- <merlin merlin org
-
- * fonts.c (x_create_font_set): merged two calls to setlocale ()
- into one. This also avoids problems with its possibly static
- buffer
-
-2001-02-06 John Harper <jsh eazel com>
-
- * functions.c (functions_init): call XineramaQueryExtension
- before XineramaQueryScreens (in case the extension isn't
- present)
-
-2001-01-28 John Harper <jsh eazel com>
-
- * session.c (shutdown_cancelled): if we've not already, send a
- SaveYourselfDone message (required by the XSM protocol)
-
- * main.c (Fexit_type): new function, returns the type of exit
- currently in progress, one of the symbols: `user-quit',
- `user-restart', `session-quit' (or nil if no exit in progress)
-
- * events.c (save_timestamp): (try to) be more intelligent when
- detecting out of order timestamps. Instead of just discarding
- them, fetch the real time from the X server, then set
- `last_event_time' to the timestamp closest to the current
- server time.
-
- This avoids sometimes dropping valid timestamps (e.g. after an
- APM resume, focus changes could be lost for a short time)
-
-2001-01-20 John Harper <jsh eazel com>
-
- * version 0.36
-
-2001-01-18 John Harper <jsh eazel com>
-
- * windows.c: work around XUrgencyHint only being defined on
- X11R6 and later
-
-2001-01-17 John Harper <jsh eazel com>
-
- * frames.c (set_frame_shapes): apply the mask of the image
- associated with the current state of the frame part, not always
- the inactive state
-
- * frames.c (set_frame_part_bg): if applying a pixmap with no
- mask, set the shape to be the rectangle defined by the edges of
- the frame part. This fixes the bug where parts in which only
- some of the constituent images have alpha channels, get
- corrupted when resized
-
- * frames.c (configure_frame_part): if the window already
- exists, call XClearArea () to generate an Expose event. This
- fixes the bug where window decorations can update
- inconsistently when resizing windows
-
-2001-01-15 John Harper <jsh eazel com>
-
- * keys.c (Fbind_keys): signal an error when <1 arg, don't just
- return rep_NULL (which may cause a crash later)
-
-2001-01-09 John Harper <jsh eazel com>
-
- * windows.c (Fwindow_icon_image): added support for icons
- stored on the KWM_WIN_ICON property (aka `mini icons'). Only
- used when there's no icon in WM_HINTS
-
- * images.c (Fcrop_image): fix typo when checking validity of
- HEIGHT parameter (patch from martin whoever com)
-
-2001-01-05 John Harper <jsh eazel com>
-
- * version 0.35
-
-2001-01-04 John Harper <jsh eazel com>
-
- * events.c (map_request): be sure to map the frame (if
- appropriate) _before_ calling the map-notify-hook. Otherwise X
- errors can result from code thinking the frame is visible when
- it isn't yet. Fixes bug 5243 (shaded windows die on restart)
-
-2001-01-02 John Harper <jsh eazel com>
-
- * images.c (Fcomposite_images): fixed bugs in both gdk-pixbuf
- and Imlib versions
-
-2000-12-30 John Harper <jsh eazel com>
-
- * gtk-style.c (states): reordered this array so that it matches
- the actual GtkStateType enum. Patch from <michaelj maine rr com>
-
-2000-12-22 John Harper <jsh eazel com>
-
- * images.c (Fmake_image_from_x_drawable): special cased (=
- depth 1) case for gdk-pixbuf substrate
-
-2000-12-18 John Harper <jsh eazel com>
-
- * keys.c (direct_modifiers): only substitute physical for
- virtual modifiers if the physical modifiers actually exist.
- Otherwise just preserve the virtual bits
-
- (translate_event_to_x_button, translate_event_to_x_key): if
- after translating modifiers, any virtual modifiers still exist,
- don't accept the event
-
- * keys.h (EV_VIRT_MOD_MASK): new definition, the bits
- representing virtual (non X-native) modifiers
-
-2000-12-05 John Harper <jsh eazel com>
-
- * keys.c (lookup_event): reject events if they're button events
- but don't have at least one button modifier (or the `Any'
- modifier) set. Fixes #4983
-
-2000-12-04 John Harper <jsh eazel com>
-
- * keys.c: support Button6 and Button7
- * keys.h: define Button6 and Button7 values to their logical
- values (known to work on XFree86 version 4)
-
- [ adapted from a patch by Steve Haslam <araqnid debian org> ]
-
- * images.c (Fimage_modifier, Fset_image_modifier): fixed bug of
- not accepting () to stand for all three color components
-
- * version 0.34
-
-2000-11-28 John Harper <jsh eazel com>
-
- * keys.c (wm_mods, Fwm_modifier, Fset_wm_modifier): a new
- modifier, `W-', that's user-settable
- (Fevent_match): new function for comparing events
-
- * keys.h (EV_MOD_WM): new bit
-
-2000-11-27 John Harper <jsh eazel com>
-
- * x.c (x_window_event_handler): ignore any expose events which
- don't have a zero `count' field
-
-2000-11-26 John Harper <jsh eazel com>
-
- * events.c, functions.c (client_message, Fget_x_property): when
- converting from 32-bit data use rep_make_long_uint () instead
- of rep_MAKE_INT () (which will fail on large values)
-
-2000-11-20 John Harper <jsh eazel com>
-
- * events.c (focus_out): if unable to find a window, check for a
- deleted window, and nullify focus_window variable if one is
- found
-
- * windows.c (remove_window): don't nullify focus_window if
- removing the focused window
- (window_mark_type): mark focus_window variable
-
- * events.c, functions.c, windows.c (Fquery_pointer,
- Fquery_pointer_window, Flist_x_properties, Fget_x_property,
- Fstacking_order): don't call emit_pending_destroys () after
- round trip requests, let them be delivered synchronously
-
- * events.c: removed all the ignore-fp-keymap stuff
-
-2000-11-18 John Harper <jsh eazel com>
-
- * x.c (x_window_event_handler): pass the window as the second
- argument to event handlers (event type is the first). Patch
- from Unai Uribarri Rodríguez <unaiur telecable es>
-
-2000-11-16 John Harper <jsh eazel com>
-
- * main.c (sawfish_symbols): defvar `sawfish-locale-directory'
- to the value of the SAWFISH_LOCALEDIR macro
-
-2000-11-14 John Harper <jsh eazel com>
-
- * windows.c (register_property_monitor, Fwindow_put): a general
- interface for getting notification when the value of a window
- property is changed
-
- * keys.c (keymap_prop_change): property change handler for
- Qkeymap (used to be embedded into Fwindow_put)
-
- * events.c (ignore_fp_prop_change): called when the
- ignore-fp-keymap property is changed, if a context map is
- cached, recompute it (really fixes #4708)
-
- * events.c (current_context_map): cache the context map across
- calls
- (flush_current_context_map): new function
-
- (button_press, motion_notify): new semantics for context maps
- in motion events, the map is the map that was active when the
- button-press event was received. This fixes the
- fast-window-drag bug #4708
-
-2000-11-13 John Harper <jsh eazel com>
-
- * version 0.33.1
-
-2000-11-10 John Harper <jsh eazel com>
-
- * events.c (current_context_map): new function, replaces the
- variable of the same name (the context map may now change
- depending on the environment, so it's not cachable). If the
- window's ignore-fp-keymap property is set, give a null context
- keymap
-
-2000-11-08 John Harper <jsh eazel com>
-
- * version 0.33
-
-2000-11-07 John Harper <jsh eazel com>
-
- * frames.c (set_frame_shapes): fix stupid bug of getting
- dimensions of scaled images wrong (introduced by the last
- change)
-
-2000-11-06 John Harper <jsh eazel com>
-
- * frames.c (apply_mask): local function to clip a mask (if
- required) before union'ing it onto the destination window
-
- (set_frame_shapes): use apply_mask () to form the image mask,
- otherwise only images whose dimensions are an integer multiple
- of the tiled image can be created without corrupting the
- surrounding state. Fixes #4519
-
- * pixmap-cache.c: added code to disable the pixmap cache if
- DISABLE_CACHE preprocessor macro is defined
-
-2000-11-02 John Harper <jsh eazel com>
-
- * events.c (focus_in, focus_out): pass MODE parameter to
- focus-{in,out}-hook as for leave/enter hooks
-
-2000-10-28 John Harper <jsh eazel com>
-
- * windows.c (window_input_hint_p): new function
- (focus_on_window, Fwindow_wants_input_p): use
- window_input_hint_p. Fixes the bug where window-wants-input-p
- wasn't checking if the InputHint flag was set before reading
- the value
-
-2000-10-24 John Harper <jsh eazel com>
-
- * events.c: reverted last change (it breaks some focus stuff),
- instead the leave/enter hooks pass an extra argument: MODE, one
- of the symbols `normal', `grab' or `ungrab', the xcrossing.mode
- field of the event
-
- * events.c: only call leave-notify-hook or enter-notify-hook
- for NotifyNormal events (i.e. ignore Grab/Ungrab events since
- they don't really represent the pointer crossing window
- boundaries)
-
-2000-10-22 John Harper <jsh eazel com>
-
- * functions.c (Fdisplay_message): new attribute `head . ID'
- specifying the head to centre the message on. Adapted from a
- patch from Geoff Reedy <vader21 imsa edu>
-
-2000-10-19 John Harper <jsh eazel com>
-
- * version 0.32
-
-2000-10-18 John Harper <john dcs warwick ac uk>
-
- * events.c (property_notify): track changes to the
- flags.XUrgencyHint field, invoke window-state-change-hook when
- it flips (passing `urgency' state). Also fixed some obscure gc
- protection stuff
-
- * windows.c (Fwindow_urgent_p): new function
-
-2000-10-09 John Harper <john dcs warwick ac uk>
-
- * keys.c (eval_input_event): only set current_event to null
- when leaving the top-level event loop. This helps when working
- with multiple commands and/or event loops
-
-2000-10-05 John Harper <john dcs warwick ac uk>
-
- * windows.c (Fwindow_wants_input_p): if no WM_HINTS, default to
- false. Also if the window supports WM_TAKE_FOCUS, always return
- true
-
- (focus_on_window): if sending a WM_TAKE_FOCUS message, only
- explicitly focus on the window if it's accepts-input hint is
- set
-
-2000-09-28 John Harper <john dcs warwick ac uk>
-
- * fake-libexec: patch from John H. Palmieri
- <palmieri math washington edu> to link to libfoo.so as well as
- foo.la (for Tru64?)
-
-2000-09-22 John Harper <john dcs warwick ac uk>
-
- * images.c (images_init): check return value of imlib_init ()
- and bail out if failure
-
-2000-09-20 John Harper <john dcs warwick ac uk>
-
- * version 0.31
-
-2000-09-17 John Harper <john dcs warwick ac uk>
-
- * sawmill.h (Lisp_Window): added bitfield `pending_reshape'
-
- * frames.c (queue_reshape_frame, commit_queued_reshapes): new
- functions to allow calls to set_frame_shapes () to be buffered
-
- (set_frame_part_bg): if the background changes, queue a reshape
- of the frame. This removes the long-standing misfeature that
- the different states of each frame part must have the same
- shape
-
- [ it also means that a lot of needless shaping is happening;
- this could perhaps be reduced by writing a function that just
- calculates the shape of a given sub-region of the frame ]
-
- * events.c (shape_notify): use queue_reshape_frame () instead
- of set_frame_shapes ()
-
- * display.c (redisplay): call commit_queued_reshapes ()
-
- * play-sample.c: exit fn is called rep_dl_kill not rep_dl_exit
-
-2000-09-07 John Harper <john dcs warwick ac uk>
-
- * x.c: make r_fns and x_fns global, and initialize them once
- (non-constant array initializers are a GCC extension)
-
-2000-09-05 John Harper <john dcs warwick ac uk>
-
- * keys.c (lookup_event): when canonifying shifted keysyms,
- don't lose the S- modifier if the shifted and non-shifted
- keysyms are the same (adapted from E. Jay Berkenbilt)
-
-2000-09-04 John Harper <john dcs warwick ac uk>
-
- * images.c (Fcomposite_images): implemented for Imlib
-
-2000-09-03 John Harper <john dcs warwick ac uk>
-
- * keys.c (lookup_event): canonify `S-x' -> `X'
-
- * x.c, windows.c, session.c, selection.c, main.c, keys.c,
- images.c, functions.c, frames.c, fonts.c, events.c, cursors.c,
- colors.c: magic doc-string comments now include module names
-
- * images.c (Fmake_sized_image): include an alpha channel when
- using gdk-pixbuf
- (set_pixel): if the image doesn't have an alpha channel, and
- the new value requires it, add it to the image
-
-2000-09-02 John Harper <john dcs warwick ac uk>
-
- * images.c (Fscale_image, Fcomposite_images, Fcrop_image): new
- functions. (composite-image isn't implemented for Imlib yet)
-
-2000-09-01 John Harper <john dcs warwick ac uk>
-
- * sawmill-menu.jl, sawfish-client.jl: moved to ../scripts
-
- * events.c (record_mouse_position): handle pointer motion
- threshold
- (motion_notify): only evaluate the event if pointer_in_motion
- is true
-
- * sawmill.h (POS, ABS): new macros
-
-2000-08-31 John Harper <john dcs warwick ac uk>
-
- * keys.c (eval_input_event): removed `yow!' message and
- associated call to Fbeep ()
-
-2000-08-31 John Harper <john dcs warwick ac uk>
-
- * keys.c (window_getting_button_event): new function
- (Fsynthesize_event): for pointer events use
- window_getting_button_event () to locate a suitable window to
- send the event to (one that selects for pointer events)
- (adapted from E. Jay Berkenbilt <ejb ql org>, adapted from gwm)
-
- * functions.c, frames.c, events.c: doc/comment fixes
-
-2000-08-30 John Harper <john dcs warwick ac uk>
-
- * windows.c (Fset_input_focus): treat Qroot arg as Qnil (since
- root-window-keymap is searched when no_focus_window is active)
-
-2000-08-29 John Harper <john dcs warwick ac uk>
-
- * windows.c (add_window): call place-window-hook if
- `initialising' is true; this is the only time that
- place-window-hook is called on a window with the 'placed
- property
- (windows_kill): call remove-window-hook before calling
- remove_window () on each managed window
-
- * windows.c (emit_pending_destroys): don't decrement
- pending_destroys each iteration, just zero it before exiting
-
- * windows.c (remove_window): if !destroyed and !from_error,
- reinstall the original border-width of the client window
- (adapted from E. Jay Berkenbilt <ejb ql org>)
-
- * functions.c: if TEST_XINERAMA is defined, fakes a two-headed
- Xinerama config, for testing purposes
-
-2000-08-26 John Harper <john dcs warwick ac uk>
-
- * functions.c (Ffind_head): this was totally broken
-
-2000-08-24 John Harper <john dcs warwick ac uk>
-
- * main.c (inner_main): call rep_top_level_recursive_edit ()
- instead of Frecursive_edit ()
-
-2000-08-21 John Harper <john dcs warwick ac uk>
-
- * x.c: Integrated patch from Ryan Pavlik <rpav mythosource org>
- to support a load more GC attributes, plus a new function
- x-gc-set-dashes. Cleaned the whole file to match my usual
- coding style
-
-2000-08-16 John Harper <john dcs warwick ac uk>
-
- * sawmill-menu.jl: use #!optional and #!rest instead of
- deprecated &optional and &rest
-
-2000-08-13 John Harper <john dcs warwick ac uk>
-
- * server.h, libclient.h, libclient.c, client.c: server now
- reliably communicates errors back to the client (as `(signal
- 'remote-sawfish (list DATA))' where DATA is a string). Also
- renamed the sockets and X properties. The X protocol now
- includes a version number
-
-2000-08-10 John Harper <john dcs warwick ac uk>
-
- * events.c (configure_request): don't adjust for frame offset
- when marshalling position
-
-2000-08-09 John Harper <john dcs warwick ac uk>
-
- * x.c (create_x_drawable): initialize event_handler field
- (patch from Matt Tucker <tuck whistlingfish net>)
-
-2000-07-30 John Harper <john dcs warwick ac uk>
-
- * frames.c (create_window_frame): don't try to reframe windows
- with a non-null list of frame parts, just print an error
-
-2000-07-28 John Harper <john dcs warwick ac uk>
-
- * main.c: changed the usage printing method
-
-2000-07-27 John Harper <john dcs warwick ac uk>
-
- * x.c, windows.c, session.c, selection.c, play-sample.c,
- main.c, keys.c, images.c, gradient.c, functions.c, frames.c,
- fonts.c, flippers.c, events.c, cursors.c, colors.c: split into
- separate sawfish.wm. modules
-
- * commands.c: deleted, all command handling is written in Lisp
-
- * fake-libexec: script copied from librep to make symlinked
- plugin tree for when compiling
-
- * client.c: wrap libclient functions for rep code, installed as
- sawfish.client module
-
- * sawfish-client.jl: rewrote sawfish-client in Lisp, uses a
- replicated repl to get fully feature front-end in `-' mode
-
-2000-07-25 John Harper <john dcs warwick ac uk>
-
- * sawmill.h: make all bitfields unsigned
-
-2000-07-24 John Harper <john dcs warwick ac uk>
-
- * version 0.30.3
-
-2000-07-23 John Harper <john dcs warwick ac uk>
-
- * sawmill-menu.jl: don't require 'define
-
-2000-07-20 John Harper <john dcs warwick ac uk>
-
- * Makefile.in: avoid warnings from unbuilt dependency files;
- add --mode arguments to libtool commands (from David Kaelbling
- <drk sgi com>)
-
-2000-07-17 John Harper <john dcs warwick ac uk>
-
- * frames.c (build_frame_part): if part has 'hidden property
- set, skip this part
-
-2000-07-16 John Harper <john dcs warwick ac uk>
-
- * frames.c (list_frame_generator): when reconfiguring an
- existing frame, adjust its position so that the position of the
- client window in relation to the root window stays constant
-
-2000-07-14 John Harper <john dcs warwick ac uk>
-
- * version 0.30.2
-
-2000-07-13 John Harper <john dcs warwick ac uk>
-
- * x.c, server.c, keys.c, images.c, functions.c, frames.c,
- fonts.c: use global_symbol_value () instead of Fsymbol_value ()
- in places where the symbol is constant, and it may be called
- from gaolled code
-
-2000-07-12 John Harper <john dcs warwick ac uk>
-
- * events.c (configure_request): ensure that one (and only one)
- synthetic ConfigureNotify event is sent to the window after the
- configure request has been handled (even if the window's state
- doesn't change at all)
-
- [ this fixes the bug where menus in java/swing apps appear too
- high until the window has been moved ]
-
- * windows.c (manage_windows): if current focus is PointerRoot,
- query the window under the pointer, then refocus that. Patch
- from Brad Thompson
-
-2000-07-11 John Harper <john dcs warwick ac uk>
-
- * windows.c (Fmap_windows, Ffilter_windows): new functions.
- Implementing them in C avoids the need to cons up a load of
- list structure just to throw it away immediately afterwards
-
-2000-07-09 John Harper <john dcs warwick ac uk>
-
- * versiom 0.30
-
-2000-07-07 John Harper <john dcs warwick ac uk>
-
- * images.c (get_pixel): don't box the integer twice
- (set_pixel): if no alpha in pixel, but image has alpha channel,
- assume full opacity
-
-2000-07-06 John Harper <john dcs warwick ac uk>
-
- * main.c (main): unless XSupportsLocale (), don't use FontSets
- (patch from Tomohiro KUBOTA <kubota surfchem0 riken go jp>)
-
-2000-07-05 John Harper <john dcs warwick ac uk>
-
- * functions.c (Froot_window_id): new function
-
-2000-07-04 John Harper <john dcs warwick ac uk>
-
- * session.c (ICE_input_ready): if IceProcessMessages () fails,
- shut down
-
-2000-07-03 John Harper <john dcs warwick ac uk>
-
- * colors.c (Fcolor_rgb_8): new function, as color-rgb, but
- returning eight-bit values
-
- * images.c (Fimage_ref, Fimage_set, Fimage_map, Fimage_fill):
- new functions for manipulating image contents
-
-2000-07-02 John Harper <john dcs warwick ac uk>
-
- * version 0.29
-
- * images.c (Fmake_image_from_x_drawable): combine the grabbed
- image and its mask by hand when using Imlib
-
-2000-06-29 John Harper <john dcs warwick ac uk>
-
- * images.c (Fmake_image_from_x_drawable): fixed memory leak in
- gdk-pixbuf case
-
- * libclient.c (unix_server_init): removed call to access (),
- rely on connect () failing to tell us when sockets don't exist
-
-2000-06-28 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl, Makefile.in: deleted sawmill-ui.jl
-
- * keys.c (default_mods): recapitalized the names
-
- * play-sample.c, fonts.c: use sprintf if no snprintf
-
-2000-06-25 John Harper <john dcs warwick ac uk>
-
- * windows.c (Fwindow_icon_image): check that `w->wmhints != 0'
-
-2000-06-24 John Harper <john dcs warwick ac uk>
-
- * events.c (property_notify): when WM_HINTS changes, uncache
- icon, and refresh the frame
-
-2000-06-23 John Harper <john dcs warwick ac uk>
-
- * windows.c (add_window): if `initialising != 0', then set
- `placed' property of window before calling any hooks. This
- stops the window-history module rearranging windows..
-
- * frames.c (build_frame_part): value of `cursor' attribute will
- be called if it is functionp
-
- * frames.c (build_frame_part): don't need to check that values
- returned by call_protectedly are non-null
-
- * frames.c: new frame part attribute `scale-foreground'. When
- non-nil, the foreground image will be scaled to the size of the
- frame part
- * sawmill.h (struct frame_part): added `scale_foreground' flag
-
-2000-06-22 John Harper <john dcs warwick ac uk>
-
- * events.c (configure_request): when we know nonthing about the
- window, propagate the stacking-related fields of the event
- structure to the call to XConfigureWindow
-
-2000-06-21 John Harper <john dcs warwick ac uk>
-
- * fonts.c (generalize_xlfd): don't assume that snprintf (0, ..)
- returns the size of the string that would be formatted (breaks
- on Tru64). Patch from Aron Griffis <agriffis bigfoot com>
-
- * pixmap-cache.c (max_cached_pixels): reduced from 256K pixels
- to 64K pixels
-
-2000-06-20 John Harper <john dcs warwick ac uk>
-
- * events.c (configure_request): represent the full complexity
- of the stacking components of the request. The `stack' cell of
- the alist is (RELATION SIBLING), where RELATION is one of the
- symbols `above', `below', `top-if', `bottom-if', `opposite' and
- SIBLING is a window or `nil'
-
- [ patch from Brad Thompson <yak mit edu> ]
-
- * sawmill.h (Lisp_Window): added `icon_image' field. Null if
- uninitialized, otherwise either Qnil or the image containing
- the window's icon
-
- * windows.c (Fwindow_icon_image): moved here from images.c, now
- caches the image in the window structure
-
- * sawmill.h, images.c: added support for gdk-pixbuf image
- library (xlib version)
-
- 2000-06-19 John Harper <john dcs warwick ac uk>
-
- * play-sample.c (gnome_sound_play): check if
- gnome_sound_sample_load returns negative, if so print a message
- instead of trying to play the negative id
-
-2000-06-18 John Harper <john dcs warwick ac uk>
-
- * sawmill.h, main.c, keys.c, events.c, commands.c: remove any
- rep-compatibility cruft, we require 0.12 now
-
-2000-06-16 John Harper <john dcs warwick ac uk>
-
- * version 0.28.1
-
-2000-06-14 John Harper <john dcs warwick ac uk>
-
- Work to support non-default visuals and color depths:
-
- * display.c: support options --visual=TYPE and --depth=DEPTH
- for specifying the preferred visual type and color depth. Also
- removed the screen_{cmap,visual,depth} variables. Replaced by
- preferred_{visual,depth}
-
- * frames.c: use XCreateWindow instead of XCreateSimpleWindow;
- ensure that we never default to CopyFromParent for any
- parameters (since parent may be different depth/visual)
-
- * x.c (Fx_create_window): ensure that border_pixel is always
- set to something
-
- * main.c (usage): updated for new options
-
- * frames.c, flippers.c, colors.c, images.c, x.c: no longer use
- screen_{cmap,visual,depth}
-
-2000-06-12 John Harper <john dcs warwick ac uk>
-
- * version 0.28
-
- * sawmill-ui.jl (build-frame-style:update-readme): catch errors
- while testing for directory existance (tarfh may error out)
-
-2000-06-10 John Harper <john dcs warwick ac uk>
-
- * keys.c, keys.h: support `Super' modifier; don't always map
- `Alt' to some modifier, only do this for `Meta' now
-
-2000-06-07 John Harper <john dcs warwick ac uk>
-
- * main.c (sawfish_symbols): moved documentation-file to execdir
-
- * windows.c (Fwindow_size_hints): do some sanity checking of
- the fields in the size hints structure (e.g. ignore negative
- values)
-
-2000-06-06 John Harper <john dcs warwick ac uk>
-
- * sawmill.h: moved all Imlib code behind `#ifdef IMLIB'
- protection; typedef image_t redirects to image buffer type
-
- * play-sample.c: only redefine glib macros if glib isn't
- present
-
- * pixmap-cache.c: new file. Caches image->pixmap mappings. Not
- needed when using Imlib
- * main.c (main): call pixmap_cache_init ()
-
- * images.c: ifdef'd all Imlib specific code, some basic support
- for pixmap-cache
-
- * images.c (image_cmap, image_visual, image_depth):
- characteristics of the visual we'll be using for all drawing
-
- * functions.c (Fdisplay_message): use image_cmap instead of
- screen_cmap
-
- * frames.c, gradient.c, colors.c, x.c: removed all Imlib
- specific code, replaced by calls to portable image_ layer
- functions
-
- * events.c (install_colormaps): install image_cmap if the
- window has been reparented (for the frame)
-
- * Makefile.in: added pixmap-cache.c to $(SRCS); use
- $(IMAGE_FOO) instead of $(IMLIB_FOO)
-
-2000-06-05 John Harper <john dcs warwick ac uk>
-
- * main.c, fonts.c: (setq fonts-are-fontsets nil) if setlocale
- () returns null, "C", or "POSIX". This should avoid the problem
- when trying to render 8-bit characters in a 7-bit locale (they
- don't). This is still experimental. Added under guidance from
- Tomohiro KUBOTA
-
- * windows.c (manage_windows): preserve focus while reparenting
- the windows
-
- * events.c (focus_in, focus_out): track the window we last
- received focus-in/out on, and only handle the new event if it
- makes a difference (e.g. avoids generating spurious focus-in
- hook calls when keyboard grab is manipulated)
-
-2000-05-31 John Harper <john dcs warwick ac uk>
-
- * fonts.c (generalize_xlfd): don't bother pattern matching
- field contents, just extract by position
-
-2000-05-30 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (build-symbol): don't use make-closure
-
- * commands.c (Finteractive): removed, unneeded
-
-2000-05-27 John Harper <john dcs warwick ac uk>
-
- * sawmill-menu.jl: require 'define for old (?) libreps
-
-2000-05-26 John Harper <john dcs warwick ac uk>
-
- * display.c (redisplay): if XPending () returns non-zero, mark
- that there is input pending on the display
-
-2000-05-25 John Harper <john dcs warwick ac uk>
-
- * keys.c, commands.c: use rep_call_with_closure () if it's
- available
-
-2000-05-22 John Harper <john dcs warwick ac uk>
-
- * Makefile.in: remove .jlc files in `clean' target, not in
- `realclean'
-
-2000-05-19 John Harper <john dcs warwick ac uk>
-
- * fonts.c: integrated patch from Tomohiro KUBOTA
- <kubota surfchem0 riken go jp> to create FontSets using
- intelligently created font specifications
-
-2000-05-16 John Harper <john dcs warwick ac uk>
-
- * x.c: the old window type can now contain one of three
- different types of drawable: window, pixmap, or bitmap (single
- bitplane pixmap); there's also a function to grab the contents
- of a drawable to an image
-
- * images.c (Fmake_image_from_x_drawable): new function, the
- guts of Fwindow_icon_image, which now calls this new function
-
- * sawmill-ui.jl: set the WM_CLASS property on windows
-
-2000-05-15 John Harper <john dcs warwick ac uk>
-
- * frames.c (Qdefault_frame, Qnil_frame): deleted, nil-frame is
- defined in frames.jl, default-frame is never used
-
-2000-05-14 John Harper <john dcs warwick ac uk>
-
- * client.c: new option `-r FEATURE', evaluates `(require 'FEATURE)'
-
-2000-05-12 John Harper <john dcs warwick ac uk>
-
- * events.c (enter_notify): ignore NotifyInferior events
- (entering from inner window), leave_notify has always done this
-
-2000-05-09 John Harper <john dcs warwick ac uk>
-
- * version 0.27
-
-2000-05-08 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (beautify-symbol-name): adapted to handle any
- type of argument, but only beautifies symbols
-
- * sawmill-ui.jl: fixed bug of not beautifying command names
- after `Copy' or `Insert' operations
-
-2000-05-03 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (match-window:edit): use non-destructive
- operations when splitting property list into bool/non-bool sets
-
-2000-04-30 John Harper <john dcs warwick ac uk>
-
- * functions.c (do_raise_lower): signal an error if the window
- and sibling are the same window
-
-2000-04-27 John Harper <john dcs warwick ac uk>
-
- * functions.c (regrab_server): new function, to be called after
- the server may have been ungrabbed too soon
-
- * images.c (Fwindow_icon_image): new function, return an image
- representing a windows icon (adapted from Bruce Miller
- <docmad md prestige net>)
-
- * functions.c (Fhead_count, Ffind_head, Fhead_offset,
- Fhead_dimensions): Xinerama support (untested)
-
-2000-04-25 John Harper <john dcs warwick ac uk>
-
- * sawmill_subrs.h, sawmill-ui.jl, main.c, images.c, display.c,
- client.c, Makefile.in: s/sawmill/sawfish/ where appropriate
-
-2000-04-23 John Harper <john dcs warwick ac uk>
-
- * main.c (main): set the sawmill structure to export all
- bindings
-
-2000-04-17 John Harper <john dcs warwick ac uk>
-
- * frames.c (list_frame_generator): lower the client window
- before configuring each frame part, otherwise the below-client
- attribute is ignored
-
-2000-04-15 John Harper <john dcs warwick ac uk>
-
- * images.c (find_image_file): use global_symbol_value () to
- dereference Qimage_load_path (it's not in the theme's gaol)
-
- * main.c (global_symbol_value): new function, calls
- Fsymbol_value () from the `sawmill' module
-
-2000-04-14 John Harper <john dcs warwick ac uk>
-
- * sawmill-menu.jl: added support for menu accelerators flagged
- by underscores (auto-detects if rep-gtk supports this), adapted
- from patch from Richard Kilgore <rkilgore kilgoresolutions com>
-
-2000-04-12 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (ui-get-spec): look for errors in the output,
- if found, print a message or tell the capplet
-
-2000-04-11 John Harper <john dcs warwick ac uk>
-
- * frames.c (call_protectedly, call_protectedly_1): functions to
- call other [lisp] functions with error protection in place.
- Used to catch errors while creating frames
-
- * windows.c (Fmap_window_properties): new function
-
-2000-04-09 John Harper <john dcs warwick ac uk>
-
- * version 0.26
-
- * main.c (main): if rep has modules, create a `sawmill' module
- that will be the wm's global namespace, it imports `rep'
-
-2000-04-03 John Harper <john dcs warwick ac uk>
-
- * fonts.c (Fget_font): set f->descent to the correct value,
- instead of to zero
-
-2000-03-30 John Harper <john dcs warwick ac uk>
-
- * selection.c: handle selection atoms as with other X11 atoms,
- i.e. convert literally from symbol name. So do (x-get-selection
- 'PRIMARY) instead of (x-get-selection 'xa-primary)
-
-2000-03-29 John Harper <john dcs warwick ac uk>
-
- * server.c, play-sample.c, main.c, keys.c, images.c, frames.c,
- fonts.c, flippers.c, events.c, display.c, cursors.c, colors.c:
- remove all direct references to `value' field of symbols
-
- * x.c: only use double buffering extensions if
- HAVE_X11_EXTENSIONS_XDBE_H is defined
-
-2000-03-28 John Harper <john dcs warwick ac uk>
-
- * play-sample.c: new plugin, use ESD and libaudiofile (when
- available) to play .WAV files (stolen from gnome-libs)
-
-2000-03-27 John Harper <john dcs warwick ac uk>
-
- * cursors.c (Fget_cursor): fix typo when calling make_bm_cursor
- (passing fg twice), patch from Alexander Barinov
- <barinov altavista net>
-
-2000-03-26 John Harper <john dcs warwick ac uk>
-
- * frames.c (set_frame_part_bg): remember to mark fg as lost
- when calling a function to draw bg
-
-2000-03-21 John Harper <john dcs warwick ac uk>
-
- * x.c (drawable_from_arg): don't automatically look for back
- buffers in windows, require this to be done explicitly
- (Fx_create_root_xor_gc): hacky function to create a gc for
- doing xor drawing on the root window
-
- * functions.c (Fdraw_window_outline, Ferase_window_outline):
- deleted, now in lisp code
-
- * selection.c (Fx_selection_active_p, Fx_get_selection): new
- plugin, functions for retrieving X selections. Adapted from
- patch by Mark Probst <schani mips complang tuwien ac at>,
- which was in turn adapted from Jade's selection handling
-
- * keys.c (Fsynthesize_event): fixed the relative pointer
- position calculation
-
-2000-03-20 John Harper <john dcs warwick ac uk>
-
- * windows.c (focus_on_window): don't focus on windows whose
- `visible' flag isn't set (crashes the gnome control center!?)
-
-2000-03-12 John Harper <john dcs warwick ac uk>
-
- * version 0.25.2
-
- * x.c: double-buffering now works on all window types, not just
- those created by Fx_create_window ()
-
-2000-03-11 John Harper <john dcs warwick ac uk>
-
- * events.c (handle_input_mask): detect if system clocks is
- rewound (could cause us to ignore timestamps)
-
-2000-03-10 John Harper <john dcs warwick ac uk>
-
- * main.c: updated usage information
-
- * functions.c (Fx_raise_window): added an optional second arg,
- the window to raise the first arg immediately above
- (Fx_lower_window): new function, symmetrical to x-raise-window
-
- * server.c, libclient.c: removed the incorrect assumption that
- I/O on sockets is atomic, should fix large requests on FreeBSD
-
- * fonts.c (Qfonts_are_fontsets): new variable, when set to nil,
- never load FontSets, only FontStructs. Currently t by default
-
-2000-03-08 John Harper <john dcs warwick ac uk>
-
- * functions.c (Fx_raise_window, Frestack_windows): these now
- accept window ids as well as window objects
-
- * x.c (x-window-back-buffer, x-window-swap-buffers): basic
- support for the X double-buffering extension
-
-2000-03-06 John Harper <john dcs warwick ac uk>
-
- * keys.c (eval_input_event, print_event_prefix): ported code
- from Jade to print prefix keys after a period
-
- * main.c (on_idle): don't ungrab the keyboard if in the middle
- of a multi-key sequence
-
- * keys.c (eval_input_event): only abort when receiving
- unhandled events if in the top-level event loop
-
-2000-03-05 John Harper <john dcs warwick ac uk>
-
- * version 0.25
-
-2000-03-04 John Harper <john dcs warwick ac uk>
-
- * main.c (on_idle): after being idle for one second in the
- outermost event loop, ungrab the pointer and keyboard. This may
- unfreeze the intermittent lockups reported by some people
-
- * keys.c (Qmulti_click_delay): new variable, the maximum delay
- between successive button press events to count as a click2 or
- click3 (from Martin Blais <blais iro umontreal ca>)
-
-2000-03-02 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl: separate the keymap shell using a vpaned
- widget
-
- * sawmill-ui.jl: `beautify' symbol names in the keymap widget
- (s/[:-]/ / and capitalize first word). Also remove redundant
- `keymap' suffix from keymap names
-
- * frames.c (list_frame_generator): if resizing a window be
- smarter about when the shape is reinitialized (before the
- resize if the frame is growing, after otherwise). Also, move
- and resize the client window in a single request
- (configure_frame_part): set bit- and win-gravity of frame parts
- to StaticGravity
-
- * windows.c (fix_window_size): only call XResizeWindow () if
- not calling rebuild_frame ()
-
- * frames.c (list_frame_generator): reorder some operations,
- maybe less flicker when resizing opaquely?
-
- * keys.c: support multi-key bindings. Create them by binding an
- event in one keymap to another keymap (or the name of the
- second keymap). Also, try to detect and avoid situations where
- the input devices are grabbed but we're not going to use the
- input (and thus get locked in an inner event loop)
-
-2000-03-01 John Harper <john dcs warwick ac uk>
-
- * x.c (Fx_fill_polygon): new function
-
-2000-02-29 John Harper <john dcs warwick ac uk>
-
- * functions.c (Fdisplay_message): clicking the pointer on the
- message window now removes it
-
- * commands.c (Fcall_command): re-enabled the following
- interactive codes: `a' (function), `C' (command), `D'
- (directory), `f' (existing file), `F' (file), `k' (event), `n'
- (number), `N' (prefix or number), `s' (string), `S' (symbol),
- `v' (variable)
-
- * events.c (key_press, button_press, motion_notify): always
- call XAllowEvents () with Sync{Keyboard,Pointer}, not Async
-
- * functions.c (Fgrab_window, Fgrab_pointer): more parameters to
- allow finer grab control (event modes, pointer confinement).
- Patch from Timo Korvola <tkorvola e math helsinki fi>
-
-2000-02-28 John Harper <john dcs warwick ac uk>
-
- * gradient.c, flippers.c: don't use rep_dl_subrs or
- rep_dl_feature (some BSD systems have (had?) problems with data
- segment relocations)
-
-2000-02-27 John Harper <john dcs warwick ac uk>
-
- * x.c: new plugin (feature `x'), wraps some Xlib functions.
- Allows windows and GCs to be created and drawn with (from
- merlin merlin org with additions by me)
-
- * fonts.c (Ffont_ascent, Ffont_descent): new functions (from
- merlin merlin org)
-
-2000-02-26 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl: new option --flatten; display sub-groups
- inline instead of using a tree widget (good for control
- center). In normal `tree' item, don't put frame the widgets
-
- * keys.c (Fcurrent_event_string): fix typo when checking if an
- event is currently being handled
-
- * events.c (button_press): only use the context map if the
- window or its frame is visible
-
-2000-02-25 John Harper <john dcs warwick ac uk>
-
- * keys.c (update_keyboard_mapping): new function, updates the
- modifier data
- * events.c (mapping_notify): new event handler
-
- * sawmill-ui.jl: use `quotient' instead of `/' where
- appropriate. Define `quotient' to `/' if unbound
-
- * windows.c, functions.c, events.c, display.c, commands.c: use
- the non-fixnum number representations where appropriate (where
- 32-bit data may be found)
-
- * sawmill.h, main.c: define rep_INTEGERP (), rep_make_long_uint
- () and rep_get_long_uint () if rep_INTERFACE < 8
-
-2000-02-24 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl: put the theme README in a scroller
-
-2000-02-20 John Harper <john dcs warwick ac uk>
-
- * keys.c (Fsynthesize_event): new function, sends an event (key
- or mouse button) to a window
-
-2000-02-15 John Harper <john dcs warwick ac uk>
-
- * events.c (install_colormaps): new function, install all
- colormaps associated with a given window (including colormaps
- of it's associated windows)
- (property_notify): watch for WM_COLORMAP_WINDOWS changing
-
- * sawmill.h (Lisp_Window): added cmap_windows and
- n_cmap_windows fields
- * windows.c (add_window): initialise cmap_windows fields
- (window_sweep): free cmap_windows
-
-2000-02-14 John Harper <john dcs warwick ac uk>
-
- * version 0.24
-
- * sawmill.h (Lisp_Font): support for both XFontSet and
- XFontStruct representations
-
- * fonts.c (Fget_font): if a FontSet can't be created, try to
- load a FontStruct
- (x_text_width, x_draw_string): switch on actual font
- representation
-
- * frames.c, functions.c: use x_text_width () and x_draw_string ()
-
-2000-02-11 John Harper <john dcs warwick ac uk>
-
- * events.c (configure_request): marshal the event to an alist,
- then call configure-request-hook with it
-
- * client.c: copied the bouncing parentheses hack from librep
- (which was copied from guile)
-
- * keys.c (Fx_keysym_name, Fx_lookup_keysym): new functions
-
-2000-02-10 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (match-window:edit): make three columns of
- boolean properties, not two
-
-2000-02-08 John Harper <john dcs warwick ac uk>
-
- * client.c (main): set rl_basic_quote_characters to include
- only the double-quote character (from Matt Krai)
-
- * events.c (save_timestamp): don't print the ``time backwards''
- messages anymore
-
- * functions.c (Fdisplay_message): translate font names to fonts
-
- * colors.c, cursors.c, fonts.c, images.c (Fget_color,
- Fget_cursor, Fget_font, Fmake_image): if dpy == 0, return nil
-
-2000-02-06 John Harper <john dcs warwick ac uk>
-
- * functions.c (Fdisplay_message): if possible, keep the message
- window wholly on screen
-
- * main.c (main): run in a dynamic root
- * events.c (handle_input_mask): run all handlers in dynamic
- roots
-
-2000-02-03 John Harper <john dcs warwick ac uk>
-
- * cursors.c, events.c, frames.c (default-cursor,
- synthetic-configure-mutex, frame-draw-mutex,
- frame-state-mutex): now a function of a single parameter
-
- * frames.c (fp_sweep): comment out `fp->win == 0' assert, I
- think it should be harmless
-
- * commands.c, keys.c (last-command, this-command, prefix-arg,
- current-prefix-arg, eval-modifier-events,
- eval-key-release-events): these are now normal (passive)
- variables
-
-2000-01-31 John Harper <john dcs warwick ac uk>
-
- * events.c (send_synthetic_configure): remember to clear the
- pending_configure flag after sending the event
-
-2000-01-30 John Harper <john dcs warwick ac uk>
-
- * version 0.23
-
-2000-01-27 John Harper <john dcs warwick ac uk>
-
- * windows.c, images.c, fonts.c (Fwindow_put, Fwindow_get,
- Fimage_put, Fimage_get, Ffont_put, Ffont_get): use equal test
- on property names, not eq
-
- * sawmill-ui.jl (build-tree): put the root tree in a scrolled
- window
-
- * sawmill-ui.jl: new widget `tree'
-
-2000-01-26 John Harper <john dcs warwick ac uk>
-
- * fonts.c (fonts_init): don't cause following code to fail
- catastrophically if unable to load fixed font
- * frames.c (set_frame_part_fg): bail out if no font whatsoever
-
-2000-01-25 John Harper <john dcs warwick ac uk>
-
- * main.c: only call before-exit-hook if rep_INTERFACE < 8
-
- * functions.c (Fx_delete_window, Fdelete_window): removed
- (Fsend_client_message): if format is 32, accept long-int style
- values
-
-2000-01-24 John Harper <john dcs warwick ac uk>
-
- * windows.c (add_window): fix bug of leaving window name unset
- if XmbTextPropertyToTextList () fails
-
- * functions.c (Fx_delete_window, Fx_kill_client): two new
- functions
-
-2000-01-21 John Harper <john dcs warwick ac uk>
-
- * windows.c (add_window): call after-add-window-hook after
- everything has been initialised
-
-2000-01-20 John Harper <john dcs warwick ac uk>
-
- * events.c (Vsynthetic_configure_mutex): new variable, while t,
- no synthetic ConfigureNotify events are sent to windows after
- they've been moved
- * sawmill.h (Lisp_Window): new flag, `pending_configure'
-
- * functions.c (Fmove_resize_window_to): new function,
- simultaneous move&resize
- * frames.c (list_frame_generator): when reconfiguring an
- existing frame window, set its position as well as its size
-
-2000-01-19 John Harper <john dcs warwick ac uk>
-
- * version 0.22
-
-2000-01-18 John Harper <john dcs warwick ac uk>
-
- * frames.c (refresh_frame_part): abort if trying to redraw a
- part without a window
-
-2000-01-15 John Harper <john dcs warwick ac uk>
-
- * frames.c (Fframe_part_put): only set values in the new
- `local_alist' field, in case `alist' is shared by multiple
- frame parts (the `local_alist' is scanned first)
- * sawmill.h (struct frame_part): new field `local_alist'
-
- * frames.c (Frebuild_frame_part): new function, analogous to
- Frebuild_frame (), but for a specific part of the frame
-
- * events.c (subtract_timestamps): made this function actually
- work (return negative values when necessary)
-
-2000-01-14 John Harper <john dcs warwick ac uk>
-
- * functions.c (Fdisplay_message): fixed specifying foreground
- colours using strings; abort when Fget_color returns rep_NULL;
- update the background pixel of any existing message window to
- the new color (from Matt Kraai <kraai ghs com>)
-
- * events.c (handle_fp_click, unclick_current_fp): protection
- against refreshing stale frame parts
-
- * frames.c (list_frame_generator): fixed stupid gc-protection
- bug when building new frames
-
-2000-01-12 John Harper <john dcs warwick ac uk>
-
- * frames.c: frame parts are now first-class lisp objects
- (Fframe_part_put, Sframe_part_window, Fframe_part_x_window,
- Fframe_part_position, Fframe_part_dimensions,
- Fframe_part_state, Fmap_frame_parts, Frefresh_frame_part,
- Frefresh_window): new functions
- (set_frame_part_fg, set_frame_part_bg): if the fg or bg object
- is a function, then call it to do the redrawing, with the frame
- part as the sole argument
- (Fframe_part_get): args are now `(FRAME-PART PROP)'
-
- * sawmill.h (struct frame_part): made into a lisp data type
-
- * events.c (Fclicked_frame_part_offset,
- Fclicked_frame_part_dimensions): deleted
- (Qenter_frame_part_hook, Qleave_frame_part_hook): now called
- with arguments `(WINDOW FRAME-PART)'
-
- * windows.c (window_mark_type): no need to call mark_frame_type
- anymore
-
- * keys.c: filter Scroll_Lock events as well as Num_Lock and
- Caps_Lock (from Matt Krai, with minor changes by me)
-
-2000-01-11 John Harper <john dcs warwick ac uk>
-
- * events.c (save_timestamp): new function, records a server
- timestamp with checks for validity
- * server.c (server_handle_request): call save_timestamp
-
- * events.c (record_mouse_position): only update button-press
- details on button-release events if they're not already filled
-
- * windows.c, keys.c, frames.c: revert to grabbing on the client
- window, grabbing on the client causes awkward problems with
- replaying events
-
- * events.c, windows.c (property_notify, add_window): support
- compound text properties in icon and window names
- * main.c (main): call setlocale (LC_ALL, "")
- * fonts.c, frames.c, functions.c, sawmill.h: use XFontSet
- instead of XFontStruct, and related other changes
- * gtk-style.c: call gtk_set_locale (), handle missing RcStyle's
- [ patch from Kondara MNU/Linux distribution, forwarded by
- Yukihiro Nakai <nakai internetsolutions co jp> ]
-
- * display.c (xa_compound_text): new interned atom
-
- * sawmill-ui.jl (build-frame-style): use a GtkCombo instead of
- a GtkOptionMenu to display the list of themes, also put the
- details box above the combo
-
- * events.c (get_server_timestamp): new function, jumps through
- hoops to get a recent timestamp direct from the server
- (record_event_time): be more careful about accepting
- timestamps, only if they look like they're actually _after_ the
- previously last-seen time
- (Fx_server_timestamp): new optional arg, when non-nil get a
- timestamp direct from the server
-
- * server.c (server_handle_request): don't set last_event_time
- to CurrentTime, instead fetch a timestamp from the server
-
-2000-01-10 John Harper <john dcs warwick ac uk>
-
- * keys.c (translate_event_to_x_key): return FALSE if no keycode
- exists for the specified keysym (i.e. the keyboard has no such
- key)
-
- * events.c (record_mouse_position): on button-release, don't
- cancel the saved position/window, just update the position. The
- button_press function will clear the position before it exits.
- This fixes the ``can't bind to -Off events'' bug. Pointed out
- by Matt Krai <krai ghs com>
-
- * keys.c (Fallow_events): if mode is `replay-pointer', then
- forget the time of the last click event (that is used to
- measure double-clicks)
-
-2000-01-09 John Harper <john dcs warwick ac uk>
-
- * version 0.21
-
- * keys.c (lookup_binding): check for non-null current_x_event
- before accessing it
-
-2000-01-08 John Harper <john dcs warwick ac uk>
-
- * frames.c (create_window_frame): if actually creating the
- frame window, then call grab_window_events ()
- * windows.c (add_window, remove_window): don't call
- grab_window_events () anymore
- * keys.c, frames.c (grab_window_events, grab_keymap_event,
- Fwindow_put): when grabbing events, grab on the frame window,
- not the client window
-
- * images.c (Fmake_image): _always_ returns a new image, by
- working around Imlib's annoying caching
-
-2000-01-07 John Harper <john dcs warwick ac uk>
-
- * sawmill.h: added fps_inactive_highlighted and
- fps_inactive_clicked
-
- * frames.c (get_pattern_prop): new function, called by
- list_frame_generator to fill the fp->bg, fp->fg and fp->font
- arrays. This now takes a new format, an alist mapping state
- symbols to values (the old formats are also still accepted).
- Current states are `inactive', `focused', `highlighted',
- `clicked', `inactive-focused', `inactive-clicked'. The last two
- are new, there inclusion removes the need for the
- highlight-when-unfocused option, so it's been removed
-
- * sawmill.h (FRAME_EVENTS): added VisibilityChangeMask (patch
- from Matt Krai <kraii ghs com>)
-
-2000-01-06 John Harper <john dcs warwick ac uk>
-
- * server.c (server_init): chmod the socket as well as the
- directory (for people with losing umasks)
-
-2000-01-02 John Harper <john dcs warwick ac uk>
-
- * frames.c (list_frame_generator): make `(cursor . nil)' work
-
-1999-12-31 John Harper <john dcs warwick ac uk>
-
- * commands.c (Fcall_command): accept closures as possible
- commands
-
- * main.c (main): use rep_load_environment () and
- rep_top_level_exit ()
-
- * windows.c (window_mark): always call mark_frame_parts (), not
- just when w->frame != 0
- (window_mark_type): call mark_frame_type
- * frames.c (mark_frame_type): new function, marks any frame
- parts that are being built but have not yet been added to a
- window
-
-1999-12-24 John Harper <john dcs warwick ac uk>
-
- * functions.c: when reading/writing X properties, use
- u_longs/u_shorts instead of CARD32s/CARD16s; otherwise things
- stop working on alphas (from George <jirka 5z com>)
-
-1999-12-22 John Harper <john dcs warwick ac uk>
-
- * windows.c, images.c, fonts.c (X_put): remove checks for
- immutable cons cells, can't happen
-
-1999-12-20 John Harper <john dcs warwick ac uk>
-
- * images.c (image_sweep): use Imlib_kill_image () instead of
- Imlib_destroy_image () (turns off image caching, but not
- image sharing)
-
-1999-12-19 John Harper <john dcs warwick ac uk>
-
- * version 0.20
-
-1999-12-17 John Harper <john dcs warwick ac uk>
-
- * commands.c (Fcommandp): fixed for current autoload format
-
-1999-12-15 John Harper <john dcs warwick ac uk>
-
- * functions.c (Fgrab_pointer): revert to using
- owner_events=False, it stops annoying focus flickers
-
- * keys.c (translate_event_to_x_button): fix typo (pointed out
- by Hamish Macdonald <hamishm lucent com>)
-
-1999-12-14 John Harper <john dcs warwick ac uk>
-
- * images.c (make_image): when adding to rep_data_after_gc,
- try to include the Imlib allocated data
-
-1999-12-13 John Harper <john dcs warwick ac uk>
-
- * windows.c (add_window): call send_synthetic_configure ()
- after placing the window
-
- * functions.c (Fdisplay_message): allow color names in
- foreground and background atttributes, not just color objects
-
- * frames.c (list_frame_generator): when client_unmapped changes
- and the window is focused, refocus it
-
-1999-12-12 John Harper <john dcs warwick ac uk>
-
- * version 0.19
-
- * events.c (motion_notify): don't compare the event window with
- the button-press window; just use the saved context map from
- the actual button-press event
- (button_press): only use the context map if the part is
- currently clicked; forcible ungrab the pointer after all button
- release events
-
- * frames.c (frame_part_destroyer): if we unclick a frame part,
- ungrab the pointer as well
-
- * functions.c (Fgrab_pointer): grab with owner_events=True
-
- * functions.c (Fdisplay_message): new attribute `spacing',
- space between each line of text
-
- * events.c (handle_input_mask): preserve current_x_event and
- current_event_window in case of recursive calls
-
- * events.c (Qenter_frame_part_hook, Qleave_frame_part_hook):
- new hooks, called when the pointer enter a frame part, two args
- (WIN CLASS)
-
- * frames.c (Fframe_part_get): new function, get frame part
- properties (part is found by window and class)
-
- * frames.c (frame_part_exposer): only allow expose events to
- override the frame_draw_mutex when the server isn't grabbed
-
- * functions.c (Fserver_grabbed_p): new function
-
-1999-12-11 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl: i18n for all natural language strings
-
-1999-12-10 John Harper <john dcs warwick ac uk>
-
- * cursors.c (Fget_cursor): can now create cursors from two
- normal X bitmaps (image and mask) and two colours. Call with an
- argument [IMAGE-NAME MASK-NAME FG BG]
- (Frecolor_cursor): new function
-
- * images.c (make_bitmap): new function (scans image-load-path)
-
- * functions.c (Fgrab_pointer): if the CURSOR argument is
- non-nil, but not a cursor, call Fget_cursor () on it
-
-1999-12-09 John Harper <john dcs warwick ac uk>
-
- * gradient.c (Fdraw_diagonal_gradient): the gradient now scales
- linearly for all lines parallel to that connecting the top-left
- and bottom-right corners (from Chris Hanson <cph zurich ai mit edu>)
-
- * images.c (Fbevel_pixel): new optional parameter BEVEL-PERCENT
- (from Chris Hanson <cph zurich ai mit edu>)
- (Qdefault_bevel_percent): new variable, default for above
- parameter
-
- * events.c (map_request): reinstate the code to iconify a
- window if it's initial state is IconicState (why did I ever
- remove it!?)
-
-1999-12-08 John Harper <john dcs warwick ac uk>
-
- * keys.c (Fforget_button_press): new function, forgets about
- any remembered button press (for calculating click2's etc)
-
-1999-12-07 John Harper <john dcs warwick ac uk>
-
- * frames.c (list_frame_generator): fix crash when font is
- defined as nil
-
- * sawmill-ui.jl (match-window:edit): added a `Grab..' button to
- each matcher
-
- * sawmill-ui.jl (i18n-filename): fixed typo (from Jesus Bravo
- Alvarez <jba pobox com)
-
-1999-12-05 John Harper <john dcs warwick ac uk>
-
- * version 0.18
-
- * sawmill-ui.jl (build-color): create buttons containing a
- preview of the color, not just its name
-
-1999-12-03 John Harper <john dcs warwick ac uk>
-
- * windows.c (add_window): always set the `placed' property
- before exiting
-
- * keys.h, keys.c: support Hyper modifier, prefix `H-'
-
- * frames.c (set_frame_part_bg): fixed a bug when tiling shaped
- frame parts, removed the spurious clipping code
- (refresh_frame_part): handle the dimensions checking here
- instead of in set_frame_part_{bg,fg}
-
- * windows.c (Fset_input_focus): removed the hack of unfocusing
- before refocusing, it causes too much redrawing when focusing
- on the currently focused window
-
-1999-12-02 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl: new match-window property type `pair', a pair
- of integers
-
- * sawmill-ui.jl: look for README.LC (LC == language code) files
- in theme ui; mostly from Yukihiro Nakai
- <nakai internetsolutions co jp>
-
-1999-12-01 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl: added `match-window' widget for editing the
- match-window-profile variable
-
- * events.c (Fquery_button_press_window): new function, tries to
- return the window that the button was pressed in (when in the
- middle of a press-release sequence)
- (motion_notify): only look for frame-part context maps when the
- window that the mouse is currently over is the same window as
- when the button was originally pressed
-
- * keys.c (lookup_event_binding): call
- Fquery_button_press_window () when evaluating a mouse event to
- find the window whose `keymap' property should be searched
-
- * sawmill-ui.jl: the `set' type is now called `symbol'
-
-1999-11-29 John Harper <john dcs warwick ac uk>
-
- * functions.c (Fwarp_cursor_to_window): deleted, now in lisp
-
- * windows.c, session.c, main.c, keys.c, images.c, functions.c,
- frames.c, fonts.c, events.c, cursors.c, commands.c, colors.c:
- changed embedded doc strings
-
- * functions.c (Fdisplay_message): new function, replaces
- Fshow_message, only takes two args a (multi-line) string, and
- an alist of attributes
- (Fshow_message): deleted, now in lisp
-
- * events.c (map_request): if the window isn't visible, then
- call map-notify-hook manually
- (unmap_notify): recognize synthetic unmap events (for when the
- window isn't currently visible), and delete WM_STATE property
- afterwards
-
-1999-11-28 John Harper <john dcs warwick ac uk>
-
- * windows.c (remove_window): check that the focus hasn't got
- lost somehow; if it has refocus the last-focused window, or the
- invisible input window
-
- * version 0.17
-
-1999-11-27 John Harper <john dcs warwick ac uk>
-
- * keys.c (translate_event_to_x_button, grab_event,
- ungrab_event): fixed bug when grabbing buttons with AnyModifier
- _and_ a specific button
-
- * client.c (completion_generator): pass the boundp predicate
- when remotely calling apropos
-
- * windows.c, images.c, fonts.c, cursors.c, colors.c: remember
- to add to rep_data_after_gc after allocating lisp data
-
-1999-11-26 John Harper <john dcs warwick ac uk>
-
- * windows.c (Fwindow_size_hints): added window-gravity field
- (Fwindow_border_width): new function
- [both mostly from merlin <merlin merlin org>]
-
-1999-11-25 John Harper <john dcs warwick ac uk>
-
- * windows.c, session.c, server.c, sawmill-ui.jl,
- sawmill-menu.jl, frames.c, events.c, commands.c: updated for
- single namespace and scheme-like function semantics
-
-1999-11-19 John Harper <john dcs warwick ac uk>
-
- * functions.c (Fgetpid): deleted, use (process-id) instead
-
- * sawmill-ui.jl (documentation): call _ on any documentation
- (on the wm)
-
- * main.c (usage): added --disable-nls option
-
-1999-11-17 John Harper <john dcs warwick ac uk>
-
- * Makefile.in: set REP_GTK_DONT_INITIALIZE=1 when compiling
- scripts
-
- * events.c (map_request): only map the client window if it's
- client_unmapped bit is clear
-
- * windows.c (Fhide_window, Fshow_window): only map/unmap the
- frame if it exists
-
- * keys.c (lookup_event_binding): if a mouse event, _never_
- look in the focus window by default
-
-1999-11-15 John Harper <john dcs warwick ac uk>
-
- * windows.c (Fset_window_frame): each window frame must be a
- closure of a list, not just a list
- * frames.c (set_frame_part_bg, set_frame_part_bg,
- list_frame_generator): activate the frame's closure before
- doing anything
-
-1999-11-12 John Harper <john dcs warwick ac uk>
-
- * images.c (Fbevel_image): patch from Scott Sams
- <sbsams eos ncsu edu> to fix some calculation errors
-
-1999-11-11 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (build-color:clicked): remove left over comma
- from old backquoting
-
-1999-11-10 John Harper <john dcs warwick ac uk>
-
- * main.c (main): Fload () has five arguments now
-
- * windows.c (Fstacking_order): fix memory leak (memprof rules!)
-
- * windows.c, sawmill-ui.jl, sawmill-menu.jl, main.c, keys.c,
- images.c, functions.c, frames.c, fonts.c, flippers.c, events.c,
- display.c, commands.c, colors.c: updated for lexically scoped
- rep
-
-1999-11-07 John Harper <john dcs warwick ac uk>
-
- * version 0.16
-
-1999-11-06 John Harper <john dcs warwick ac uk>
-
- * windows.c (Fget_window_by_id): new function
-
-1999-11-05 John Harper <john dcs warwick ac uk>
-
- * windows.c (Fset_input_focus): call focus_on_window (0) before
- focusing the given window, seems to help transfer the focus
- when called after grabbing the keyboard
-
-1999-11-04 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (build-pages): if a notebook, make it
- scrollable and enable the popup menu
-
- * events.c (property_notify): use XGetWMNormalHints instead of
- XGetNormalHints when WM_NORMAL_HINTS changes
-
-1999-11-01 John Harper <john dcs warwick ac uk>
-
- * windows.c (Qafter_framing_hook): new hook, called after both
- set-window-frame and rebuild-frame
-
- * sawmill.h (POINTER_GRAB_EVENTS): use PointerMotionMask
- instead of ButtonMotionMask
-
-1999-10-31 John Harper <john dcs warwick ac uk>
-
- * version 0.15
-
- * keys.c (translate_event_to_x_button): don't ignore non Click1
- events
-
- * events.c (key_press, button_press, motion_notify): when a
- grab is in effect, and there may be more events from it, use
- the Sync(Pointer|Keyboard) argument to XAllowEvents ()
-
- * sawmill.h (POINTER_GRAB_EVENTS): new #define, the events to
- select from pointer grabs
- * keys.c, functions.c: use POINTER_GRAB_EVENTS when grabbing
-
-1999-10-30 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (build-frame-style:update-readme): themes in
- tar files are now expected to have a top-level directory with
- the same name as the theme
-
-1999-10-29 John Harper <john dcs warwick ac uk>
-
- * frames.c (list_frame_generator): maybe fix a bug when
- Fget_font returns rep_NULL
-
- * sawmill-ui.jl (build-keymap-shell): improved some gtk packing
- parameters
-
- * sawmill-menu.jl (create-menu): call
- gtk-widget-lock-accelerators on each menu item if the function
- is available
-
-1999-10-28 John Harper <john dcs warwick ac uk>
-
- * dlmalloc.c: support FreeBSD sbrk ()
-
- * libclient.c (unix_server_init): add one to the length
- argument to connect ()
-
- * keys.c (search_keymap): fix matching EV_MOD_ANY events when
- other modifiers are also specified
-
-1999-10-27 John Harper <john dcs warwick ac uk>
-
- * events.c (synthesize_button_release): function to be called
- when ungrabbing the pointer
- * functions.c (Fungrab_pointer): call synthesize_button_release
-
- * events.c (Fquery_last_pointer): replaced this function by
- Fquery_button_press_pointer, instead of returning the last but
- one mouse position, return the position at the last ButtonPress
- event. This helps us work-around problems when MotionNotify
- events are received without an immediately preceding ButtonPress
-
- * windows.c (Fwindow_id): return nil if the client window has
- been deleted
- (Fwindow_frame_dimensions): call Fwindow_dimensions if the
- window is currently unframed
-
- * events.c (property_notify): update cached WM_TRANSIENT_FOR
- property when it changes
-
-1999-10-26 John Harper <john dcs warwick ac uk>
-
- * client.c (main): fix realloc bug
-
-1999-10-25 John Harper <john dcs warwick ac uk>
-
- * version 0.14.2
-
- * functions.c (Fdelete_window): reinterrogate the window's
- WM_PROTOCOLS property in case it set WM_DELETE_WINDOW after
- being mapped
-
- * functions.c (Qafter_restacking_hook): new hook, called
- whenever the stacking order is explicitly altered
-
- * functions.c (Fshow_message): use a local event handler for
- better data hiding
-
- * events.c (register_event_handler, deregister_event_handler):
- new functions, allow window-local event handlers to be created
-
- * flippers.c: new plugin, provides the mechanism for viewport
- edge-flipping (hooks enter-flipper-hook and leave-flipper-hook)
-
- * version 0.14.1
-
- * functions.c (Fsend_client_message): bug fix from Ricardo R.
- Massaro <massaro ime usp br>
-
-1999-10-24 John Harper <john dcs warwick ac uk>
-
- * version 0.14
-
- * sawmill-ui.jl (documentation): redefine this standard
- function to get the doc string from the window manager process
-
- * events.c (shape_notify): call shape-notify-hook
-
-1999-10-23 John Harper <john dcs warwick ac uk>
-
- * windows.c (install_window_frame): call restack_frame_parts
- * frames.c (restack_frame_parts): new function
-
-1999-10-22 John Harper <john dcs warwick ac uk>
-
- * frames.c: expose events override the frame-draw-mutex
-
- * windows.c (manage_windows): call after-iniitialization-hook
- after adopting all windows
-
- * client.c (completion_generator): added basic readline symbol
- completion; doesn't differentiate between variables and
- functions
-
- * server.h, server.c, libclient.c: create sockets in
- `/tmp/.sawmill-USER/DPY' to try and prevent /tmp exploits
-
- * sawmill-menu.jl (popup-menu): new optional arg POSITION
-
- * events.c (Fclicked_frame_part, Fclicked_frame_part_offset,
- Fclicked_frame_part_dimensions): new functions
-
- * events.c, functions.c (configure_request, Fmove_window_to,
- Fresize_window_to): call window-moved-hook and
- window-resized-hook as appropriate
-
-1999-10-20 John Harper <john dcs warwick ac uk>
-
- * sawmill-menu.jl (popup-menu): new optional arg TIMESTAMP
-
- * events.c (Fx_server_timestamp): new function
-
- * server.h, server.c, libclient.c: unix-domain socket is now
- `/tmp/.sawmill-DPY' since there have been problems with
- network-mounted home directories
-
- * events.c (property_notify): update w->hints when
- WM_NORMAL_HINTS changes
-
-1999-10-18 John Harper <john dcs warwick ac uk>
-
- * functions.c, events.c: added debugging output for X
- timestamps and [un]grabbing functions
-
-1999-10-17 John Harper <john dcs warwick ac uk>
-
- * version 0.13
-
- * sawmill-ui.jl (build-frame-style:update-readme): handle
- themes stored in tar files
-
-1999-10-16 John Harper <john dcs warwick ac uk>
-
- * images.c (Fmake_image): support loading non-local images (by
- copying to a temporary file)
-
-1999-10-14 John Harper <john dcs warwick ac uk>
-
- * events.c (Fx_events_queued): new function
-
- * windows.c (Fhide_window): go back to old method of not
- unfocusing when hidden window has focus
-
- * windows.c (add_window): set the `mapped' bit (so that it's
- set when hooks are called)
-
- * session.c (save_yourself): ignore SmSaveGlobal requests
-
- * events.c (handle_input_mask): don't set last_event_time to
- CurrentTime before exiting (this may cause server
- race-conditions when using recursive edits)
-
-1999-10-13 John Harper <john dcs warwick ac uk>
-
- * main.c (main): handle --version option; provide usage
- function to rep_init ()
-
-1999-10-12 John Harper <john dcs warwick ac uk>
-
- * events.c (actual_last_event_time): the real last timestamp
- from the server
-
- * frames.c (set_frame_part_bg): fix image tiling
-
- * frames.c (Qhighlight_when_unfocused): new option, only
- highlight frame parts in unfocused windows when this is set
- non-nil
-
- * display.c, libclient.c (canonical_display): handle unix:0
- displays
- (canonical_host): map host name to lowercase
-
- * keys.c (translate_event_to_x_key): handle shifted keys (i.e
- things like C-C) correctly
-
- * colors.c (Fget_color_rgb): fix bug when scanning list of
- previously allocated colors (accepting non-matching color)
- (Fget_color): use XParseColor instead of XLookupColor
-
-1999-10-11 John Harper <john dcs warwick ac uk>
-
- * version 0.12.2
-
- * frames.c (set_frame_part_fg): if fg needs to be updated, but
- bg hasn't recently been redrawn, redraw bg to clear fg
-
- * version 0.12.1
-
- * frames.c (list_frame_generator): after freeing the gc
- (unviewable part) zero its pointer
-
-1999-10-10 John Harper <john dcs warwick ac uk>
-
- * version 0.12
-
-1999-10-09 John Harper <john dcs warwick ac uk>
-
- * events.c (focus_in, focus_out): ignore events with detail
- NotifyPointer
-
-1999-10-08 John Harper <john dcs warwick ac uk>
-
- * frames.c (set_frame_shapes): new function, construct the
- frame shape from the union of all individual shapes
- (set_frame_part_bg): draw the background manually, instead of
- setting it as the window background and letting the X server do it
- [these changes fix the infamous ``jerky pointer while changing
- focus'' bug, also the `unshaped' property has been removed]
-
- * windows.c (set_window_shape): deleted
- * events.c (shape_notify): call set_frame_shapes not
- set_window_shape
-
- * keys.c (lookup_binding): when event is from no_focus_window,
- search the root-window-keymap
-
- * windows.c (before_local_map, after_local_map): new method of
- ignoring locally-generated map/unmap/reparent notify events;
- should remove all race conditions (!). The method is to grab
- the server, unselect the StructureNotifyMask on the window, do
- the request, then reselect events and ungrab
-
- * windows.c, frames.c: use before_local_map and after_local_map
-
- * events.c (map_notify, unmap_notify, reparent_notify): removed
- all code attempting to ignore locally-generated events
-
- * sawmill.h (Lisp_Window): removed the `reparenting',
- `local_maps' and `local_unmaps' fields
-
- * functions.c (Fgrab_server, Fungrab_server): don't bother
- hijacking the message function; Fgrab_server calls XSync
- instead of XFlush to guarantee the server actually is grabbed
- on return
-
-1999-10-07 John Harper <john dcs warwick ac uk>
-
- * display.c, libclient.c (canonical_display): canonicalise any
- given hostname (i.e. tizer:0 => tizer.dcs.warwick.ac.uk:0.0)
-
- * events.c, display.c (destroy_notify, error_handler): don't
- set focus_window = 0, if the current window is destroyed,
- instead let remove_window () or emit_pending_destroys () call
- focus_on_window (0) when necessary
- * windows.c (remove_window, emit_pending_destroys): call
- focus_on_window (0) when we think the destroyed window is
- currently focused
-
- * server.c (server_init): when binding, add one to the size of
- the address (for the terminating null character)
-
-1999-10-05 John Harper <john dcs warwick ac uk>
-
- * sawmill.h (struct frame_part): new bit `below_client'
- * frames.c: recognize `(below-client . t)' attribute in frame
- part, when set, the part's window is kept _below_ the client
-
- * windows.c (remove_window): release passive grabs
-
- * client.c: include readline support from Christopher P Goller
- <goller eng utah edu>
-
- * version 0.11
-
- * events.c (focus_in): if focus is passed to the root window,
- focus on our unviewable window
-
- * windows.c (focus_on_window): go back to using RevertToParent
-
-1999-10-04 John Harper <john dcs warwick ac uk>
-
- * functions.c (Fdelete_window): return to using XKillClient
- instead of XDestroyWindow when WM_DELETE_WINDOW isn't available
-
- * keys.c, functions.c: when using the x_win_from_arg function,
- being unable to find a window xid is only an error if we
- weren't passed a window object (gracefully handle windows being
- closed while their handles are in use)
-
- * sawmill.h (struct frame_part): added a field `drawn'; a
- structure defining the last-drawn contents
- * frames.c: try to optimize frame-part redisplay as much as
- possible, only update fg/bg when they're different to the
- currently displayed data
-
-1999-10-03 John Harper <john dcs warwick ac uk>
-
- * version 0.10
-
- * windows.c (Fhide_window): if the hidden window has the focus,
- call focus_on_window (0)
-
- * windows.c (focus_on_window): use RevertToNone instead of
- RevertToParent
-
- * frames.c (reset_frame_parts): redraw any frame parts whose
- state changes
-
- * events.c (Fcurrent_event_window): moved here from keys.c,
- this now takes an (undocumented) optional argument, the window
- to return for the duration of evaluating this event
-
- * events.c (reparent_notify): handle case where we're not doing
- the reparenting--unadopt the window and reissue the reparent
- request
-
-1999-10-02 John Harper <john dcs warwick ac uk>
-
- * server.c (server_init): chmod the socket to rwx------
-
-1999-10-01 John Harper <john dcs warwick ac uk>
-
- * frames.c (list_frame_generator): when hide-client is set,
- ensure that the client window ends up unmapped
-
- * windows.c (focus_on_window): don't focus unmapped client
- windows, focus the frame instead (so its state changes)
-
- * sawmill.h (Lisp_Window): new bits: `client_hidden' and
- `client_unmapped'. Used to allow the client to be unmapped
- while its shaded. Added integers `local_maps' and
- `local_unmaps': the number of expected notify events
-
- * events.c (map_notify, unmap_notify): look at the local_maps
- and local_unmaps fields
-
- * windows.c (Fhide_window, Fshow_window): set the
- client_unmapped bit, and use local_[un]maps instead of the
- event mask
-
- * sawmill-ui.jl (build-keymap-shell): added a `Grab key' button
-
-1999-09-30 John Harper <john dcs warwick ac uk>
-
- * main.c (exit_code): variable replacing the old jmp_buf exit
- method; set the variable to an exit code then call Fquit ()
- * session.c (die): use the new exit method
-
- * frames.c (set_frame_part_fg): remember to tell the event loop
- that there may be X events read but not handled (Imlib..)
-
- * libclient.c, libclient.h: abstracted the guts of client.c,
- providing a better interface
- * client.c: call the client_ functions in libclient.o
-
-1999-09-29 John Harper <john dcs warwick ac uk>
-
- * client.c: added back the old unix domain code, if this can't
- make a connection, then try the X property based server
- * server.c, server.h: reprieved, enabled by default now, but
- write sockets as ~/.sawmill/.unix-CANONICAL-DISPLAY
-
- * display.c (Qcanonical_display_name): new variable, display
- name with fq hostname and screen number
-
- * functions.c (Fget_x_text_property, Fset_x_text_property): new
- functions
-
- * events.c (property_notify): for WM_NAME and WM_ICON_NAME
- properties, only refresh the frame or call the hook if the
- value of the property _actually changed_
-
- * sawmill.h (Lisp_Color): removed the `name' field
-
- * colors.c (Fget_color_rgb): new function; get a color
- specified by its RGB values
-
- * images.c (Fget_image_shape_color, Fset_image_shape_color):
- new functions, gets/sets the color of the transparent pixels
-
-1999-09-28 John Harper <john dcs warwick ac uk>
-
- * keys.c (search_keymap): allow things like `Any-C-x' to work;
- this looks for a `C-x' event plus any other modifiers
-
- * session.c: if HAVE_X11_SM_SMLIB_H isn't defined, don't do any
- session management
-
- * windows.c (Fwindow_wants_input_p): new function, returns the
- input field of a window's WM_HINTS property
-
- * frames.c (set_frame_part_bg): when checking if the part
- overlaps the client, do it correctly
-
-1999-09-27 John Harper <john dcs warwick ac uk>
-
- * windows.c (remove_window_frame): only remove windows from
- the save-set if the client window was unmapped by its owner
-
- * display.c (error_handler): ignore errors where resourceid is
- zero, and don't print unrecognized errors, they're just
- annoying..
-
- * sawmill.h (WINDOWP): now the same as XWINDOWP; i.e. we don't
- care whether or not the client has disappeared (which was
- causing more problems than it solved)
-
- * windows.c (Fhide_window, Fshow_window): unmap the client
- window when it's hidden (by law of the ICCCM)
-
- * frames.c (list_frame_generator): raise each frame part
- window as it's created/reconfigured
-
-1999-09-26 John Harper <john dcs warwick ac uk>
-
- * version 0.9
-
- * display.c (sys_init): set the display-name variable to the
- display we opened (or a null string if in batch-mode)
-
- * events.c (map_notify): check if the window set its
- override_redirect attribute to True while it was unmapped, if
- so un-adopt the window
-
-1999-09-25 John Harper <john dcs warwick ac uk>
-
- * events.c (handle_input_mask): ignore NoExpose and
- GraphicsExpose events
-
- * sawmill-ui.jl (build-file): new widget `file-name' for
- selecting files
-
- * frames.c, windows.c (list_frame_generator,
- install_window_frame): client window is always left beneath any
- overlapping frame parts
-
- * frames.c (set_frame_part_fg, list_frame_generator): the
- `foreground' frame part property may now be an image (or list
- of images), it's drawn into the part, respecting any defined
- justification, but with no scaling or tiling
-
-1999-09-24 John Harper <john dcs warwick ac uk>
-
- * frames.c (set_frame_part_bg): when a shaped image is placed
- (at all) inside the client window, apply the shape mask to the
- frame part's window, not to the frame's window [this may
- conflict with shaped client windows?]
-
- * images.c (Ftile-image): fix bug when src image is vertically
- smaller than dest image
-
- * events.c (configure_request): when a client asks to be moved,
- factor in the frame offset if it's reparented
-
-1999-09-23 John Harper <john dcs warwick ac uk>
-
- * keys.c (translate_event): fix bug where X server reports that
- it has a keysym at index 1 as well at index 0, even when
- xmodmap disagrees, and the keysyms are the same (XKB extension
- on XFree86)
-
- * sawmill-ui.jl (build-keymap): fix cancel/revert problem
-
- * sawmill-ui.jl (build-keymap): new button: copy
-
- * sawmill-ui.jl: improved the bindings widget, try to remove
- the annoying jitter when selected list items
-
- * session.c (Fsm_connect, Fsm_disconnect): new functions.
- Connection with the session manager is now removed from the
- actual initialisation process. The lisp code will call
- sm-connect at the right time
-
-1999-09-21 John Harper <john dcs warwick ac uk>
-
- * colors.c (Fget_color): allocate all colors using
- Imlib_best_color_match (); this makes no difference using
- TrueColor or DirectColor visuals but should help on PseudoColor
- (i.e. 8 bit) visuals
- * sawmill.h (Lisp_Color): removed the XColor struct, just
- inline the three rgb values and the pixel color
-
- * main.c (main): call images_init () before colors_init (),
- since colors.c using Imlib
-
- * images.c, gradient.c, functions.c, frames.c: changes for new
- color type
-
- * frames.c (list_frame_generator): fix seg fault where either
- Fget_font () or Fget_color () returns an error
-
-1999-09-20 John Harper <john dcs warwick ac uk>
-
- * keys.c (event_proxy_fun): deleted
- (lookup_event_binding): new function, used by eval_input_event
- and Flookup_event_binding, it finds the window to search in,
- then calls lookup_binding
-
-1999-09-19 John Harper <john dcs warwick ac uk>
-
- * version 0.7
-
-1999-09-18 John Harper <john dcs warwick ac uk>
-
- * keys.c (find_meta): if alt_mod is unset, set it to meta_mod
- (i.e. similarly to for meta_mod)
- (Qalt_keysyms, Qmeta_keysyms): variables showing which keysyms
- generate the two virtual modifiers
-
-1999-09-17 John Harper <john dcs warwick ac uk>
-
- * frames.c (list_frame_generator): try to prevent weird shaped
- frames being created for very small client windows. The rule is
- that if a frame part's position is specified by a single edge,
- and it overlaps the opposite edge of the client window, then
- truncate the part to that edge. This still isn't perfect, but
- at least the border is always correct
-
-1999-09-16 John Harper <john dcs warwick ac uk>
-
- * keys.c: added Mod5 to list of accepted modifiers
-
- * events.c (key_press): evaluate KeyRelease events again
-
- * functions.c (Fgrab_keyboard, Fungrab_keyboard): new functions
-
- * keys.h: EV_MOD_RELEASE extra modifier bit to mark KeyRelease
- events from KeyPress events
- * keys.c: removed the long methods of specifying modifiers
- (Veval_modifier_events, Veval_key_release_events): new
- options, control whether we evaluate these abnormal events
-
- * functions.c (Fwarp_cursor_to_window): unless coordinates are
- given, warp relative to top-left corner of the frame. If coords
- are given, they are relative to the client window
-
- * functions.c (Fgrab_pointer): accept a nil window, and
- fallback to grabbing on the root if the specified window is
- unviewable
-
-1999-09-15 John Harper <john dcs warwick ac uk>
-
- * frames.c (Qoverride_frame_part_classes): new variable,
- similar to Qframe_part_classes but with higher precedence than
- the frame definition itself
-
- * session.c, main.c, functions.c, frames.c, commands.c,
- alloca.c: try to support C_ALLOCA and other variants
-
- * windows.c (emit_pending_destroys): abort if a lisp interrupt
- occurs
-
- * frames.c (set_frame_part_bg): rearrange how shaped images are
- handled -- it's imperative that the frame must _always_ retain
- the union of the old and new shapes, unfortunately this means
- that we need to make a copy of the original frame shape..
-
-1999-09-14 John Harper <john dcs warwick ac uk>
-
- * commands.c (Fcall_command): changed `f', `w' and `W'
- interactive codes to `%f', `%w' and `%W'. `%' is now reserved
- for app-local codes
-
- * functions.c (Fshow_message): new optional arg POS; defines
- the position of the message window on the screen
-
- * windows.c (window_sweep): preserve the order of window_list
-
-1999-09-13 John Harper <john dcs warwick ac uk>
-
- * windows.c (Fwindow_framed_p): new predicate
-
- * keys.c (translate_event_to_x_button): if no button is
- specified, but mod_any is set, then return AnyModifier and
- Button1 (which should be ignored)
- (grab_event, ungrab_event): support AnyModifier correctly
-
- * functions.c (Fdelete_window, Fdestroy_window): never use
- XKillClient, just XDestroyWindow
-
-1999-09-12 John Harper <john dcs warwick ac uk>
-
- * version 0.6
-
- * windows.c (pending_destroys): new variable, the number of
- destroyed windows whose hooks haven't been called
- * windows.c, functions.c, events.c, display.c: call
- emit_pending_destroys () after round-trip X requests, try to
- minimize the time between a window dieing and its
- destroy-notify-hook being called
-
-1999-09-11 John Harper <john dcs warwick ac uk>
-
- * cursors.c (Fcursorp): new function
-
- * windows.c (set_window_shape): if updating a shaped window
- with no frame, just use a single ShapeSet operation, not a
- ShapeSet followed by a ShapeUnion (fixes the flashing gmc icons
- bug)
-
-1999-09-10 John Harper <john dcs warwick ac uk>
-
- * images.c (Fimagep): new function
- (bevel_pixel): increase the bevel multiplier from 0.5 to 0.75
-
- * windows.c (window_mark_type): ensure that closed windows
- which haven't had destroy-window-hook called aren't collected
-
- * frames.c: new frame part properties: `class' and `removable',
- new window property `removed-parts'
- (get_keymap_for_frame_part): new function
-
- * events.c (key_press): don't look for a frame part keymap
- (button_press, motion_notify): call get_keymap_for_frame_part
-
-1999-09-09 John Harper <john dcs warwick ac uk>
-
- * keys.c, keys.h: added `click3' event
-
- * frames.c (frame_part_destroyer): if any of the frame parts
- are clicked, make sure that clicked_frame_part gets cleared
-
- * frames.c, windows.c: added a new window property
- `hide-client', when non-nil the client window won't be visible
- (call rebuild-frame after setting for it to take effect)
-
- * keys.c: removed hashed keymaps (vectors), just lists of
- bindings now
- (Fbind_key, Funbind_key): bindings no longer nest
-
- * sawmill-ui.jl (build-number-entry): use spin-buttons for
- entering numbers
-
- * events.c (property_notify): fixed this function
-
-1999-09-08 John Harper <john dcs warwick ac uk>
-
- * sawmill.h (Lisp_Window): store window and icon names as lisp
- strings
- * events.c, windows.c: handle lisp string names, fix some
- memory leaks
-
- * sawmill-ui.jl: added --socket-id option to allow the ui to be
- embedded in the gnome control center. This also disables the
- ok/cancel/etc buttons and enables a hacky protocol on
- stdin/stdout
-
-1999-09-07 John Harper <john dcs warwick ac uk>
-
- * frames.c (destroy_window_frame): new arg, whether or not to
- delete the top-level frame window or not
- (list_frame_generator): handle building a new frame into an old
- top-level window
-
- * windows.c (Fset_window_frame): don't delete the parent frame
- window, this prevents having to reparent the client back to the
- root, and in turn prevents all flickering
-
- * sawmill-ui.jl (ui-quit): tell the wm to save the custom file
- before exiting
-
- * images.c (Ftile_image): new function
-
- * sawmill-ui.jl: changed the architecture, instead of the wm
- connecting with the configurator, make the configurator connect
- with the wm (using sawmill-client); re-enabled the "revert"
- button
-
- * sawmill.h (Lisp_Window): added `destroyed' bit
- * windows.c (emit_pending_destroys): call destroy-notify-hook
- where it's required
- * events.c (destroy_notify): only call hook if it's not already
- been called
- (handle_input_mask): call emit_pending_destroys after each event
- * display.c (error_handler): mark that may be input pending on
- the X connection (so that the event loop will call
- emit_pending_destroys)
-
- * windows.c (install_window_frame, remove_window_frame): handle
- adding and deleting from the save-set here (so that unmapped
- but not destroyed windows are removed from it)
-
-1999-09-06 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (build-frame-style:update-readme): strip
- trailing whitespace from the README file
-
- * functions.c (Fshow_message): don't set save_under and
- backing_store in the message window--they slow down opaque
- window movement on XFree86..
-
- * windows.c, images.c, fonts.c, cursors.c, colors.c: define rep
- comparison functions for these types, I'd forgotten that they
- couldn't just be null pointers
-
- * display.c (error_handler): don't call destroy-notify-hook
- since it might generate X protocol requests (not allowed)
-
- * frames.c (Fframe_state_mutex): when this variable is non-nil,
- entering or leaving a frame-part's window won't affect its
- state. As a hack, if you set this to `clicked' the frame part's
- state will be set clicked (this is needed because LeaveNotify
- events seem to be able arrive before the MotionNotify events
- causing them)
-
- * events.c (enter_notify, leave_notify): don't change
- frame-part state if frame_state_mutex is set
-
- * keys.c (Fallow_events): new function, wrapper for
- XAllowEvents
- (grab_event): all active grabs now use GrabModeSync
-
- * events.c (button_press, key_press): call XAllowEvents
- with AsyncPointer or AsyncKeyboard after handling the event,
- since active grabs are now synchronous
-
- * events.c (focus_in): only handle the event if the window is visible
-
- * windows.c (find_window_by_id): print less debugging info
-
-1999-09-05 John Harper <john dcs warwick ac uk>
-
- * version 0.5
-
-1999-09-04 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (frame-style): new widget type
-
- * functions.c (Fshow_message): new function, displays a
- specified string in the middle of the screen
- * events.c (expose): recognize when the message_win is exposed
- * main.c (main): call functions_kill
-
- * frames.c (frame_part_focuser): deleted since it's exactly the
- same as refresh_frame_parts ()
-
- * session.c (session_init): only try to connect if
- SESSION_MANAGER is set in the environment
-
-1999-09-03 John Harper <john dcs warwick ac uk>
-
- * windows.c (add_window): only call place-window-hook if (as
- well as not being in initialisation) the `placed' property of
- the window isn't set
- (Fwindow_group_id): check that w->wmhints isn't a null pointer
-
- * session.c: the C portion of session management -- very minimal
- * sawmill.h (enum exit_codes): new member `ec_session_died'
-
- * main.c (Qsaved_command_line_args): new variable, contains the
- pristine command line arguments. Provides the arguments to
- exec() when restarting
-
- * functions.c (Fgetpid): new function, should be in librep,
- needed for session management
-
- * main.c (Qsaved_command_line_args): new variable, a list
- containing the unmodified args
-
-1999-09-02 John Harper <john dcs warwick ac uk>
-
- * functions.c (Fx_raise_window): wrapper for XRaiseWindow ()
-
- * version 0.4
-
- * events.c (client_message): even if we can't find a client
- window object for the event, still pass it through the hook
-
- * gtk-style.c: helper program for `gtk' theme. Outputs the
- default GTK style as an s-expression
-
- * frames.c (refresh_frame_parts): new function
-
- * windows.c (Frebuild_frame): new function
-
- * images.c (Fclear_image): new function
-
-1999-09-01 John Harper <john dcs warwick ac uk>
-
- * images.c (Fmake_sized_image): replaced the three pixel colors
- by one color object
-
- * frames.c: added a `render-scale' attribute, allows the buffer
- size of parts rendered on the fly to be reduced
- * sawmill.h (struct frame_part): added render_scale field
-
- * images.c (Fbevel_image): new function
-
-1999-08-31 John Harper <john dcs warwick ac uk>
-
- * frames.c: new attribute in frame part alists: `renderer', a
- function called with args (IMAGE STATE). It should draw the
- background of the frame part into IMAGE for STATE (nil,
- focused, highlighted, clicked)
-
- * sawmill.h (struct frame_part): new fields `renderer',
- `rendered_image' and `rendered_state'
-
- * images.c (make_image): search the list of images before
- making a new lisp object
- (Fmake_sized_image): new function, create a blank image of a
- certain size and colour
-
- * gradient.c (Fdraw_vertical_gradient,
- Fdraw_horizontal_gradient, Fdraw_diagonal_gradient): new
- plugin, new functions
-
- * windows.c, main.c, keys.c, images.c, functions.c, frames.c,
- fonts.c, events.c, cursors.c, colors.c: added doc strings for
- built-in functions
-
- * display.c (sys_init): don't connect to display if batch-mode
- is non-nil
- * keys.c, images.c, frames.c, fonts.c, cursors.c, colors.c: if
- batch-mode is non-nil, don't do anything that would access the
- display when initialising or shutting down
-
- * windows.c (Fset_client_state): deleted
-
- * functions.c (Fget_x_property, Fset_x_property): use CARD16
- and CARD32 types to access 16- and 32-bit data respectively
-
- * keys.c (num_lock_mod): initialised to the Num_Lock modifier,
- ignored in events
- (grab_event, ungrab_event): grab all combinations including
- LockMask and num_lock_mod
-
-1999-08-30 John Harper <john dcs warwick ac uk>
-
- * keys.c (translate_event): ignore the Lock modifier
-
- * functions.c (Fgrab_pointer): pass last_event_time to
- XGrabPointer (), not CurrentTime (since Fungrab_pointer also
- passes last_event_time)
-
- * events.c (handle_input_mask): set last_event_time to
- CurrentTime on leaving the function
-
- * sawmill.h: defining DEBUG to zero sends debugging output to
- db_printf ()
- * display.c (db_printf): replacement printf to store debugging
- output in one of rep's debug buffers
-
- * sawmill-ui.jl (keymap-shell): doesn't choke on non-symbol
- commands anymore, but it's still not possible to edit arbitrary
- forms..
-
- * events.c (button_press): click the frame before looking for
- the context map (since we only look for these maps in clicked
- frame parts)
- (unmap_notify): call reset_frame_parts
-
- * windows.c (Fhide_window): call reset_frame_parts
-
- * frames.c (reset_frame_parts): new function, resets clicked or
- highlighted state associated with a window frame
-
-1999-08-29 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl: fix option-menu problems, abbreviate displayed
- font names to just the font's family
-
- * sawmill.h: define _GNU_SOURCE
- * functions.c, client.c: some minor `-ansi -pedantic' fixes
-
-1999-08-27 John Harper <john dcs warwick ac uk>
-
- * events.c (colormap_notify): fix bug where changing a colormap
- when no window is focused causes a segfault
-
- * sawmill.h (XlibSpecificationRelease): if undefined, define to
- 4; this really means X11R4 or _less_
-
- * display.c (XGetAtomNames): implement using XGetAtomName ()
- for X11R5 or less
-
- * events.c (configure_request): if we know about the window,
- call raise-window or lower-window instead of XRaiseWindow () or
- XLowerWindow ()
-
- * sawmill-ui.jl (build-set): only call
- gtk-option-menu-set-history if history is non-nil
-
-1999-08-26 John Harper <john dcs warwick ac uk>
-
- * sawmill.h (struct frame_part): added `highlighted' and
- `pending_refresh' bits
-
- * events.c: handle highlighting frame parts, and temporarily
- unclicking parts when the mouse leaves them. If the
- ButtonRelease occurs when the mouse isn't in the part, the
- context-map is ignored
-
- * frames.c: the background/foreground attributes are now
- (NORMAL FOCUSED HIGHLIGHTED CLICKED) (note addition of
- highlighted class, displayed when the mouse is in the part)
- (Vframe_draw_mutex): when t no frame parts are redrawn
-
- * events.c (Qproperty_notify_hook, Qreparent_notify_hook): new
- hooks
- (get_event_mask): new function, returns an event mask that
- would select a specified type of event
-
- * keys.c (Fproxy_current_event): allow event_mask and propagate
- args to XSendEvent to be specified
-
- * frames.c (refresh_frame_part): new function, draws both
- background and foreground
-
- * sawmill-ui.jl (build-set): sets can now be displayed as
- option menus, clists, as well as the old radio buttons,
- controlled by the ui-set-style var, or the :widget key
-
-1999-08-25 John Harper <john dcs warwick ac uk>
-
- * display.c (beep): new function, hooked into rep_beep_fun
-
- * functions.c (Fdelete_window): only send WM_DELETE_WINDOW
- message if window has said it can handle it, otherwise
- XKillClient
-
- * windows.c (Fstacking_order): new function
-
- * functions.c (Fraise_window, Flower_window,
- Fraise_lower_window, Fcirculate_up, Fcirculate_down): deleted
- (Frestack_windows): new function
-
- * events.c: replace calls to XMapRaised by XMapWindow
-
- * display.c (error_handler): don't report BadWindow errors that
- we've already handled
-
-1999-08-24 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (build-keymap-shell:update-doc): translate
- newlines to spaces in doc strings
- (build-keymap): flatten and wrap the keymap doc string
-
- * colors.c (Fcolor_rgb): new function
-
- * fonts.c (Ftext_width, Ffont_height): new functions
-
- * sawmill-ui.jl (build-keymap-shell:set-binding): align the
- clist flush left when scrolling to the selected command
-
- * events.c (key_press): ignore KeyRelease events
-
-1999-08-23 John Harper <john dcs warwick ac uk>
-
- * frames.c (list_frame_generator): was making the rectangle of
- the client window too big when setting the shape mask
-
- * commands.c (Fcall_command): the `W' specifier ignores the
- current event's window if it's the root
-
- * client.c: new option `-c COMMAND' to invoke an interactive
- function
-
- * sawmill-ui.jl (build-pages): use a HPaned widget to contain
- the box and group frame, this stops the boundary changing to
- match their relative sizes
-
- * version 0.3a
-
- * functions.c (Fgrab_pointer): remove the hack choosing which
- window to grab in
- (Fungrab_pointer): if we're waiting for a ButtonRelease on a
- frame-part, unclick it
-
- * events.c: changes to how frame-part "clicking" is handled
- (Fquery_pointer): optional arg GET, to force a round-trip to
- the server
- (Faccept_x_input): new function, process any available X events
-
- * sawmill-ui.jl (keymap-shell): this now has a new key
- `:doc-path' giving the list of documentation databases. This is
- used to display the doc-string of the selected command
-
- * client.c: after sending the event, _always_ wait for a
- PropertyNotify event, not just for synchronous requests
-
-1999-08-22 John Harper <john dcs warwick ac uk>
-
- * version 0.3
-
- * client.c: new client-server protocol, using X properties to
- allow inter-host communications
- * server.h, server.c: deleted, the server is now Lisp code
-
- * windows.c (x_find_window_by_id): try harder to find a window
- object for an id, possibly returning an invalidated object
- (remove_window): even if the window has been invalidated, try
- to remove the frame when appropriate
-
- * sawmill.h (Lisp_Window): new field `saved_id', this is
- another copy of the window id, but isn't zeroed when the error
- handler finds that the window has been deleted
-
- * events.c (property_notify): between XGet.. calls, check if
- the error handler invalidated the window
-
- * events.c (destroy_notify): use the x_find_window_by_id
- function to search for a window object for the destroyed window
- (since the error handler may have invalidated it)
-
- * keys.c: handle `Alt' similarly to `Meta' (i.e. find the
- actual modifier bit then subsitute it)
- * keys.h: added EV_MOD_ALT
-
- * events.c (Fquery_pointer): only use the stored mouse position
- if we're currently handling an event, and this event stored the
- position
-
- * functions.c (Fgrab_server, Fungrab_server): set
- `rep_message_fun' to null whilst the server is grabbed (in case
- stdout is to an xterm)
-
- * functions.c (Fgrab_pointer): if the specified window object
- doesn't have a mapped frame, then grab in the root window
-
- * functions.c (Fget_x_property): return nil if property doesn't
- exist
-
-1999-08-21 John Harper <john dcs warwick ac uk>
-
- * functions.c (Fraise_window, Flower_window,
- Fraise_lower_window, Fdelete_window, Fdestroy_window): these
- now use the `W' interactive decl
-
- * keys.c (Fcurrent_event_window): check if the window is a
- frame part
- (lookup_binding): new arg, CURRENT-WINDOW, the window whose
- `keymap' property is to be scanned
- (eval_input_event): if the event is a pointer event, look for a
- binding in the window that received the event, not the window
- with the input focus
-
- * commands.c (Fcall_command): new interactive specs, `w', the
- window that received the current event, and `W', either the
- same as `w' or the focused window
-
- * main.c (Qbefore_exit_hook): new hook; called before exiting
-
- * keys.c (Fcurrent_event_window): as well as returning a window
- object, this might instead return the symbol `root' or the
- integer id of an unmanaged window
- (Fproxy_current_event): send the current event on to a
- specified window
-
- * gnome.c: deleted, this is now done in lisp
-
- * functions.c (Fdelete_window): accept integer window ids
- (Fdestroy_window): if an integer window id, use XDestroyWindow,
- not XKillClient
- (Fsend_client_message): new function
- (Fcreate_window): new function (so I can do gnome-wm in lisp)
- (x-atom, x-atom-name): translate between symbols<->atoms
-
- * events.c (client_message): now pass _all_ the data in the
- event to the hook, format is (WINDOW TYPE-ATOM DATA-ARRAY).
- DATA-ARRAY is a string (8-bit format) or vector of integers
-
- * display.c (x_atom_symbol, x_win_from_arg): new functions
-
-1999-08-20 John Harper <john dcs warwick ac uk>
-
- * functions.c (Flist_x_properties, Fdelete_x_property,
- Fset_x_property, Fget_x_property): new functions
-
- * client.c (eval_lisp_form): don't use puts () to output the
- result string since it could contain zero bytes
-
- * windows.c (remove_window): a new argument FROM-ERROR. If
- non-nil then we're being called from the error handler, and
- thus won't generate any X protocol requests, let gc destroy the
- frame later
-
- * frames.c (frame_part_destroyer): don't try to delete parts
- without windows
-
-1999-08-19 John Harper <john dcs warwick ac uk>
-
- * frames.c, events.c: it's possible for Imlib_render to trigger
- the X error handler, and possibly invalidate the window that's
- currently being manipulated. So test that `w->id != 0' in
- suitable places
-
-1999-08-16 John Harper <john dcs warwick ac uk>
-
- * version 0.2
-
- * display.c (sys_init): create a new window `no_focus_window'
- that gets given the focus when no other window has it (so we
- receive KeyPress events from it)
- * windows.c (focus_on_window): when told to focus on nothing,
- focus on the `no_focus_window'
- * events.c (unmap_notify): if the window being unmapped has the
- focus (after calling the unmap-notify-hook), unfocus it
-
-1999-08-15 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl: two new elements `keymap' and `keymap-shell',
- for keymap customization
-
- * events.c (circulate_notify): empty event handler
-
- * keys.c (Fgrab_keymap, Fungrab_keymap): new functions
-
- * keys.c (lookup_event_name): fix the bug where only the bottom
- 16 modifier bits were being checked
-
-1999-08-14 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (build-color:clicked): hide the `Help' button
- in the color selection dialog (since it does nothing)
-
- * sawmill-ui.jl: always format color specifiers correctly
-
-1999-08-13 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl (build-color): implements a separate `color'
- element (pretty similar to the `font' element)
- (build-pages): pages are now implemented as a clist and a frame
- (instead of a notebook). This can be changed via the
- ui-pages-style variable
-
- * frames.c (list_frame_generator): the `foreground',
- `background' and `font' keys may now be functions
-
- * frames.c (set_frame_part_bg): for shaped images, apply the
- mask at the correct frame coordinates
-
-1999-08-12 John Harper <john dcs warwick ac uk>
-
- * sawmill.h (Lisp_Window): cache the TRANSIENT_FOR hint
- * windows.c (Fwindow_transient_p): use the cached value
-
- * windows.c (focus_on_window): update `focus_window'
- immediately, instead of waiting for the FocusIn event
- * events.c, display.c: be more careful when changing the
- `focus_window' variable
-
- * events.c: record the time of the _two_ most recent pointer
- positions, the new function Fquery_last_pointer allows access
- to the earlier position
-
-1999-08-11 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl: use a ButtonBox for the control buttons, don't
- display the Revert and Refresh buttons (but they're still
- there, just not enabled)
-
-1999-08-10 John Harper <john dcs warwick ac uk>
-
- * sawmill-ui.jl, sawmill-menu.jl: copied from top-level
- directory, these are now compiled before being installed
-
- * events.c (handle_input_mask): new function, handle all
- outstanding events matching a specified event mask
-
- * windows.c (Fset_window_frame): between removing the old frame
- and installing the new frame handle all SubstructureNotify
- events to prevent the dread infinite frame-add-remove bug
-
-1999-08-09 John Harper <john dcs warwick ac uk>
-
- * sawmill.h (Lisp_Window): make `reparenting' an int so it can
- be incremented and decremented
- * windows.c, events.c: some magic to make the w->reparenting
- work when called from Fset_window_frame
-
- * frames.c (frame_part_destroyer): destroy frame part windows
- and delete their contexts
- (list_frame_generator): don't look at the frame's unshaped
- property if the client window is shaped
-
- * colors.c (Fcolor_name, Fcolorp): new functions
- * fonts.c (Ffont_name, Ffontp): new functions
-
-1999-08-07 John Harper <john dcs warwick ac uk>
-
- * main.c (sawmill_symbols): set interrupt-mode and error-mode
- to top-level; try to stop the wm getting hung in a
- recursive-edit
-
-1999-08-04 John Harper <john dcs warwick ac uk>
-
- * gnome.c (rep_dl_init): delete some properties from the root
- window that other wm's may have set but not removed
-
-1999-08-03 John Harper <john dcs warwick ac uk>
-
- * version 0.1
-
- * main.c (Qsawmill_version): new variable
-
-1999-08-02 John Harper <john dcs warwick ac uk>
-
- * windows.c (Fset_client_state): set the WM_STATE property of a
- window
-
- * main.c (add_hook): new function
-
- * gnome.c: support the _WIN_STATE hint (but only the sticky
- attribute)
-
- * events.c (configure_request): raising a window uniconify's
- it, so that the GNOME pager can uniconify windows (!?)
-
- * cursors.c (Fget_cursor): if a symbol, dereference it's
- cursor-shape property _before_ scanning the list for an
- existing cursor
-
- * windows.c (Fcall_window_hook): new function, similar to
- call-hook, but first hook argument is always a window. Before
- evaluating the symbol value, look for a property of the same
- name in the window
- * events.c, display.c, windows.c: where appropriate use
- Fcall_window_hook instead of Fcall_hook
-
- * gnome.c (rep_dl_init): if ignored-window-names or
- sticky-window-names are void, set them to nil before consing on
- the gnome window names
-
-1999-08-01 John Harper <john dcs warwick ac uk>
-
- * gnome.c (Fgnome_set_workspace): if no workspace is active,
- pretend that workspace zero is
-
- * display.c (error_handler): call destroy-notify-hook _after_
- setting window->id to zero
- (sys_init): select for SubstructureNotify on root window
-
- * events.c (client_message): call `client-message-hook' if
- message isn't handled. This is an `or' style hook
-
-1999-07-31 John Harper <john dcs warwick ac uk>
-
- * frames.c (list_frame_generator): detect when regenerating a
- frame by looking at w->frame instead of w->frame_parts (which
- can be null even when the window is framed)
-
- * gnome.c: new loadable module, minimal GNOME compliance
- (client list, button proxying, workspace details)
-
- * windows.c (Fwindow_size_hints): pass along the PPosition,
- PSize, USPosition and USSize flags
-
- * keys.c (event_proxy_fun): hook called when an unbound event
- occurs. Should return TRUE if it handles the event
-
-1999-07-30 John Harper <john dcs warwick ac uk>
-
- * frames.c: fix stupid stack-smashing bug
-
- * images.c (Fimage_modifier, Fset_image_modifier): new
- functions for playing with Imlib's image modifiers
-
- * frames.c (list_frame_generator): handle propagating the shape
- of the client to the frame here since it's a lot less ugly
- * windows.c: don't call set_window_shape in so many places
-
-1999-07-29 John Harper <john dcs warwick ac uk>
-
- * windows.c (add_window): set WM_STATE of client windows
- (Fwindow_put): when the `keymap' property changes, ungrab the
- old keymap, then grab the new one
-
- * keys.c (Fbind_keys, Funbind_keys): grab/ungrab events in
- client windows if binding to the `global-keymap' or a window's
- `keymap' property
-
- * frames.c (list_frame_generator): indirect through multiple
- symbols in frame_style
-
- * windows.c, server.c, functions.c, events.c, display.c:
- replaced some calls to XSync by XFlush. (XSync also buffers any
- pending events, preventing select from returning)
-
- * display.c: add a call to XSync in the rep_redisplay_fun hook
-
-1999-07-28 John Harper <john dcs warwick ac uk>
-
- * windows.c (fix_window_size): call set_window_shape
-
- * windows.c (add_window): set frame_style to nil not
- default-frame initially
-
- * frames.c: remove the frame data type, now frames are just
- lists, a null list is a null frame. Also, a window's frame may
- be specified as a symbol, in this case the plist of the symbol
- is used for the frame properties
-
- * windows.c: select VisibiltyChangeMask on the client window
- not the frame, the frame was always PartiallyObscured (by the
- client?)
- * events.c (visibility_notify): don't check that the event
- window is the frame anymore
-
- * sawmill.h (Lisp_Window): new field `shaped' set if the client
- window is shaped
- * events.c: handle shaped client windows (ShapeNotify events)
- * windows.c (set_window_shape): new function, copies the client
- windows shape to the frame
- (install_window_frame): call set_window_shape
-
- * display.c (shape_event_base, shape_error_base): new variables
-
- * frames.c (list_frame_generator): when regenerating a frame
- recenter the client window in the resized frame window
-
- * events.c (button_press): fake an unwind-protect around the
- event evaluation, so a ButtonRelease can unclick buttons
- without aborting
-
- * windows.c (install_window_frame): also select
- SubstructureRedirectMask for frame, so that we get
- ConfigureRequest events for the client window
-
-1999-07-25 John Harper <john dcs warwick ac uk>
-
- * frames.c (list_frame_generator): add LeaveWindowMask to frame
- parts
-
- * windows.c (Qplace_window_hook): new hook, called when windows
- are mapped for the first time
- (Fwindow_transient_p): now returns the id of the other window
- if the window is a transient
- (Fwindow_id, Fwindow_group_id): new functions
- (Fwindow_size_hints): new function, returns the size hints as
- an alist
-
- * sawmill.h: added exit types for the clean_exit_jmp_buf
-
- * main.c (Fquit, Frestart): new functions
-
- * keys.c (Qroot_window_keymap): window to use when mouse is
- over the root
-
- * functions.c (Fsync_server): new function, calls XSync ()
-
- * events.c (button_press): handle ButtonPress before evaluating
- the binding, and ButtonRelease after the binding
- (leave_notify): if leaving a frame part, ensure that the
- clicked count is zero
-
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]