if (app->name &&
!g_pattern_match(app->name, strlen(self->name), self->name, NULL))
match = FALSE;
- if (app->class &&
- !g_pattern_match(app->class, strlen(self->class),self->class,NULL))
+ else if (app->class &&
+ !g_pattern_match(app->class,
+ strlen(self->class), self->class, NULL))
match = FALSE;
- if (app->role &&
- !g_pattern_match(app->role, strlen(self->role), self->role, NULL))
+ else if (app->role &&
+ !g_pattern_match(app->role,
+ strlen(self->role), self->role, NULL))
match = FALSE;
if (match) {
}
}
- if (settings) {
- if (settings->shade != -1)
- self->shaded = !!settings->shade;
- if (settings->decor != -1)
- self->undecorated = !settings->decor;
- if (settings->iconic != -1)
- self->iconic = !!settings->iconic;
- if (settings->skip_pager != -1)
- self->skip_pager = !!settings->skip_pager;
- if (settings->skip_taskbar != -1)
- self->skip_taskbar = !!settings->skip_taskbar;
+ if (settings->shade != -1)
+ self->shaded = !!settings->shade;
+ if (settings->decor != -1)
+ self->undecorated = !settings->decor;
+ if (settings->iconic != -1)
+ self->iconic = !!settings->iconic;
+ if (settings->skip_pager != -1)
+ self->skip_pager = !!settings->skip_pager;
+ if (settings->skip_taskbar != -1)
+ self->skip_taskbar = !!settings->skip_taskbar;
- if (settings->max_vert != -1)
- self->max_vert = !!settings->max_vert;
- if (settings->max_horz != -1)
- self->max_horz = !!settings->max_horz;
+ if (settings->max_vert != -1)
+ self->max_vert = !!settings->max_vert;
+ if (settings->max_horz != -1)
+ self->max_horz = !!settings->max_horz;
- if (settings->fullscreen != -1)
- self->fullscreen = !!settings->fullscreen;
+ if (settings->fullscreen != -1)
+ self->fullscreen = !!settings->fullscreen;
- if (settings->desktop) {
- if (settings->desktop == DESKTOP_ALL)
- self->desktop = settings->desktop;
- else if (settings->desktop > 0 &&
- settings->desktop <= screen_num_desktops)
- self->desktop = settings->desktop - 1;
- }
+ if (settings->desktop) {
+ if (settings->desktop == DESKTOP_ALL)
+ self->desktop = settings->desktop;
+ else if (settings->desktop > 0 &&
+ settings->desktop <= screen_num_desktops)
+ self->desktop = settings->desktop - 1;
+ }
- if (settings->layer == -1) {
- self->below = TRUE;
- self->above = FALSE;
- }
- else if (settings->layer == 0) {
- self->below = FALSE;
- self->above = FALSE;
- }
- else if (settings->layer == 1) {
- self->below = FALSE;
- self->above = TRUE;
- }
+ if (settings->layer == -1) {
+ self->below = TRUE;
+ self->above = FALSE;
+ }
+ else if (settings->layer == 0) {
+ self->below = FALSE;
+ self->above = FALSE;
+ }
+ else if (settings->layer == 1) {
+ self->below = FALSE;
+ self->above = TRUE;
}
return settings;
}
/* move up the transient chain as far as possible first */
self = client_search_top_normal_parent(self);
client_iconify_recursive(self, iconic, curdesk, hide_animation);
+
+ /* try focus the window that was de-iconified if focusNew is on */
+ if (!iconic && config_focus_new)
+ client_focus(self);
}
}
(wm_supported_pos - prop_atoms_start) - 1;
i = 0;
supported = g_new(gulong, num_support);
- supported[i++] = prop_atoms.net_supporting_wm_check;
supported[i++] = prop_atoms.net_wm_full_placement;
supported[i++] = prop_atoms.net_current_desktop;
supported[i++] = prop_atoms.net_number_of_desktops;
supported[i++] = prop_atoms.net_wm_action_fullscreen;
supported[i++] = prop_atoms.net_wm_action_change_desktop;
supported[i++] = prop_atoms.net_wm_action_close;
- supported[i++] = prop_atoms.net_wm_action_above;
- supported[i++] = prop_atoms.net_wm_action_below;
supported[i++] = prop_atoms.net_wm_state;
supported[i++] = prop_atoms.net_wm_state_modal;
supported[i++] = prop_atoms.net_wm_state_maximized_vert;
supported[i++] = prop_atoms.net_wm_sync_request_counter;
#endif
+ supported[i++] = prop_atoms.net_supporting_wm_check;
+ supported[i++] = prop_atoms.net_wm_action_above;
+ supported[i++] = prop_atoms.net_wm_action_below;
+
supported[i++] = prop_atoms.kde_wm_change_state;
supported[i++] = prop_atoms.kde_net_wm_frame_strut;
supported[i++] = prop_atoms.kde_net_wm_window_type_override;