genlist: refactor the internal code to make it more readable.
authorDaniel Juyung Seo <seojuyung2@gmail.com>
Sun, 27 Apr 2014 03:55:58 +0000 (12:55 +0900)
committerDaniel Juyung Seo <seojuyung2@gmail.com>
Sun, 27 Apr 2014 03:55:58 +0000 (12:55 +0900)
src/lib/elm_genlist.c

index 9124d7b..f66e552 100644 (file)
@@ -2592,23 +2592,26 @@ _key_action_move_dir(Evas_Object *obj, Elm_Focus_Direction dir, Eina_Bool multi)
          (NULL, NULL, NULL, &v),
          elm_interface_scrollable_content_size_get(NULL, &min));
 
-   if (multi && !_elm_config->item_select_on_focus_disable)
+   if (_elm_config->item_select_on_focus_disable)
      {
-        if (dir == ELM_FOCUS_UP)
-          ret = _item_multi_select_up(sd);
-        else if (dir == ELM_FOCUS_DOWN)
-          ret = _item_multi_select_down(sd);
-     }
-   else if (!multi && !_elm_config->item_select_on_focus_disable)
-     {
-        if (dir == ELM_FOCUS_UP)
-          ret = _item_single_select_up(sd);
-        else if (dir == ELM_FOCUS_DOWN)
-          ret = _item_single_select_down(sd);
+        ret = _item_focused_next(obj, dir);
      }
-   else if (_elm_config->item_select_on_focus_disable)
+   else
      {
-        ret = _item_focused_next(obj, dir);
+        if (multi)
+          {
+             if (dir == ELM_FOCUS_UP)
+               ret = _item_multi_select_up(sd);
+             else if (dir == ELM_FOCUS_DOWN)
+               ret = _item_multi_select_down(sd);
+          }
+        else
+          {
+             if (dir == ELM_FOCUS_UP)
+               ret = _item_single_select_up(sd);
+             else if (dir == ELM_FOCUS_DOWN)
+               ret = _item_single_select_down(sd);
+          }
      }
    if (ret)
      return EINA_TRUE;