- if (ret && ret != skip && client_normal(ret)) return ret;
- if (it->data != skip && client_normal(it->data)) return it->data;
+ if (ret && ret != skip && client_normal(ret) &&
+ client_can_focus(ret) && client_validate(ret))
+ return ret;
+ if (it->data != skip && client_normal(it->data) &&
+ client_can_focus(it->data) && client_validate(it->data))
+ return it->data;