Documentation ¶
Index ¶
- func CreateWorkspaces() map[store.Location]*Workspace
- type Channels
- type Handler
- type Handlers
- type Layout
- type Tracker
- func (tr *Tracker) ActiveWorkspace() *Workspace
- func (tr *Tracker) ClientAt(ws *Workspace, p common.Point) *store.Client
- func (tr *Tracker) ClientWorkspace(c *store.Client) *Workspace
- func (tr *Tracker) Reset()
- func (tr *Tracker) Tile(ws *Workspace)
- func (tr *Tracker) Update()
- func (tr *Tracker) WorkspaceAt(deskNum uint, screenNum uint) *Workspace
- func (tr *Tracker) Write()
- type Workspace
- func (ws *Workspace) ActiveLayout() Layout
- func (ws *Workspace) AddClient(c *store.Client)
- func (ws *Workspace) Cache() common.Cache[*Workspace]
- func (ws *Workspace) CycleLayout(step int)
- func (ws *Workspace) Disable()
- func (ws *Workspace) Disabled() bool
- func (ws *Workspace) Enable()
- func (ws *Workspace) Enabled() bool
- func (ws *Workspace) Read() *Workspace
- func (ws *Workspace) RemoveClient(c *store.Client)
- func (ws *Workspace) ResetLayouts()
- func (ws *Workspace) Restore(flag uint8)
- func (ws *Workspace) SetLayout(layoutNum uint)
- func (ws *Workspace) Tile()
- func (ws *Workspace) Write()
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateWorkspaces ¶
Types ¶
type Handler ¶
type Handler struct { Dragging bool // Indicates pointer dragging event Source interface{} // Stores moved/resized client Target interface{} // Stores client/workspace }
type Handlers ¶ added in v2.5.0
type Handlers struct { Timer *time.Timer // Timer to handle delayed structure events ResizeClient *Handler // Stores client for proportion change MoveClient *Handler // Stores client for tiling after move SwapClient *Handler // Stores clients for window swap SwapScreen *Handler // Stores client for screen swap }
type Layout ¶
type Layout interface { Reset() Apply() AddClient(c *store.Client) RemoveClient(c *store.Client) MakeMaster(c *store.Client) SwapClient(c1 *store.Client, c2 *store.Client) NextClient() *store.Client PreviousClient() *store.Client IncreaseMaster() DecreaseMaster() IncreaseSlave() DecreaseSlave() IncreaseProportion() DecreaseProportion() UpdateProportions(c *store.Client, d *store.Directions) GetManager() *store.Manager GetName() string }
func CreateLayouts ¶
type Tracker ¶
type Tracker struct { Clients map[xproto.Window]*store.Client // List of tracked clients Workspaces map[store.Location]*Workspace // List of workspaces per location Channels *Channels // Helper for channel communication Handlers *Handlers // Helper for event handlers }
func CreateTracker ¶
func CreateTracker() *Tracker
func (*Tracker) ActiveWorkspace ¶
func (*Tracker) WorkspaceAt ¶ added in v2.5.0
type Workspace ¶
type Workspace struct { Name string // Workspace location name Location store.Location // Desktop and screen location Layouts []Layout // List of available layouts ActiveLayoutNum uint // Index of active layout TilingEnabled bool // Tiling is enabled or not }
func (*Workspace) ActiveLayout ¶
func (*Workspace) CycleLayout ¶
func (*Workspace) RemoveClient ¶
func (*Workspace) ResetLayouts ¶ added in v2.4.0
func (ws *Workspace) ResetLayouts()
Click to show internal directories.
Click to hide internal directories.