webengine/osswebengine/WebKit/s60/webcoresupport/WebEditorClient.cpp
changeset 10 a359256acfc6
parent 5 10e98eab6f85
child 11 c8a366e56285
--- a/webengine/osswebengine/WebKit/s60/webcoresupport/WebEditorClient.cpp	Fri Jul 03 15:54:40 2009 +0100
+++ b/webengine/osswebengine/WebKit/s60/webcoresupport/WebEditorClient.cpp	Thu Aug 27 07:44:59 2009 +0300
@@ -352,8 +352,7 @@
             // previous char in secret text editor
             case EKeyF20:
             case EKeyBackspace:
-                frame->editor()->deleteWithDirection(SelectionController::BACKWARD,
-                                                     CharacterGranularity, false, true);
+                handleDeleteText(frame);
                 m_webView->fepTextEditor()->HandleUpdateCursor();
                 m_webView->fepTextEditor()->UpdateEditingMode();
                 event->setDefaultHandled();
@@ -476,7 +475,7 @@
                     if (m_webView->fepTextEditor()->DocumentLengthForFep() <
                         m_webView->fepTextEditor()->DocumentMaximumLengthForFep()) {
                         TText c = kevent->symbianEvent().iCode;
-                        frame->editor()->insertTextWithoutSendingTextEvent(String(TPtrC(&c,1)), false);
+                        handleInsertText(frame, String(TPtrC(&c,1)));
                         m_webView->fepTextEditor()->UpdateEditingMode();
                     }
                     m_webView->fepTextEditor()->HandleUpdateCursor();
@@ -629,3 +628,31 @@
 {
     m_webView->setEditable(enabled);
 }
+
+//-----------------------------------------------------------------------------
+// WebEditorClient::handleInsertText
+//-----------------------------------------------------------------------------
+void WebEditorClient::handleInsertText(Frame* frame,  const String& text)
+{
+    if (!m_webView->fepTextEditor()->IsWapMaskedModeInput(frame)) {
+        frame->editor()->insertTextWithoutSendingTextEvent(text, false);    
+    }
+    else {
+        m_webView->fepTextEditor()->HandleMaskedInsertText(frame, text);
+    }
+}
+
+//-----------------------------------------------------------------------------
+// WebEditorClient::handleDeleteText
+//-----------------------------------------------------------------------------
+void WebEditorClient::handleDeleteText(Frame* frame)
+{
+    if (!m_webView->fepTextEditor()->IsWapMaskedModeInput(frame)) {
+        frame->editor()->deleteWithDirection(SelectionController::BACKWARD,
+            CharacterGranularity, false, true);
+    }
+    else {
+        m_webView->fepTextEditor()->HandleMaskedDeleteText(frame);
+    }
+}
+