ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/keyboard.C
(Generate patch)

Comparing rxvt-unicode/src/keyboard.C (file contents):
Revision 1.2 by root, Sun Jan 16 18:05:37 2005 UTC vs.
Revision 1.3 by root, Sun Jan 16 18:48:04 2005 UTC

228 for (i = 0; i < n; ++i) 228 for (i = 0; i < n; ++i)
229 register_keymap (&stock_keymap[i]); 229 register_keymap (&stock_keymap[i]);
230 230
231 purge_duplicate_keymap (); 231 purge_duplicate_keymap ();
232 232
233#if TO_BE_DONE_INSIDE_dispatch
234 for (i = 0; i < keymap.size (); ++i)
235 {
236 keysym_t *key = keymap[i];
237
238 assert (bitcount (term_->ModMetaMask) == 1 && "call me after ModMetaMask was set!");
239
240 if (key->state & MetaMask)
241 {
242 //key->state &= ~MetaMask;
243 key->state |= term_->ModMetaMask;
244 }
245
246 assert (bitcount (term_->ModNumLockMask) == 1 && "call me after ModNumLockMask was set!");
247
248 if (key->state & NumLockMask)
249 {
250 //key->state &= ~NumLockMask;
251 key->state |= term_->ModNumLockMask;
252 }
253 }
254#endif
255
256 setup_hash (); 233 setup_hash ();
257} 234}
258 235
259bool 236bool
260keyboard_manager::dispatch (rxvt_term *term, KeySym keysym, unsigned int state) 237keyboard_manager::dispatch (rxvt_term *term, KeySym keysym, unsigned int state)
261{ 238{
262 assert (hash[0] == 0 && "register_done() need to be called"); 239 assert (hash[0] == 0 && "register_done() need to be called");
240
241 if (state & term->ModMetaMask)
242 state |= MetaMask;
243
244 if (state & term->ModNumLockMask)
245 state |= NumLockMask;
246
247 if (!!(term->priv_modes & PrivMode_aplKP) != !!(state & ShiftMask))
248 state |= AppKeypadMask;
263 249
264 int index = find_keysym (keysym, state); 250 int index = find_keysym (keysym, state);
265 251
266 if (index >= 0) 252 if (index >= 0)
267 { 253 {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines