Changeset 21555 for trunk/src


Ignore:
Timestamp:
Jan 12, 2011, 12:11:50 AM (15 years ago)
Author:
dmik
Message:

user32: Make GetQueueStatus() return actual message summary in high word instead of the copy of the low word (WinQueryQueueStatus() API provides this functionality according to my tests, despite unclear docs).

Location:
trunk/src/user32
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/oslibmsg.cpp

    r21527 r21555  
    554554    statusOS2 = WinQueryQueueStatus(HWND_DESKTOP);
    555555
     556    // convert the flags since last call (low word)
     557
    556558    if(statusOS2 & QS_KEY)
    557559        statusWin32 |= QS_KEY_W;
     
    569571        statusWin32 |= QS_SENDMESSAGE_W;
    570572
     573    // convert the summary flags (high word)
     574
     575    statusOS2 >>= 16;
     576
     577    if(statusOS2 & QS_KEY)
     578        statusWin32 |= QS_KEY_W << 16;
     579    if(statusOS2 & QS_MOUSEBUTTON)
     580        statusWin32 |= QS_MOUSEBUTTON_W << 16;
     581    if(statusOS2 & QS_MOUSEMOVE)
     582        statusWin32 |= QS_MOUSEMOVE_W << 16;
     583    if(statusOS2 & QS_TIMER)
     584        statusWin32 |= QS_TIMER_W << 16;
     585    if(statusOS2 & QS_PAINT)
     586        statusWin32 |= QS_PAINT_W << 16;
     587    if(statusOS2 & QS_POSTMSG)
     588        statusWin32 |= QS_POSTMESSAGE_W << 16;
     589    if(statusOS2 & QS_SENDMSG)
     590        statusWin32 |= QS_SENDMESSAGE_W << 16;
     591
    571592    return statusWin32;
    572593}
  • trunk/src/user32/windowmsg.cpp

    r21340 r21555  
    11201120
    11211121    queueStatus = OSLibWinQueryQueueStatus();
    1122     queueStatus = MAKELONG(queueStatus, queueStatus);
    11231122
    11241123    dprintf(("USER32: GetQueueStatus %x returned %x", flags, queueStatus & MAKELONG(flags, flags)));
Note: See TracChangeset for help on using the changeset viewer.