diff options
| -rw-r--r-- | dinput.c | 6 | ||||
| -rw-r--r-- | dmenu.c | 16 | ||||
| -rw-r--r-- | draw.h | 21 | 
3 files changed, 31 insertions, 12 deletions
| @@ -43,6 +43,12 @@ static unsigned int numlockmask = 0;  static Bool running = True;  static Window win; +Display *dpy; +DC dc; +int screen; +unsigned int mw, mh; +Window parent; +  void  cleanup(void) {  	drawcleanup(); @@ -54,6 +54,7 @@ static char text[4096];  static int cmdw = 0;  static int promptw = 0;  static int ret = 0; +static unsigned int lines = 0;  static unsigned int numlockmask = 0;  static Bool running = True;  static Item *allitems = NULL;  /* first of all items */ @@ -65,9 +66,14 @@ static Item *curr = NULL;  static Window win;  static int (*fstrncmp)(const char *, const char *, size_t) = strncmp;  static char *(*fstrstr)(const char *, const char *) = strstr; -static unsigned int lines = 0;  static void (*calcoffsets)(void) = calcoffsetsh; +Display *dpy; +DC dc; +int screen; +unsigned int mw, mh; +Window parent; +  void  appenditem(Item *i, Item **list, Item **last) {  	if(!(*last)) @@ -131,6 +137,14 @@ cistrstr(const char *s, const char *sub) {  void  cleanup(void) { +	Item *itm; + +	while(allitems) { +		itm = allitems->next; +		free(allitems->text); +		free(allitems); +		allitems = itm; +	}  	drawcleanup();  	XDestroyWindow(dpy, win);  	XUngrabKeyboard(dpy, CurrentTime); @@ -30,16 +30,15 @@ int textnw(const char *text, unsigned int len);  int textw(const char *text);  /* variables */ -Display *dpy; -DC dc; -int screen; -unsigned int mw, mh; -unsigned int spaceitem; -Window parent; +extern Display *dpy; +extern DC dc; +extern int screen; +extern unsigned int mw, mh; +extern Window parent;  /* style */ -const char *font; -const char *normbgcolor; -const char *normfgcolor; -const char *selbgcolor; -const char *selfgcolor; +extern const char *font; +extern const char *normbgcolor; +extern const char *normfgcolor; +extern const char *selbgcolor; +extern const char *selfgcolor; | 
