… | |
… | |
867 | #endif |
867 | #endif |
868 | /* nil */ ; |
868 | /* nil */ ; |
869 | } |
869 | } |
870 | } |
870 | } |
871 | |
871 | |
|
|
872 | if (HOOK_INVOKE ((this, HOOK_KEY_PRESS, DT_XEVENT, &ev, DT_STRING_LEN, kbuf, len, DT_END))) |
|
|
873 | return; |
|
|
874 | |
872 | if (len <= 0) |
875 | if (len <= 0) |
873 | return; /* not mapped */ |
876 | return; /* not mapped */ |
874 | |
877 | |
875 | if (OPTION (Opt_scrollTtyKeypress)) |
878 | if (OPTION (Opt_scrollTtyKeypress)) |
876 | if (view_start) |
879 | if (view_start) |
… | |
… | |
1635 | if ((priv_modes & PrivMode_mouse_report) && !bypass_keystate) |
1638 | if ((priv_modes & PrivMode_mouse_report) && !bypass_keystate) |
1636 | break; |
1639 | break; |
1637 | |
1640 | |
1638 | if (ev.xany.window == vt) |
1641 | if (ev.xany.window == vt) |
1639 | { |
1642 | { |
|
|
1643 | if (HOOK_INVOKE ((this, HOOK_MOTION_NOTIFY, DT_XEVENT, &ev, DT_END))) |
|
|
1644 | ; // nop |
1640 | if (ev.xbutton.state & (Button1Mask | Button3Mask)) |
1645 | else if (ev.xbutton.state & (Button1Mask | Button3Mask)) |
1641 | { |
1646 | { |
1642 | while (XCheckTypedWindowEvent (disp, vt, MotionNotify, &ev)) |
1647 | while (XCheckTypedWindowEvent (disp, vt, MotionNotify, &ev)) |
1643 | ; |
1648 | ; |
1644 | |
1649 | |
1645 | XQueryPointer (disp, vt, |
1650 | XQueryPointer (disp, vt, |
… | |
… | |
1894 | else |
1899 | else |
1895 | { |
1900 | { |
1896 | if (ev.button != MEvent.button) |
1901 | if (ev.button != MEvent.button) |
1897 | MEvent.clicks = 0; |
1902 | MEvent.clicks = 0; |
1898 | |
1903 | |
1899 | if (!HOOK_INVOKE ((this, HOOK_MOUSE_CLICK, DT_XEVENT, &ev, DT_END))) |
1904 | if (!HOOK_INVOKE ((this, HOOK_BUTTON_PRESS, DT_XEVENT, &ev, DT_END))) |
1900 | switch (ev.button) |
1905 | switch (ev.button) |
1901 | { |
1906 | { |
1902 | case Button1: |
1907 | case Button1: |
1903 | /* allow meta + click to select rectangular areas */ |
1908 | /* allow meta + click to select rectangular areas */ |
1904 | /* should be done in screen.C */ |
1909 | /* should be done in screen.C */ |
… | |
… | |
2155 | */ |
2160 | */ |
2156 | if (priv_modes & PrivMode_mouse_report |
2161 | if (priv_modes & PrivMode_mouse_report |
2157 | && bypass_keystate |
2162 | && bypass_keystate |
2158 | && ev.button == Button1 && MEvent.clicks <= 1) |
2163 | && ev.button == Button1 && MEvent.clicks <= 1) |
2159 | selection_extend (ev.x, ev.y, 0); |
2164 | selection_extend (ev.x, ev.y, 0); |
|
|
2165 | |
|
|
2166 | if (!HOOK_INVOKE ((this, HOOK_BUTTON_RELEASE, DT_XEVENT, &ev, DT_END))) |
|
|
2167 | return; |
2160 | |
2168 | |
2161 | switch (ev.button) |
2169 | switch (ev.button) |
2162 | { |
2170 | { |
2163 | case Button1: |
2171 | case Button1: |
2164 | case Button3: |
2172 | case Button3: |