summaryrefslogtreecommitdiff
path: root/src/BaseDisplay.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/BaseDisplay.cc')
-rw-r--r--src/BaseDisplay.cc97
1 files changed, 4 insertions, 93 deletions
diff --git a/src/BaseDisplay.cc b/src/BaseDisplay.cc
index fae87f6..9a24081 100644
--- a/src/BaseDisplay.cc
+++ b/src/BaseDisplay.cc
@@ -22,7 +22,7 @@
22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23// DEALINGS IN THE SOFTWARE. 23// DEALINGS IN THE SOFTWARE.
24 24
25// $Id: BaseDisplay.cc,v 1.6 2002/02/11 10:57:23 fluxgen Exp $ 25// $Id: BaseDisplay.cc,v 1.7 2002/03/18 15:28:25 fluxgen Exp $
26 26
27// use some GNU extensions 27// use some GNU extensions
28#ifndef _GNU_SOURCE 28#ifndef _GNU_SOURCE
@@ -219,7 +219,7 @@ void bexec(const char *command, char* displaystring) {
219#endif // !__EMX__ 219#endif // !__EMX__
220 220
221 221
222BaseDisplay::BaseDisplay(char *app_name, char *dpy_name): 222BaseDisplay::BaseDisplay(char *app_name, char *dpy_name):FbAtoms(0),
223m_startup(true), m_shutdown(false), 223m_startup(true), m_shutdown(false),
224m_display_name(XDisplayName(dpy_name)), m_app_name(app_name), 224m_display_name(XDisplayName(dpy_name)), m_app_name(app_name),
225m_server_grabs(0) 225m_server_grabs(0)
@@ -280,6 +280,8 @@ m_server_grabs(0)
280 "as close-on-exec\n")); 280 "as close-on-exec\n"));
281 throw static_cast<int>(2); //throw error 2 281 throw static_cast<int>(2); //throw error 2
282 } 282 }
283 //initiate atoms
284 initAtoms(m_display);
283 285
284 number_of_screens = ScreenCount(m_display); 286 number_of_screens = ScreenCount(m_display);
285 287
@@ -289,97 +291,6 @@ m_server_grabs(0)
289#else // !SHAPE 291#else // !SHAPE
290 shape.extensions = False; 292 shape.extensions = False;
291#endif // SHAPE 293#endif // SHAPE
292//---------- setup atoms
293
294 xa_wm_colormap_windows =
295 XInternAtom(m_display, "WM_COLORMAP_WINDOWS", False);
296 xa_wm_protocols = XInternAtom(m_display, "WM_PROTOCOLS", False);
297 xa_wm_state = XInternAtom(m_display, "WM_STATE", False);
298 xa_wm_change_state = XInternAtom(m_display, "WM_CHANGE_STATE", False);
299 xa_wm_delete_window = XInternAtom(m_display, "WM_DELETE_WINDOW", False);
300 xa_wm_take_focus = XInternAtom(m_display, "WM_TAKE_FOCUS", False);
301 motif_wm_hints = XInternAtom(m_display, "_MOTIF_WM_HINTS", False);
302
303 blackbox_hints = XInternAtom(m_display, "_BLACKBOX_HINTS", False);
304 blackbox_attributes = XInternAtom(m_display, "_BLACKBOX_ATTRIBUTES", False);
305 blackbox_change_attributes =
306 XInternAtom(m_display, "_BLACKBOX_CHANGE_ATTRIBUTES", False);
307
308 blackbox_structure_messages =
309 XInternAtom(m_display, "_BLACKBOX_STRUCTURE_MESSAGES", False);
310 blackbox_notify_startup =
311 XInternAtom(m_display, "_BLACKBOX_NOTIFY_STARTUP", False);
312 blackbox_notify_window_add =
313 XInternAtom(m_display, "_BLACKBOX_NOTIFY_WINDOW_ADD", False);
314 blackbox_notify_window_del =
315 XInternAtom(m_display, "_BLACKBOX_NOTIFY_WINDOW_DEL", False);
316 blackbox_notify_current_workspace =
317 XInternAtom(m_display, "_BLACKBOX_NOTIFY_CURRENT_WORKSPACE", False);
318 blackbox_notify_workspace_count =
319 XInternAtom(m_display, "_BLACKBOX_NOTIFY_WORKSPACE_COUNT", False);
320 blackbox_notify_window_focus =
321 XInternAtom(m_display, "_BLACKBOX_NOTIFY_WINDOW_FOCUS", False);
322 blackbox_notify_window_raise =
323 XInternAtom(m_display, "_BLACKBOX_NOTIFY_WINDOW_RAISE", False);
324 blackbox_notify_window_lower =
325 XInternAtom(m_display, "_BLACKBOX_NOTIFY_WINDOW_LOWER", False);
326
327 blackbox_change_workspace =
328 XInternAtom(m_display, "_BLACKBOX_CHANGE_WORKSPACE", False);
329 blackbox_change_window_focus =
330 XInternAtom(m_display, "_BLACKBOX_CHANGE_WINDOW_FOCUS", False);
331 blackbox_cycle_window_focus =
332 XInternAtom(m_display, "_BLACKBOX_CYCLE_WINDOW_FOCUS", False);
333
334#ifdef NEWWMSPEC
335
336 net_supported = XInternAtom(m_display, "_NET_SUPPORTED", False);
337 net_client_list = XInternAtom(m_display, "_NET_CLIENT_LIST", False);
338 net_client_list_stacking = XInternAtom(m_display, "_NET_CLIENT_LIST_STACKING", False);
339 net_number_of_desktops = XInternAtom(m_display, "_NET_NUMBER_OF_DESKTOPS", False);
340 net_desktop_geometry = XInternAtom(m_display, "_NET_DESKTOP_GEOMETRY", False);
341 net_desktop_viewport = XInternAtom(m_display, "_NET_DESKTOP_VIEWPORT", False);
342 net_current_desktop = XInternAtom(m_display, "_NET_CURRENT_DESKTOP", False);
343 net_desktop_names = XInternAtom(m_display, "_NET_DESKTOP_NAMES", False);
344 net_active_window = XInternAtom(m_display, "_NET_ACTIVE_WINDOW", False);
345 net_workarea = XInternAtom(m_display, "_NET_WORKAREA", False);
346 net_supporting_wm_check = XInternAtom(m_display, "_NET_SUPPORTING_WM_CHECK", False);
347 net_virtual_roots = XInternAtom(m_display, "_NET_VIRTUAL_ROOTS", False);
348
349 net_close_window = XInternAtom(m_display, "_NET_CLOSE_WINDOW", False);
350 net_wm_moveresize = XInternAtom(m_display, "_NET_WM_MOVERESIZE", False);
351
352 net_properties = XInternAtom(m_display, "_NET_PROPERTIES", False);
353 net_wm_name = XInternAtom(m_display, "_NET_WM_NAME", False);
354 net_wm_desktop = XInternAtom(m_display, "_NET_WM_DESKTOP", False);
355 net_wm_window_type = XInternAtom(m_display, "_NET_WM_WINDOW_TYPE", False);
356 net_wm_state = XInternAtom(m_display, "_NET_WM_STATE", False);
357 net_wm_strut = XInternAtom(m_display, "_NET_WM_STRUT", False);
358 net_wm_icon_geometry = XInternAtom(m_display, "_NET_WM_ICON_GEOMETRY", False);
359 net_wm_icon = XInternAtom(m_display, "_NET_WM_ICON", False);
360 net_wm_pid = XInternAtom(m_display, "_NET_WM_PID", False);
361 net_wm_handled_icons = XInternAtom(m_display, "_NET_WM_HANDLED_ICONS", False);
362
363 net_wm_ping = XInternAtom(m_display, "_NET_WM_PING", False);
364
365#endif // NEWWMSPEC
366
367#ifdef GNOME
368
369 gnome_wm_win_layer = XInternAtom(m_display, "_WIN_LAYER", False);
370 gnome_wm_win_state = XInternAtom(m_display, "_WIN_STATE", False);
371 gnome_wm_win_hints = XInternAtom(m_display, "_WIN_HINTS", False);
372 gnome_wm_win_app_state = XInternAtom(m_display, "_WIN_APP_STATE", False);
373 gnome_wm_win_expanded_size = XInternAtom(m_display, "_WIN_EXPANDED_SIZE", False);
374 gnome_wm_win_icons = XInternAtom(m_display, "_WIN_ICONS", False);
375 gnome_wm_win_workspace = XInternAtom(m_display, "_WIN_WORKSPACE", False);
376 gnome_wm_win_workspace_count = XInternAtom(m_display, "_WIN_WORKSPACE_COUNT", False);
377 gnome_wm_win_workspace_names = XInternAtom(m_display, "_WIN_WORKSPACE_NAMES", False);
378 gnome_wm_win_client_list = XInternAtom(m_display, "_WIN_CLIENT_LIST", False);
379 gnome_wm_prot = XInternAtom(m_display, "_WIN_PROTOCOLS", False);
380 gnome_wm_supporting_wm_check = XInternAtom(m_display, "_WIN_SUPPORTING_WM_CHECK", False);
381
382#endif // GNOME
383 294
384 cursor.session = XCreateFontCursor(m_display, XC_left_ptr); 295 cursor.session = XCreateFontCursor(m_display, XC_left_ptr);
385 cursor.move = XCreateFontCursor(m_display, XC_fleur); 296 cursor.move = XCreateFontCursor(m_display, XC_fleur);