--- rxvt-unicode/src/command.C 2010/03/30 23:00:35 1.440 +++ rxvt-unicode/src/command.C 2010/04/02 13:52:30 1.445 @@ -200,7 +200,7 @@ fname = rxvt_temp_buf (len); for (int i = 0; i < len; i++) { - rxvt_font *f = fs->get (chr[i]); + rxvt_font *f = (*fs)[fs->find_font_idx (chr[i])]; fname[i] = rxvt_utf8towcs (f->name); max_it (width, wcswidth (fname[i], wcslen (fname[i]))); } @@ -290,7 +290,7 @@ static int hex_keyval (XKeyEvent &ev) { - // check wether this event corresponds to a hex digit + // check whether this event corresponds to a hex digit // if the modifiers had not been pressed. for (int index = 0; index < 8; index++) { @@ -424,12 +424,6 @@ ctrl = ev.state & ControlMask; meta = ev.state & ModMetaMask; - if (numlock_state || (ev.state & ModNumLockMask)) - { - numlock_state = (ev.state & ModNumLockMask); - set_privmode (PrivMode_aplKP, !numlock_state); - } - kbuf[0] = 0; #ifdef USE_XIM @@ -655,6 +649,8 @@ bool kp = priv_modes & PrivMode_aplKP ? !shft : shft; unsigned int newlen = 1; + if (ev.state & ModNumLockMask) + kp = false; switch (translate_keypad (keysym, kp)) { #ifndef NO_BACKSPACE_KEY @@ -1035,7 +1031,7 @@ display->flush (); } -/* checks wether a refresh is requested and starts the refresh timer */ +/* checks whether a refresh is requested and starts the refresh timer */ void rxvt_term::refresh_check () { @@ -1139,7 +1135,7 @@ // ones with high nice levels is a useful thing to do. It surely is is // allowed by the sus... as is returning ENOSYS. // since the linux guys additionally thought that breaking the only - // known workaroudn against their unusable sched_yield hack is cool, + // known workaround against their unusable sched_yield hack is cool, // we just nanosleep a bit and hope for the best. struct timespec ts = { 0, 1000 };