X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fconfig.c;h=f0f6c7b3de73d7fa25f938aff22a3eeaff55dcb9;hb=32c93f09f03bd2d7c7bf3408febbe9fa7f8dd1cc;hp=9067011a1d395bdf5d0f1d2f1e103f41a9275c70;hpb=4aade63604e9d29f01933b9bf0ac9228721411ef;p=chaz%2Fopenbox diff --git a/openbox/config.c b/openbox/config.c index 9067011a..f0f6c7b3 100644 --- a/openbox/config.c +++ b/openbox/config.c @@ -48,6 +48,8 @@ StrutPartial config_margins; gchar *config_theme; gboolean config_theme_keepborder; guint config_theme_window_list_icon_size; +guint config_frame_flash_delay; +guint config_frame_flash_duration; gchar *config_title_layout; @@ -111,7 +113,7 @@ ObAppSettings* config_create_app_settings(void) settings->type = -1; settings->decor = -1; settings->shade = -1; - settings->monitor_type = 0; + settings->monitor_type = OB_PLACE_MONITOR_ANY; settings->monitor = -1; settings->focus = -1; settings->desktop = 0; @@ -122,6 +124,7 @@ ObAppSettings* config_create_app_settings(void) settings->fullscreen = -1; settings->max_horz = -1; settings->max_vert = -1; + settings->opacity = -1; return settings; } @@ -136,7 +139,7 @@ void config_app_settings_copy_non_defaults(const ObAppSettings *src, copy_if(type, (ObClientType)-1); copy_if(decor, -1); copy_if(shade, -1); - copy_if(monitor_type, 0); + copy_if(monitor_type, OB_PLACE_MONITOR_ANY); copy_if(monitor, -1); copy_if(focus, -1); copy_if(desktop, 0); @@ -147,6 +150,7 @@ void config_app_settings_copy_non_defaults(const ObAppSettings *src, copy_if(fullscreen, -1); copy_if(max_horz, -1); copy_if(max_vert, -1); + copy_if(opacity, -1); if (src->pos_given) { dst->pos_given = TRUE; @@ -297,13 +301,13 @@ static void parse_per_app_settings(xmlNodePtr node, gpointer d) gchar *s = obt_xml_node_string(c); if (!g_ascii_strcasecmp(s, "mouse")) settings->monitor_type = - OB_APP_SETTINGS_MONITOR_MOUSE; + OB_PLACE_MONITOR_MOUSE; else if (!g_ascii_strcasecmp(s, "active")) settings->monitor_type = - OB_APP_SETTINGS_MONITOR_ACTIVE; + OB_PLACE_MONITOR_ACTIVE; else if (!g_ascii_strcasecmp(s, "primary")) settings->monitor_type = - OB_APP_SETTINGS_MONITOR_PRIMARY; + OB_PLACE_MONITOR_PRIMARY; else settings->monitor = obt_xml_node_int(c); g_free(s); @@ -373,6 +377,10 @@ static void parse_per_app_settings(xmlNodePtr node, gpointer d) g_free(s); } + if ((n = obt_xml_find_node(app->children, "opacity"))) + if (!obt_xml_node_contains(n, "default")) + settings->opacity = obt_xml_node_int(n); + config_per_app_settings = g_slist_append(config_per_app_settings, (gpointer) settings); g_free(name); @@ -655,6 +663,10 @@ static void parse_theme(xmlNodePtr node, gpointer d) else if (config_theme_window_list_icon_size > 96) config_theme_window_list_icon_size = 96; } + if ((n = obt_xml_find_node(node, "flashFrameDelay"))) + config_frame_flash_delay = obt_xml_node_int(n); + if ((n = obt_xml_find_node(node, "flashFrameDuration"))) + config_frame_flash_duration = obt_xml_node_int(n); n = obt_xml_find_node(node, "font"); while (n) { @@ -1031,6 +1043,8 @@ void config_startup(ObtXmlInst *i) config_title_layout = g_strdup("NLIMC"); config_theme_keepborder = TRUE; config_theme_window_list_icon_size = 36; + config_frame_flash_delay = 600; + config_frame_flash_duration = 5000; config_font_activewindow = NULL; config_font_inactivewindow = NULL;