allow comp matching for UNKNOWN type windows
sometimes this is a valid type and we want to match it
This commit is contained in:
parent
4d67584970
commit
7f63c4ec2d
|
@ -66,7 +66,12 @@ typedef enum
|
||||||
E_WINDOW_TYPE_TOOLTIP,
|
E_WINDOW_TYPE_TOOLTIP,
|
||||||
E_WINDOW_TYPE_NOTIFICATION,
|
E_WINDOW_TYPE_NOTIFICATION,
|
||||||
E_WINDOW_TYPE_COMBO,
|
E_WINDOW_TYPE_COMBO,
|
||||||
E_WINDOW_TYPE_DND
|
E_WINDOW_TYPE_DND,
|
||||||
|
/* since UNKNOWN was used improperly in comp matching,
|
||||||
|
* this value is a placeholder to indicate that we want
|
||||||
|
* only type UNKNOWN windows
|
||||||
|
*/
|
||||||
|
E_WINDOW_TYPE_REAL_UNKNOWN = 999
|
||||||
} E_Window_Type;
|
} E_Window_Type;
|
||||||
|
|
||||||
typedef enum _E_Urgency_Policy
|
typedef enum _E_Urgency_Policy
|
||||||
|
|
|
@ -373,10 +373,16 @@ _e_comp_object_shadow_client_match(const E_Client *ec, E_Comp_Match *m)
|
||||||
if (((m->role) && (!ec->icccm.window_role)) ||
|
if (((m->role) && (!ec->icccm.window_role)) ||
|
||||||
((ec->icccm.window_role) && (m->role) && (!e_util_glob_match(ec->icccm.window_role, m->role))))
|
((ec->icccm.window_role) && (m->role) && (!e_util_glob_match(ec->icccm.window_role, m->role))))
|
||||||
return EINA_FALSE;
|
return EINA_FALSE;
|
||||||
if ((ec->netwm.type != E_WINDOW_TYPE_UNKNOWN) &&
|
if (m->primary_type)
|
||||||
(m->primary_type != E_WINDOW_TYPE_UNKNOWN) &&
|
{
|
||||||
((int)ec->netwm.type != m->primary_type))
|
if (ec->netwm.type)
|
||||||
return EINA_FALSE;
|
{
|
||||||
|
if ((int)ec->netwm.type != m->primary_type)
|
||||||
|
return EINA_FALSE;
|
||||||
|
}
|
||||||
|
else if (m->primary_type != E_WINDOW_TYPE_REAL_UNKNOWN)
|
||||||
|
return EINA_FALSE;
|
||||||
|
}
|
||||||
if (m->borderless != 0)
|
if (m->borderless != 0)
|
||||||
{
|
{
|
||||||
int borderless = 0;
|
int borderless = 0;
|
||||||
|
|
|
@ -100,6 +100,8 @@ _match_type_label_get(int type)
|
||||||
return _("Tooltip");
|
return _("Tooltip");
|
||||||
if (E_WINDOW_TYPE_UTILITY == type)
|
if (E_WINDOW_TYPE_UTILITY == type)
|
||||||
return _("Utility");
|
return _("Utility");
|
||||||
|
if (E_WINDOW_TYPE_REAL_UNKNOWN == type)
|
||||||
|
return _("Unknown");
|
||||||
|
|
||||||
return _("Unused");
|
return _("Unused");
|
||||||
}
|
}
|
||||||
|
@ -422,6 +424,8 @@ _create_edit_frame(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdat
|
||||||
e_widget_list_object_append(li, o, 1, 0, 0.0);
|
e_widget_list_object_append(li, o, 1, 0, 0.0);
|
||||||
o = e_widget_radio_add(evas, _("Utility"), E_WINDOW_TYPE_UTILITY, rg);
|
o = e_widget_radio_add(evas, _("Utility"), E_WINDOW_TYPE_UTILITY, rg);
|
||||||
e_widget_list_object_append(li, o, 1, 0, 0.0);
|
e_widget_list_object_append(li, o, 1, 0, 0.0);
|
||||||
|
o = e_widget_radio_add(evas, _("Unknown"), E_WINDOW_TYPE_REAL_UNKNOWN, rg);
|
||||||
|
e_widget_list_object_append(li, o, 1, 0, 0.0);
|
||||||
|
|
||||||
e_widget_size_min_get(li, &mw, &mh);
|
e_widget_size_min_get(li, &mw, &mh);
|
||||||
evas_object_resize(li, mw, mh);
|
evas_object_resize(li, mw, mh);
|
||||||
|
|
Loading…
Reference in New Issue