Opened 6 years ago

Last modified 6 years ago

#227 new defect

Hardware Controls

Reported by: diver Owned by:
Priority: high Milestone: ALSA Hardware Compatibility
Component: UNIAUD32 Version: 1.9.26
Severity: blocker Keywords:
Cc:

Description

Hardware controls do not work (no affect) to higher or lower the volume. Pressing them produces the "d" "c" and "b" characters at a windowed command prompt.

Change History (4)

comment:1 Changed 6 years ago by dazarewicz

"Hardware controls"? You mean keys on the keyboard? Sorry, but these keys on the keyboard do nothing but produce characters and this has absolutely nothing at all to do with uniaud.

comment:2 Changed 6 years ago by diver

yes i mean the ones on the keyboard. so on windows (i know it's not a valid suggestion) those keys are handled in a special way? i wonder about the mute Key. It really mutes even it adds a "d" character to a command prompt.

comment:3 Changed 6 years ago by dazarewicz

In some laptops the BIOS intercepts certain keys and acts on them. However, the trend is to make all the keys on the keyboard produce actual key codes so that applications can do what they want with them. Uniaud is a device driver and it does not, cannot and should not deal with human interface functions. Volume and mute, for example, are MMOS2 functions with corresponding APIs that can be called by any application. The appropriate place to receive/intercept keyboard characters and do something with them is in the application level. The WPS/desktop, WPS enhancer, or a ring 3 daemon are places this can be done.

Many applications (including ones I have written) already look for and act on these volume keys. If you also implement a system-wide application to do the same thing, you have to address the issue of having it conflicting with other applications doing the same thing.

It seems to me that XWP or an XWP widget would be the perfect place for something like this.

comment:4 Changed 6 years ago by diver

a XWP widget would probably be best i agree. I wonder if it would be hard your already written app to create as widget.

Note: See TracTickets for help on using tickets.