Ignore:
Timestamp:
Aug 8, 2003, 3:30:22 PM (22 years ago)
Author:
sandervl
Message:

KOM: WM_IME_CHAR generation + processing added for DBCS input

File:
1 edited

Legend:

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

    r10212 r10216  
    1 /* $Id: oslibmsg.cpp,v 1.74 2003-08-06 11:00:44 sandervl Exp $ */
     1/* $Id: oslibmsg.cpp,v 1.75 2003-08-08 13:30:19 sandervl Exp $ */
    22/*
    33 * Window message translation functions for OS/2
     
    236236// Check for a queued WM_CHAR message (e.g. inserted by TranslateMessage)
    237237//******************************************************************************
    238 BOOL ReturnQueuedWMCHAR(LPMSG pMsg, TEB *teb, HWND hwnd, UINT uMsgFilterMin, UINT uMsgFilterMax, 
     238BOOL ReturnQueuedWMCHAR(LPMSG pMsg, TEB *teb, HWND hwnd, UINT uMsgFilterMin, UINT uMsgFilterMax,
    239239                        BOOL isUnicode, BOOL fRemove)
    240240{
     
    251251                return FALSE;
    252252        }
    253    
     253
    254254        if(fRemove & PM_REMOVE_W) {
    255255            teb->o.odin.fTranslated = FALSE;
     
    276276        // call the keyboard hook here
    277277        // send keyboard messages to the registered hooks
    278         if(fRemove & PM_REMOVE_W) 
     278        if(fRemove & PM_REMOVE_W)
    279279        {
    280280            switch (pMsg->message)
     
    291291            }
    292292        }
    293    
     293
    294294        //GetMessageW and PeekMessageW expect the character code in UTF-16
    295295        //(we save it in ascii format)
     
    298298            CHAR  charA;
    299299            WCHAR charW;
    300    
     300
    301301            charA = pMsg->wParam;
    302302            MultiByteToWideChar(CP_ACP, 0, &charA, 1, &charW, 1);
     
    400400            goto continuegetmsg;
    401401        break;
    402     case WINWM_CHAR:
    403     case WINWM_SYSCHAR:
     402    case WINWM_IME_CHAR:
    404403        // prevent from calling wrong DispatchMsg() (DBCS generated WM_CHAR)
    405404        memset( &teb->o.odin.winmsg, 0, sizeof( MSG ));
     
    464463        ULONG ulPMFilter;
    465464
    466         for(int i=0;i<uMsgFilterMax-uMsgFilterMin+1;i++) 
     465        for(int i=0;i<uMsgFilterMax-uMsgFilterMin+1;i++)
    467466        {
    468467            rc = 0;
     
    523522                goto continuepeekmsg;
    524523            break;
    525         case WINWM_CHAR:
    526         case WINWM_SYSCHAR:
     524        case WINWM_IME_CHAR:
    527525            // prevent from calling wrong DispatchMsg() (DBCS generated WM_CHAR)
    528526            memset( &teb->o.odin.winmsg, 0, sizeof( MSG ));
Note: See TracChangeset for help on using the changeset viewer.