fixed issue 13, removed Window magager s menu for stability reason

git-svn-id: http://tint2.googlecode.com/svn/trunk@31 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
This commit is contained in:
lorthiois@bbsoft.fr
2009-02-03 20:40:46 +00:00
parent 1d88864c0c
commit 5b4d782ca2
14 changed files with 224 additions and 168 deletions

View File

@@ -17,72 +17,74 @@
typedef struct Global_atom
{
Atom _XROOTPMAP_ID;
Atom _NET_CURRENT_DESKTOP;
Atom _NET_NUMBER_OF_DESKTOPS;
Atom _NET_DESKTOP_GEOMETRY;
Atom _NET_DESKTOP_VIEWPORT;
Atom _NET_ACTIVE_WINDOW;
Atom _NET_WM_WINDOW_TYPE;
Atom _NET_WM_STATE_SKIP_PAGER;
Atom _NET_WM_STATE_SKIP_TASKBAR;
Atom _NET_WM_STATE_STICKY;
Atom _NET_WM_WINDOW_TYPE_DOCK;
Atom _NET_WM_WINDOW_TYPE_DESKTOP;
Atom _NET_WM_WINDOW_TYPE_TOOLBAR;
Atom _NET_WM_WINDOW_TYPE_MENU;
Atom _NET_WM_WINDOW_TYPE_SPLASH;
Atom _NET_WM_WINDOW_TYPE_DIALOG;
Atom _NET_WM_WINDOW_TYPE_NORMAL;
Atom _NET_WM_DESKTOP;
Atom WM_STATE;
Atom _NET_WM_STATE;
Atom _NET_WM_STATE_SHADED;
Atom _NET_WM_STATE_BELOW;
Atom _NET_WM_STATE_MODAL;
Atom _NET_CLIENT_LIST;
Atom _NET_WM_NAME;
Atom _NET_WM_VISIBLE_NAME;
Atom _NET_WM_STRUT;
Atom _NET_WM_ICON;
Atom _NET_CLOSE_WINDOW;
Atom UTF8_STRING;
Atom _NET_SUPPORTING_WM_CHECK;
Atom _WIN_LAYER;
Atom _NET_WM_STRUT_PARTIAL;
Atom WM_NAME;
Atom __SWM_VROOT;
Atom _MOTIF_WM_HINTS;
Atom _XROOTPMAP_ID;
Atom _NET_CURRENT_DESKTOP;
Atom _NET_NUMBER_OF_DESKTOPS;
Atom _NET_DESKTOP_GEOMETRY;
Atom _NET_DESKTOP_VIEWPORT;
Atom _NET_ACTIVE_WINDOW;
Atom _NET_WM_WINDOW_TYPE;
Atom _NET_WM_STATE_SKIP_PAGER;
Atom _NET_WM_STATE_SKIP_TASKBAR;
Atom _NET_WM_STATE_STICKY;
Atom _NET_WM_WINDOW_TYPE_DOCK;
Atom _NET_WM_WINDOW_TYPE_DESKTOP;
Atom _NET_WM_WINDOW_TYPE_TOOLBAR;
Atom _NET_WM_WINDOW_TYPE_MENU;
Atom _NET_WM_WINDOW_TYPE_SPLASH;
Atom _NET_WM_WINDOW_TYPE_DIALOG;
Atom _NET_WM_WINDOW_TYPE_NORMAL;
Atom _NET_WM_DESKTOP;
Atom WM_STATE;
Atom _NET_WM_STATE;
Atom _NET_WM_STATE_SHADED;
Atom _NET_WM_STATE_BELOW;
Atom _NET_WM_STATE_MODAL;
Atom _NET_CLIENT_LIST;
Atom _NET_WM_NAME;
Atom _NET_WM_VISIBLE_NAME;
Atom _NET_WM_STRUT;
Atom _NET_WM_ICON;
Atom _NET_CLOSE_WINDOW;
Atom UTF8_STRING;
Atom _NET_SUPPORTING_WM_CHECK;
Atom _WIN_LAYER;
Atom _NET_WM_STRUT_PARTIAL;
Atom WM_NAME;
Atom __SWM_VROOT;
Atom _MOTIF_WM_HINTS;
} Global_atom;
typedef struct Monitor
{
int x;
int y;
int width;
int height;
int x;
int y;
int width;
int height;
} Monitor;
typedef struct
{
Display *dsp;
Window root_win;
int desktop;
int screen;
int depth;
int nb_desktop;
Monitor *monitor;
int nb_monitor;
int got_root_win;
Visual *visual;
int posx, posy;
Pixmap pmap;
GC gc;
GC gc_root;
Global_atom atom;
Display *dsp;
Window root_win;
int desktop;
int screen;
int depth;
int nb_desktop;
// number of monitor (without monitor included into another one)
int nb_monitor;
Monitor *monitor;
int got_root_win;
Visual *visual;
int posx, posy;
Pixmap pmap;
// root background
Pixmap root_pmap;
GC gc;
Global_atom atom;
} Server_global;
@@ -97,6 +99,9 @@ void server_refresh_root_pixmap ();
void server_refresh_main_pixmap ();
void server_catch_error (Display *d, XErrorEvent *ev);
void server_init_atoms ();
// detect monitors
// doesn't count monitor included into another one
void get_monitors();