bool QBBVirtualKeyboard::showKeyboard() { #ifdef QBBVIRTUALKEYBOARD_DEBUG qDebug() << "QBB: showKeyboard()"; #endif // Try to connect. if (mFd == -1 && !connect()) return false; // NOTE: This must be done everytime the keyboard is shown even if there is no change because // hiding the keyboard wipes the setting. applyKeyboardModeOptions(); pps_encoder_reset(mEncoder); // Send the show message. pps_encoder_add_string(mEncoder, "msg", "show"); if (::write(mFd, pps_encoder_buffer(mEncoder), pps_encoder_length(mEncoder)) == -1) { close(); return false; } pps_encoder_reset(mEncoder); // Return true if no error occurs. Sizing response will be triggered when confirmation of // the change arrives. return true; }
bool QQnxVirtualKeyboardPps::showKeyboard() { qVirtualKeyboardDebug() << Q_FUNC_INFO; // Try to connect. if (m_fd == -1 && !connect()) return false; // NOTE: This must be done everytime the keyboard is shown even if there is no change because // hiding the keyboard wipes the setting. applyKeyboardModeOptions(keyboardMode()); if (isVisible()) return true; pps_encoder_reset(m_encoder); // Send the show message. pps_encoder_add_string(m_encoder, "msg", "show"); if (::write(m_fd, pps_encoder_buffer(m_encoder), pps_encoder_length(m_encoder)) == -1) { close(); return false; } pps_encoder_reset(m_encoder); // Return true if no error occurs. Sizing response will be triggered when confirmation of // the change arrives. return true; }
bool QBBVirtualKeyboard::hideKeyboard() { #ifdef QBBVIRTUALKEYBOARD_DEBUG qDebug() << "QBB: hideKeyboard()"; #endif if(mFd == -1 && !connect()) return false; pps_encoder_add_string(mEncoder, "msg", "hide"); if (::write(mFd, pps_encoder_buffer(mEncoder), pps_encoder_length(mEncoder)) == -1) { close(); //Try again. if(connect()) { if (::write(mFd, pps_encoder_buffer(mEncoder), pps_encoder_length(mEncoder)) == -1) { close(); return false; } } else return false; } pps_encoder_reset(mEncoder); // Return true if no error occurs. Sizing response will be triggered when confirmation of // the change arrives. return true; }
bool QQnxVirtualKeyboardPps::hideKeyboard() { qVirtualKeyboardDebug() << Q_FUNC_INFO; if (m_fd == -1 && !connect()) return false; pps_encoder_add_string(m_encoder, "msg", "hide"); if (::write(m_fd, pps_encoder_buffer(m_encoder), pps_encoder_length(m_encoder)) == -1) { close(); //Try again. if (connect()) { if (::write(m_fd, pps_encoder_buffer(m_encoder), pps_encoder_length(m_encoder)) == -1) { close(); return false; } } else return false; } pps_encoder_reset(m_encoder); // Return true if no error occurs. Sizing response will be triggered when confirmation of // the change arrives. return true; }
bool QQnxVirtualKeyboardPps::prepareToSend() { if (m_fd == -1 && !connect()) return false; pps_encoder_reset(m_encoder); return true; }
bool QBBVirtualKeyboard::queryPPSInfo() { // Request info, requires id to regenerate res message. pps_encoder_add_string(mEncoder, "msg", "info"); pps_encoder_add_string(mEncoder, "id", "libWebView"); if (::write(mFd, pps_encoder_buffer(mEncoder), pps_encoder_length(mEncoder)) == -1) { close(); return false; } pps_encoder_reset(mEncoder); return true; }
void QBBVirtualKeyboard::applyKeyboardModeOptions() { // Try to connect. if(mFd == -1 && !connect()) return; // Send the options message. pps_encoder_add_string(mEncoder, "msg", "options"); pps_encoder_start_object(mEncoder, "dat"); switch (mKeyboardMode) { case Url: addUrlModeOptions(); break; case Email: addEmailModeOptions(); break; case Web: addWebModeOptions(); break; case NumPunc: addNumPuncModeOptions(); break; case Symbol: addSymbolModeOptions(); break; case Phone: addPhoneModeOptions(); break; case Pin: addPinModeOptions(); break; case Default: default: addDefaultModeOptions(); break; } pps_encoder_end_object(mEncoder); if (::write(mFd, pps_encoder_buffer(mEncoder), pps_encoder_length(mEncoder)) == -1) { close(); } pps_encoder_reset(mEncoder); }
bool QQnxVirtualKeyboardPps::showKeyboard() { qVirtualKeyboardDebug() << Q_FUNC_INFO; if (!prepareToSend()) return false; // NOTE: This must be done everytime the keyboard is shown even if there is no change because // hiding the keyboard wipes the setting. applyKeyboardOptions(); if (isVisible()) return true; pps_encoder_reset(m_encoder); // Send the show message. pps_encoder_add_string(m_encoder, "msg", "show"); return writeCurrentPPSEncoder(); }