src/hbplugins/inputmethods/common/hbinputabstractbase.cpp
changeset 21 4633027730f5
parent 5 627c4a0fd0e7
child 23 e6ad4ef83b23
equal deleted inserted replaced
7:923ff622b8b9 21:4633027730f5
   191             focusObject()->editorInterface().addAction(mVanillQwertySwitch);
   191             focusObject()->editorInterface().addAction(mVanillQwertySwitch);
   192         }
   192         }
   193     }
   193     }
   194 }
   194 }
   195 
   195 
       
   196 
       
   197 void HbInputAbstractMethod::focusLost()
       
   198 {
       
   199     bool isVannilaApp = false;
       
   200     QInputContext* context = qApp->inputContext();
       
   201     if (context && context->focusWidget()) {
       
   202         QWidget *focusedWidget = context->focusWidget();
       
   203         if (!focusedWidget->inherits("HbMainWindow")) {
       
   204             isVannilaApp = true;
       
   205         }
       
   206     }
       
   207     
       
   208     if(isVannilaApp &&  focusObject()) {
       
   209         QList<HbAction*> customActions= focusObject()->editorInterface().actions();
       
   210         if(customActions.contains(mVanillQwertySwitch)) {
       
   211             disconnect(mVanillQwertySwitch, SIGNAL(triggered(bool)));
       
   212             disconnect(mVanillQwertySwitch, SIGNAL(triggered(bool)), this, SLOT(switchKeypad(bool)));
       
   213             focusObject()->editorInterface().removeAction(mVanillQwertySwitch);            
       
   214         }
       
   215     }
       
   216 }
       
   217 
   196 void HbInputAbstractMethod::switchKeypad(bool isActive)
   218 void HbInputAbstractMethod::switchKeypad(bool isActive)
   197 {
   219 {
   198     Q_UNUSED(isActive);
   220     Q_UNUSED(isActive);
   199     HbKeyboardType keyboard = HbInputSettingProxy::instance()->activeKeyboard();
   221     HbInputState state = inputState();
   200     if (keyboard == HbKeyboardVirtual12Key) {
   222     if (currentKeyboardType() == HbKeyboardVirtual12Key) {
   201         HbInputSettingProxy::instance()->setActiveKeyboard(HbKeyboardVirtualQwerty);
   223         state.setKeyboard(HbKeyboardVirtualQwerty);
   202     } else if (keyboard == HbKeyboardVirtualQwerty) {
   224         activateState(state);
   203         HbInputSettingProxy::instance()->setActiveKeyboard(HbKeyboardVirtual12Key);
   225     } else if (currentKeyboardType() == HbKeyboardVirtualQwerty) {
       
   226         state.setKeyboard(HbKeyboardVirtual12Key);
       
   227         activateState(state);
   204     }
   228     }
   205 }
   229 }
   206 
   230 
   207 // EOF
   231 // EOF
   208 
   232