Node: Edge Flipping, Previous: Workspaces and Windows, Up: Workspaces



Edge Flipping

Sawfish provides a way to flip between workspaces (or viewports) automatically by moving the mouse to the edge of the screen. The technique is called "edge flipping".

These definitions are stored in the sawfish.wm.ext.edge-flip structure. They can only be enabled through the customization interface.

edge-flip-enabled nil Customizable
When true, select the next desktop when the pointer hits screen edge. Defaults to false.

edge-flip-type Customizable
Indicates what is selected when hitting the screen edge. Must be one of viewport or workspace. Defaults to workspace.

edge-flip-only-when-moving Customizable
When true, Sawfish only flips when the user is interactively moving a window. Defaults to false.

This variable is not customizable, but it can be edited.

edge-flip-delay Variable
Milliseconds to delay before edge flipping. Defaults to 250.

Flippers are implemented as invisible windows on the edges of the display (the windows overlap at the corners). When the pointer moves over any of these windows, Sawfish generates enter-flipper-hook and leave-flipper-hook events.

Programmers can add their own callbacks to perform other actions with the flippers. This depends on manually enabling the flippers, using the following functions in the sawfish.wm.util.flippers structure. Note that you may have to manually remove the edge-flip-enter and edge-flip-leave callbacks from the hooks before adding your own callbacks.

enable-flippers Function
Add edge windows used to implement flipping.

disable-flippers Function
Remove the edge windows used to implement flipping.