zoukankan      html  css  js  c++  java
  • RK:添加键值 113

     

    diff --git a/device/rockchip/common/BoardConfig.mk b/device/rockchip/common/BoardConfig.mk
    index 57e72a8..8edd46d 100755
    --- a/device/rockchip/common/BoardConfig.mk
    +++ b/device/rockchip/common/BoardConfig.mk
    @@ -104,8 +104,8 @@ TARGET_PROVIDES_INIT_RC ?= false
     BOARD_HAL_STATIC_LIBRARIES ?= libdumpstate.$(TARGET_PRODUCT) libhealthd.$(TARGET_PRODUCT)
     
     //MAX-SIZE=512M, for generate out/.../system.img
    -BOARD_SYSTEMIMAGE_PARTITION_SIZE ?= 1610612736
    -#BOARD_SYSTEMIMAGE_PARTITION_SIZE ?= 2147483648		2G
    +#BOARD_SYSTEMIMAGE_PARTITION_SIZE ?= 1610612736
    +BOARD_SYSTEMIMAGE_PARTITION_SIZE ?= 2147483648		
     #BOARD_SYSTEMIMAGE_PARTITION_SIZE ?= 3221225472		3G
     #BOARD_SYSTEMIMAGE_PARTITION_SIZE ?= 3758096384		4G
     BOARD_FLASH_BLOCK_SIZE ?= 131072
    @@ -118,7 +118,7 @@ ifeq ($(HOST_OS),linux)
         endif
       endif
     endif
    -WITH_DEXPREOPT ?= true
    +#WITH_DEXPREOPT ?= true
     ART_USE_HSPACE_COMPACT ?= true
     
     TARGET_USES_LOGD ?= true
    diff --git a/device/rockchip/common/rkxx-remotectl.kl b/device/rockchip/common/rkxx-remotectl.kl
    index 0aedef3..7f2f143 100755
    --- a/device/rockchip/common/rkxx-remotectl.kl
    +++ b/device/rockchip/common/rkxx-remotectl.kl
    @@ -1,49 +1,116 @@
     #$_FOR_ROCKCHIP_RBOX_$
     #$_rbox_$_modify_$_chenzhi_20120220: add for IR remote
     
    -key 2     1
    -key 3     2
    -key 4     3
    -key 5     4
    -key 6     5
    -key 7     6
    -key 8     7
    -key 9     8
    -key 10    9
    -key 11    0
    -key 28    DPAD_CENTER
    -key 113   VOLUME_MUTE
    -key 82    MENU
    -key 116   POWER
    -key 158   BACK              
    -key 139   MENU         
    -key 217   SEARCH             
    -key 232   DPAD_CENTER       
    -key 108   DPAD_DOWN         
    -key 103   DPAD_UP           
    -key 102   HOME              
    -key 105   DPAD_LEFT         
    -key 106   DPAD_RIGHT        
    -key 115   VOLUME_UP
    -key 114   VOLUME_DOWN
    -key 143   NOTIFICATION
    -key 387   SETTINGS
    -key 186		PROG_GREEN
    -key 187		PROG_YELLOW
    -key 188		PROG_BLUE
    -key 388   TV_KEYMOUSE_MODE_SWITCH 
    -#key 400   TV_MEDIA_MULT_BACKWARD
    -#key 401   TV_MEDIA_MULT_FORWARD
    -#key 402   TV_MEDIA_PLAY_PAUSE
    -#key 64    TV_MEDIA_PLAY
    -#key 65    TV_MEDIA_PAUSE
    -#key 66    TV_MEDIA_STOP
    -#key 67    TV_MEDIA_REWIND
    -#key 68    TV_MEDIA_FAST_FORWARD
    -#key 87    TV_MEDIA_PREVIOUS
    -#key 88    TV_MEDIA_NEXT
    -key 146   DEL
    -key 163   MEDIA_NEXT
    -key 164   MEDIA_PLAY_PAUSE
    -key 165   MEDIA_PREVIOUS
    -key 172   HOME
     No newline at end of file
    +key 1     XH_CUSTOM_BTN_1  
    +key 2     XH_CUSTOM_BTN_2  
    +key 3     XH_CUSTOM_BTN_3  
    +key 4     XH_CUSTOM_BTN_4  
    +key 5     XH_CUSTOM_BTN_5  
    +key 6     XH_CUSTOM_BTN_6  
    +key 7     XH_CUSTOM_BTN_7  
    +key 8     XH_CUSTOM_BTN_8  
    +key 9     XH_CUSTOM_BTN_9  
    +key 10    XH_CUSTOM_BTN_10 
    +key 11    XH_CUSTOM_BTN_11 
    +key 12    XH_CUSTOM_BTN_12 
    +key 13		XH_CUSTOM_BTN_13 
    +key 14		XH_CUSTOM_BTN_14 
    +key 15		XH_CUSTOM_BTN_15 
    +key 16		XH_CUSTOM_BTN_16 
    +key 17		XH_CUSTOM_BTN_17 
    +key 18		XH_CUSTOM_BTN_18 
    +key 19		XH_CUSTOM_BTN_19 
    +key 20		XH_CUSTOM_BTN_20 
    +key 21		XH_CUSTOM_BTN_21 
    +key 22		XH_CUSTOM_BTN_22 
    +key 23		XH_CUSTOM_BTN_23 
    +key 24		XH_CUSTOM_BTN_24 
    +key 25    XH_CUSTOM_BTN_25 
    +key 26    XH_CUSTOM_BTN_26 
    +key 27    XH_CUSTOM_BTN_27 
    +key 28    XH_CUSTOM_BTN_28 
    +key 29    XH_CUSTOM_BTN_29 
    +key 30    XH_CUSTOM_BTN_30 
    +key 31    XH_CUSTOM_BTN_31 
    +key 32    XH_CUSTOM_BTN_32 
    +key 33    XH_CUSTOM_BTN_33 
    +key 48    XH_CUSTOM_BTN_34 
    +key 49    XH_CUSTOM_BTN_35 
    +key 50    XH_CUSTOM_BTN_36 
    +key 51		XH_CUSTOM_BTN_37 
    +key 52		XH_CUSTOM_BTN_38 
    +key 53		XH_CUSTOM_BTN_39 
    +key 54		XH_CUSTOM_BTN_40 
    +key 55		XH_CUSTOM_BTN_41 
    +key 56		XH_CUSTOM_BTN_42 
    +key 57		XH_CUSTOM_BTN_43 
    +key 58		XH_CUSTOM_BTN_44 
    +key 59		XH_CUSTOM_BTN_45 
    +key 60		XH_CUSTOM_BTN_46 
    +key 61		XH_CUSTOM_BTN_47 
    +key 62		XH_CUSTOM_BTN_48 
    +key 63    XH_CUSTOM_BTN_49 
    +key 64    XH_CUSTOM_BTN_50 
    +key 65    XH_CUSTOM_BTN_51 
    +key 66    XH_CUSTOM_BTN_52 
    +key 67    XH_CUSTOM_BTN_53 
    +key 80		XH_CUSTOM_BTN_54 
    +key 81		XH_CUSTOM_BTN_55 
    +key 82		XH_CUSTOM_BTN_56 
    +key 83		XH_CUSTOM_BTN_57 
    +key 84		XH_CUSTOM_BTN_58 
    +key 85		XH_CUSTOM_BTN_59 
    +key 86		XH_CUSTOM_BTN_60 
    +key 87		XH_CUSTOM_BTN_61 
    +key 88		XH_CUSTOM_BTN_62 
    +key 89		XH_CUSTOM_BTN_63 
    +key 90		XH_CUSTOM_BTN_64 
    +key 91		XH_CUSTOM_BTN_65 
    +key 92		XH_CUSTOM_BTN_66 
    +key 93		XH_CUSTOM_BTN_67 
    +key 94		XH_CUSTOM_BTN_68 
    +key 95		XH_CUSTOM_BTN_69 
    +key 96		XH_CUSTOM_BTN_70 
    +key 97		XH_CUSTOM_BTN_71 
    +key 98		XH_CUSTOM_BTN_72 
    +key 99		XH_CUSTOM_BTN_73 
    +key 112		XH_CUSTOM_BTN_74 
    +key 113		XH_CUSTOM_BTN_75 
    +key 114		XH_CUSTOM_BTN_76 
    +key 115		XH_CUSTOM_BTN_77 
    +key 116		XH_CUSTOM_BTN_78 
    +key 117		XH_CUSTOM_BTN_79 
    +key 118		XH_CUSTOM_BTN_80 
    +key 119		XH_CUSTOM_BTN_81 
    +key 120		XH_CUSTOM_BTN_82 
    +key 121		XH_CUSTOM_BTN_83 
    +key 122		XH_CUSTOM_BTN_84 
    +key 123 	XH_CUSTOM_BTN_85 
    +key 124   XH_CUSTOM_BTN_86 
    +key 125   XH_CUSTOM_BTN_87 
    +key 126   XH_CUSTOM_BTN_88 
    +key 127   XH_CUSTOM_BTN_89 
    +key 128   XH_CUSTOM_BTN_90 
    +key 129   XH_CUSTOM_BTN_91 
    +key 130   XH_CUSTOM_BTN_92 
    +key 131   XH_CUSTOM_BTN_93 
    +key 144		XH_CUSTOM_BTN_94 
    +key 145		XH_CUSTOM_BTN_95 
    +key 146		XH_CUSTOM_BTN_96 
    +key 147		XH_CUSTOM_BTN_97 
    +key 148		XH_CUSTOM_BTN_98 
    +key 149		XH_CUSTOM_BTN_99 
    +key 150		XH_CUSTOM_BTN_100
    +key 151		XH_CUSTOM_BTN_101
    +key 152		XH_CUSTOM_BTN_102
    +key 153		XH_CUSTOM_BTN_103
    +key 154 	XH_CUSTOM_BTN_104
    +key 155		XH_CUSTOM_BTN_105
    +key 156		XH_CUSTOM_BTN_106
    +key 157		XH_CUSTOM_BTN_107
    +key 158		XH_CUSTOM_BTN_108
    +key 159		XH_CUSTOM_BTN_109
    +key 160		XH_CUSTOM_BTN_110
    +key 161		XH_CUSTOM_BTN_111
    +key 162		XH_CUSTOM_BTN_112
    +key 163		XH_CUSTOM_BTN_113
     No newline at end of file
    diff --git a/frameworks/base/api/current.txt b/frameworks/base/api/current.txt
    index 8a53bfc..f4b18b0 100644
    --- a/frameworks/base/api/current.txt
    +++ b/frameworks/base/api/current.txt
    @@ -35498,6 +35498,127 @@ package android.view {
         field public static final int KEYCODE_WAKEUP = 224; // 0xe0
         field public static final int KEYCODE_WINDOW = 171; // 0xab
         field public static final int KEYCODE_X = 52; // 0x34
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_1 = 305; // 0x131
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_10 = 314; // 0x13a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_100 = 404; // 0x194
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_101 = 405; // 0x195
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_102 = 406; // 0x196
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_103 = 407; // 0x197
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_104 = 408; // 0x198
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_105 = 409; // 0x199
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_106 = 410; // 0x19a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_107 = 411; // 0x19b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_108 = 412; // 0x19c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_109 = 413; // 0x19d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_11 = 315; // 0x13b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_110 = 414; // 0x19e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_111 = 415; // 0x19f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_112 = 416; // 0x1a0
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_113 = 417; // 0x1a1
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_114 = 418; // 0x1a2
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_115 = 419; // 0x1a3
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_116 = 420; // 0x1a4
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_117 = 421; // 0x1a5
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_118 = 422; // 0x1a6
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_119 = 423; // 0x1a7
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_12 = 316; // 0x13c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_120 = 424; // 0x1a8
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_121 = 425; // 0x1a9
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_13 = 317; // 0x13d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_14 = 318; // 0x13e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_15 = 319; // 0x13f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_16 = 320; // 0x140
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_17 = 321; // 0x141
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_18 = 322; // 0x142
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_19 = 323; // 0x143
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_2 = 306; // 0x132
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_20 = 324; // 0x144
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_21 = 325; // 0x145
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_22 = 326; // 0x146
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_23 = 327; // 0x147
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_24 = 328; // 0x148
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_25 = 329; // 0x149
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_26 = 330; // 0x14a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_27 = 331; // 0x14b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_28 = 332; // 0x14c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_29 = 333; // 0x14d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_3 = 307; // 0x133
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_30 = 334; // 0x14e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_31 = 335; // 0x14f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_32 = 336; // 0x150
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_33 = 337; // 0x151
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_34 = 338; // 0x152
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_35 = 339; // 0x153
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_36 = 340; // 0x154
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_37 = 341; // 0x155
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_38 = 342; // 0x156
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_39 = 343; // 0x157
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_4 = 308; // 0x134
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_40 = 344; // 0x158
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_41 = 345; // 0x159
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_42 = 346; // 0x15a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_43 = 347; // 0x15b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_44 = 348; // 0x15c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_45 = 349; // 0x15d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_46 = 350; // 0x15e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_47 = 351; // 0x15f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_48 = 352; // 0x160
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_49 = 353; // 0x161
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_5 = 309; // 0x135
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_50 = 354; // 0x162
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_51 = 355; // 0x163
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_52 = 356; // 0x164
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_53 = 357; // 0x165
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_54 = 358; // 0x166
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_55 = 359; // 0x167
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_56 = 360; // 0x168
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_57 = 361; // 0x169
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_58 = 362; // 0x16a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_59 = 363; // 0x16b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_6 = 310; // 0x136
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_60 = 364; // 0x16c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_61 = 365; // 0x16d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_62 = 366; // 0x16e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_63 = 367; // 0x16f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_64 = 368; // 0x170
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_65 = 369; // 0x171
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_66 = 370; // 0x172
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_67 = 371; // 0x173
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_68 = 372; // 0x174
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_69 = 373; // 0x175
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_7 = 426; // 0x1aa
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_70 = 374; // 0x176
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_71 = 375; // 0x177
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_72 = 376; // 0x178
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_73 = 377; // 0x179
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_74 = 378; // 0x17a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_75 = 379; // 0x17b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_76 = 380; // 0x17c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_77 = 381; // 0x17d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_78 = 382; // 0x17e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_79 = 383; // 0x17f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_8 = 427; // 0x1ab
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_80 = 384; // 0x180
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_81 = 385; // 0x181
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_82 = 386; // 0x182
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_83 = 387; // 0x183
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_84 = 388; // 0x184
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_85 = 389; // 0x185
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_86 = 390; // 0x186
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_87 = 391; // 0x187
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_88 = 392; // 0x188
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_89 = 393; // 0x189
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_9 = 313; // 0x139
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_90 = 394; // 0x18a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_91 = 395; // 0x18b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_92 = 396; // 0x18c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_93 = 397; // 0x18d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_94 = 398; // 0x18e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_95 = 399; // 0x18f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_96 = 400; // 0x190
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_97 = 401; // 0x191
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_98 = 402; // 0x192
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_99 = 403; // 0x193
         field public static final int KEYCODE_Y = 53; // 0x35
         field public static final int KEYCODE_YEN = 216; // 0xd8
         field public static final int KEYCODE_Z = 54; // 0x36
    diff --git a/frameworks/base/api/system-current.txt b/frameworks/base/api/system-current.txt
    index cf56b94..744c49a 100644
    --- a/frameworks/base/api/system-current.txt
    +++ b/frameworks/base/api/system-current.txt
    @@ -37790,6 +37790,127 @@ package android.view {
         field public static final int KEYCODE_WAKEUP = 224; // 0xe0
         field public static final int KEYCODE_WINDOW = 171; // 0xab
         field public static final int KEYCODE_X = 52; // 0x34
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_1 = 305; // 0x131
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_10 = 314; // 0x13a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_100 = 404; // 0x194
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_101 = 405; // 0x195
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_102 = 406; // 0x196
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_103 = 407; // 0x197
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_104 = 408; // 0x198
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_105 = 409; // 0x199
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_106 = 410; // 0x19a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_107 = 411; // 0x19b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_108 = 412; // 0x19c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_109 = 413; // 0x19d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_11 = 315; // 0x13b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_110 = 414; // 0x19e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_111 = 415; // 0x19f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_112 = 416; // 0x1a0
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_113 = 417; // 0x1a1
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_114 = 418; // 0x1a2
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_115 = 419; // 0x1a3
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_116 = 420; // 0x1a4
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_117 = 421; // 0x1a5
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_118 = 422; // 0x1a6
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_119 = 423; // 0x1a7
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_12 = 316; // 0x13c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_120 = 424; // 0x1a8
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_121 = 425; // 0x1a9
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_13 = 317; // 0x13d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_14 = 318; // 0x13e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_15 = 319; // 0x13f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_16 = 320; // 0x140
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_17 = 321; // 0x141
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_18 = 322; // 0x142
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_19 = 323; // 0x143
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_2 = 306; // 0x132
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_20 = 324; // 0x144
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_21 = 325; // 0x145
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_22 = 326; // 0x146
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_23 = 327; // 0x147
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_24 = 328; // 0x148
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_25 = 329; // 0x149
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_26 = 330; // 0x14a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_27 = 331; // 0x14b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_28 = 332; // 0x14c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_29 = 333; // 0x14d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_3 = 307; // 0x133
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_30 = 334; // 0x14e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_31 = 335; // 0x14f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_32 = 336; // 0x150
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_33 = 337; // 0x151
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_34 = 338; // 0x152
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_35 = 339; // 0x153
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_36 = 340; // 0x154
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_37 = 341; // 0x155
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_38 = 342; // 0x156
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_39 = 343; // 0x157
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_4 = 308; // 0x134
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_40 = 344; // 0x158
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_41 = 345; // 0x159
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_42 = 346; // 0x15a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_43 = 347; // 0x15b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_44 = 348; // 0x15c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_45 = 349; // 0x15d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_46 = 350; // 0x15e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_47 = 351; // 0x15f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_48 = 352; // 0x160
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_49 = 353; // 0x161
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_5 = 309; // 0x135
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_50 = 354; // 0x162
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_51 = 355; // 0x163
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_52 = 356; // 0x164
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_53 = 357; // 0x165
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_54 = 358; // 0x166
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_55 = 359; // 0x167
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_56 = 360; // 0x168
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_57 = 361; // 0x169
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_58 = 362; // 0x16a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_59 = 363; // 0x16b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_6 = 310; // 0x136
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_60 = 364; // 0x16c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_61 = 365; // 0x16d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_62 = 366; // 0x16e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_63 = 367; // 0x16f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_64 = 368; // 0x170
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_65 = 369; // 0x171
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_66 = 370; // 0x172
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_67 = 371; // 0x173
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_68 = 372; // 0x174
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_69 = 373; // 0x175
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_7 = 426; // 0x1aa
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_70 = 374; // 0x176
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_71 = 375; // 0x177
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_72 = 376; // 0x178
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_73 = 377; // 0x179
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_74 = 378; // 0x17a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_75 = 379; // 0x17b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_76 = 380; // 0x17c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_77 = 381; // 0x17d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_78 = 382; // 0x17e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_79 = 383; // 0x17f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_8 = 427; // 0x1ab
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_80 = 384; // 0x180
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_81 = 385; // 0x181
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_82 = 386; // 0x182
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_83 = 387; // 0x183
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_84 = 388; // 0x184
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_85 = 389; // 0x185
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_86 = 390; // 0x186
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_87 = 391; // 0x187
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_88 = 392; // 0x188
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_89 = 393; // 0x189
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_9 = 313; // 0x139
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_90 = 394; // 0x18a
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_91 = 395; // 0x18b
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_92 = 396; // 0x18c
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_93 = 397; // 0x18d
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_94 = 398; // 0x18e
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_95 = 399; // 0x18f
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_96 = 400; // 0x190
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_97 = 401; // 0x191
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_98 = 402; // 0x192
    +    field public static final int KEYCODE_XH_CUSTOM_BTN_99 = 403; // 0x193
         field public static final int KEYCODE_Y = 53; // 0x35
         field public static final int KEYCODE_YEN = 216; // 0xd8
         field public static final int KEYCODE_Z = 54; // 0x36
    diff --git a/frameworks/base/core/java/android/view/KeyEvent.java b/frameworks/base/core/java/android/view/KeyEvent.java
    index ffbede4..c08502c 100755
    --- a/frameworks/base/core/java/android/view/KeyEvent.java
    +++ b/frameworks/base/core/java/android/view/KeyEvent.java
    @@ -797,7 +797,132 @@ public class KeyEvent extends InputEvent implements Parcelable {
         public static final int KEYCODE_TV_MEDIA_PAUSE = 294;
     //$_rbox_$_modify_$ end
     
    -    private static final int LAST_KEYCODE = KEYCODE_TV_MEDIA_PAUSE;
    +//$_Gatsby_$_modify_$_begin
    +		public static final int KEYCODE_XH_CUSTOM_BTN_1   = 305;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_2   = 306;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_3   = 307;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_4   = 308;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_5   = 309;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_6   = 310;
    +
    +		public static final int KEYCODE_XH_CUSTOM_BTN_9   = 313;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_10  = 314;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_11  = 315;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_12  = 316;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_13  = 317;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_14  = 318;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_15  = 319;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_16  = 320;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_17  = 321;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_18  = 322;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_19  = 323;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_20  = 324;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_21  = 325;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_22  = 326;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_23  = 327;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_24  = 328;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_25  = 329;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_26  = 330;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_27  = 331;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_28  = 332;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_29  = 333;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_30  = 334;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_31  = 335;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_32  = 336;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_33  = 337;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_34  = 338;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_35  = 339;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_36  = 340;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_37  = 341;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_38  = 342;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_39  = 343;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_40  = 344;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_41  = 345;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_42  = 346;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_43  = 347;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_44  = 348;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_45  = 349;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_46  = 350;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_47  = 351;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_48  = 352;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_49  = 353;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_50  = 354;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_51  = 355;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_52  = 356;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_53  = 357;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_54  = 358;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_55  = 359;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_56  = 360;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_57  = 361;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_58  = 362;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_59  = 363;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_60  = 364;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_61  = 365;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_62  = 366;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_63  = 367;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_64  = 368;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_65  = 369;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_66  = 370;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_67  = 371;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_68  = 372;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_69  = 373;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_70  = 374;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_71  = 375;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_72  = 376;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_73  = 377;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_74  = 378;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_75  = 379;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_76  = 380;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_77  = 381;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_78  = 382;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_79  = 383;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_80  = 384;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_81  = 385;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_82  = 386;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_83  = 387;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_84  = 388;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_85  = 389;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_86  = 390;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_87  = 391;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_88  = 392;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_89  = 393;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_90  = 394;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_91  = 395;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_92  = 396;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_93  = 397;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_94  = 398;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_95  = 399;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_96  = 400;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_97  = 401;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_98  = 402;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_99  = 403;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_100 = 404;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_101 = 405;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_102 = 406;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_103 = 407;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_104 = 408;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_105 = 409;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_106 = 410;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_107 = 411;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_108 = 412;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_109 = 413;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_110 = 414;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_111 = 415;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_112 = 416;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_113 = 417;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_114 = 418;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_115 = 419;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_116 = 420;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_117 = 421;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_118 = 422;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_119 = 423;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_120 = 424;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_121 = 425;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_7   = 426;
    +		public static final int KEYCODE_XH_CUSTOM_BTN_8   = 427;
    +
    +//$_Gatsby_$_modify_$ end
    +    private static final int LAST_KEYCODE = KEYCODE_XH_CUSTOM_BTN_8;
     
         // NOTE: If you add a new keycode here you must also add it to:
         //  isSystem()
    diff --git a/frameworks/base/core/res/res/values/attrs.xml b/frameworks/base/core/res/res/values/attrs.xml
    old mode 100644
    new mode 100755
    index 13d57b1..4db972f
    --- a/frameworks/base/core/res/res/values/attrs.xml
    +++ b/frameworks/base/core/res/res/values/attrs.xml
    @@ -1827,6 +1827,128 @@ i
             <enum name="KEYCODE_TV_MEDIA_MULT_BACKWARD" value="292" />
             <enum name="KEYCODE_TV_MEDIA_PLAY" value="293" />
             <enum name="KEYCODE_TV_MEDIA_PAUSE" value="294" />
    +        
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_1" value="305" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_2" value="306" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_3" value="307" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_4" value="308" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_5" value="309" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_6" value="310" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_9" value="313" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_10" value="314" />       
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_11" value="315" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_12" value="316" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_13" value="317" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_14" value="318" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_15" value="319" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_16" value="320" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_17" value="321" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_18" value="322" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_19" value="323" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_20" value="324" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_21" value="325" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_22" value="326" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_23" value="327" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_24" value="328" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_25" value="329" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_26" value="330" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_27" value="331" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_28" value="332" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_29" value="333" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_30" value="334" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_31" value="335" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_32" value="336" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_33" value="337" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_34" value="338" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_35" value="339" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_36" value="340" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_37" value="341" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_38" value="342" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_39" value="343" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_40" value="344" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_41" value="345" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_42" value="346" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_43" value="347" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_44" value="348" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_45" value="349" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_46" value="350" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_47" value="351" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_48" value="352" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_49" value="353" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_50" value="354" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_51" value="355" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_52" value="356" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_53" value="357" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_54" value="358" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_55" value="359" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_56" value="360" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_57" value="361" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_58" value="362" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_59" value="363" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_60" value="364" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_61" value="365" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_62" value="366" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_63" value="367" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_64" value="368" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_65" value="369" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_66" value="370" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_67" value="371" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_68" value="372" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_69" value="373" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_70" value="374" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_71" value="375" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_72" value="376" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_73" value="377" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_74" value="378" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_75" value="379" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_76" value="380" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_77" value="381" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_78" value="382" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_79" value="383" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_80" value="384" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_81" value="385" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_82" value="386" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_83" value="387" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_84" value="388" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_85" value="389" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_86" value="390" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_87" value="391" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_88" value="392" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_89" value="393" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_90" value="394" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_91" value="395" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_92" value="396" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_93" value="397" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_94" value="398" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_95" value="399" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_96" value="400" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_97" value="401" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_98" value="402" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_99" value="403" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_100" value="404" /> 
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_101" value="405" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_102" value="406" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_103" value="407" />          
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_104" value="408" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_105" value="409" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_106" value="410" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_107" value="411" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_108" value="412" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_109" value="413" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_110" value="414" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_111" value="415" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_112" value="416" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_113" value="417" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_114" value="418" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_115" value="419" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_116" value="420" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_117" value="421" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_118" value="422" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_119" value="423" />   
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_120" value="424" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_121" value="425" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_7" value="426" />
    +        <enum name="KEYCODE_XH_CUSTOM_BTN_8" value="427" />
     <!--$_rbox_$_modify_$_end-->
         </attr>
     
    diff --git a/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java b/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
    index ad2adc4..3deb4ce 100755
    --- a/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
    +++ b/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
    @@ -3028,7 +3028,472 @@ public class PhoneWindowManager implements WindowManagerPolicy {
     		  					mHandler.sendEmptyMessage(MSG_DISPATCH_SHOW_GLOBAL_ACTIONS);
                 }
                 return -1;
    -        }
    +        }else if(( keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_1 )
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_2 )
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_3 )
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_4 )
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_5 )
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_6 )
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_7 )
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_8 )
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_9 )
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_10)
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_11)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_12)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_13)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_14)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_15)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_16)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_17)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_18)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_19)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_20)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_21)
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_22)
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_23)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_24)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_25)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_26)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_27)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_28)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_29)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_30)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_31)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_32)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_33)
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_34)
    +        				||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_35)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_36 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_37 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_38 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_39 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_40 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_41 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_42 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_43 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_44 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_45 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_46 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_47 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_48 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_49 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_50 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_51 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_52 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_53 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_54 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_55 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_56 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_57 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_58 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_59 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_60 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_61 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_62 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_63 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_64 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_65 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_66 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_67 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_68 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_69 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_70 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_71 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_72 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_73 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_74 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_75 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_76 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_77 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_78 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_79 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_80 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_81 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_82 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_83 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_84 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_85 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_86 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_87 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_88 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_89 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_90 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_91 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_92 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_93 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_94 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_95 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_96 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_97 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_98 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_99 )
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_100)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_101)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_102)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_103)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_104)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_105)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_106)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_107)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_108)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_109)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_110)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_111)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_112)
    +								||(keyCode == KeyEvent.KEYCODE_XH_CUSTOM_BTN_113)
    +						){
    +  					if(!down){
    +  							int keyCode_yulinian=0x00;
    +  							switch(keyCode)
    +  							{
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_1:
    +  									keyCode_yulinian=0x01;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_2:
    +  									keyCode_yulinian=0x02;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_3:
    +  									keyCode_yulinian=0x03;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_4:
    +  									keyCode_yulinian=0x04;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_5:
    +  									keyCode_yulinian=0x05;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_6:
    +  									keyCode_yulinian=0x06;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_7:
    +  									keyCode_yulinian=0x07;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_8:
    +  									keyCode_yulinian=0x08;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_9:
    +  									keyCode_yulinian=0x09;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_10:
    +  									keyCode_yulinian=0x0a;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_11:
    +  									keyCode_yulinian=0x0b;
    +  									break;	
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_12:
    +  									keyCode_yulinian=0x0c;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_13:
    +  									keyCode_yulinian=0x0d;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_14:
    +  									keyCode_yulinian=0x0e;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_15:
    +  									keyCode_yulinian=0x0f;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_16:
    +  									keyCode_yulinian=0x10;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_17:
    +  									keyCode_yulinian=0x11;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_18:
    +  									keyCode_yulinian=0x12;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_19:
    +  									keyCode_yulinian=0x13;									
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_20:
    +  									keyCode_yulinian=0x14;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_21:
    +  									keyCode_yulinian=0x15;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_22:
    +  									keyCode_yulinian=0x16;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_23:
    +  									keyCode_yulinian=0x17;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_24:
    +  									keyCode_yulinian=0x18;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_25:
    +  									keyCode_yulinian=0x19;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_26:
    +  									keyCode_yulinian=0x1a;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_27:
    +  									keyCode_yulinian=0x1b;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_28:
    +  									keyCode_yulinian=0x1c;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_29:
    +  									keyCode_yulinian=0x1d;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_30:
    +  									keyCode_yulinian=0x1e;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_31:
    +  									keyCode_yulinian=0x1f;
    +  									break;	
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_32:
    +  									keyCode_yulinian=0x20;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_33:
    +  									keyCode_yulinian=0x21;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_34:
    +  									keyCode_yulinian=0x30;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_35:
    +  									keyCode_yulinian=0x31;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_36:
    +  									keyCode_yulinian=0x32;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_37:
    +  									keyCode_yulinian=0x33;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_38:
    +  									keyCode_yulinian=0x34;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_39:
    +  									keyCode_yulinian=0x35;									
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_40:
    +  									keyCode_yulinian=0x36;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_41:
    +  									keyCode_yulinian=0x37;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_42:
    +  									keyCode_yulinian=0x38;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_43:
    +  									keyCode_yulinian=0x39;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_44:
    +  									keyCode_yulinian=0x3a;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_45:
    +  									keyCode_yulinian=0x3b;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_46:
    +  									keyCode_yulinian=0x3c;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_47:
    +  									keyCode_yulinian=0x3d;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_48:
    +  									keyCode_yulinian=0x3e;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_49:
    +  									keyCode_yulinian=0x3f;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_50:
    +  									keyCode_yulinian=0x40;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_51:
    +  									keyCode_yulinian=0x41;
    +  									break;	
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_52:
    +  									keyCode_yulinian=0x42;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_53:
    +  									keyCode_yulinian=0x43;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_54:
    +  									keyCode_yulinian=0x50;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_55:
    +  									keyCode_yulinian=0x51;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_56:
    +  									keyCode_yulinian=0x52;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_57:
    +  									keyCode_yulinian=0x53;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_58:
    +  									keyCode_yulinian=0x54;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_59:
    +  									keyCode_yulinian=0x55;									
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_60:
    +  									keyCode_yulinian=0x56;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_61:
    +  									keyCode_yulinian=0x57;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_62:
    +  									keyCode_yulinian=0x58;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_63:
    +  									keyCode_yulinian=0x59;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_64:
    +  									keyCode_yulinian=0x5a;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_65:
    +  									keyCode_yulinian=0x5b;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_66:
    +  									keyCode_yulinian=0x5c;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_67:
    +  									keyCode_yulinian=0x5d;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_68:
    +  									keyCode_yulinian=0x5e;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_69:
    +  									keyCode_yulinian=0x5f;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_70:
    +  									keyCode_yulinian=0x60;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_71:
    +  									keyCode_yulinian=0x61;
    +  									break;	
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_72:
    +  									keyCode_yulinian=0x62;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_73:
    +  									keyCode_yulinian=0x63;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_74:
    +  									keyCode_yulinian=0x70;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_75:
    +  									keyCode_yulinian=0x71;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_76:
    +  									keyCode_yulinian=0x72;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_77:
    +  									keyCode_yulinian=0x73;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_78:
    +  									keyCode_yulinian=0x74;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_79:
    +  									keyCode_yulinian=0x75;									
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_80:
    +  									keyCode_yulinian=0x76;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_81:
    +  									keyCode_yulinian=0x77;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_82:
    +  									keyCode_yulinian=0x78;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_83:
    +  									keyCode_yulinian=0x79;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_84:
    +  									keyCode_yulinian=0x7a;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_85:
    +  									keyCode_yulinian=0x7b;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_86:
    +  									keyCode_yulinian=0x7c;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_87:
    +  									keyCode_yulinian=0x7d;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_88:
    +  									keyCode_yulinian=0x7e;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_89:
    +  									keyCode_yulinian=0x7f;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_90:
    +  									keyCode_yulinian=0x80;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_91:
    +  									keyCode_yulinian=0x81;
    +  									break;	
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_92:
    +  									keyCode_yulinian=0x82;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_93:
    +  									keyCode_yulinian=0x83;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_94:
    +  									keyCode_yulinian=0x90;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_95:
    +  									keyCode_yulinian=0x91;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_96:
    +  									keyCode_yulinian=0x92;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_97:
    +  									keyCode_yulinian=0x93;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_98:
    +  									keyCode_yulinian=0x94;
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_99:
    +  									keyCode_yulinian=0x95;									
    +  									break;
    +									case KeyEvent.KEYCODE_XH_CUSTOM_BTN_100:
    +  									keyCode_yulinian=0x96;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_101:
    +  									keyCode_yulinian=0x97;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_102:
    +  									keyCode_yulinian=0x98;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_103:
    +  									keyCode_yulinian=0x99;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_104:
    +  									keyCode_yulinian=0x9a;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_105:
    +  									keyCode_yulinian=0x9b;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_106:
    +  									keyCode_yulinian=0x9c;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_107:
    +  									keyCode_yulinian=0x9d;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_108:
    +  									keyCode_yulinian=0x9e;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_109:
    +  									keyCode_yulinian=0x9f;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_110:
    +  									keyCode_yulinian=0xa0;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_111:
    +  									keyCode_yulinian=0xa1;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_112:
    +  									keyCode_yulinian=0xa2;
    +  									break;
    +  								case KeyEvent.KEYCODE_XH_CUSTOM_BTN_113:
    +  									keyCode_yulinian=0xa3;
    +  									break;								
    +  							}
    +  							Log.d("xinhua_keycode","keycode = 0x"+Integer.toHexString(keyCode_yulinian));
    +		            Intent intent = new Intent("com.unibrige.fitnessmachine.key.value");
    +		            intent.putExtra("key_code", keyCode_yulinian);
    +		            mContext.sendStickyBroadcastAsUser(intent, UserHandle.ALL);
    +            }
    +            return -1;
    +          }
    +        
     				mstate = SystemProperties.get("sys.KeyMouse.mKeyMouseState");
     				if (mstate.equals("on") && ((keyCode == KeyEvent.KEYCODE_TV_KEYMOUSE_LEFT)
     							 || (keyCode == KeyEvent.KEYCODE_TV_KEYMOUSE_RIGHT)
    diff --git a/frameworks/native/include/android/keycodes.h b/frameworks/native/include/android/keycodes.h
    old mode 100644
    new mode 100755
    index e391dc9..466f1d3
    --- a/frameworks/native/include/android/keycodes.h
    +++ b/frameworks/native/include/android/keycodes.h
    @@ -728,8 +728,139 @@ enum {
         AKEYCODE_TV_KEYMOUSE_RIGHT = 281,
         AKEYCODE_TV_KEYMOUSE_UP = 282,
         AKEYCODE_TV_KEYMOUSE_DOWN = 283,
    -    AKEYCODE_TV_KEYMOUSE_MODE_SWITCH = 284
    +    AKEYCODE_TV_KEYMOUSE_MODE_SWITCH = 284,
     
    +/*************************************************
    +*	sunls_for_yulinian_start					  *
    +*	按键红外用户码——0xf708						  *
    +*	按键红外键值码定义							  *
    + *************************************************/
    +    
    +    AKEYCODE_XH_CUSTOM_BTN_1              = 305,
    +    AKEYCODE_XH_CUSTOM_BTN_2              = 306,
    +    AKEYCODE_XH_CUSTOM_BTN_3              = 307,
    +    AKEYCODE_XH_CUSTOM_BTN_4              = 308,
    +    AKEYCODE_XH_CUSTOM_BTN_5              = 309,
    +    AKEYCODE_XH_CUSTOM_BTN_6              = 310,
    +    AKEYCODE_XH_CUSTOM_BTN_9              = 313,
    +    AKEYCODE_XH_CUSTOM_BTN_10             = 314,
    +    AKEYCODE_XH_CUSTOM_BTN_11             = 315,                   
    +    AKEYCODE_XH_CUSTOM_BTN_12             = 316,                   
    +    AKEYCODE_XH_CUSTOM_BTN_13             = 317,                   
    +    AKEYCODE_XH_CUSTOM_BTN_14             = 318,                   
    +    AKEYCODE_XH_CUSTOM_BTN_15             = 319,                   
    +    AKEYCODE_XH_CUSTOM_BTN_16             = 320,                   
    +    AKEYCODE_XH_CUSTOM_BTN_17             = 321,                   
    +    AKEYCODE_XH_CUSTOM_BTN_18             = 322,                   
    +    AKEYCODE_XH_CUSTOM_BTN_19             = 323,                   
    +    AKEYCODE_XH_CUSTOM_BTN_20             = 324,                   
    +    AKEYCODE_XH_CUSTOM_BTN_21             = 325,                   
    +    AKEYCODE_XH_CUSTOM_BTN_22             = 326,                   
    +    AKEYCODE_XH_CUSTOM_BTN_23             = 327,                   
    +    AKEYCODE_XH_CUSTOM_BTN_24             = 328,                   
    +    AKEYCODE_XH_CUSTOM_BTN_25             = 329,                   
    +    AKEYCODE_XH_CUSTOM_BTN_26             = 330,                   
    +    AKEYCODE_XH_CUSTOM_BTN_27             = 331,
    +    AKEYCODE_XH_CUSTOM_BTN_28             = 332,
    +    AKEYCODE_XH_CUSTOM_BTN_29             = 333,
    +    AKEYCODE_XH_CUSTOM_BTN_30             = 334,
    +    AKEYCODE_XH_CUSTOM_BTN_31             = 335,
    +    AKEYCODE_XH_CUSTOM_BTN_32             = 336,
    +    AKEYCODE_XH_CUSTOM_BTN_33             = 337,
    +    AKEYCODE_XH_CUSTOM_BTN_34             = 338,
    +    AKEYCODE_XH_CUSTOM_BTN_35             = 339,
    +    AKEYCODE_XH_CUSTOM_BTN_36             = 340,
    +    AKEYCODE_XH_CUSTOM_BTN_37             = 341,
    +    AKEYCODE_XH_CUSTOM_BTN_38             = 342,
    +    AKEYCODE_XH_CUSTOM_BTN_39             = 343,
    +    AKEYCODE_XH_CUSTOM_BTN_40             = 344,
    +    AKEYCODE_XH_CUSTOM_BTN_41             = 345,
    +    AKEYCODE_XH_CUSTOM_BTN_42             = 346,
    +    AKEYCODE_XH_CUSTOM_BTN_43             = 347,
    +    AKEYCODE_XH_CUSTOM_BTN_44             = 348,
    +    AKEYCODE_XH_CUSTOM_BTN_45             = 349,
    +    AKEYCODE_XH_CUSTOM_BTN_46             = 350,
    +    AKEYCODE_XH_CUSTOM_BTN_47             = 351,
    +    AKEYCODE_XH_CUSTOM_BTN_48             = 352,
    +    AKEYCODE_XH_CUSTOM_BTN_49             = 353,
    +    AKEYCODE_XH_CUSTOM_BTN_50             = 354,
    +    AKEYCODE_XH_CUSTOM_BTN_51             = 355,
    +    AKEYCODE_XH_CUSTOM_BTN_52             = 356,
    +    AKEYCODE_XH_CUSTOM_BTN_53             = 357,
    +    AKEYCODE_XH_CUSTOM_BTN_54             = 358,
    +    AKEYCODE_XH_CUSTOM_BTN_55             = 359,
    +    AKEYCODE_XH_CUSTOM_BTN_56             = 360,
    +    AKEYCODE_XH_CUSTOM_BTN_57             = 361,
    +    AKEYCODE_XH_CUSTOM_BTN_58             = 362,
    +    AKEYCODE_XH_CUSTOM_BTN_59             = 363,
    +    AKEYCODE_XH_CUSTOM_BTN_60             = 364,
    +    AKEYCODE_XH_CUSTOM_BTN_61             = 365,
    +    AKEYCODE_XH_CUSTOM_BTN_62             = 366,
    +    AKEYCODE_XH_CUSTOM_BTN_63             = 367,
    +    AKEYCODE_XH_CUSTOM_BTN_64             = 368,
    +    AKEYCODE_XH_CUSTOM_BTN_65             = 369,
    +    AKEYCODE_XH_CUSTOM_BTN_66             = 370,
    +    AKEYCODE_XH_CUSTOM_BTN_67             = 371,
    +    AKEYCODE_XH_CUSTOM_BTN_68             = 372,
    +    AKEYCODE_XH_CUSTOM_BTN_69             = 373,
    +    AKEYCODE_XH_CUSTOM_BTN_70             = 374,
    +    AKEYCODE_XH_CUSTOM_BTN_71             = 375,
    +    AKEYCODE_XH_CUSTOM_BTN_72             = 376,
    +    AKEYCODE_XH_CUSTOM_BTN_73             = 377,
    +    AKEYCODE_XH_CUSTOM_BTN_74             = 378,
    +    AKEYCODE_XH_CUSTOM_BTN_75             = 379,
    +    AKEYCODE_XH_CUSTOM_BTN_76             = 380,
    +    AKEYCODE_XH_CUSTOM_BTN_77             = 381,
    +    AKEYCODE_XH_CUSTOM_BTN_78             = 382,
    +    AKEYCODE_XH_CUSTOM_BTN_79             = 383,
    +    AKEYCODE_XH_CUSTOM_BTN_80             = 384,
    +    AKEYCODE_XH_CUSTOM_BTN_81             = 385,
    +    AKEYCODE_XH_CUSTOM_BTN_82             = 386,
    +    AKEYCODE_XH_CUSTOM_BTN_83             = 387,
    +    AKEYCODE_XH_CUSTOM_BTN_84             = 388,
    +    AKEYCODE_XH_CUSTOM_BTN_85             = 389,
    +    AKEYCODE_XH_CUSTOM_BTN_86             = 390,
    +    AKEYCODE_XH_CUSTOM_BTN_87             = 391,
    +    AKEYCODE_XH_CUSTOM_BTN_88             = 392,
    +    AKEYCODE_XH_CUSTOM_BTN_89             = 393,
    +    AKEYCODE_XH_CUSTOM_BTN_90             = 394,
    +    AKEYCODE_XH_CUSTOM_BTN_91             = 395,
    +    AKEYCODE_XH_CUSTOM_BTN_92             = 396,
    +    AKEYCODE_XH_CUSTOM_BTN_93             = 397,
    +    AKEYCODE_XH_CUSTOM_BTN_94             = 398,
    +    AKEYCODE_XH_CUSTOM_BTN_95             = 399,
    +    AKEYCODE_XH_CUSTOM_BTN_96             = 400,
    +    AKEYCODE_XH_CUSTOM_BTN_97             = 401,
    +    AKEYCODE_XH_CUSTOM_BTN_98             = 402,
    +    AKEYCODE_XH_CUSTOM_BTN_99             = 403,
    +    AKEYCODE_XH_CUSTOM_BTN_100            = 404,
    +    AKEYCODE_XH_CUSTOM_BTN_101            = 405,
    +    AKEYCODE_XH_CUSTOM_BTN_102            = 406,
    +    AKEYCODE_XH_CUSTOM_BTN_103            = 407,
    +    AKEYCODE_XH_CUSTOM_BTN_104            = 408,
    +    AKEYCODE_XH_CUSTOM_BTN_105            = 409,
    +    AKEYCODE_XH_CUSTOM_BTN_106            = 410,
    +    AKEYCODE_XH_CUSTOM_BTN_107            = 411,
    +    AKEYCODE_XH_CUSTOM_BTN_108            = 412,
    +    AKEYCODE_XH_CUSTOM_BTN_109            = 413,
    +    AKEYCODE_XH_CUSTOM_BTN_110            = 414,
    +    AKEYCODE_XH_CUSTOM_BTN_111            = 415,
    +    AKEYCODE_XH_CUSTOM_BTN_112            = 416,
    +    AKEYCODE_XH_CUSTOM_BTN_113            = 417,
    +    AKEYCODE_XH_CUSTOM_BTN_114            = 418,
    +    AKEYCODE_XH_CUSTOM_BTN_115            = 419,
    +    AKEYCODE_XH_CUSTOM_BTN_116            = 420,
    +    AKEYCODE_XH_CUSTOM_BTN_117            = 421,
    +    AKEYCODE_XH_CUSTOM_BTN_118            = 422,
    +    AKEYCODE_XH_CUSTOM_BTN_119            = 423,
    +    AKEYCODE_XH_CUSTOM_BTN_120            = 424,
    +    AKEYCODE_XH_CUSTOM_BTN_121            = 425,
    +    AKEYCODE_XH_CUSTOM_BTN_7              = 426,
    +    AKEYCODE_XH_CUSTOM_BTN_8              = 427,
    +/*************************************************
    +*	sunls_for_yulinian_end						  *
    + *************************************************/
    +	
         // NOTE: If you add a new keycode here you must also add it to several other files.
         //       Refer to frameworks/base/core/java/android/view/KeyEvent.java for the full list.
     };
    diff --git a/frameworks/native/include/input/InputEventLabels.h b/frameworks/native/include/input/InputEventLabels.h
    old mode 100644
    new mode 100755
    index bcce2d3..e21dce4
    --- a/frameworks/native/include/input/InputEventLabels.h
    +++ b/frameworks/native/include/input/InputEventLabels.h
    @@ -308,6 +308,129 @@ static const InputEventLabel KEYCODES[] = {
         DEFINE_KEYCODE(NAVIGATE_NEXT),
         DEFINE_KEYCODE(NAVIGATE_IN),
         DEFINE_KEYCODE(NAVIGATE_OUT),
    +    
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_1  ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_2  ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_3  ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_4  ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_5  ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_6  ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_7  ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_8  ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_9  ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_10 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_11 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_12 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_13 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_14 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_15 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_16 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_17 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_18 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_19 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_20 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_21 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_22 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_23 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_24 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_25 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_26 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_27 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_28 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_29 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_30 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_31 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_32 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_33 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_34 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_35 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_36 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_37 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_38 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_39 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_40 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_41 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_42 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_43 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_44 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_45 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_46 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_47 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_48 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_49 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_50 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_51 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_52 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_53 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_54 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_55 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_56 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_57 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_58 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_59 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_60 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_61 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_62 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_63 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_64 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_65 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_66 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_67 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_68 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_69 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_70 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_71 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_72 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_73 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_74 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_75 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_76 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_77 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_78 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_79 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_80 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_81 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_82 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_83 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_84 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_85 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_86 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_87 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_88 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_89 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_90 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_91 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_92 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_93 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_94 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_95 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_96 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_97 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_98 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_99 ),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_100),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_101),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_102),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_103),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_104),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_105),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_106),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_107),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_108),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_109),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_110),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_111),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_112),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_113),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_114),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_115),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_116),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_117),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_118),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_119),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_120),
    +    DEFINE_KEYCODE(XH_CUSTOM_BTN_121),
    +    
     
         { NULL, 0 }
     };
    diff --git a/kernel/drivers/input/remotectl/remotectl.h b/kernel/drivers/input/remotectl/remotectl.h
    index 6abd6c4..318408a 100755
    --- a/kernel/drivers/input/remotectl/remotectl.h
    +++ b/kernel/drivers/input/remotectl/remotectl.h
    @@ -12,7 +12,7 @@
     #define TIME_BIT1_MIN  1650  /*Bit1  2.25ms*/
     #define TIME_BIT1_MAX  2650
     
    -#define TIME_PRE_MIN   13000   /*4500*/
    +#define TIME_PRE_MIN   12000   /*4500*/
     #define TIME_PRE_MAX   14000   /*5500*/           /*PreLoad 4.5+0.56 = 5.06ms*/
     
     #define TIME_RPT_MIN   95000   /*101000*/
    diff --git a/kernel/drivers/input/remotectl/rkxx_remotectl.c b/kernel/drivers/input/remotectl/rkxx_remotectl.c
    index 161df8c..588c932 100755
    --- a/kernel/drivers/input/remotectl/rkxx_remotectl.c
    +++ b/kernel/drivers/input/remotectl/rkxx_remotectl.c
    @@ -73,7 +73,7 @@ struct rkxx_remotectl_drvdata {
         long int pre_sec;
         long int cur_sec;
         long period;
    -    int scanData;
    +    unsigned int scanData;
         int count;
         int keybdNum;
         int keycode;
    @@ -223,20 +223,120 @@ static struct rkxx_remote_key_table remote_key_table_dpfs[] = {
         {0xf0, 113},       //mute	
     };
     static struct rkxx_remote_key_table remote_key_table_yiyuan[] = {
    -    {0xd0, KEY_POWER}, 
    -    {0x38, KEY_VOLUMEDOWN},    
    -    {0x70, KEY_VOLUMEUP},     
    -    {0x50, 113},       //mute	
    -    {0x48, KEY_UP},  
    -    {0xc8, KEY_DOWN},
    -    {0xa8, KEY_LEFT},
    -    {0x28, KEY_RIGHT}, 
    -    {0x78, 28}, 
    -    {0xe8, KEY_HOME},
    -    {0x82, KEY_MENU},
    -    {0xc0, KEY_BACK},          
    -    {0x8e, 388}, 
    -    {0x42, KEY_F1}, 
    +		{0x01, KEY_C_START		},
    +		{0x02, KEY_C_STOP		  },
    +		{0x03, KEY_C_STARTSTOP },
    +		{0x04, KEY_C_ENTER		},
    +		{0x05, KEY_C_RESET		},
    +		{0x06, KEY_C_MODE		  },
    +		{0x07, KEY_C_PROGRAM	},
    +		{0x08, KEY_C_PROGRAMADD },
    +		{0x09, KEY_C_PROGRAMDEC },
    +		{0x0a, KEY_C_SP_ADD	  },
    +		{0x0b, KEY_C_SP_DEC	  },
    +		{0x0c, KEY_C_INC_ADD	},
    +		{0x0d, KEY_C_INC_DEC	},
    +		{0x0e, KEY_C_RES_ADD	},
    +		{0x0f, KEY_C_RES_DEC	},
    +		{0x10, KEY_C_SET_ADD	},
    +		{0x11, KEY_C_SET_DEC	},
    +		{0x12, KEY_C_VOL_ADD	},
    +		{0x13, KEY_C_VOL_DEC	},
    +		{0x14, KEY_C_REPEAT	  },
    +		{0x15, KEY_C_SP_OK    },
    +		{0x16, KEY_C_INC_OK   },
    +		{0x17, KEY_C_FAN			},
    +		{0x18, KEY_C_COOLDOWN },
    +		{0x19, KEY_C_RETURN	  },
    +		{0x1a, KEY_C_PAUSE		},
    +		{0x1b, KEY_C_PLAYPAUSE },
    +		{0x1c, KEY_C_MAINPAGE },
    +		{0x1d, KEY_C_MENU		  },
    +		{0x1e, KEY_C_PREV		  },
    +		{0x1f, KEY_C_NEXT		  },
    +		{0x20, KEY_C_SET			},
    +		{0x21, KEY_C_MUTE		  },
    +		{0x30, KEY_C_SP_1		  },
    +		{0x31, KEY_C_SP_2		  },
    +		{0x32, KEY_C_SP_3		  },
    +		{0x33, KEY_C_SP_4		  },
    +		{0x34, KEY_C_SP_5		  },
    +		{0x35, KEY_C_SP_6		  },
    +		{0x36, KEY_C_SP_7		  },
    +		{0x37, KEY_C_SP_8		  },
    +		{0x38, KEY_C_SP_9		  },
    +		{0x39, KEY_C_SP_10		},
    +		{0x3a, KEY_C_SP_11		},
    +		{0x3b, KEY_C_SP_12		},
    +		{0x3c, KEY_C_SP_13		},
    +		{0x3d, KEY_C_SP_14		},
    +		{0x3e, KEY_C_SP_15		},
    +		{0x3f, KEY_C_SP_16		},
    +		{0x40, KEY_C_SP_17		},
    +		{0x41, KEY_C_SP_18		},
    +		{0x42, KEY_C_SP_19		},
    +		{0x43, KEY_C_SP_20		},
    +		{0x50, KEY_C_INC_1		},
    +		{0x51, KEY_C_INC_2		},
    +		{0x52, KEY_C_INC_3		},
    +		{0x53, KEY_C_INC_4		},
    +		{0x54, KEY_C_INC_5		},
    +		{0x55, KEY_C_INC_6		},
    +		{0x56, KEY_C_INC_7		},
    +		{0x57, KEY_C_INC_8		},
    +		{0x58, KEY_C_INC_9		},
    +		{0x59, KEY_C_INC_10	  },
    +		{0x5a, KEY_C_INC_11	  },
    +		{0x5b, KEY_C_INC_12	  },
    +		{0x5c, KEY_C_INC_13	  },
    +		{0x5d, KEY_C_INC_14	  },
    +		{0x5e, KEY_C_INC_15	  },
    +		{0x5f, KEY_C_INC_16	  },
    +		{0x60, KEY_C_INC_17	  },
    +		{0x61, KEY_C_INC_18	  },
    +		{0x62, KEY_C_INC_19	  },
    +		{0x63, KEY_C_INC_20	  },
    +		{0x70, KEY_C_RES_1		},
    +		{0x71, KEY_C_RES_2		},
    +		{0x72, KEY_C_RES_3		},
    +		{0x73, KEY_C_RES_4		},
    +		{0x74, KEY_C_RES_5		},
    +		{0x75, KEY_C_RES_6		},
    +		{0x76, KEY_C_RES_7		},
    +		{0x77, KEY_C_RES_8		},
    +		{0x78, KEY_C_RES_9		},
    +		{0x79, KEY_C_RES_10	  },
    +		{0x7a, KEY_C_RES_11	  },
    +		{0x7b, KEY_C_RES_12	  },
    +		{0x7c, KEY_C_RES_13	  },
    +		{0x7d, KEY_C_RES_14	  },
    +		{0x7e, KEY_C_RES_15	  },
    +		{0x7f, KEY_C_RES_16	  },
    +		{0x80, KEY_C_RES_17	  },
    +		{0x81, KEY_C_RES_18	  },
    +		{0x82, KEY_C_RES_19	  },
    +		{0x83, KEY_C_RES_20	  },
    +		{0x90, KEY_C_PRO_1		},
    +		{0x91, KEY_C_PRO_2		},
    +    {0x92, KEY_C_PRO_3		},  	
    +    {0x93, KEY_C_PRO_4		}, 
    +    {0x94, KEY_C_PRO_5		},   
    +    {0x95, KEY_C_PRO_6		},       		
    +    {0x96, KEY_C_PRO_7		},  				
    +    {0x97, KEY_C_PRO_8		},      
    +    {0x98, KEY_C_PRO_9		},      
    +    {0x99, KEY_C_PRO_10	  },  
    +    {0x9a, KEY_C_PRO_11	  },        		
    +    {0x9b, KEY_C_PRO_12	  },  			
    +    {0x9c, KEY_C_PRO_13	  },  			
    +		{0x9d, KEY_C_PRO_14	  },	
    +		{0x9e, KEY_C_PRO_15	  },
    +		{0x9f, KEY_C_PRO_16	  },
    +		{0xa0, KEY_C_PRO_17	  },
    +		{0xa1, KEY_C_PRO_18	  },
    +		{0xa2, KEY_C_PRO_19	  },
    +		{0xa3, KEY_C_PRO_20	  },
    +
     };
     
     static struct rkxx_remote_key_table remote_key_table_ShengZhong[] = {
    @@ -284,7 +384,7 @@ static struct rkxx_remotectl_button remotectl_button[] =
         },
         {  
            .usercode = 0x10ef, 
    -       .nbuttons =  17, 
    +       .nbuttons =  113, 
            .key_table = &remote_key_table_yiyuan[0],
         },
     	{  
    @@ -308,12 +408,26 @@ static int remotectl_keybdNum_lookup(struct rkxx_remotectl_drvdata *ddata)
         return 0;
     }
     
    +unsigned int reverse(unsigned int x)
    +{
    +    x = (((x & 0xaaaaaaaa) >> 1) | ((x & 0x55555555) << 1));
    +    x = (((x & 0xcccccccc) >> 2) | ((x & 0x33333333) << 2));
    +    x = (((x & 0xf0f0f0f0) >> 4) | ((x & 0x0f0f0f0f) << 4));
    +    x = (((x & 0xff00ff00) >> 8) | ((x & 0x00ff00ff) << 8));
    +
    +    return((x >> 16) | (x << 16));
    +}
     
     static int remotectl_keycode_lookup(struct rkxx_remotectl_drvdata *ddata)
     {	
         int i;	
    -    unsigned char keyData = ((ddata->scanData >> 8) & 0xff);
    -		//printk("vic------ remotectl_keycode_lookup  0x%x
    ",keyData);
    +   // unsigned char keyData = ((ddata->scanData >> 8) & 0xff);
    +
    +   unsigned char keyData = ((reverse((ddata->scanData)&0xFFFF)>>16) & 0x00ff);
    +
    +   
    +	 //printk("vic------ remotectl_keycode_lookup  0x%x
    ",keyData);
    +		
         for (i = 0; i < remotectl_button[ddata->keybdNum].nbuttons; i++){
             if (remotectl_button[ddata->keybdNum].key_table[i].scanCode == keyData){			
                 ddata->keycode = remotectl_button[ddata->keybdNum].key_table[i].keyCode;
    diff --git a/kernel/include/uapi/linux/input.h b/kernel/include/uapi/linux/input.h
    old mode 100644
    new mode 100755
    index a86f530..caf7f9d
    --- a/kernel/include/uapi/linux/input.h
    +++ b/kernel/include/uapi/linux/input.h
    @@ -473,6 +473,129 @@ struct input_keymap_entry {
     
     #define KEY_MICMUTE		248	/* Mute / unmute the microphone */
     
    +/*************************************************
    +*	sunls_for_yulinian_start					  *
    +*	按键红外用户码——0xf708						  *
    +*	按键红外键值码定义							  *
    + *************************************************/
    +#define KEY_C_START					0x01
    +#define KEY_C_STOP					0x02
    +#define KEY_C_STARTSTOP			0x03
    +#define KEY_C_ENTER					0x04
    +#define KEY_C_RESET					0x05
    +#define KEY_C_MODE					0x06
    +#define KEY_C_PROGRAM				0x07
    +#define KEY_C_PROGRAMADD		0x08
    +#define KEY_C_PROGRAMDEC		0x09
    +#define KEY_C_SP_ADD				0x0a
    +#define KEY_C_SP_DEC				0x0b
    +#define KEY_C_INC_ADD				0x0c
    +#define KEY_C_INC_DEC				0x0d
    +#define KEY_C_RES_ADD				0x0e
    +#define KEY_C_RES_DEC				0x0f
    +#define KEY_C_SET_ADD				0x10
    +#define KEY_C_SET_DEC				0x11
    +#define KEY_C_VOL_ADD				0x12
    +#define KEY_C_VOL_DEC				0x13
    +#define KEY_C_REPEAT				0x14
    +#define KEY_C_SP_OK    			0x15
    +#define KEY_C_INC_OK   			0x16
    +#define KEY_C_FAN						0x17
    +#define KEY_C_COOLDOWN			0x18
    +#define KEY_C_RETURN				0x19
    +#define KEY_C_PAUSE					0x1a
    +#define KEY_C_PLAYPAUSE			0x1b
    +#define KEY_C_MAINPAGE			0x1c
    +#define KEY_C_MENU					0x1d
    +#define KEY_C_PREV					0x1e
    +#define KEY_C_NEXT					0x1f
    +#define KEY_C_SET						0x20
    +#define KEY_C_MUTE					0x21
    +#define KEY_C_SP_1					0x30
    +#define KEY_C_SP_2					0x31
    +#define KEY_C_SP_3					0x32
    +#define KEY_C_SP_4					0x33
    +#define KEY_C_SP_5					0x34
    +#define KEY_C_SP_6					0x35
    +#define KEY_C_SP_7					0x36
    +#define KEY_C_SP_8					0x37
    +#define KEY_C_SP_9					0x38
    +#define KEY_C_SP_10					0x39
    +#define KEY_C_SP_11					0x3a
    +#define KEY_C_SP_12					0x3b
    +#define KEY_C_SP_13					0x3c
    +#define KEY_C_SP_14					0x3d
    +#define KEY_C_SP_15					0x3e
    +#define KEY_C_SP_16					0x3f
    +#define KEY_C_SP_17					0x40
    +#define KEY_C_SP_18					0x41
    +#define KEY_C_SP_19					0x42
    +#define KEY_C_SP_20					0x43
    +#define KEY_C_INC_1					0x50
    +#define KEY_C_INC_2					0x51
    +#define KEY_C_INC_3					0x52
    +#define KEY_C_INC_4					0x53
    +#define KEY_C_INC_5					0x54
    +#define KEY_C_INC_6					0x55
    +#define KEY_C_INC_7					0x56
    +#define KEY_C_INC_8					0x57
    +#define KEY_C_INC_9					0x58
    +#define KEY_C_INC_10				0x59
    +#define KEY_C_INC_11				0x5a
    +#define KEY_C_INC_12				0x5b
    +#define KEY_C_INC_13				0x5c
    +#define KEY_C_INC_14				0x5d
    +#define KEY_C_INC_15				0x5e
    +#define KEY_C_INC_16				0x5f
    +#define KEY_C_INC_17				0x60
    +#define KEY_C_INC_18				0x61
    +#define KEY_C_INC_19				0x62
    +#define KEY_C_INC_20				0x63
    +#define KEY_C_RES_1					0x70
    +#define KEY_C_RES_2					0x71
    +#define KEY_C_RES_3					0x72
    +#define KEY_C_RES_4					0x73
    +#define KEY_C_RES_5					0x74
    +#define KEY_C_RES_6					0x75
    +#define KEY_C_RES_7					0x76
    +#define KEY_C_RES_8					0x77
    +#define KEY_C_RES_9					0x78
    +#define KEY_C_RES_10				0x79
    +#define KEY_C_RES_11				0x7a
    +#define KEY_C_RES_12				0x7b
    +#define KEY_C_RES_13				0x7c
    +#define KEY_C_RES_14				0x7d
    +#define KEY_C_RES_15				0x7e
    +#define KEY_C_RES_16				0x7f
    +#define KEY_C_RES_17				0x80
    +#define KEY_C_RES_18				0x81
    +#define KEY_C_RES_19				0x82
    +#define KEY_C_RES_20				0x83
    +#define KEY_C_PRO_1					0x90
    +#define KEY_C_PRO_2					0x91
    +#define KEY_C_PRO_3					0x92
    +#define KEY_C_PRO_4					0x93
    +#define KEY_C_PRO_5					0x94
    +#define KEY_C_PRO_6					0x95
    +#define KEY_C_PRO_7					0x96
    +#define KEY_C_PRO_8					0x97
    +#define KEY_C_PRO_9					0x98
    +#define KEY_C_PRO_10				0x99
    +#define KEY_C_PRO_11				0x9a
    +#define KEY_C_PRO_12				0x9b
    +#define KEY_C_PRO_13				0x9c
    +#define KEY_C_PRO_14				0x9d
    +#define KEY_C_PRO_15				0x9e
    +#define KEY_C_PRO_16				0x9f
    +#define KEY_C_PRO_17				0xa0
    +#define KEY_C_PRO_18				0xa1
    +#define KEY_C_PRO_19				0xa2
    +#define KEY_C_PRO_20				0xa3 
    +                        
    +/*************************************************
    +*	sunls_for_yulinian_end						  *
    + *************************************************/
    +
     /* Code 255 is reserved for special needs of AT keyboard driver */
     
     #define BTN_MISC		0x100
    

      

  • 相关阅读:
    取出某个月有几天
    重建索引时,一些数值
    java代理概念
    java内部类和静态内部类
    Lamdba表达式的代码使用讲解
    java 中Vector的使用详解
    mysql 安装失败 start service执行不下去
    Mysql中ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8怎么转换为sql sever2008的代码
    通过命令行发送邮件
    Servlet开发总结(一)
  • 原文地址:https://www.cnblogs.com/crushgirl/p/14001225.html
Copyright © 2011-2022 走看看