pub(super) unsafe fn is_last_message(hwnd: HWND, msg: UINT, lparam: LPARAM) -> bool {
    let expected_msg = match msg {
        WM_KEYDOWN | WM_CHAR => WM_CHAR,
        WM_SYSKEYDOWN | WM_SYSCHAR => WM_SYSCHAR,
        _ => {
            // Not applicable, but don't require the caller to know that.
            return false;
        }
    };
    let mut msg = mem::zeroed();
    let avail = PeekMessageW(&mut msg, hwnd, expected_msg, expected_msg, PM_NOREMOVE);
    avail == 0 || msg.lParam & SCAN_MASK != lparam & SCAN_MASK
}
/// Determine whether there are more messages in the queue for this key event.
///
/// When this function returns `false`, there is another message in the queue
/// with a matching scan code, therefore it is reasonable to stash the data
/// from this message and defer til later to actually produce the event.
Determine whether there are more messages in the queue for this key event.
When this function returns `false`, there is another message in the queue
with a matching scan code, therefore it is reasonable to stash the data
from this message and defer til later to actually produce the event.
Determine whether there are more messages in the queue for this key event . When this function returns ` false ` there is another message in the queue with a matching scan code therefore it is reasonable to stash the data from this message and defer til later to actually produce the event .
pub(super) unsafe fn is_last_message(hwnd: HWND, msg: UINT, lparam: LPARAM) -> bool {
    let expected_msg = match msg {
        WM_KEYDOWN | WM_CHAR => WM_CHAR,
        WM_SYSKEYDOWN | WM_SYSCHAR => WM_SYSCHAR,
        _ => {
            // Not applicable, but don't require the caller to know that.
            return false;
        }
    };
    let mut msg = mem::zeroed();
    let avail = PeekMessageW(&mut msg, hwnd, expected_msg, expected_msg, PM_NOREMOVE);
    avail == 0 || msg.lParam & SCAN_MASK != lparam & SCAN_MASK
}
pub ( super ) unsafe fn is_last_message ( hwnd : HWND , msg : UINT , lparam : LPARAM ) -> bool { let expected_msg = match msg { WM_KEYDOWN | WM_CHAR => WM_CHAR , WM_SYSKEYDOWN | WM_SYSCHAR => WM_SYSCHAR , _ => { // Not applicable, but don't require the caller to know that. return false ; } } ; let mut msg = mem :: zeroed ( ) ; let avail = PeekMessageW ( & mut msg , hwnd , expected_msg , expected_msg , PM_NOREMOVE ) ; avail == 0 || msg . lParam & SCAN_MASK != lparam & SCAN_MASK }
Determine whether there are more messages in the queue for this key event.
Determine whether there are more messages in the queue for this key event .
hwnd
HWND
msg
UINT
lparam
LPARAM
hwnd
HWND
msg
UINT
lparam
LPARAM