rpms/gnome-lirc-properties/devel glp-add-ps3-detection-4.patch, NONE, 1.1 gnome-lirc-properties.spec, 1.3, 1.4

Bastien Nocera hadess at fedoraproject.org
Mon Oct 13 23:31:24 UTC 2008


Author: hadess

Update of /cvs/pkgs/rpms/gnome-lirc-properties/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv21246

Modified Files:
	gnome-lirc-properties.spec 
Added Files:
	glp-add-ps3-detection-4.patch 
Log Message:
* Mon Oct 13 2008 - Bastien Nocera <bnocera at redhat.com> - 0.2.8-5
- Add PS3 remote controls support


glp-add-ps3-detection-4.patch:

--- NEW FILE glp-add-ps3-detection-4.patch ---
Index: configure.ac
===================================================================
--- configure.ac	(revision 60)
+++ configure.ac	(working copy)
@@ -6,6 +6,7 @@
 
 dnl check for programs ===
 
+AM_PROG_CC_C_O
 AM_PATH_PYTHON(2.4)
 IT_PROG_INTLTOOL([0.35.0])
 
@@ -22,6 +23,9 @@
 
 GNOME_DOC_INIT()
 
+dnl check for glib-2.0 for the lirc-generate-linux-input helper
+PKG_CHECK_MODULES(GLIB, glib-2.0)
+
 dnl check for PolicyKit ===
 
 AC_ARG_ENABLE([policy-kit],
Index: data/20-x11-remotes.fdi
===================================================================
--- data/20-x11-remotes.fdi	(revision 0)
+++ data/20-x11-remotes.fdi	(revision 0)
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<deviceinfo version="0.2">
+  <device>
+    <match key="info.capabilities" contains="input.keys">
+      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
+	      string="Linux">
+        <match key="info.product" string="PS3 Remote Controller">
+	  <remove key="input.x11_driver"></remove>
+        </match>
+
+        <!-- The Keyspan RF remote shows 2 devices, only the second one
+             with "mouse" capabilities is actually useful -->
+	<match key="info.product" string="Keyspan  RF Remote for Front Row">
+	  <match key="info.capabilities" contains="input.mouse">
+	    <remove key="input.x11_driver"></remove>
+	  </match>
+	</match>
+      </match>
+    </match>
+  </device>
+</deviceinfo>
Index: data/Makefile.am
===================================================================
--- data/Makefile.am	(revision 60)
+++ data/Makefile.am	(working copy)
@@ -21,8 +21,20 @@
 desktop_in_files = gnome-lirc-properties.desktop.in
 desktop_DATA = gnome-lirc-properties.desktop
 
+# Avoid X11 taking over our supported input device remotes
+fdidir = $(datadir)/hal/fdi/policy/10osvendor
+fdi_DATA = 20-x11-remotes.fdi
+
+noinst_PROGRAMS = lirc-generate-linux-input
+lirc_generate_linux_input_SOURCES = lirc-generate-linux-input.c
+lirc_generate_linux_input_CFLAGS = $(GLIB_CFLAGS)
+lirc_generate_linux_input_LDADD = $(GLIB_LIBS)
+
 resourcesdir = $(pkgdatadir)
 
+regenerate-linux-input-layer-conf: lirc-generate-linux-input
+	$(builddir)/lirc-generate-linux-input > $(builddir)/linux-input-layer-lircd.conf
+
 resources_DATA = \
 	gnome-lirc-properties.glade \
 	linux-input-layer-lircd.conf \
Index: data/linux-input-layer-lircd.conf
===================================================================
--- data/linux-input-layer-lircd.conf	(revision 60)
+++ data/linux-input-layer-lircd.conf	(working copy)
@@ -1,5 +1,5 @@
 # LIRC configuration file for receivers with Linux Input Layer driver.
-# http://linux.bytesex.org/v4l2/linux-input-layer-lircd.conf
+# generated by lirc-generate-linux-input
 #
 # brand: Generic
 # model: Linux Input Layer compatible Remote
@@ -9,363 +9,425 @@
 	name linux-input-layer
 	bits 32
 	begin codes
-		ESC                  0x10001
-		1                    0x10002
-		2                    0x10003
-		3                    0x10004
-		4                    0x10005
-		5                    0x10006
-		6                    0x10007
-		7                    0x10008
-		8                    0x10009
-		9                    0x1000a
-		0                    0x1000b
-		MINUS                0x1000c
-		EQUAL                0x1000d
-		BACKSPACE            0x1000e
-		TAB                  0x1000f
-		Q                    0x10010
-		W                    0x10011
-		E                    0x10012
-		R                    0x10013
-		T                    0x10014
-		Y                    0x10015
-		U                    0x10016
-		I                    0x10017
-		O                    0x10018
-		P                    0x10019
-		LEFTBRACE            0x1001a
-		RIGHTBRACE           0x1001b
-		ENTER                0x1001c
-		LEFTCTRL             0x1001d
-		A                    0x1001e
-		S                    0x1001f
-		D                    0x10020
-		F                    0x10021
-		G                    0x10022
-		H                    0x10023
-		J                    0x10024
-		K                    0x10025
-		L                    0x10026
-		SEMICOLON            0x10027
-		APOSTROPHE           0x10028
-		GRAVE                0x10029
-		LEFTSHIFT            0x1002a
-		BACKSLASH            0x1002b
-		Z                    0x1002c
-		X                    0x1002d
-		C                    0x1002e
-		V                    0x1002f
-		B                    0x10030
-		N                    0x10031
-		M                    0x10032
-		COMMA                0x10033
-		DOT                  0x10034
-		SLASH                0x10035
-		RIGHTSHIFT           0x10036
-		KPASTERISK           0x10037
-		LEFTALT              0x10038
-		SPACE                0x10039
-		CAPSLOCK             0x1003a
-		F1                   0x1003b
-		F2                   0x1003c
-		F3                   0x1003d
-		F4                   0x1003e
-		F5                   0x1003f
-		F6                   0x10040
-		F7                   0x10041
-		F8                   0x10042
-		F9                   0x10043
-		F10                  0x10044
-		NUMLOCK              0x10045
-		SCROLLLOCK           0x10046
-		KP7                  0x10047
-		KP8                  0x10048
-		KP9                  0x10049
-		KPMINUS              0x1004a
-		KP4                  0x1004b
-		KP5                  0x1004c
-		KP6                  0x1004d
-		KPPLUS               0x1004e
-		KP1                  0x1004f
-		KP2                  0x10050
-		KP3                  0x10051
-		KP0                  0x10052
-		KPDOT                0x10053
-		103RD                0x10054
-		F13                  0x10055
-		102ND                0x10056
-		F11                  0x10057
-		F12                  0x10058
-		F14                  0x10059
-		F15                  0x1005a
-		F16                  0x1005b
-		F17                  0x1005c
-		F18                  0x1005d
-		F19                  0x1005e
-		F20                  0x1005f
-		KPENTER              0x10060
-		RIGHTCTRL            0x10061
-		KPSLASH              0x10062
-		SYSRQ                0x10063
-		RIGHTALT             0x10064
-		LINEFEED             0x10065
-		HOME                 0x10066
-		UP                   0x10067
-		PAGEUP               0x10068
-		LEFT                 0x10069
-		RIGHT                0x1006a
-		END                  0x1006b
-		DOWN                 0x1006c
-		PAGEDOWN             0x1006d
-		INSERT               0x1006e
-		DELETE               0x1006f
-		MACRO                0x10070
-		MUTE                 0x10071
-		VOLUMEDOWN           0x10072
-		VOLUMEUP             0x10073
-		POWER                0x10074
-		KPEQUAL              0x10075
-		KPPLUSMINUS          0x10076
-		PAUSE                0x10077
-		F21                  0x10078
-		F22                  0x10079
-		F23                  0x1007a
-		F24                  0x1007b
-		KPCOMMA              0x1007c
-		LEFTMETA             0x1007d
-		RIGHTMETA            0x1007e
-		COMPOSE              0x1007f
-		STOP                 0x10080
-		AGAIN                0x10081
-		PROPS                0x10082
-		UNDO                 0x10083
-		FRONT                0x10084
-		COPY                 0x10085
-		OPEN                 0x10086
-		PASTE                0x10087
-		FIND                 0x10088
-		CUT                  0x10089
-		HELP                 0x1008a
-		MENU                 0x1008b
-		CALC                 0x1008c
-		SETUP                0x1008d
-		SLEEP                0x1008e
-		WAKEUP               0x1008f
-		FILE                 0x10090
-		SENDFILE             0x10091
-		DELETEFILE           0x10092
-		XFER                 0x10093
-		PROG1                0x10094
-		PROG2                0x10095
-		WWW                  0x10096
-		MSDOS                0x10097
-		COFFEE               0x10098
-		DIRECTION            0x10099
-		CYCLEWINDOWS         0x1009a
-		MAIL                 0x1009b
-		BOOKMARKS            0x1009c
-		COMPUTER             0x1009d
-		BACK                 0x1009e
-		FORWARD              0x1009f
-		CLOSECD              0x100a0
-		EJECTCD              0x100a1
-		EJECTCLOSECD         0x100a2
-		NEXTSONG             0x100a3
-		PLAYPAUSE            0x100a4
-		PREVIOUSSONG         0x100a5
-		STOPCD               0x100a6
-		RECORD               0x100a7
-		REWIND               0x100a8
-		PHONE                0x100a9
-		ISO                  0x100aa
-		CONFIG               0x100ab
-		HOMEPAGE             0x100ac
-		REFRESH              0x100ad
-		EXIT                 0x100ae
-		MOVE                 0x100af
-		EDIT                 0x100b0
-		SCROLLUP             0x100b1
-		SCROLLDOWN           0x100b2
-		KPLEFTPAREN          0x100b3
-		KPRIGHTPAREN         0x100b4
-		INTL1                0x100b5
-		INTL2                0x100b6
-		INTL3                0x100b7
-		INTL4                0x100b8
-		INTL5                0x100b9
-		INTL6                0x100ba
-		INTL7                0x100bb
-		INTL8                0x100bc
-		INTL9                0x100bd
-		LANG1                0x100be
-		LANG2                0x100bf
-		LANG3                0x100c0
-		LANG4                0x100c1
-		LANG5                0x100c2
-		LANG6                0x100c3
-		LANG7                0x100c4
-		LANG8                0x100c5
-		LANG9                0x100c6
-		PLAYCD               0x100c8
-		PAUSECD              0x100c9
-		PROG3                0x100ca
-		PROG4                0x100cb
-		SUSPEND              0x100cd
-		CLOSE                0x100ce
-		PLAY                 0x100cf
-		FASTFORWARD          0x100d0
-		BASSBOOST            0x100d1
-		PRINT                0x100d2
-		HP                   0x100d3
-		CAMERA               0x100d4
-		SOUND                0x100d5
-		QUESTION             0x100d6
-		EMAIL                0x100d7
-		CHAT                 0x100d8
-		SEARCH               0x100d9
-		CONNECT              0x100da
-		FINANCE              0x100db
-		SPORT                0x100dc
-		SHOP                 0x100dd
-		ALTERASE             0x100de
-		CANCEL               0x100df
-		BRIGHTNESSDOWN       0x100e0
-		BRIGHTNESSUP         0x100e1
-		MEDIA                0x100e2
-		UNKNOWN              0x100f0
-		BTN_MISC             0x10100
-		BTN_0                0x10100
-		BTN_1                0x10101
-		BTN_2                0x10102
-		BTN_3                0x10103
-		BTN_4                0x10104
-		BTN_5                0x10105
-		BTN_6                0x10106
-		BTN_7                0x10107
-		BTN_8                0x10108
-		BTN_9                0x10109
-		BTN_MOUSE            0x10110
-		BTN_LEFT             0x10110
-		BTN_RIGHT            0x10111
-		BTN_MIDDLE           0x10112
-		BTN_SIDE             0x10113
-		BTN_EXTRA            0x10114
-		BTN_FORWARD          0x10115
-		BTN_BACK             0x10116
-		BTN_TASK             0x10117
-		BTN_JOYSTICK         0x10120
-		BTN_TRIGGER          0x10120
-		BTN_THUMB            0x10121
-		BTN_THUMB2           0x10122
-		BTN_TOP              0x10123
-		BTN_TOP2             0x10124
-		BTN_PINKIE           0x10125
-		BTN_BASE             0x10126
-		BTN_BASE2            0x10127
-		BTN_BASE3            0x10128
-		BTN_BASE4            0x10129
-		BTN_BASE5            0x1012a
-		BTN_BASE6            0x1012b
-		BTN_DEAD             0x1012f
-		BTN_GAMEPAD          0x10130
-		BTN_A                0x10130
-		BTN_B                0x10131
-		BTN_C                0x10132
-		BTN_X                0x10133
-		BTN_Y                0x10134
-		BTN_Z                0x10135
-		BTN_TL               0x10136
-		BTN_TR               0x10137
-		BTN_TL2              0x10138
-		BTN_TR2              0x10139
-		BTN_SELECT           0x1013a
-		BTN_START            0x1013b
-		BTN_MODE             0x1013c
-		BTN_THUMBL           0x1013d
-		BTN_THUMBR           0x1013e
-		BTN_DIGI             0x10140
-		BTN_TOOL_PEN         0x10140
-		BTN_TOOL_RUBBER      0x10141
-		BTN_TOOL_BRUSH       0x10142
-		BTN_TOOL_PENCIL      0x10143
-		BTN_TOOL_AIRBRUSH    0x10144
-		BTN_TOOL_FINGER      0x10145
-		BTN_TOOL_MOUSE       0x10146
-		BTN_TOOL_LENS        0x10147
-		BTN_TOUCH            0x1014a
-		BTN_STYLUS           0x1014b
-		BTN_STYLUS2          0x1014c
-		BTN_WHEEL            0x10150
-		BTN_GEAR_DOWN        0x10150
-		BTN_GEAR_UP          0x10151
-		OK                   0x10160
-		SELECT               0x10161
-		GOTO                 0x10162
-		CLEAR                0x10163
-		POWER2               0x10164
-		OPTION               0x10165
-		INFO                 0x10166
-		TIME                 0x10167
-		VENDOR               0x10168
-		ARCHIVE              0x10169
-		PROGRAM              0x1016a
-		CHANNEL              0x1016b
-		FAVORITES            0x1016c
-		EPG                  0x1016d
-		PVR                  0x1016e
-		MHP                  0x1016f
-		LANGUAGE             0x10170
-		TITLE                0x10171
-		SUBTITLE             0x10172
-		ANGLE                0x10173
-		ZOOM                 0x10174
-		MODE                 0x10175
-		KEYBOARD             0x10176
-		SCREEN               0x10177
-		PC                   0x10178
-		TV                   0x10179
-		TV2                  0x1017a
-		VCR                  0x1017b
-		VCR2                 0x1017c
-		SAT                  0x1017d
-		SAT2                 0x1017e
-		CD                   0x1017f
-		TAPE                 0x10180
-		RADIO                0x10181
-		TUNER                0x10182
-		PLAYER               0x10183
-		TEXT                 0x10184
-		DVD                  0x10185
-		AUX                  0x10186
-		MP3                  0x10187
-		AUDIO                0x10188
-		VIDEO                0x10189
-		DIRECTORY            0x1018a
-		LIST                 0x1018b
-		MEMO                 0x1018c
-		CALENDAR             0x1018d
-		RED                  0x1018e
-		GREEN                0x1018f
-		YELLOW               0x10190
-		BLUE                 0x10191
-		CHANNELUP            0x10192
-		CHANNELDOWN          0x10193
-		FIRST                0x10194
-		LAST                 0x10195
-		AB                   0x10196
-		NEXT                 0x10197
-		RESTART              0x10198
-		SLOW                 0x10199
-		SHUFFLE              0x1019a
-		BREAK                0x1019b
-		PREVIOUS             0x1019c
-		DIGITS               0x1019d
-		TEEN                 0x1019e
-		TWEN                 0x1019f
-		DEL_EOL              0x101c0
-		DEL_EOS              0x101c1
-		INS_LINE             0x101c2
-		DEL_LINE             0x101c3
+		KEY_ESC               0x10001
+		KEY_1                 0x10002
+		KEY_2                 0x10003
+		KEY_3                 0x10004
+		KEY_4                 0x10005
+		KEY_5                 0x10006
+		KEY_6                 0x10007
+		KEY_7                 0x10008
+		KEY_8                 0x10009
+		KEY_9                 0x1000a
+		KEY_0                 0x1000b
+		KEY_MINUS             0x1000c
+		KEY_EQUAL             0x1000d
+		KEY_BACKSPACE         0x1000e
+		KEY_TAB               0x1000f
+		KEY_Q                 0x10010
+		KEY_W                 0x10011
+		KEY_E                 0x10012
+		KEY_R                 0x10013
+		KEY_T                 0x10014
+		KEY_Y                 0x10015
+		KEY_U                 0x10016
+		KEY_I                 0x10017
+		KEY_O                 0x10018
+		KEY_P                 0x10019
+		KEY_LEFTBRACE         0x1001a
+		KEY_RIGHTBRACE        0x1001b
+		KEY_ENTER             0x1001c
+		KEY_LEFTCTRL          0x1001d
+		KEY_A                 0x1001e
+		KEY_S                 0x1001f
+		KEY_D                 0x10020
+		KEY_F                 0x10021
+		KEY_G                 0x10022
+		KEY_H                 0x10023
+		KEY_J                 0x10024
+		KEY_K                 0x10025
+		KEY_L                 0x10026
+		KEY_SEMICOLON         0x10027
+		KEY_APOSTROPHE        0x10028
+		KEY_GRAVE             0x10029
+		KEY_LEFTSHIFT         0x1002a
+		KEY_BACKSLASH         0x1002b
+		KEY_Z                 0x1002c
+		KEY_X                 0x1002d
+		KEY_C                 0x1002e
+		KEY_V                 0x1002f
+		KEY_B                 0x10030
+		KEY_N                 0x10031
+		KEY_M                 0x10032
+		KEY_COMMA             0x10033
+		KEY_DOT               0x10034
+		KEY_SLASH             0x10035
+		KEY_RIGHTSHIFT        0x10036
+		KEY_KPASTERISK        0x10037
+		KEY_LEFTALT           0x10038
+		KEY_SPACE             0x10039
+		KEY_CAPSLOCK          0x1003a
+		KEY_F1                0x1003b
+		KEY_F2                0x1003c
+		KEY_F3                0x1003d
+		KEY_F4                0x1003e
+		KEY_F5                0x1003f
+		KEY_F6                0x10040
+		KEY_F7                0x10041
+		KEY_F8                0x10042
+		KEY_F9                0x10043
+		KEY_F10               0x10044
+		KEY_NUMLOCK           0x10045
+		KEY_SCROLLLOCK        0x10046
+		KEY_KP7               0x10047
+		KEY_KP8               0x10048
+		KEY_KP9               0x10049
+		KEY_KPMINUS           0x1004a
+		KEY_KP4               0x1004b
+		KEY_KP5               0x1004c
+		KEY_KP6               0x1004d
+		KEY_KPPLUS            0x1004e
+		KEY_KP1               0x1004f
+		KEY_KP2               0x10050
+		KEY_KP3               0x10051
+		KEY_KP0               0x10052
+		KEY_KPDOT             0x10053
+		KEY_ZENKAKUHANKAKU    0x10055
+		KEY_102ND             0x10056
+		KEY_F11               0x10057
+		KEY_F12               0x10058
+		KEY_RO                0x10059
+		KEY_KATAKANA          0x1005a
+		KEY_HIRAGANA          0x1005b
+		KEY_HENKAN            0x1005c
+		KEY_KATAKANAHIRAGANA  0x1005d
+		KEY_MUHENKAN          0x1005e
+		KEY_KPJPCOMMA         0x1005f
+		KEY_KPENTER           0x10060
+		KEY_RIGHTCTRL         0x10061
+		KEY_KPSLASH           0x10062
+		KEY_SYSRQ             0x10063
+		KEY_RIGHTALT          0x10064
+		KEY_LINEFEED          0x10065
+		KEY_HOME              0x10066
+		KEY_UP                0x10067
+		KEY_PAGEUP            0x10068
+		KEY_LEFT              0x10069
+		KEY_RIGHT             0x1006a
+		KEY_END               0x1006b
+		KEY_DOWN              0x1006c
+		KEY_PAGEDOWN          0x1006d
+		KEY_INSERT            0x1006e
+		KEY_DELETE            0x1006f
+		KEY_MACRO             0x10070
+		KEY_MUTE              0x10071
+		KEY_VOLUMEDOWN        0x10072
+		KEY_VOLUMEUP          0x10073
+		KEY_POWER             0x10074
+		KEY_KPEQUAL           0x10075
+		KEY_KPPLUSMINUS       0x10076
+		KEY_PAUSE             0x10077
+		KEY_KPCOMMA           0x10079
+		KEY_HANGEUL           0x1007a
+		KEY_HANGUEL           0x10000
+		KEY_HANJA             0x1007b
+		KEY_YEN               0x1007c
+		KEY_LEFTMETA          0x1007d
+		KEY_RIGHTMETA         0x1007e
+		KEY_COMPOSE           0x1007f
+		KEY_STOP              0x10080
+		KEY_AGAIN             0x10081
+		KEY_PROPS             0x10082
+		KEY_UNDO              0x10083
+		KEY_FRONT             0x10084
+		KEY_COPY              0x10085
+		KEY_OPEN              0x10086
+		KEY_PASTE             0x10087
+		KEY_FIND              0x10088
+		KEY_CUT               0x10089
+		KEY_HELP              0x1008a
+		KEY_MENU              0x1008b
+		KEY_CALC              0x1008c
+		KEY_SETUP             0x1008d
+		KEY_SLEEP             0x1008e
+		KEY_WAKEUP            0x1008f
+		KEY_FILE              0x10090
+		KEY_SENDFILE          0x10091
+		KEY_DELETEFILE        0x10092
+		KEY_XFER              0x10093
+		KEY_PROG1             0x10094
+		KEY_PROG2             0x10095
+		KEY_WWW               0x10096
+		KEY_MSDOS             0x10097
+		KEY_COFFEE            0x10098
+		KEY_SCREENLOCK        0x10000
+		KEY_DIRECTION         0x10099
+		KEY_CYCLEWINDOWS      0x1009a
+		KEY_MAIL              0x1009b
+		KEY_BOOKMARKS         0x1009c
+		KEY_COMPUTER          0x1009d
+		KEY_BACK              0x1009e
+		KEY_FORWARD           0x1009f
+		KEY_CLOSECD           0x100a0
+		KEY_EJECTCD           0x100a1
+		KEY_EJECTCLOSECD      0x100a2
+		KEY_NEXTSONG          0x100a3
+		KEY_PLAYPAUSE         0x100a4
+		KEY_PREVIOUSSONG      0x100a5
+		KEY_STOPCD            0x100a6
+		KEY_RECORD            0x100a7
+		KEY_REWIND            0x100a8
+		KEY_PHONE             0x100a9
+		KEY_ISO               0x100aa
+		KEY_CONFIG            0x100ab
+		KEY_HOMEPAGE          0x100ac
+		KEY_REFRESH           0x100ad
+		KEY_EXIT              0x100ae
+		KEY_MOVE              0x100af
+		KEY_EDIT              0x100b0
+		KEY_SCROLLUP          0x100b1
+		KEY_SCROLLDOWN        0x100b2
+		KEY_KPLEFTPAREN       0x100b3
+		KEY_KPRIGHTPAREN      0x100b4
+		KEY_NEW               0x100b5
+		KEY_REDO              0x100b6
+		KEY_F13               0x100b7
+		KEY_F14               0x100b8
+		KEY_F15               0x100b9
+		KEY_F16               0x100ba
+		KEY_F17               0x100bb
+		KEY_F18               0x100bc
+		KEY_F19               0x100bd
+		KEY_F20               0x100be
+		KEY_F21               0x100bf
+		KEY_F22               0x100c0
+		KEY_F23               0x100c1
+		KEY_F24               0x100c2
+		KEY_PLAYCD            0x100c8
+		KEY_PAUSECD           0x100c9
+		KEY_PROG3             0x100ca
+		KEY_PROG4             0x100cb
+		KEY_SUSPEND           0x100cd
+		KEY_CLOSE             0x100ce
+		KEY_PLAY              0x100cf
+		KEY_FASTFORWARD       0x100d0
+		KEY_BASSBOOST         0x100d1
+		KEY_PRINT             0x100d2
+		KEY_HP                0x100d3
+		KEY_CAMERA            0x100d4
+		KEY_SOUND             0x100d5
+		KEY_QUESTION          0x100d6
+		KEY_EMAIL             0x100d7
+		KEY_CHAT              0x100d8
+		KEY_SEARCH            0x100d9
+		KEY_CONNECT           0x100da
+		KEY_FINANCE           0x100db
+		KEY_SPORT             0x100dc
+		KEY_SHOP              0x100dd
+		KEY_ALTERASE          0x100de
+		KEY_CANCEL            0x100df
+		KEY_BRIGHTNESSDOWN    0x100e0
+		KEY_BRIGHTNESSUP      0x100e1
+		KEY_MEDIA             0x100e2
+		KEY_SWITCHVIDEOMODE   0x100e3
+		KEY_KBDILLUMTOGGLE    0x100e4
+		KEY_KBDILLUMDOWN      0x100e5
+		KEY_KBDILLUMUP        0x100e6
+		KEY_SEND              0x100e7
+		KEY_REPLY             0x100e8
+		KEY_FORWARDMAIL       0x100e9
+		KEY_SAVE              0x100ea
+		KEY_DOCUMENTS         0x100eb
+		KEY_BATTERY           0x100ec
+		KEY_BLUETOOTH         0x100ed
+		KEY_WLAN              0x100ee
+		KEY_UWB               0x100ef
+		KEY_UNKNOWN           0x100f0
+		KEY_VIDEO_NEXT        0x100f1
+		KEY_VIDEO_PREV        0x100f2
+		KEY_BRIGHTNESS_CYCLE  0x100f3
+		KEY_BRIGHTNESS_ZERO   0x100f4
+		KEY_DISPLAY_OFF       0x100f5
+		KEY_WIMAX             0x100f6
+		BTN_MISC              0x10100
+		BTN_0                 0x10100
+		BTN_1                 0x10101
+		BTN_2                 0x10102
+		BTN_3                 0x10103
+		BTN_4                 0x10104
+		BTN_5                 0x10105
+		BTN_6                 0x10106
+		BTN_7                 0x10107
+		BTN_8                 0x10108
+		BTN_9                 0x10109
+		BTN_MOUSE             0x10110
+		BTN_LEFT              0x10110
+		BTN_RIGHT             0x10111
+		BTN_MIDDLE            0x10112
+		BTN_SIDE              0x10113
+		BTN_EXTRA             0x10114
+		BTN_FORWARD           0x10115
+		BTN_BACK              0x10116
+		BTN_TASK              0x10117
+		BTN_JOYSTICK          0x10120
+		BTN_TRIGGER           0x10120
+		BTN_THUMB             0x10121
+		BTN_THUMB2            0x10122
+		BTN_TOP               0x10123
+		BTN_TOP2              0x10124
+		BTN_PINKIE            0x10125
+		BTN_BASE              0x10126
+		BTN_BASE2             0x10127
+		BTN_BASE3             0x10128
+		BTN_BASE4             0x10129
+		BTN_BASE5             0x1012a
+		BTN_BASE6             0x1012b
+		BTN_DEAD              0x1012f
+		BTN_GAMEPAD           0x10130
+		BTN_A                 0x10130
+		BTN_B                 0x10131
+		BTN_C                 0x10132
+		BTN_X                 0x10133
+		BTN_Y                 0x10134
+		BTN_Z                 0x10135
+		BTN_TL                0x10136
+		BTN_TR                0x10137
+		BTN_TL2               0x10138
+		BTN_TR2               0x10139
+		BTN_SELECT            0x1013a
+		BTN_START             0x1013b
+		BTN_MODE              0x1013c
+		BTN_THUMBL            0x1013d
+		BTN_THUMBR            0x1013e
+		BTN_DIGI              0x10140
+		BTN_TOOL_PEN          0x10140
+		BTN_TOOL_RUBBER       0x10141
+		BTN_TOOL_BRUSH        0x10142
+		BTN_TOOL_PENCIL       0x10143
+		BTN_TOOL_AIRBRUSH     0x10144
+		BTN_TOOL_FINGER       0x10145
+		BTN_TOOL_MOUSE        0x10146
+		BTN_TOOL_LENS         0x10147
+		BTN_TOUCH             0x1014a
+		BTN_STYLUS            0x1014b
+		BTN_STYLUS2           0x1014c
+		BTN_TOOL_DOUBLETAP    0x1014d
+		BTN_TOOL_TRIPLETAP    0x1014e
+		BTN_WHEEL             0x10150
+		BTN_GEAR_DOWN         0x10150
+		BTN_GEAR_UP           0x10151
+		KEY_OK                0x10160
+		KEY_SELECT            0x10161
+		KEY_GOTO              0x10162
+		KEY_CLEAR             0x10163
+		KEY_POWER2            0x10164
+		KEY_OPTION            0x10165
+		KEY_INFO              0x10166
+		KEY_TIME              0x10167
+		KEY_VENDOR            0x10168
+		KEY_ARCHIVE           0x10169
+		KEY_PROGRAM           0x1016a
+		KEY_CHANNEL           0x1016b
+		KEY_FAVORITES         0x1016c
+		KEY_EPG               0x1016d
+		KEY_PVR               0x1016e
+		KEY_MHP               0x1016f
+		KEY_LANGUAGE          0x10170
+		KEY_TITLE             0x10171
+		KEY_SUBTITLE          0x10172
+		KEY_ANGLE             0x10173
+		KEY_ZOOM              0x10174
+		KEY_MODE              0x10175
+		KEY_KEYBOARD          0x10176
+		KEY_SCREEN            0x10177
+		KEY_PC                0x10178
+		KEY_TV                0x10179
+		KEY_TV2               0x1017a
+		KEY_VCR               0x1017b
+		KEY_VCR2              0x1017c
+		KEY_SAT               0x1017d
+		KEY_SAT2              0x1017e
+		KEY_CD                0x1017f
+		KEY_TAPE              0x10180
+		KEY_RADIO             0x10181
+		KEY_TUNER             0x10182
+		KEY_PLAYER            0x10183
+		KEY_TEXT              0x10184
+		KEY_DVD               0x10185
+		KEY_AUX               0x10186
+		KEY_MP3               0x10187
+		KEY_AUDIO             0x10188
+		KEY_VIDEO             0x10189
+		KEY_DIRECTORY         0x1018a
+		KEY_LIST              0x1018b
+		KEY_MEMO              0x1018c
+		KEY_CALENDAR          0x1018d
+		KEY_RED               0x1018e
+		KEY_GREEN             0x1018f
+		KEY_YELLOW            0x10190
+		KEY_BLUE              0x10191
+		KEY_CHANNELUP         0x10192
+		KEY_CHANNELDOWN       0x10193
+		KEY_FIRST             0x10194
+		KEY_LAST              0x10195
+		KEY_AB                0x10196
+		KEY_NEXT              0x10197
+		KEY_RESTART           0x10198
+		KEY_SLOW              0x10199
+		KEY_SHUFFLE           0x1019a
+		KEY_BREAK             0x1019b
+		KEY_PREVIOUS          0x1019c
+		KEY_DIGITS            0x1019d
+		KEY_TEEN              0x1019e
+		KEY_TWEN              0x1019f
+		KEY_VIDEOPHONE        0x101a0
+		KEY_GAMES             0x101a1
+		KEY_ZOOMIN            0x101a2
+		KEY_ZOOMOUT           0x101a3
+		KEY_ZOOMRESET         0x101a4
+		KEY_WORDPROCESSOR     0x101a5
+		KEY_EDITOR            0x101a6
+		KEY_SPREADSHEET       0x101a7
+		KEY_GRAPHICSEDITOR    0x101a8
+		KEY_PRESENTATION      0x101a9
+		KEY_DATABASE          0x101aa
+		KEY_NEWS              0x101ab
+		KEY_VOICEMAIL         0x101ac
+		KEY_ADDRESSBOOK       0x101ad
+		KEY_MESSENGER         0x101ae
+		KEY_DISPLAYTOGGLE     0x101af
+		KEY_SPELLCHECK        0x101b0
+		KEY_LOGOFF            0x101b1
+		KEY_DOLLAR            0x101b2
+		KEY_EURO              0x101b3
+		KEY_FRAMEBACK         0x101b4
+		KEY_FRAMEFORWARD      0x101b5
+		KEY_CONTEXT_MENU      0x101b6
+		KEY_MEDIA_REPEAT      0x101b7
+		KEY_DEL_EOL           0x101c0
+		KEY_DEL_EOS           0x101c1
+		KEY_INS_LINE          0x101c2
+		KEY_DEL_LINE          0x101c3
+		KEY_FN                0x101d0
+		KEY_FN_ESC            0x101d1
+		KEY_FN_F1             0x101d2
+		KEY_FN_F2             0x101d3
+		KEY_FN_F3             0x101d4
+		KEY_FN_F4             0x101d5
+		KEY_FN_F5             0x101d6
+		KEY_FN_F6             0x101d7
+		KEY_FN_F7             0x101d8
+		KEY_FN_F8             0x101d9
+		KEY_FN_F9             0x101da
+		KEY_FN_F10            0x101db
+		KEY_FN_F11            0x101dc
+		KEY_FN_F12            0x101dd
+		KEY_FN_1              0x101de
+		KEY_FN_2              0x101df
+		KEY_FN_D              0x101e0
+		KEY_FN_E              0x101e1
+		KEY_FN_F              0x101e2
+		KEY_FN_S              0x101e3
+		KEY_FN_B              0x101e4
 	end codes
 end remote
Index: data/lirc-generate-linux-input.c
===================================================================
--- data/lirc-generate-linux-input.c	(revision 0)
+++ data/lirc-generate-linux-input.c	(revision 0)
@@ -0,0 +1,155 @@
+/* 
+ * Copyright (C) 2008 Bastien Nocera <hadess at hadess.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA.
+ *
+ */
+
+/* To compile:
+ * gcc -g -Wall -o lirc-generate-linux-input lirc-generate-linux-input.c `pkg-config --libs --cflags glib-2.0`
+ */
+
+/* lirc-generate-linux-input is used to generate the
+ * lirc linux input layer configuration file from the
+ * linux/input.h headers installed on the system.
+ *
+ * This program is not meant to be used by normal users,
+ * just run every now and then by the gnome-lirc-properties
+ * developers to update the headers compared to the Linux
+ * headers */
+
+#include <glib.h>
+#include <string.h>
+#include <linux/input.h>
+
+#define START \
+"# LIRC configuration file for receivers with Linux Input Layer driver.\n" \
+"# generated by lirc-generate-linux-input\n" \
+"#\n" \
+"# brand: Generic\n" \
+"# model: Linux Input Layer compatible Remote\n" \
+"#\n\n" \
+"begin remote\n" \
+"\tname linux-input-layer\n" \
+"\tbits 32\n" \
+"\tbegin codes\n"
+
+#define END \
+"\tend codes\n" \
+"end remote\n"
+
+#define ADD 0x10000
+#define SPACING_LEN 22
+
+static gboolean
+load_include (const char *path)
+{
+	GMappedFile *map;
+	char *contents, **lines;
+	guint i;
+
+	map = g_mapped_file_new (path, FALSE, NULL);
+	if (map == NULL) {
+		g_message ("opening %s failed", path);
+		return FALSE;
+	}
+
+	contents = g_strdup (g_mapped_file_get_contents (map));
+	g_mapped_file_free (map);
+
+	lines = g_strsplit (contents, "\n", -1);
+	g_free (contents);
+
+	g_print ("%s", START);
+
+	for (i = 0; lines[i] != NULL; i++) {
+		char **items;
+		const char *line;
+		double value;
+		char *value_str;
+		guint j, len;
+		int code;
+
+		line = lines[i] + strlen ("#define ");
+
+		if (g_str_has_prefix (line, "KEY_") == FALSE &&
+		    g_str_has_prefix (line, "BTN_") == FALSE)
+			continue;
+		if (g_str_has_prefix (line, "KEY_RESERVED") != FALSE)
+			continue;
+		if (g_str_has_prefix (line, "KEY_BRL_DOT1") != FALSE)
+			break;
+
+		items = g_strsplit (lines[i], "\t", 2);
+		if (items[0] == NULL || items[1] == NULL) {
+			g_strfreev (items);
+			break;
+		}
+
+		value = g_strtod (items[1], NULL);
+//		value_str = g_strdup_printf ("0x%x", (int) value + ADD);
+		code = 0x80000000;
+		code |= ((EV_KEY & 0x7fff) << 16);
+		code |= (int) value;
+
+		value_str = g_strdup_printf ("0x%x", (int) value + ADD);
+
+		g_print ("\t\t%s", items[0] + strlen ("#define "));
+		len = strlen (items[0] + strlen ("#define "));
+		if (len >= SPACING_LEN) {
+			g_warning ("increase SPACING_LEN to at least %d", len + 1);
+			return FALSE;
+		}
+		for (j = 0; j < SPACING_LEN - len; j++)
+			g_print (" ");
+		g_print ("%s\n", value_str);
+		g_free (value_str);
+
+		g_strfreev (items);
+	}
+
+	g_strfreev (lines);
+
+	g_print ("%s", END);
+
+	return TRUE;
+}
+
+static void
+set_warnings (void)
+{
+	GLogLevelFlags fatal_mask;
+
+	fatal_mask = g_log_set_always_fatal (G_LOG_FATAL_MASK);
+	fatal_mask |= G_LOG_LEVEL_WARNING | G_LOG_LEVEL_CRITICAL;
+	g_log_set_always_fatal (fatal_mask);
+}
+
+int main (int argc, char **argv)
+{
+	if (argc != 1) {
+		g_warning ("Usage: %s", argv[0]);
+		return 1;
+	}
+
+	set_warnings ();
+
+	if (load_include ("/usr/include/linux/input.h") == FALSE) {
+		g_warning ("Failed to parse /usr/include/linux/input.h");
+		return 1;
+	}
+
+	return 0;
+}
Index: gnome_lirc_properties/hardware.py
===================================================================
--- gnome_lirc_properties/hardware.py	(revision 60)
+++ gnome_lirc_properties/hardware.py	(working copy)
@@ -176,6 +176,14 @@
         NUMLOCK?
         '''
 
+	# An empty input.x11_driver means we have a blacklisted device
+	try:
+	    x11_driver = str(self['input.x11_driver'])
+        except:
+            if (self.has_capability('input.keyboard') or
+		self.has_capability('input.keys')):
+		return False
+
         # check if HAL considers this device a keyboard:
         if self.has_capability('input.keyboard'):
             # read and parse key-code map from sysfs:
@@ -188,6 +196,9 @@
                 # check that at least 85 key-codes are supported:
                 if len(keys) >= 85:
                     return True
+	else:
+	     # It's not a keyboard, but we don't want it anyway
+	     return True
 
         return False
 
@@ -247,6 +258,8 @@
         self.__hal.connect_to_signal('DeviceAdded', self._on_device_added)
         self.__hal.connect_to_signal('DeviceRemoved', self._on_device_removed)
 
+	for udi in self.__hal.FindDeviceByCapability('input.keys'):
+            self._on_device_added(udi)
         for udi in self.__hal.FindDeviceByCapability('input.keyboard'):
             self._on_device_added(udi)
 
@@ -280,7 +293,7 @@
 
         device = self.lookup_device(udi)
 
-        if (device.has_capability('input.keyboard') and
+        if (device.has_capability('input') and
             not device.is_real_keyboard()):
 
             product_name = str(device['info.product'])
@@ -296,13 +309,13 @@
             receiver = lirc.Receiver(_('Linux Input Device'),
                                      product_name, **properties)
 
-            self.__devinput_receivers[udi] = receiver
+            self.__devinput_receivers[str(udi)] = receiver
             self.emit('receiver-added', receiver)
 
     def _on_device_removed(self, udi, sender=None):
         '''Handle removal of hot-plugable devices.'''
 
-        receiver = self.__devinput_receivers.pop(udi, None)
+        receiver = self.__devinput_receivers.pop(str(udi), None)
 
         if receiver is not None:
             self.emit('receiver-removed', receiver)
@@ -466,7 +479,7 @@
                 continue
 
             # report findings:
-            receiver = self.devinput_receivers[device.udi]
+            receiver = self.devinput_receivers[str(device.udi)]
             self._receiver_found(receiver, device.udi, device_node)
 
     def find_instance(self, receiver):
@@ -497,9 +510,9 @@
         claiming being thread-safe.
         '''
 
-        # retreive list of USB devices from HAL
+        # retrieve list of USB devices from HAL
         usb_devices = self.__hal.FindDeviceStringMatch('info.subsystem', 'usb_device')
-        input_devices = self.__hal.FindDeviceByCapability('input.keyboard')
+        input_devices = self.__hal.FindDeviceByCapability('input')
 
         self.__search_canceled = False
         self.__device_count = float(len(usb_devices) + len(input_devices))


Index: gnome-lirc-properties.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gnome-lirc-properties/devel/gnome-lirc-properties.spec,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- gnome-lirc-properties.spec	4 Jul 2008 21:35:01 -0000	1.3
+++ gnome-lirc-properties.spec	13 Oct 2008 23:30:54 -0000	1.4
@@ -6,7 +6,7 @@
 
 Name:		gnome-lirc-properties
 Version:	0.2.8
-Release:	3%{?dist}
+Release:	5%{?dist}
 Summary:	Infrared Remote Controls setup tool
 
 Group:		User Interface/X Hardware Support
@@ -17,6 +17,9 @@
 # http://bugzilla.gnome.org/show_bug.cgi?id=540897
 # and We have the patches in a 0.8.3 version in Fedora
 Patch0:		glp-fedora-support.patch
+# http://bugzilla.gnome.org/show_bug.cgi?id=555802
+Patch1:		glp-add-ps3-detection-4.patch
+
 BuildRoot:	%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
 
 Requires:	python >= 2.3
@@ -42,6 +45,7 @@
 %prep
 %setup -q
 %patch0 -p0 -b .fedora
+%patch1 -p0 -b .ps3
 autoconf
 
 %build
@@ -82,6 +86,7 @@
 %{_sysconfdir}/dbus-1/system.d/org.gnome.LircProperties.Mechanism.conf
 %{_datadir}/PolicyKit/policy/gnome-lirc-properties-mechanism.policy
 %{_datadir}/dbus-1/system-services/org.gnome.LircProperties.Mechanism.service
+%{_datadir}/hal/fdi/policy/10osvendor/*.fdi
 %{_datadir}/applications/gnome-lirc-properties.desktop
 %{_datadir}/gnome/help/gnome-lirc-properties/
 %{_datadir}/icons/hicolor/*/apps/*
@@ -92,6 +97,9 @@
 %{_datadir}/%{name}/
 
 %changelog
+* Mon Oct 13 2008 - Bastien Nocera <bnocera at redhat.com> - 0.2.8-5
+- Add PS3 remote controls support
+
 * Fri Jul 04 2008 - Bastien Nocera <bnocera at redhat.com> - 0.2.8-3
 - Require a newer PolicyKit that allows root to read auths
 




More information about the scm-commits mailing list