Ignore:
Timestamp:
Feb 11, 2002, 2:48:43 PM (24 years ago)
Author:
sandervl
Message:

logging changes, window title fix (codepage), keyboard fixes

File:
1 edited

Legend:

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

    r7837 r7866  
    1 /* $Id: oslibmsgtranslate.cpp,v 1.80 2002-02-08 09:58:42 sandervl Exp $ */
     1/* $Id: oslibmsgtranslate.cpp,v 1.81 2002-02-11 13:48:40 sandervl Exp $ */
    22/*
    33 * Window message translation functions for OS/2
     
    667667            winMsg->lParam |= WIN_KEY_PREVSTATE;                    // bit 30, previous state, always 1 for a WM_KEYUP message
    668668            winMsg->lParam |= 1 << 31;                              // bit 31, transition state, always 1 for WM_KEYUP
    669 
     669          }
     670          else
     671          { // send WM_KEYDOWN message
     672            winMsg->message = WINWM_KEYDOWN;
     673            if (keyWasPressed)
     674              winMsg->lParam |= WIN_KEY_PREVSTATE;                  // bit 30, previous state, 1 means key was pressed
     675             
    670676            //Shift-Enter and possibly others need to have special handling
    671              if (flags & KC_SHIFT)
    672              {
     677            if (flags & KC_SHIFT)
     678            {
    673679                if(fMsgRemoved && !(teb->o.odin.fTranslated))
    674680                {                   
     
    680686   
    681687                    extramsg.message = WINWM_CHAR;
    682                     extramsg.lParam |= 1 << 31;                              // bit 31, transition state, always 1 for WM_KEYUP
    683688
    684689                    // insert message into the queue
    685690                    setThreadQueueExtraCharMessage(teb, &extramsg);
    686 
    687                     winMsg->message = WINWM_KEYDOWN;
    688691                    winMsg->lParam &= 0x3FFFFFFF;
    689692                  }
    690693               } // else ???
    691694            } // KC_SHIFT
    692           }
    693           else
    694           {
    695             // send WM_KEYDOWN message
    696             winMsg->message = WINWM_KEYDOWN;
    697             if (keyWasPressed)
    698               winMsg->lParam |= WIN_KEY_PREVSTATE;                  // bit 30, previous state, 1 means key was pressed
     695            else
     696            {
     697              // in case we handle Enter directly through PMKBDHOOK
     698              if ((os2Msg->msg == WM_CHAR_SPECIAL) && (winMsg->wParam == VK_RETURN_W)
     699                   && (fMsgRemoved && !(teb->o.odin.fTranslated)))
     700              {
     701                    MSG extramsg;
     702                    memcpy(&extramsg, winMsg, sizeof(MSG));
     703   
     704                    extramsg.message = WINWM_CHAR;
     705
     706                    // insert message into the queue
     707                    setThreadQueueExtraCharMessage(teb, &extramsg);
     708              }
     709            }
    699710          }
    700711        }
Note: See TracChangeset for help on using the changeset viewer.