xwindow_unmanaged_selectinput(win, 0);
xwindow_unmanaged_selectinput(icon_win, StructureNotifyMask);
-
- win=icon_win;
- attr=icon_attr;
-
+
/* Copy WM_CLASS as _ION_DOCKAPP_HACK */
p=xwindow_get_text_property(win, XA_WM_CLASS, &n);
xwindow_set_text_property(icon_win, ioncore_g.atom_dockapp_hack,
pdummy, 2);
}
+
+ win=icon_win;
+ attr=icon_attr;
}
}
param.geom=REGION_GEOM(cwin);
param.maprq=maprq;
- param.switchto=(init_state!=IconicState && clientwin_get_switchto(cwin));
param.jumpto=extl_table_is_bool_set(cwin->proptab, "jumpto");
+ param.switchto=(init_state!=IconicState &&
+ (param.jumpto || clientwin_get_switchto(cwin)));
param.gravity=(cwin->size_hints.flags&PWinGravity
? cwin->size_hints.win_gravity
: ForgetGravity);
}
if(postmanage_check(cwin, &attr)){
- if(param.jumpto && ioncore_g.focus_next==NULL)
+ /* Check for focus_next==NULL does not play nicely with
+ * pointer_focus_hack.
+ */
+ /*if(param.jumpto && ioncore_g.focus_next==NULL)*/
+ if(param.jumpto && !region_manager_is_focusnext((WRegion*)cwin))
region_goto((WRegion*)cwin);
hook_call_o(clientwin_mapped_hook, (Obj*)cwin);
return cwin;