Changeset 10280 for trunk/src


Ignore:
Timestamp:
Oct 22, 2003, 11:48:08 AM (22 years ago)
Author:
sandervl
Message:

DF: Fix for NLS layer switching (alt-shift)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/pmkbdhk/pmkbdhk.cpp

    r10157 r10280  
    1 /* $Id: pmkbdhk.cpp,v 1.5 2003-07-07 12:26:08 sandervl Exp $ */
     1/* $Id: pmkbdhk.cpp,v 1.6 2003-10-22 09:48:08 sandervl Exp $ */
    22/*
    33 * OS/2 native Presentation Manager hooks
     
    454454            case PMSCAN_SHIFTRIGHT:
    455455                if( SHORT1FROMMP(pqmsg->mp1) & KC_ALT )
    456                     // Let PM process CP switching msg
    457                     return FALSE;
     456                {
     457                  BOOL      fsuccess;
     458                  ULONG     ulLayerID;
     459
     460                  if( CHAR4FROMMP(pqmsg->mp1) == PMSCAN_SHIFTLEFT )
     461                    ulLayerID= KL_NATIONAL;
     462                  else
     463                    ulLayerID= KL_LATIN;
     464                  fsuccess= WinSetKbdLayer( pqmsg->hwnd /* HWND_DESKTOP */
     465                                          , ulLayerID        /* First country/language layout       */
     466                                          , SKLF_SENDMSG );  /* Post the WM_KBDLAYERCHANGED message */
     467                  HWND hwnd;
     468                  /* Store layerFlag in parent(frame) window data */
     469                  hwnd= WinQueryWindow( pqmsg->hwnd, QW_PARENT );
     470                  WinSetWindowULong( hwnd, QWL_KBDLAYER, ulLayerID );
     471                }
     472                //no break
     473
    458474            // Intercept PM Window Hotkeys such as
    459475            // Alt-F7 do enable window moving by keyboard.
Note: See TracChangeset for help on using the changeset viewer.