#include "misc.h"
#include "stacking.h"
#include "place.h"
+#include "client.h"
#include "geom.h"
-#include "render/render.h"
+#include "moveresize.h"
+#include "obrender/render.h"
+#include "obt/xml.h"
#include <glib.h>
-struct _ObParseInst;
-
typedef struct _ObAppSettings ObAppSettings;
struct _ObAppSettings
GPatternSpec *class;
GPatternSpec *name;
GPatternSpec *role;
+ GPatternSpec *title;
+ ObClientType type;
- Point position;
- gboolean center_x;
- gboolean center_y;
- gboolean opposite_x;
- gboolean opposite_y;
+ GravityPoint position;
gboolean pos_given;
+ gboolean pos_force;
guint desktop;
gint shade;
/*! Try keep focus on the window under the mouse when the mouse is not moving
*/
extern gboolean config_focus_under_mouse;
+/*! Remove focus from windows when the mouse leaves them
+ */
+extern gboolean config_unfocus_leave;
+/*! The algorithm to use for placing new windows */
extern ObPlacePolicy config_place_policy;
/*! Place windows in the center of the free area */
extern gboolean config_place_center;
+/*! Place windows on the active monitor (unless they are part of an application
+ already on another monitor) */
+extern ObPlaceMonitor config_place_monitor;
+
+/*! Place dialogs and stuff on this monitor. Index starts at 1. If this is
+ 0, then use the config_primary_monitor instead. */
+extern guint config_primary_monitor_index;
+/*! Where to place dialogs and stuff if it is not specified by index. */
+extern ObPlaceMonitor config_primary_monitor;
/*! User-specified margins around the edge of the screen(s) */
extern StrutPartial config_margins;
/*! show move/resize popups? 0 = no, 1 = always, 2 = only
resizing !1 increments */
extern gint config_resize_popup_show;
-/*! where to show the popup, currently above the window or centered */
-extern gint config_resize_popup_pos;
+/*! where to show the resize popup */
+extern ObResizePopupPos config_resize_popup_pos;
+/*! where to place the popup if it's in a fixed position */
+extern GravityPoint config_resize_popup_fixed;
/*! The stacking layer the dock will reside in */
extern ObStackingLayer config_dock_layer;
extern gchar *config_title_layout;
/*! Animate windows iconifying and restoring */
extern gboolean config_animate_iconify;
+/*! Size of icons in focus switching dialogs */
+extern guint config_theme_window_list_icon_size;
/*! The font for the active window's title */
extern RrFont *config_font_activewindow;
extern RrFont *config_font_menutitle;
/*! The font for menu items */
extern RrFont *config_font_menuitem;
-/*! The font for on-screen-displays/popups */
-extern RrFont *config_font_osd;
+/*! The font for on-screen-displays/popups' active text */
+extern RrFont *config_font_activeosd;
+/*! The font for on-screen-displays/popups' inactive text */
+extern RrFont *config_font_inactiveosd;
/*! The number of desktops */
-extern gint config_desktops_num;
+extern guint config_desktops_num;
/*! Desktop to start on, put 5 to start in the center of a 3x3 grid */
extern guint config_screen_firstdesk;
/*! Names for the desktops */
extern gboolean config_menu_middle;
/*! Delay before opening a submenu in milliseconds */
extern guint config_submenu_show_delay;
-/*! show icons in client_list_menu */
-extern gboolean config_menu_client_list_icons;
+/*! Delay before closing a submenu in milliseconds */
+extern guint config_submenu_hide_delay;
+/*! Show manage desktops in client_list_menu */
+extern gboolean config_menu_manage_desktops;
+/*! Load & show icons in user-defined menus */
+extern gboolean config_menu_show_icons;
/*! User-specified menu files */
extern GSList *config_menu_files;
/*! Per app settings */
extern GSList *config_per_app_settings;
-void config_startup(struct _ObParseInst *i);
-void config_shutdown();
+void config_startup(ObtXmlInst *i);
+void config_shutdown(void);
/*! Create an ObAppSettings structure with the default values */
-ObAppSettings* config_create_app_settings();
+ObAppSettings* config_create_app_settings(void);
/*! Copies any settings in src to dest, if they are their default value in
src. */
void config_app_settings_copy_non_defaults(const ObAppSettings *src,
ObAppSettings *dest);
-
#endif