JWM Source Documentation
Functions | Variables
clientlist.c File Reference

Functions to manage lists of clients. More...

#include "jwm.h"
#include "clientlist.h"
#include "client.h"
#include "key.h"
#include "event.h"
#include "tray.h"
#include "settings.h"

Go to the source code of this file.

Functions

char ShouldFocus (const ClientNode *np, char current)
 Determine if a client is allowed focus.
 
void StartWindowWalk (void)
 Start walking windows in client list order.
 
void StartWindowStackWalk (void)
 Start walking the window stack.
 
void WalkWindowStack (char forward)
 Move to the next window in the window stack.
 
void StopWindowWalk (void)
 Stop walking the window stack or client list.
 
void FocusNextStacked (ClientNode *np)
 Focus the next client in the stacking order.
 

Variables

ClientNodenodes [LAYER_COUNT]
 Client windows in linked lists for each layer.
 
ClientNodenodeTail [LAYER_COUNT]
 Client windows in linked lists for each layer (pointer to the tail).
 
static Window * windowStack = NULL
 Image of the window stack.
 
static int windowStackSize = 0
 Size of the image.
 
static int windowStackCurrent = 0
 Current location in the image.
 
static char walkingWindows = 0
 Are we walking windows?
 
static char wasMinimized = 0
 Was the current window minimized?
 

Detailed Description

Functions to manage lists of clients.

Author
Joe Wingbermuehle
Date
2007

Definition in file clientlist.c.

Function Documentation

void FocusNextStacked ( ClientNode np)

Focus the next client in the stacking order.

Set the keyboard focus to the next client.

Definition at line 220 of file clientlist.c.

References Assert, display, eventTime, FIRST_LAYER, FocusClient(), JXSetInputFocus, ClientState::layer, ClientNode::next, rootWindow, STAT_HIDDEN, STAT_MAPPED, STAT_SHADED, ClientNode::state, ClientState::status, and ClientNode::x.

Referenced by KillClientHandler(), MinimizeTransients(), RemoveClient(), and SetClientWithdrawn().

char ShouldFocus ( const ClientNode np,
char  current 
)
void StartWindowStackWalk ( void  )
void StartWindowWalk ( void  )

Start walking windows in client list order.

Start walking the window client list.

Definition at line 57 of file clientlist.c.

References display, JXGrabKeyboard, RaiseTrays(), rootWindow, and walkingWindows.

Referenced by HandleKeyPress().

void StopWindowWalk ( void  )
void WalkWindowStack ( char  forward)

Variable Documentation

ClientNode* nodeTail[LAYER_COUNT]

Client windows in linked lists for each layer (pointer to the tail).

Definition at line 19 of file clientlist.c.

Referenced by AddClientWindow(), DoSnapBorder(), DrawPager(), MinimizeTransients(), RaiseClient(), RemoveClient(), RestackClient(), RestackTransients(), SetClientLayer(), ShutdownClients(), StartupClients(), and UpdateState().

char walkingWindows = 0
static

Are we walking windows?

Definition at line 24 of file clientlist.c.

Referenced by StartWindowStackWalk(), StartWindowWalk(), and StopWindowWalk().

char wasMinimized = 0
static

Was the current window minimized?

Definition at line 25 of file clientlist.c.

Referenced by StartWindowStackWalk(), and WalkWindowStack().

Window* windowStack = NULL
static

Image of the window stack.

Definition at line 21 of file clientlist.c.

Referenced by StartWindowStackWalk(), StopWindowWalk(), and WalkWindowStack().

int windowStackCurrent = 0
static

Current location in the image.

Definition at line 23 of file clientlist.c.

Referenced by StartWindowStackWalk(), StopWindowWalk(), and WalkWindowStack().

int windowStackSize = 0
static

Size of the image.

Definition at line 22 of file clientlist.c.

Referenced by StartWindowStackWalk(), StopWindowWalk(), and WalkWindowStack().

joewing.net / Projects / JWM