javauis/lcdui_akn/lcdui/src/CMIDCanvas.cpp
branchRCL_3
changeset 71 d5e927d5853b
parent 66 2455ef1f5bbc
child 77 7cee158cb8cd
--- a/javauis/lcdui_akn/lcdui/src/CMIDCanvas.cpp	Wed Sep 01 12:33:18 2010 +0100
+++ b/javauis/lcdui_akn/lcdui/src/CMIDCanvas.cpp	Tue Sep 14 21:06:50 2010 +0300
@@ -483,7 +483,7 @@
              CustomComponentControl(KComponentMainControl)->IsVisible()))
     {
         // Traversal check
-        if ((aType == EEventKeyDown) &&
+        if ((aType == EEventKey) &&
                 (((aEvent.iCode == EKeyUpArrow) ||
                   (aEvent.iCode == EKeyDownArrow)) ||
                  ((aEvent.iScanCode == EStdKeyUpArrow) ||
@@ -2458,7 +2458,10 @@
             }
 
             // To have the cursor on focused control
-            if (iFocusedComponent != KComponentFocusedNone)
+            if ((iFocusedComponent != KComponentFocusedNone) &&
+                    (iFocusedComponent < iCustomComponents.Count()) &&
+                    iCustomComponents[iFocusedComponent]->
+                    CustomComponentControl(KComponentMainControl)->IsVisible())
             {
                 iCustomComponents[iFocusedComponent]->
                 CustomComponentControl(KComponentMainControl)->
@@ -2656,13 +2659,13 @@
             iLandscape = landscape;
 
             PostEvent(ESizeChanged, iContentSize.iWidth, iContentSize.iHeight);
-
             if (IsWindowVisible() && iWndUpdate)
             {
                 // Post forced paint to enable Canvas repaint behind
                 // Alert or Pop-up TextBox
                 PostForcedPaint();
             }
+
 #else
             iContentSize = contentSize;
             PostEvent(ESizeChanged, iContentSize.iWidth, iContentSize.iHeight);
@@ -2688,6 +2691,14 @@
         // We cannot determine whether the control size actually did change or
         // not, so we have to do the layout no matter what.
         Layout();
+#ifdef RD_JAVA_NGA_ENABLED
+        if (IsWindowVisible() && iWndUpdate)
+        {
+            // Post forced paint to enable Canvas repaint behind
+            // Alert or Pop-up TextBox
+            PostForcedPaint();
+        }
+#endif // RD_JAVA_NGA_ENABLED
     }
     DEBUG("- CMIDCanvas::SizeChanged");
 }