forked from enlightenment/efl
elm_list.c: fixed a bug when any item is selected without control on multi select with control mode.
When any item is selected without control on multi select with control mode, already selected items should be unselected automatically.
This commit is contained in:
parent
f122be13c2
commit
644a51f0fb
|
@ -1294,27 +1294,19 @@ _mouse_up_cb(void *data,
|
||||||
evas_object_ref(obj);
|
evas_object_ref(obj);
|
||||||
_elm_list_walk(sd);
|
_elm_list_walk(sd);
|
||||||
|
|
||||||
if (sd->multi)
|
if (sd->multi &&
|
||||||
|
((sd->multi_select_mode != ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL) ||
|
||||||
|
(evas_key_modifier_is_set(ev->modifiers, "Control"))))
|
||||||
{
|
{
|
||||||
if (((sd->multi_select_mode != ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL) ||
|
if (!it->selected)
|
||||||
(evas_key_modifier_is_set(ev->modifiers, "Control"))))
|
|
||||||
{
|
{
|
||||||
if (!it->selected)
|
_item_highlight(it);
|
||||||
{
|
_item_select(it);
|
||||||
_item_highlight(it);
|
|
||||||
_item_select(it);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
_item_unhighlight(it);
|
|
||||||
_item_unselect(it);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_item_unhighlight(it);
|
_item_unhighlight(it);
|
||||||
if (it->selected)
|
_item_unselect(it);
|
||||||
_item_unselect(it);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
Loading…
Reference in New Issue