Overlooked WM event.val usage without checking proper #defines.
My previous commit made all input not work on any modifier key press.
This commit is contained in:
Ton Roosendaal 2009-07-21 12:19:46 +00:00
parent ed92105857
commit e18164dbab

@ -1472,23 +1472,23 @@ void wm_event_add_ghostevent(wmWindow *win, int type, void *customdata)
/* modifiers */ /* modifiers */
if (event.type==LEFTSHIFTKEY || event.type==RIGHTSHIFTKEY) { if (event.type==LEFTSHIFTKEY || event.type==RIGHTSHIFTKEY) {
event.shift= evt->shift= event.val; event.shift= evt->shift= (event.val==KM_PRESS);
if(event.val && (evt->ctrl || evt->alt || evt->oskey)) if(event.val==KM_PRESS && (evt->ctrl || evt->alt || evt->oskey))
event.shift= evt->shift = 3; // define? event.shift= evt->shift = 3; // define?
} }
else if (event.type==LEFTCTRLKEY || event.type==RIGHTCTRLKEY) { else if (event.type==LEFTCTRLKEY || event.type==RIGHTCTRLKEY) {
event.ctrl= evt->ctrl= event.val; event.ctrl= evt->ctrl= (event.val==KM_PRESS);
if(event.val && (evt->shift || evt->alt || evt->oskey)) if(event.val==KM_PRESS && (evt->shift || evt->alt || evt->oskey))
event.ctrl= evt->ctrl = 3; // define? event.ctrl= evt->ctrl = 3; // define?
} }
else if (event.type==LEFTALTKEY || event.type==RIGHTALTKEY) { else if (event.type==LEFTALTKEY || event.type==RIGHTALTKEY) {
event.alt= evt->alt= event.val; event.alt= evt->alt= (event.val==KM_PRESS);
if(event.val && (evt->ctrl || evt->shift || evt->oskey)) if(event.val==KM_PRESS && (evt->ctrl || evt->shift || evt->oskey))
event.alt= evt->alt = 3; // define? event.alt= evt->alt = 3; // define?
} }
else if (event.type==COMMANDKEY) { else if (event.type==COMMANDKEY) {
event.oskey= evt->oskey= event.val; event.oskey= evt->oskey= (event.val==KM_PRESS);
if(event.val && (evt->ctrl || evt->alt || evt->shift)) if(event.val==KM_PRESS && (evt->ctrl || evt->alt || evt->shift))
event.oskey= evt->oskey = 3; // define? event.oskey= evt->oskey = 3; // define?
} }