diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/termhooks.h | 34 |
1 files changed, 22 insertions, 12 deletions
diff --git a/src/termhooks.h b/src/termhooks.h index 05340f074b5..a410038f5f6 100644 --- a/src/termhooks.h +++ b/src/termhooks.h | |||
| @@ -294,20 +294,30 @@ enum { | |||
| 294 | up_modifier = 1, /* Only used on mouse buttons - always | 294 | up_modifier = 1, /* Only used on mouse buttons - always |
| 295 | turned into a click or a drag modifier | 295 | turned into a click or a drag modifier |
| 296 | before lisp code sees the event. */ | 296 | before lisp code sees the event. */ |
| 297 | down_modifier = 128, /* Only used on mouse buttons. */ | 297 | down_modifier = 2, /* Only used on mouse buttons. */ |
| 298 | drag_modifier = 256, /* This is never used in the event | 298 | drag_modifier = 4, /* This is never used in the event |
| 299 | queue; it's only used internally by | 299 | queue; it's only used internally by |
| 300 | the window-system-independent code. */ | 300 | the window-system-independent code. */ |
| 301 | click_modifier= 512, /* See drag_modifier. */ | 301 | click_modifier= 8, /* See drag_modifier. */ |
| 302 | 302 | ||
| 303 | /* The next four modifier bits are used also | 303 | /* The next four modifier bits are used also in keyboard events at |
| 304 | in keyboard events at the Lisp level. */ | 304 | the Lisp level. |
| 305 | alt_modifier = 0x040000, /* Under X, the XK_Alt_[LR] keysyms. */ | 305 | |
| 306 | super_modifier= 0x080000, /* Under X, the XK_Super_[LR] keysyms. */ | 306 | It's probably not the greatest idea to use the 2^23 bit for any |
| 307 | hyper_modifier= 0x100000, /* Under X, the XK_Hyper_[LR] keysyms. */ | 307 | modifier. It may or may not be the sign bit, depending on |
| 308 | shift_modifier= 0x200000, | 308 | VALBITS, so using it to represent a modifier key means that |
| 309 | ctrl_modifier = 0x400000, | 309 | characters thus modified have different integer equivalents |
| 310 | meta_modifier = 0x800000, /* Under X, the XK_Meta_[LR] keysyms. */ | 310 | depending on the architecture they're running on. Oh, and |
| 311 | applying XINT to a character whose 2^23 bit is set sign-extends | ||
| 312 | it, so you get a bunch of bits in the mask you didn't want. | ||
| 313 | |||
| 314 | The CHAR_ macros are defined in lisp.h. */ | ||
| 315 | alt_modifier = CHAR_ALT, /* Under X, the XK_Alt_[LR] keysyms. */ | ||
| 316 | super_modifier= CHAR_SUPER, /* Under X, the XK_Super_[LR] keysyms. */ | ||
| 317 | hyper_modifier= CHAR_HYPER, /* Under X, the XK_Hyper_[LR] keysyms. */ | ||
| 318 | shift_modifier= CHAR_SHIFT, | ||
| 319 | ctrl_modifier = CHAR_CTL, | ||
| 320 | meta_modifier = CHAR_META, /* Under X, the XK_Meta_[LR] keysyms. */ | ||
| 311 | }; | 321 | }; |
| 312 | 322 | ||
| 313 | #endif | 323 | #endif |