Fix wireless password length check logic 85/105085/1
authorJiwan Kim <ji-wan.kim@samsung.com>
Thu, 15 Dec 2016 08:05:29 +0000 (17:05 +0900)
committerJiwan Kim <ji-wan.kim@samsung.com>
Thu, 15 Dec 2016 08:36:37 +0000 (17:36 +0900)
 - Fix TSAM-10853
 - Add check logic into key_down_cb
   * ECORE_IMF_CALLBACK_COMMIT cannot handle backspace button (virtual keyboard)
   * key_down_cb cannot handle special key ('www.', '.com', 'http://' buttons on virtual keyboard)
   * length check should be handled both callback

Change-Id: I476023eab3f93986e0ac8b8d2c94fb722b0c663d
Signed-off-by: Jiwan Kim <ji-wan.kim@samsung.com>
src/layout/layout_network.c

index 83d3880..b83c2ac 100644 (file)
@@ -790,6 +790,8 @@ static void _popup_entry_key_down_cb(void *data, Evas *e, Evas_Object *obj, void
 {
        struct _priv *priv = (struct _priv *)data;
        Evas_Event_Key_Down *ev = (Evas_Event_Key_Down*)event_info;
+       const char *str = NULL;
+       int len = 0;
 
        if (!priv || !ev) {
                _ERR("Invalid callback data !");
@@ -803,6 +805,17 @@ static void _popup_entry_key_down_cb(void *data, Evas *e, Evas_Object *obj, void
                ) {
                elm_object_focus_set(priv->popup_btn1, EINA_TRUE);
        }
+
+       str = elm_entry_entry_get(priv->passcode_entry);
+       if (NULL == str)
+               return;
+
+       len = strlen(str);
+       if (len >= MIN_WIRELESS_LEN) {
+               elm_object_disabled_set(priv->popup_btn2, EINA_FALSE);
+       } else {
+               elm_object_disabled_set(priv->popup_btn2, EINA_TRUE);
+       }
 }
 
 static void _imf_commit_event_cb(void *data, Ecore_IMF_Context *ctx, void *event_info)