File Don-t-pass-virtual-indicator-down-to-the-HW-Ctrl-fun.patch of Package xorg-x11-server

From 00bb3681eda3d52e2bac7561754ef2f249ad1194 Mon Sep 17 00:00:00 2001
From: Egbert Eich <eich@sles11.(none)>
Date: Fri, 31 Jul 2009 11:08:42 +0200
Subject: [PATCH] Don't pass virtual indicator down to the HW Ctrl function.

Virtual indicators are by definition indicators which don't have
a hardware equivalent. Thus information about their status change
should not be handed down to the hardware.
This removes the ugly problem that the Scroll Lock indicator lights
up when Shift Lock is toggled as Shift Lock is placed on the 4th
indicator by default which is virtual, while the kbd driver maps the
4th indicator on the Scroll Lock LED.
To retain the old behavior simply do not mark the 4th indicator virtual
by doing something like:
xkb_keycodes "4th_indicator" {
	indicator 4 = "Scroll Lock";
};
to the keycodes.
---
 xkb/ddxLEDs.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/xkb/ddxLEDs.c b/xkb/ddxLEDs.c
index b4c8086..b762482 100644
--- a/xkb/ddxLEDs.c
+++ b/xkb/ddxLEDs.c
@@ -52,6 +52,7 @@ XkbDDXUpdateDeviceIndicators(	DeviceIntPtr		dev,
 				XkbSrvLedInfoPtr 	sli,
 				CARD32 			new)
 {
+    new &= sli->physIndicators;
     if (sli->fb.kf==dev->kbdfeed)
 	XkbDDXUpdateIndicators(dev,new);
     else if (sli->class==KbdFeedbackClass) {
-- 
1.6.0.2

openSUSE Build Service is sponsored by