Mercurial > mplayer.hg
comparison libvo/x11_common.c @ 9822:1e761763566c
Support for "internet" or "multimedia" keyboards in X11.
Patch from Jason Tackaberry <tack at auc dot ca>.
author | albeu |
---|---|
date | Fri, 04 Apr 2003 15:04:26 +0000 |
parents | 68c44d3530c8 |
children | 150d1ef4204d |
comparison
equal
deleted
inserted
replaced
9821:e44420ecb523 | 9822:1e761763566c |
---|---|
31 #include <X11/extensions/Xinerama.h> | 31 #include <X11/extensions/Xinerama.h> |
32 #endif | 32 #endif |
33 | 33 |
34 #ifdef HAVE_XF86VM | 34 #ifdef HAVE_XF86VM |
35 #include <X11/extensions/xf86vmode.h> | 35 #include <X11/extensions/xf86vmode.h> |
36 #include <X11/XF86keysym.h> | |
36 #endif | 37 #endif |
37 | 38 |
38 #include "../input/input.h" | 39 #include "../input/input.h" |
39 #include "../input/mouse.h" | 40 #include "../input/mouse.h" |
40 | 41 |
400 | 401 |
401 #include "../osdep/keycodes.h" | 402 #include "../osdep/keycodes.h" |
402 #include "wskeys.h" | 403 #include "wskeys.h" |
403 | 404 |
404 extern void mplayer_put_key(int code); | 405 extern void mplayer_put_key(int code); |
406 | |
407 #ifdef XF86XK_AudioPause | |
408 void vo_x11_putkey_ext(int keysym){ | |
409 switch ( keysym ) | |
410 { | |
411 case XF86XK_AudioPause: mplayer_put_key(KEY_XF86_PAUSE); break; | |
412 case XF86XK_AudioStop: mplayer_put_key(KEY_XF86_STOP); break; | |
413 case XF86XK_AudioPrev: mplayer_put_key(KEY_XF86_PREV); break; | |
414 case XF86XK_AudioNext: mplayer_put_key(KEY_XF86_NEXT); break; | |
415 default: | |
416 } | |
417 } | |
418 #endif | |
405 | 419 |
406 void vo_x11_putkey(int key){ | 420 void vo_x11_putkey(int key){ |
407 switch ( key ) | 421 switch ( key ) |
408 { | 422 { |
409 case wsLeft: mplayer_put_key(KEY_LEFT); break; | 423 case wsLeft: mplayer_put_key(KEY_LEFT); break; |
634 break; | 648 break; |
635 case KeyPress: | 649 case KeyPress: |
636 { | 650 { |
637 int key; | 651 int key; |
638 XLookupString( &Event.xkey,buf,sizeof(buf),&keySym,&stat ); | 652 XLookupString( &Event.xkey,buf,sizeof(buf),&keySym,&stat ); |
653 #ifdef XF86XK_AudioPause | |
654 vo_x11_putkey_ext( keySym ); | |
655 #endif | |
639 key=( (keySym&0xff00) != 0?( (keySym&0x00ff) + 256 ):( keySym ) ); | 656 key=( (keySym&0xff00) != 0?( (keySym&0x00ff) + 256 ):( keySym ) ); |
640 #ifdef HAVE_NEW_GUI | 657 #ifdef HAVE_NEW_GUI |
641 if ( ( use_gui )&&( key == wsEnter ) ) break; | 658 if ( ( use_gui )&&( key == wsEnter ) ) break; |
642 #endif | 659 #endif |
643 vo_x11_putkey( key ); | 660 vo_x11_putkey( key ); |