1 /* kde.h-- stuff for support for kde hints
3 * Window Maker window manager
5 * Copyright (c) 1998, 1999 Alfredo K. Kojima
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
27 KWMStickyFlag
= (1<<0),
28 KWMMaximizedFlag
= (1<<1),
29 KWMIconifiedFlag
= (1<<2),
44 void wKWMInitStuff(WScreen
*scr
);
46 Bool
wKWMGetUsableArea(WScreen
*scr
, WArea
*area
);
48 void wKWMCheckClientHints(WWindow
*wwin
, int *layer
, int *workspace
);
50 Bool
wKWMCheckClientHintChange(WWindow
*wwin
, XPropertyEvent
*event
);
52 Bool
wKWMCheckRootHintChange(WScreen
*scr
, XPropertyEvent
*event
);
54 void wKWMUpdateWorkspaceCountHint(WScreen
*scr
);
56 void wKWMUpdateWorkspaceNameHint(WScreen
*scr
, int workspace
);
58 void wKWMUpdateCurrentWorkspaceHint(WScreen
*scr
);
60 Bool
wKWMProcessClientMessage(XClientMessageEvent
*event
);
62 void wKWMUpdateClientGeometryRestore(WWindow
*wwin
);
64 void wKWMUpdateClientWorkspace(WWindow
*wwin
);
66 void wKWMUpdateClientStateHint(WWindow
*wwin
, WKWMStateFlag flags
);
68 Bool
wKWMManageableClient(WScreen
*scr
, Window win
, char *title
);
70 void wKWMCheckClientInitialState(WWindow
*wwin
);
73 void wKWMSetUsableAreaHint(WScreen
*scr
, int workspace
);
76 void wKWMSetInitializedHint(WScreen
*scr
);
78 void wKWMShutdown(WScreen
*scr
, Bool closeModules
);
80 void wKWMCheckModule(WScreen
*scr
, Window window
);
82 void wKWMSendWindowCreateMessage(WWindow
*wwin
, Bool create
);
84 void wKWMSendEventMessage(WWindow
*wwin
, WKWMEventMessage message
);
86 void wKWMCheckDestroy(XDestroyWindowEvent
*event
);
88 void wKWMUpdateActiveWindowHint(WScreen
*scr
);
90 void wKWMSendStacking(WScreen
*scr
, Window module
);
92 void wKWMBroadcastStacking(WScreen
*scr
);
94 char *wKWMGetWorkspaceName(WScreen
*scr
, int workspace
);
96 Bool
wKWMGetIconGeometry(WWindow
*wwin
, WArea
*area
);
98 void wKWMSelectRootRegion(WScreen
*scr
, int x
, int y
, int w
, int h
,