Changeset 7866 for trunk/src/user32/oslibmsgtranslate.cpp
- Timestamp:
- Feb 11, 2002, 2:48:43 PM (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/user32/oslibmsgtranslate.cpp
r7837 r7866 1 /* $Id: oslibmsgtranslate.cpp,v 1.8 0 2002-02-08 09:58:42sandervl Exp $ */1 /* $Id: oslibmsgtranslate.cpp,v 1.81 2002-02-11 13:48:40 sandervl Exp $ */ 2 2 /* 3 3 * Window message translation functions for OS/2 … … 667 667 winMsg->lParam |= WIN_KEY_PREVSTATE; // bit 30, previous state, always 1 for a WM_KEYUP message 668 668 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 670 676 //Shift-Enter and possibly others need to have special handling 671 672 677 if (flags & KC_SHIFT) 678 { 673 679 if(fMsgRemoved && !(teb->o.odin.fTranslated)) 674 680 { … … 680 686 681 687 extramsg.message = WINWM_CHAR; 682 extramsg.lParam |= 1 << 31; // bit 31, transition state, always 1 for WM_KEYUP683 688 684 689 // insert message into the queue 685 690 setThreadQueueExtraCharMessage(teb, &extramsg); 686 687 winMsg->message = WINWM_KEYDOWN;688 691 winMsg->lParam &= 0x3FFFFFFF; 689 692 } 690 693 } // else ??? 691 694 } // 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 } 699 710 } 700 711 }
Note:
See TracChangeset
for help on using the changeset viewer.