On Thu, Feb 02, 2012 at 10:03:35AM +0100, Martin Jansa wrote:
> On Thu, Feb 02, 2012 at 05:47:14PM +0900, Jihoon Kim wrote:
> > Hi, Martin.
> > 
> > Did you compiile ecore with --disable-ecore-imf option?
> > It can be a clue to me to debug this bug.
> 
> No, imf is enabled:
>   Ecore_IMF....................: yes
>     XIM........................: yes
>     SCIM.......................: no
>   Ecore_IMF_Evas...............: yes
> 
> and from elementary;
> checking for ELEMENTARY... yes
> checking for ELEMENTARY_ECORE_IMF... yes
> 
>   Features:
>     Ecore_IMF..............: yes
> 
> > If it is, I think it can be fixed easily. (I will.)
> 
> To be clear, if I call
> elm_entry_input_panel_enabled_set(en, EINA_TRUE);
> then it works as expected, I'm looking for way to make this setting
> default enabled for all entries (as we're using illume2 on phones
> without hw keyboards, so virtual keyboard is needed for every entry).

It seems like 
ecore_imf_context_input_panel_enabled_get(en->imf_context);
is returning 0 for me and for some reason gdb doesn't want me to step into it..

Attaching 2 more patches to make debugging this easier.

SHR root@gjama ~ $ gdb ./entry_example
GNU gdb (GDB) 7.3.1
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "arm-oe-linux-gnueabi".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/root/entry_example...done.
(gdb) b _edje_entry_input_panel_enabled_get
Function "_edje_entry_input_panel_enabled_get" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (_edje_entry_input_panel_enabled_get) pending.
(gdb) b ecore_imf_context_input_panel_enabled_get
Function "ecore_imf_context_input_panel_enabled_get" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 2 (ecore_imf_context_input_panel_enabled_get) pending.
(gdb) r
Starting program: /home/root/entry_example 
[Thread debugging using libthread_db enabled]
Xlib:  extension "DPMS" missing on display ":0".

Breakpoint 1, _edje_entry_input_panel_enabled_get (rp=0xae350) at 
edje_entry.c:2518
2518       Entry *en = rp->entry_data;
(gdb) n
2517    {
(gdb) n
2519       if (!en) return EINA_FALSE;
(gdb) n
2521       if (en->imf_context)
(gdb) si
0x403d5d90      2521       if (en->imf_context)
(gdb) 
2522         return ecore_imf_context_input_panel_enabled_get(en->imf_context);
(gdb) 
2526    }
(gdb) finish
Run till exit from #0  _edje_entry_input_panel_enabled_get (rp=<optimized out>) 
at edje_entry.c:2526
0x403f0540 in edje_object_part_text_input_panel_enabled_get (obj=<optimized 
out>, part=0x4011d1c0 "elm.text") at edje_util.c:1874
1874            return _edje_entry_input_panel_enabled_get(rp);
Value returned is $1 = 0 '\000'



-- 
Martin 'JaMa' Jansa     jabber: martin.ja...@gmail.com
From c506f5f078b6abc789602603c481168575cf7260 Mon Sep 17 00:00:00 2001
From: Martin Jansa <martin.ja...@gmail.com>
Date: Thu, 2 Feb 2012 20:04:51 +0100
Subject: [PATCH] elm_entry: add missing elm_entry_input_panel_enabled_get

* it was in elm_entry.h but without implementation

Signed-off-by: Martin Jansa <martin.ja...@gmail.com>
---
 elementary/src/lib/elm_entry.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/elementary/src/lib/elm_entry.c b/elementary/src/lib/elm_entry.c
index d9d4400..ea6fd00 100644
--- a/elementary/src/lib/elm_entry.c
+++ b/elementary/src/lib/elm_entry.c
@@ -3492,3 +3492,12 @@ elm_entry_input_panel_enabled_set(Evas_Object *obj, 
Eina_Bool enabled)
    edje_object_part_text_input_panel_enabled_set(wd->ent, "elm.text", enabled);
 }
 
+EAPI Eina_Bool
+elm_entry_input_panel_enabled_get(Evas_Object *obj)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) EINA_TRUE;
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return EINA_TRUE;
+
+   return wd->input_panel_enable;
+}
-- 
1.7.8.4

From 718eaa14bde4274b97d505ffeb00bbffee3ba1cf Mon Sep 17 00:00:00 2001
From: Martin Jansa <martin.ja...@gmail.com>
Date: Thu, 2 Feb 2012 14:22:46 +0100
Subject: [PATCH] python-elementary: add input_panel_enabled getter/setter for
 elm_entry

Signed-off-by: Martin Jansa <martin.ja...@gmail.com>
---
 .../elementary/elementary.c_elementary_entry.pxi   |    6 ++++++
 .../include/elementary/c_elementary.pxd            |    2 ++
 2 files changed, 8 insertions(+), 0 deletions(-)

diff --git 
a/BINDINGS/python/python-elementary/elementary/elementary.c_elementary_entry.pxi
 
b/BINDINGS/python/python-elementary/elementary/elementary.c_elementary_entry.pxi
index 15686ce..c2a2cb0 100644
--- 
a/BINDINGS/python/python-elementary/elementary/elementary.c_elementary_entry.pxi
+++ 
b/BINDINGS/python/python-elementary/elementary/elementary.c_elementary_entry.pxi
@@ -205,6 +205,12 @@ cdef class Entry(Object):
     def context_menu_disabled_set(self, disabled):
         elm_entry_context_menu_disabled_set(self.obj, disabled)
 
+    def input_panel_enabled_set(self, enabled):
+        elm_entry_input_panel_enabled_set(self.obj, enabled)
+
+    def input_panel_enabled_get(self):
+        return bool(elm_entry_input_panel_enabled_get(self.obj))
+
     markup_to_utf8 = staticmethod(Entry_markup_to_utf8)
 
     utf8_to_markup = staticmethod(Entry_utf8_to_markup)
diff --git 
a/BINDINGS/python/python-elementary/include/elementary/c_elementary.pxd 
b/BINDINGS/python/python-elementary/include/elementary/c_elementary.pxd
index b1d4dbe..3a01173 100644
--- a/BINDINGS/python/python-elementary/include/elementary/c_elementary.pxd
+++ b/BINDINGS/python/python-elementary/include/elementary/c_elementary.pxd
@@ -518,6 +518,8 @@ cdef extern from "Elementary.h":
     char        *elm_entry_markup_to_utf8(char *s)
     char        *elm_entry_utf8_to_markup(char *s)
     void elm_entry_context_menu_disabled_set(evas.c_evas.Evas_Object *obj, 
evas.c_evas.Eina_Bool disabled)
+    void elm_entry_input_panel_enabled_set(evas.c_evas.Evas_Object *obj, 
evas.c_evas.Eina_Bool enabled)
+    evas.c_evas.Eina_Bool 
elm_entry_input_panel_enabled_get(evas.c_evas.Evas_Object *obj)
 
     # Scrolled Entry Object
     evas.c_evas.Evas_Object *elm_scrolled_entry_add(evas.c_evas.Evas_Object 
*parent)
-- 
1.7.8.4

Attachment: signature.asc
Description: Digital signature

------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to