Commit manual merge for dali-csharp. 93/127993/1
authorFeng Jin <feng16.jin@samsung.com>
Wed, 3 May 2017 23:35:23 +0000 (07:35 +0800)
committerFeng Jin <feng16.jin@samsung.com>
Wed, 3 May 2017 23:35:23 +0000 (07:35 +0800)
Change-Id: Ib8fb4086f2c985febcba6571073ae1579240ea7b
Signed-off-by: Feng Jin <feng16.jin@samsung.com>
dali-csharp-binder/src/keyboard_focus_manager_wrap.cpp

index 1a85fc9..4845947 100755 (executable)
@@ -623,16 +623,31 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_KeyboardPreFocusChangeSignal_GetConn
   return jresult;
 }
 
-typedef void* (SWIGSTDCALL* SWIG_CallbackKbPreFocusChange)(void *, void *, int);
+typedef Dali::Actor* (SWIGSTDCALL* SWIG_CallbackKbPreFocusChange)(Dali::Actor *, Dali::Actor *, int);
 SWIG_CallbackKbPreFocusChange swig_callbackOnKbPreFocusChange;
 
 Dali::Actor OnKbPreFocusChangeCallback(Dali::Actor current, Dali::Actor proposed, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
     Dali::Actor *actorp;
     Dali::Actor actor;
+    Dali::Actor *CurrentP = NULL;
+    Dali::Actor *ProposedP = NULL;
 
-    actorp = (Dali::Actor *)swig_callbackOnKbPreFocusChange((void *)&current, (void *)&proposed, direction);
-    actor = *actorp;
+    if (current)
+    {
+      CurrentP = (Dali::Actor *)&current;
+    }
+
+    if (proposed)
+    {
+      ProposedP = (Dali::Actor *)&proposed;
+    }
+
+    actorp = (Dali::Actor *)swig_callbackOnKbPreFocusChange(CurrentP, ProposedP, direction);
+    if (actorp)
+    {
+      actor = *actorp;
+    }
 
     return actor;
 }