* vim:ts=4:sw=4:expandtab
*
* i3 - an improved dynamic tiling window manager
- * © 2009-2011 Michael Stapelberg and contributors (see also: LICENSE)
+ * © 2009-2012 Michael Stapelberg and contributors (see also: LICENSE)
*
* include/data.h: This file defines all data structures used by i3
*
*/
-
#ifndef _DATA_H
#define _DATA_H
*/
/* Forward definitions */
-typedef struct Font i3Font;
typedef struct Binding Binding;
typedef struct Rect Rect;
typedef struct xoutput Output;
struct Autostart {
/** Command, like in command mode */
char *command;
+ /** no_startup_id flag for start_application(). Determines whether a
+ * startup notification context/ID should be created. */
+ bool no_startup_id;
TAILQ_ENTRY(Autostart) autostarts;
TAILQ_ENTRY(Autostart) autostarts_always;
};
-/**
- * Data structure for cached font information:
- * - font id in X11 (load it once)
- * - font height (multiple calls needed to get it)
- *
- */
-struct Font {
- /** The height of the font, built from font_ascent + font_descent */
- int height;
- /** The xcb-id for the font */
- xcb_font_t id;
-};
-
-
/**
* An Output is a physical output on your graphics driver. Outputs which
* are currently in use have (output->active == true). Each output has a
/** Whether the application needs to receive WM_TAKE_FOCUS */
bool needs_take_focus;
+ /** Whether this window accepts focus. We store this inverted so that the
+ * default will be 'accepts focus'. */
+ bool doesnt_accept_focus;
+
/** Whether the window says it is a dock window */
enum { W_NODOCK = 0, W_DOCK_TOP = 1, W_DOCK_BOTTOM = 2 } dock;