diff --git a/src/bin/e_client.c b/src/bin/e_client.c index 664a8b230..c001eddc1 100644 --- a/src/bin/e_client.c +++ b/src/bin/e_client.c @@ -2182,12 +2182,15 @@ _e_client_eval(E_Client *ec) } e_comp_object_frame_icon_update(ec->frame); - if ((ec->new_client || ec->re_manage) && ec->desktop && (!ec->exe_inst)) - e_exec_phony(ec); - else if (ec->desktop && ec->exe_inst && (!ec->exe_inst->desktop)) + if (ec->desktop) { - efreet_desktop_ref(ec->desktop); - ec->exe_inst->desktop = ec->desktop; + if (!ec->exe_inst) + e_exec_phony(ec); + if (!ec->exe_inst->desktop) + { + efreet_desktop_ref(ec->desktop); + ec->exe_inst->desktop = ec->desktop; + } } ec->changes.icon = 0; prop |= E_CLIENT_PROPERTY_ICON;