You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
1.0 KiB

19 years ago
19 years ago
19 years ago
19 years ago
  1. /*
  2. * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com>
  3. * See LICENSE file for license details.
  4. */
  5. #include "config.h"
  6. #include "draw.h"
  7. #include "util.h"
  8. #include <X11/Xutil.h>
  9. /* WM atoms */
  10. enum { WMState, WMProtocols, WMDelete, WMLast };
  11. /* NET atoms */
  12. enum { NetSupported, NetWMName, NetLast };
  13. /* Cursor */
  14. enum { CurNormal, CurResize, CurMove, CurInput, CurLast };
  15. /* Rects */
  16. enum { RFloat, RGrid, RLast };
  17. typedef struct Client Client;
  18. typedef struct Tag Tag;
  19. struct Client {
  20. Tag *tag;
  21. char name[256];
  22. int proto;
  23. Window win;
  24. Window trans;
  25. Window title;
  26. GC gc;
  27. XSizeHints size;
  28. XRectangle r[RLast];
  29. Client *next;
  30. Client *tnext;
  31. Client *tprev;
  32. };
  33. struct Tag {
  34. char name[256];
  35. Client *clients;
  36. Client *sel;
  37. XRectangle r;
  38. };
  39. extern Display *dpy;
  40. extern Window root;
  41. extern XRectangle rect;
  42. extern Atom wm_atom[WMLast];
  43. extern Atom net_atom[NetLast];
  44. extern Cursor cursor[CurLast];
  45. extern Pixmap pmap;
  46. extern int screen, sel_screen;
  47. extern unsigned int kmask, numlock_mask;
  48. extern Brush brush;
  49. /* wm.c */