Fn+F8 and laptop keys

Paulo Cavalcanti promac at gmail.com
Sun Jul 27 13:13:43 UTC 2008


On Sat, Jul 26, 2008 at 8:28 AM, Paulo Cavalcanti <promac at gmail.com> wrote:

> Hi,
>
> I have had some problems for making my laptop special keys
> to work. First of all, hall-info from F8 is not updated. In my case,
> a Dell owner, the file
>
> /usr/share/hal/fdi/information/10freedesktop/30-keymap-dell.fdi
>
> is divided based on Dell models (very few). The current hall-info has only
> one configuration
> for all models. Anyway, fixing the keymap made all my keys working:
>
> Fn+F1 hibernate
> Fn+F3 battery status (just show the status once, a second hit does not show
> anything. Why?)
> and all the multimedia keys.
>
> This is good, because there is no need to include setkeycodes in
> /etc/rc.local.
>
> The only key that is really not working is the Fn+F8, to switch between the
> LCD and
> an external monitor. Although I have
>
> <append key="input.keymap.data" type="strlist">e00b:displaytoggle</append>
> <!-- Fn+F8 CRT/LCD -->
>
> in my file, it does not make any difference at all. If I press Fn+F8, dmesg
> gives me:
>
> atkbd.c: Unknown key pressed (translated set 2, code 0x8b on
> isa0060/serio0).
> atkbd.c: Use 'setkeycodes e00b <keycode>' to make it known.
>
> Therefore, the key is not mapped. Well, I tried mapping it to 214
> (XF86Video), 227, etc ... and no joy.
>
> I have an nvidia 8400 GS card. If during the boot I press Fn+F8 before
> entering X, I can switch to the
> external monitor, but I cannot go back to the laptop LCD. I tried the nv
> and the nvidia binary driver in xorg.conf.
> Using the nv driver, the login screen appears on both, LCD+monitor, but
> after loging in, only the external monitor is active. Using the binary
> driver, not even that, the login screen appears onto only one.
>
> I saw some posts about using xrandr for this purpose:
>
> http://ubuntuforums.org/archive/index.php/t-634675.html
>
> My question is: is it possible to switch using an nvidia card on Fedora?
> Would xrandr work?
>
> I also think that an updated hall-info for F8 is in order. It would be
> really nice if those keys worked just out of the box.
> This is the type of issue that is very difficult to fix without some
> knowledge, and makes users look for other distros. In fact, switching to an
> external monitor is essential for presentations using a projector. Since I
> wiped out my Vista OS, I do not even know if switching worked on Windows for
> my Vostro 1400.
>
>
Well, the scheme works surprisinly well.

I tested it on my desktop and a TV, and my laptop and an external Samsung
CRT.

I also managed to make mplayer send its output automatically to the
secondary display when
in full screen mode (using SDL).

Unfortunately, everything depends on the graphics driver. I used the binary
nvidia driver (177.13).

But definitively, it is something very useful, and should be supported out
of the box, in my opinion.


#!/bin/bash
#
# Toggles display (0: TwinView, 1: TV/CRT, and 2:LCD)
# by switching through xorg resolutions.
# It is neessary to use 'MetaModes' in
# the Nvidia driver to set up a few
# different resolutions.
#
if [ -f ~/.changeres ]; then
   . ~/.changeres
fi

if [ -z $INDEX ]; then
   INDEX=-1
fi

let INDEX "INDEX += 1"

if [[ $INDEX > 2 ]]; then
    INDEX=0
fi

# Interfaces to RandR extension.
# Sets the screen size using an index
# into the list of available sizes.
# In case of error, it prints:
#   "Size index 4 is too large, there are only 3 sizes"

xrandr -s $INDEX

if [ $? == "0" ]; then
   echo "OK"
else
   INDEX=0
   xrandr -s $INDEX
fi

echo "#!/bin/bash" > ~/.changeres
echo "INDEX=$INDEX" >> ~/.changeres

-----------------------------------------------------------

This is the contents of my ~/.xbindkeysrc:

#Toggle Display
"/home/roma/bin/changeres.sh"
    m:0x0 + c:214
    XF86Display



-- 
Paulo Roma Cavalcanti
LCG - UFRJ
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.fedoraproject.org/pipermail/devel/attachments/20080727/b8a35637/attachment.html 


More information about the devel mailing list