// mask is ignored, except for extended flag -- we poll the modifier keys for the other flags
BOOL LLKeyboardWin32::handleKeyUp(const U16 key, MASK mask)
{
	KEY		translated_key;
	U32		translated_mask;
	BOOL	handled = FALSE;

	translated_mask = updateModifiers();

	if (translateExtendedKey(key, mask, &translated_key))
	{
		handled = handleTranslatedKeyUp(translated_key, translated_mask);
	}

	return handled;
}
BOOL LLKeyboardMacOSX::handleKeyUp(const U16 key, const U32 mask)
{
	KEY		translated_key = 0;
	U32		translated_mask = 0;
	BOOL	handled = FALSE;

	translated_mask = updateModifiers(mask);

	if(translateNumpadKey(key, &translated_key))
	{
		handled = handleTranslatedKeyUp(translated_key, translated_mask);
	}

	return handled;
}
BOOL LLKeyboardSDL::handleKeyUp(const U16 key, const U32 mask)
{
    U16     adjusted_nativekey;
    KEY	translated_key = 0;
    U32	translated_mask = MASK_NONE;
    BOOL	handled = FALSE;

    adjusted_nativekey = adjustNativekeyFromUnhandledMask(key, mask);

    translated_mask = updateModifiers(mask);

    if(translateNumpadKey(adjusted_nativekey, &translated_key))
    {
        handled = handleTranslatedKeyUp(translated_key, translated_mask);
    }

    return handled;
}