...menu_process_item_selection() as the previous variant did not work.
{
assert(item);
+ /* Do not keep selecting the same item */
+ static struct menuitem *last;
+ if (item == last) {
+ return;
+ }
+ last = item;
+
if (!item->selectable) {
return;
}
{
assert(node && node->data);
struct menuitem *item = node_menuitem_from_node(node);
-
- if (item->selectable && node == &item->selected.tree->node) {
- /* We are on an already selected item */
- return;
- }
-
menu_process_item_selection(item);
}