Shift-click is equivalent to middle-click. This is mostly for

Windows users who may not have a middle button at all, but I've
replicated it in GTK to maintain cross-platform consistency.

[originally from svn r4166]
This commit is contained in:
Simon Tatham
2004-04-28 17:42:32 +00:00
parent 3b1ec74d73
commit e96f53452a
2 changed files with 22 additions and 9 deletions

View File

@ -438,12 +438,25 @@ static LRESULT CALLBACK WndProc(HWND hwnd, UINT message,
case WM_LBUTTONDOWN:
case WM_RBUTTONDOWN:
case WM_MBUTTONDOWN:
if (!midend_process_key(fe->me, LOWORD(lParam), HIWORD(lParam),
(message == WM_LBUTTONDOWN ? LEFT_BUTTON :
message == WM_RBUTTONDOWN ? RIGHT_BUTTON :
MIDDLE_BUTTON)))
PostQuitMessage(0);
{
int button;
/*
* Shift-clicks count as middle-clicks, since otherwise
* two-button Windows users won't have any kind of
* middle click to use.
*/
if (message == WM_MBUTTONDOWN || (wParam & MK_SHIFT))
button = MIDDLE_BUTTON;
else if (message == WM_LBUTTONDOWN)
button = LEFT_BUTTON;
else
button = RIGHT_BUTTON;
if (!midend_process_key(fe->me, LOWORD(lParam),
HIWORD(lParam), button))
PostQuitMessage(0);
}
break;
case WM_CHAR:
if (!midend_process_key(fe->me, 0, 0, (unsigned char)wParam))