Changeset 9200 for trunk/src


Ignore:
Timestamp:
Sep 3, 2002, 4:03:16 PM (23 years ago)
Author:
sandervl
Message:

PF: Fix for Ctrl-Break

File:
1 edited

Legend:

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

    r9020 r9200  
    1 /* $Id: oslibmsgtranslate.cpp,v 1.91 2002-08-16 16:49:13 sandervl Exp $ */
     1/* $Id: oslibmsgtranslate.cpp,v 1.92 2002-09-03 14:03:16 sandervl Exp $ */
    22/*
    33 * Window message translation functions for OS/2
     
    638638#ifdef ALTGR_HACK
    639639   
     640
    640641        if (usPMScanCode == PMSCAN_ALTRIGHT)
    641642        {
     
    683684        }     
    684685#endif
     686
     687        //@PF This looks ugly but this is just what we have in win32 both in win98/win2k
     688        //what happens is that lParam is tweaked in win32 to contain some illegal codes
     689        //I simply reproduce here all situation. Absolute values can be kept because
     690        //Break scancode can be acheived only by pressing Ctrl-Break combination
     691        if ((usPMScanCode == PMSCAN_BREAK) && !(flags & KC_KEYUP) && (flags & KC_CTRL)
     692                && (fMsgRemoved && !(teb->o.odin.fTranslated)))
     693        {
     694            MSG extramsg;
     695            memcpy(&extramsg, winMsg, sizeof(MSG));
     696            // adjust our WM_CHAR code
     697            extramsg.lParam = 0x01460001;
     698            extramsg.message = WINWM_CHAR;
     699            setThreadQueueExtraCharMessage(teb, &extramsg);
     700            // and finally adjust our WM_KEYDOWN code
     701            winMsg->lParam = 0x01460001;
     702        }
    685703     
    686704        if (!(flags & KC_ALT))
Note: See TracChangeset for help on using the changeset viewer.