/[rdesktop]/sourceforge.net/trunk/rdesktop/xwin.c
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /sourceforge.net/trunk/rdesktop/xwin.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 905 by jdmeijer, Fri May 20 22:09:32 2005 UTC revision 949 by astrand, Tue Aug 2 15:07:35 2005 UTC
# Line 1350  xwin_process_events(void) Line 1350  xwin_process_events(void)
1350          KeySym keysym;          KeySym keysym;
1351          uint16 button, flags;          uint16 button, flags;
1352          uint32 ev_time;          uint32 ev_time;
         key_translation tr;  
1353          char str[256];          char str[256];
1354          Status status;          Status status;
1355          int events = 0;          int events = 0;
# Line 1403  xwin_process_events(void) Line 1402  xwin_process_events(void)
1402                                                        str, sizeof(str), &keysym, NULL);                                                        str, sizeof(str), &keysym, NULL);
1403                                  }                                  }
1404    
1405                                  DEBUG_KBD(("KeyPress for (keysym 0x%lx, %s)\n", keysym,                                  DEBUG_KBD(("KeyPress for keysym (0x%lx, %s)\n", keysym,
1406                                             get_ksname(keysym)));                                             get_ksname(keysym)));
1407    
1408                                  ev_time = time(NULL);                                  ev_time = time(NULL);
1409                                  if (handle_special_keys(keysym, xevent.xkey.state, ev_time, True))                                  if (handle_special_keys(keysym, xevent.xkey.state, ev_time, True))
1410                                          break;                                          break;
1411    
1412                                  tr = xkeymap_translate_key(keysym,                                  xkeymap_send_keys(keysym, xevent.xkey.keycode, xevent.xkey.state,
1413                                                             xevent.xkey.keycode, xevent.xkey.state);                                                    ev_time, True);
   
                                 if (tr.scancode == 0)  
                                         break;  
   
                                 save_remote_modifiers(tr.scancode);  
                                 ensure_remote_modifiers(ev_time, tr);  
                                 rdp_send_scancode(ev_time, RDP_KEYPRESS, tr.scancode);  
                                 restore_remote_modifiers(ev_time, tr.scancode);  
   
1414                                  break;                                  break;
1415    
1416                          case KeyRelease:                          case KeyRelease:
# Line 1428  xwin_process_events(void) Line 1418  xwin_process_events(void)
1418                                  XLookupString((XKeyEvent *) & xevent, str,                                  XLookupString((XKeyEvent *) & xevent, str,
1419                                                sizeof(str), &keysym, NULL);                                                sizeof(str), &keysym, NULL);
1420    
1421                                  DEBUG_KBD(("\nKeyRelease for (keysym 0x%lx, %s)\n", keysym,                                  DEBUG_KBD(("\nKeyRelease for keysym (0x%lx, %s)\n", keysym,
1422                                             get_ksname(keysym)));                                             get_ksname(keysym)));
1423    
1424                                  ev_time = time(NULL);                                  ev_time = time(NULL);
1425                                  if (handle_special_keys(keysym, xevent.xkey.state, ev_time, False))                                  if (handle_special_keys(keysym, xevent.xkey.state, ev_time, False))
1426                                          break;                                          break;
1427    
1428                                  tr = xkeymap_translate_key(keysym,                                  xkeymap_send_keys(keysym, xevent.xkey.keycode, xevent.xkey.state,
1429                                                             xevent.xkey.keycode, xevent.xkey.state);                                                    ev_time, False);
   
                                 if (tr.scancode == 0)  
                                         break;  
   
                                 rdp_send_scancode(ev_time, RDP_KEYRELEASE, tr.scancode);  
1430                                  break;                                  break;
1431    
1432                          case ButtonPress:                          case ButtonPress:

Legend:
Removed from v.905  
changed lines
  Added in v.949

  ViewVC Help
Powered by ViewVC 1.1.26