PlatformKeyboardEvent::PlatformKeyboardEvent(const Evas_Event_Key_Up* event)
    : PlatformEvent(PlatformEvent::KeyUp, evas_key_modifier_is_set(event->modifiers, "Shift"), evas_key_modifier_is_set(event->modifiers, "Control"), evas_key_modifier_is_set(event->modifiers, "Alt"), evas_key_modifier_is_set(event->modifiers, "Meta"), currentTime())
    , m_text(singleCharacterString(String::fromUTF8(event->string)))
    , m_unmodifiedText(singleCharacterString(String::fromUTF8(event->string)))
    , m_keyIdentifier(keyIdentifierForEvasKeyName(String(event->key)))
    , m_windowsVirtualKeyCode(windowsKeyCodeForEvasKeyName(String(event->key)))
    , m_nativeVirtualKeyCode(0)
    , m_macCharCode(0)
    , m_autoRepeat(false)
    , m_isKeypad(false)
    , m_isSystemKey(false)
{
}
WebKeyboardEvent WebEventFactory::createWebKeyboardEvent(const Evas_Event_Key_Up* event)
{
    const String keyName(event->key);
    return WebKeyboardEvent(WebEvent::KeyUp,
        String::fromUTF8(event->string),
        String::fromUTF8(event->string),
        keyIdentifierForEvasKeyName(keyName),
        windowsKeyCodeForEvasKeyName(keyName),
        0 /* FIXME: nativeVirtualKeyCode */,
        0 /* macCharCode */,
        false /* FIXME: isAutoRepeat */,
        keyName.startsWith(keyPadPrefix),
        false /* isSystemKey */,
        modifiersForEvent(event->modifiers),
        convertMillisecondToSecond(event->timestamp));
}
Exemple #3
0
PlatformKeyboardEvent::PlatformKeyboardEvent(const Evas_Event_Key_Up* ev)
    : m_type(KeyUp)
    , m_text(String::fromUTF8(ev->string))
    , m_shiftKey(evas_key_modifier_is_set(ev->modifiers, "Shift"))
    , m_ctrlKey(evas_key_modifier_is_set(ev->modifiers, "Control"))
    , m_altKey(evas_key_modifier_is_set(ev->modifiers, "Alt"))
    , m_metaKey(evas_key_modifier_is_set(ev->modifiers, "Meta"))
{
    String keyName = String(ev->key);
    m_keyIdentifier = keyIdentifierForEvasKeyName(keyName);
    m_windowsVirtualKeyCode = windowsKeyCodeForEvasKeyName(keyName);

    // FIXME:
    m_isKeypad = false;
    m_autoRepeat = false;
}