Re: Re: [IMPORTANT] Docs decision
- From: zanghar freenet de
- To: "General discussion about sawfish wm"<sawfish-list gnome org>
- Subject: Re: Re: [IMPORTANT] Docs decision
- Date: Tue, 17 Feb 2009 21:43:05 +0100
Thanks a lot for your efforts Derek.
commited to trunk,
Chris
----- original Nachricht --------
Betreff: Re: [IMPORTANT] Docs decision
Gesendet: Di 17 Feb 2009 07:41:57 CET
Von: sand blarg net
> Here's a patch against 1.3.5.1 sawfish.texi for the following
> patches. (I happened to grab 1.3.5.1 from Sourceforge; I don't
> anticipate problems applying it to 1.5.0.) The patch
> itself is attached to the bottom. I split the Viewports node up into
> sub-nodes.
>
> Derek
>
> [1.3.4]
>
> http://sawfish.wikia.com/wiki/Cycle-hook
>
> Looks like this got turned into 'after-cycle-step-hook', which is
> documented as of 1.3.5.1.
>
> http://sawfish.wikia.com/wiki/Enter-Click_Focus_Mode
>
> Added.
>
> http://sawfish.wikia.com/wiki/Negative-property-p
>
> Already added by 1.3.5.1.
>
> http://sawfish.wikia.com/wiki/Stacking-visibility
>
> Added
>
> http://sawfish.wikia.com/wiki/Window_prop_list_%26_prop_del
>
> Already added as of 1.3.5.1. 'window-prop-del' renamed to
> 'window-remprop'.
>
> [1.3.5]
>
> http://sawfish.wikia.com/wiki/Honoring_ICCCM_aspect_ratio
>
> Added note about behavior.
>
> http://sawfish.wikia.com/wiki/Scroll_viewport_patch
>
> Added.
>
> http://sawfish.wikia.com/wiki/Slide-window-hook
>
> Already added as of 1.3.5.1.
>
> http://sawfish.wikia.com/wiki/Viewport_boundary
>
> Added.
>
> [1.5.0]
>
> http://sawfish.wikia.com/wiki/Warp-if-necessary_when_cycling
> http://sawfish.wikia.com/wiki/Warp-if-necessary_when_unmaximizing
>
> Not explicitly mentioned, but I did add some additional comments on
> when we warp the pointer and what variable governs it.
>
> ------------------------------ cut here ------------------------------
>
> --- sawfish-1.3.5.1-orig/man/sawmill.texi 2008-12-17 10:37:22.000000000
> -0800
> +++ sawfish-1.3.5.1/man/sawmill.texi 2009-02-16 22:36:56.000000000 -0800
> @@ -1085,11 +1085,35 @@
> @code{border-size}.
> @end defun
>
> - defun window-visibility window
> + defun stacking-visibility window
> +Returns @code{unobscured} if @code{window} is unobscured,
> + code{fully-obscured} if one or more windows completely obscure
> + code{window}, or @code{partially-obscured} if one or more window
> +partially obscure @code{window}.
> +
> +Deciding between fully and partially obscured can be expensive. If
> + code{window-obscured} satisfies your needs, use that in preference to
> + code{stacking-visibility}
> + end defun
> +
> + defun window-obscured window
> +Returns @code{nil} if @code{window} is unobscured, @code{t} if
> + code{window} is completely obscured by exactly one other window, or a
> +list of windows that partially obscure @code{window}.
> +
> +If a list of partially obscuring windows is returned, taken together
> +they may or may not fully obscure @code{window}.
> + end defun
> +
> + deffn {Obsolete Function} window-visibility window
> Returns a symbol defining the current visibility of @var{window}.
> Possible returned symbols are @code{fully-obscured},
> @code{partially-obscured} or @code{unobscured}.
> - end defun
> +
> + code{window-visibility} is deprecated. It is unreliable when using
> +the Composite extention, as every window is reported unobscured. Use
> + code{window-obscured} and @code{stacking-visibility} instead.
> + end deffn
>
> @defun window-urgent-p window
> Return @code{t} if the ``Urgency'' hint of the window associated with
> @@ -1131,9 +1155,17 @@
>
> @defvar focus-modes
> A list containing all names of focus modes. The built-in values are
> - code{enter-exit}, @code{enter-only} and @code{click}.
> + code{enter-exit}, @code{enter-only}, @code{enter-click} and @code{click}.
> @end defvar
>
> +Focus mode @code{enter-exit} changes focus when the pointer enters a
> +window or leaves the focused window. Focus mode @code{enter-only}
> +changes focus when the pointer enters a window, but not when it leaves
> +the focused window. Focus mode @code{click} changes focus when you
> +click on a window. Focus mode @code{enter-click} is the union of
> + code{enter-only} and @code{click}, and changes focus on any
> +of their conditions.
> +
> It is possible to add additional focus modes by defining your own
> handler function. The handler function must obey a
> ``focus-mode-handler'' protocol.
> @@ -1185,6 +1217,9 @@
> window. In @code{enter-only} mode, we warp the cursor if it is in
> another window, but not if it is over the desktop---a window would not
> lose focus when the cursor moved from it to the desktop.
> +
> +This event is implemented via @code{warp-cursor-to-window}, so Sawfish
> +will not warp unless @code{warp-to-window-enabled} is true.
> @end table
>
> The protocol allows for any number of additional arguments, but does
> @@ -1210,8 +1245,11 @@
> @end defun
>
> @defun warp-pointer-if-necessary window
> -Generate a @code{warp-if-necessary} event and send it to the window's
> +Generate a @code{warp-if-necessary} event and sends it to the window's
> focus function.
> +
> +Various functions call @code{warp-pointer-if-necessary} if they move
> +the focused window out from underneath the pointer.
> @end defun
>
> @defvar focus-click-through
> @@ -1660,6 +1698,9 @@
> then either the window that received the current event or the currently
> focused window.
>
> +Sawfish honors the @code{min-aspect} and @code{max-aspect} window
> +hints when interactively resizing a window.
> +
> @deffn Command move-window-interactively window
> Move @var{window} interactively using the mouse. Releasing any mouse
> button places the window at its current position.
> @@ -2424,7 +2465,8 @@
>
> @defvar cycle-raise-windows t
> If true, Sawfish raises windows while they're temporarily selected
> -during cycling. Defaults to true.
> +during cycling, and invokes @code{warp-pointer-if-necessary}.
> +Defaults to true.
> @end defvar
>
> It is also possible for you to define your own stacking cycle
> @@ -3699,10 +3741,10 @@
> using ``viewports''.
>
> When viewports are enabled, the Sawfish logical display becomes
> -infinitely large in the two directions ``across'' and ``down'' (to the
> -maximum representable size of integers). Sawfish divides this logical
> -display into a potentially infinite grid of cells. Each cell of the
> -grid is the same size of the virtual display.
> +potentially infinitely large in the two directions ``across'' and
> +``down'' (to the maximum representable size of integers). Sawfish
> +divides this logical display into a potentially infinite grid of
> +cells. Each cell of the grid is the same size of the virtual display.
>
> @defvar viewport-dimensions
> The current number of viewports across and down the virtual display.
> @@ -3715,14 +3757,23 @@
> @code{(@var{width} . @var{height})}.
> @end defun
>
> -The user then tells Sawfish to move the physical display from cell to
> -cell. On a cell change, windows in previous cells are removed, and
> -windows in the current cell appear. Windows that span two or more
> -cells will appear in each cell, appropriately displaced.
> -
> Note that cell indices start at zero in each dimension. Indices are
> never negative.
>
> + menu
> +* Switching Viewports::
> +* Windows and Viewports::
> + end menu
> +
> + node Switching Viewports, Windows and Viewports, Viewports, Viewports
> + section Switching Viewports
> +
> +A user switches viewports by telling Sawfish to move the physical
> +display from cell to cell. On a cell change, windows in previous
> +cells are removed, and windows in the current cell appear. Windows
> +that span two or more cells will appear in each cell, appropriately
> +displaced.
> +
> @defun screen-viewport
> Returns the currently displayed viewport as a pair @code{(@var{x},
> @var{y})}.
> @@ -3738,41 +3789,50 @@
> @var{down} slots down. Either argument may be zero or negative.
> @end defun
>
> - defun set-window-viewport window col row
> -Move @var{window} to the cell at @code{(@var{col}, @var{row})}. The
> -relative position of the window within the cells is preserved.
> - end defun
> + defvar viewport-boundary-mode
> +How to act when switching via @code{set-screen-viewport} to a viewport
> +that is outside of @code{viewport-dimensions}. When set to
> + code{wrap-around}, it loops in the vertical and horizontal axes
> +enough times to keep the viewport within the defined dimensions. When
> +set to @code{stop}, it refuses to switch to a viewport outside of
> + code{viewport-dimensions} Defaults to @code{wrap-around}.
> + end defvar
>
> - defun move-window-viewport window col-delta row-delta
> -Move @var{window} to the cell @var{col-delta} positions across and
> - var{row-delta} positions down from its current cell. The relative
> -position of the window with its cells its preserved.
> + defun warp-viewport x y
> +Change the position of the physical display, such that location
> + code{(@var{x}, @var{y})} is at the top-left of the display. The
> +physical display may be showing more than one cell at this point.
> +All windows are redisplayed as appropriate.
> @end defun
>
> - defun move-viewport-to-window window
> -Move the viewport to a cell that shows window @var{window}. For a
> -window that spans multiple cells, this function will pick the cell
> -showing the window's top-left corner.
> - end defun
> + defun set-viewport x y
> +Change the position of the physical display, such that location
> + code{(@var{x}, @var{y})} is at the top-left of the display. The
> +physical display may be showing more than one cell at this point.
>
> - defun move-window-to-current-viewport window
> -Move @var{window} from its existing viewport to the current viewport.
> -The window's relative position in the existing viewport is preserved
> -after the move.
> +Unlike @code{warp-viewport}, the change takes place by dividing the
> +motion into @code{scroll-viewport-steps} steps, and redisplaying after
> +each step in the motion.
> @end defun
>
> + defvr Customizable scroll-viewport-steps
> +Number of steps in which to divide a viewport change for
> + code{set-viewport} Each step requires a redisplay. Defaults to 1,
> +which causes an instantaneous change to the new viewport. The
> +customization limit is 50.
> + end defvr
> +
> + node Windows and Viewports, , Switching Viewports, Viewports
> + section Windows and Viewports
> +
> @defun window-viewport window
> Returns a cons cell @code{(@var{col} . @var{row})} of the viewport
> holding the top-left corner of @var{window}.
> @end defun
>
> @defun window-outside-viewport-p window
> - defunx window-outside-workspace-p window
> Returns true if @var{window} is completely outside the current
> -viewport in any direction. The @code{window-outside-workspace-p}
> -function is an obsolete alias for the first function; the
> -``workspace'' term is now used for another concept
> -(@pxref{Workspaces}).
> +viewport in any direction.
> @end defun
>
> @defun window-absolute-position window
> @@ -3781,11 +3841,27 @@
> or may not be the current viewport.
> @end defun
>
> - defun set-viewport x y
> -Change the position of the physical display, such that location
> - code{(@var{x}, @var{y})} is at the top-left of the display. The
> -physical display may be showing more than one cell at this point.
> -All windows are redisplayed as appropriate.
> + defun set-window-viewport window col row
> +Move @var{window} to the cell at @code{(@var{col}, @var{row})}. The
> +relative position of the window within the cells is preserved.
> + end defun
> +
> + defun move-window-viewport window col-delta row-delta
> +Move @var{window} to the cell @var{col-delta} positions across and
> + var{row-delta} positions down from its current cell. The relative
> +position of the window with its cells its preserved.
> + end defun
> +
> + defun move-window-to-current-viewport window
> +Move @var{window} from its existing viewport to the current viewport.
> +The window's relative position in the existing viewport is preserved
> +after the move.
> + end defun
> +
> + defun move-viewport-to-window window
> +Move the viewport to a cell that shows window @var{window}. For a
> +window that spans multiple cells, this function will pick the cell
> +showing the window's top-left corner.
> @end defun
>
> @defvar uniconify-to-current-viewport
> @@ -5355,6 +5431,9 @@
>
> If @var{x} and @var{y} are @code{nil}, then they are taken as the
> top-left corner of the window's frame.
> +
> +If @code{warp-to-window-enabled} is @code{nil}, this function does
> +nothing.
> @end defun
>
> @defvar warp-to-window-offset
>
--- original Nachricht Ende ----
#adBox3 {display:none;}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]