1
0
OBS User unknown 2008-04-21 22:05:44 +00:00 committed by Git OBS Bridge
parent b8dab07c91
commit ce3beb43a8
4 changed files with 125 additions and 1 deletions

87
events.diff Normal file
View File

@ -0,0 +1,87 @@
--- xorg-server-1.4.0.90/hw/xfree86/common/xf86Events.c.orig 2008-04-21 19:26:30.000000000 +0000
+++ xorg-server-1.4.0.90/hw/xfree86/common/xf86Events.c 2008-04-21 19:47:54.000000000 +0000
@@ -884,22 +884,26 @@
* Keep the order: Disable Device > LeaveVT
* EnterVT > EnableDevice
*/
+
+ for (i = 0; i < xf86NumScreens; i++)
+ xf86Screens[i]->LeaveVT(i, 0);
+
+ for (ih = InputHandlers; ih; ih = ih->next) {
+ if (ih->is_input)
+ xf86DisableInputHandler(ih);
+ else
+ xf86DisableGeneralHandler(ih);
+ }
+
pInfo = xf86InputDevs;
while (pInfo) {
if (pInfo->dev)
DisableDevice(pInfo->dev);
pInfo = pInfo->next;
}
+ /* XXX HACK */
xf86EnterServerState(SETUP);
- for (i = 0; i < xf86NumScreens; i++)
- xf86Screens[i]->LeaveVT(i, 0);
- for (ih = InputHandlers; ih; ih = ih->next) {
- if (ih->is_input)
- xf86DisableInputHandler(ih);
- else
- xf86DisableGeneralHandler(ih);
- }
xf86AccessLeave(); /* We need this here, otherwise */
xf86AccessLeaveState(); /* console won't be restored */
@@ -929,14 +933,10 @@
pInfo = xf86InputDevs;
while (pInfo) {
- if (pInfo->dev) {
- xf86ReleaseKeys(pInfo->dev);
+ if (pInfo->dev)
EnableDevice(pInfo->dev);
- }
pInfo = pInfo->next;
}
- /* XXX HACK */
- xf86ReleaseKeys(inputInfo.keyboard);
for (ih = InputHandlers; ih; ih = ih->next) {
if (ih->is_input)
xf86EnableInputHandler(ih);
@@ -946,6 +946,17 @@
xf86UnblockSIGIO(prevSIGIO);
} else {
+
+ pInfo = xf86InputDevs;
+ while (pInfo) {
+ if (pInfo->dev) {
+ xf86ReleaseKeys(pInfo->dev);
+ }
+ pInfo = pInfo->next;
+ }
+ /* XXX HACK */
+ xf86ReleaseKeys(inputInfo.keyboard);
+
#ifdef XF86PM
if (xf86OSPMClose)
xf86OSPMClose();
@@ -996,14 +1007,10 @@
pInfo = xf86InputDevs;
while (pInfo) {
- if (pInfo->dev) {
- xf86ReleaseKeys(pInfo->dev);
+ if (pInfo->dev)
EnableDevice(pInfo->dev);
- }
pInfo = pInfo->next;
}
- /* XXX HACK */
- xf86ReleaseKeys(inputInfo.keyboard);
for (ih = InputHandlers; ih; ih = ih->next) {
if (ih->is_input)

13
xkb_action.diff Normal file
View File

@ -0,0 +1,13 @@
diff --git a/xkb/xkbActions.c b/xkb/xkbActions.c
index 8c72874..f226b6b 100644
--- a/xkb/xkbActions.c
+++ b/xkb/xkbActions.c
@@ -1031,7 +1031,7 @@ _XkbFilterDeviceBtn( XkbSrvInfoPtr xkbi,
DeviceIntPtr dev;
int button;
- if (dev == inputInfo.keyboard)
+ if (xkbi->device == inputInfo.keyboard)
return 0;
if (filter->keycode==0) { /* initial press */

View File

@ -1,3 +1,16 @@
-------------------------------------------------------------------
Mon Apr 21 21:20:37 CEST 2008 - sndirsch@suse.de
- events.diff
* eating up key events before going into the idle loop upon vt
switch instead of after return (bnc #152522)
-------------------------------------------------------------------
Mon Apr 21 18:40:41 CEST 2008 - sndirsch@suse.de
- xkb_action.diff
* fixed remaining unitialized warning in X.Org (bnc #83910)
-------------------------------------------------------------------
Sun Apr 20 05:17:28 CEST 2008 - sndirsch@suse.de

View File

@ -22,7 +22,7 @@ BuildRequires: libjpeg-devel
Url: http://xorg.freedesktop.org/
%define EXPERIMENTAL 0
Version: 7.3
Release: 91
Release: 92
License: X11/MIT
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Group: System/X11/Servers/XF86_4
@ -112,6 +112,8 @@ Patch104: bitmap_always_unscaled.diff
Patch105: commit-37b1258.diff
Patch106: randr1_1-sig11.diff
Patch107: XAANoOffscreenPixmaps.diff
Patch108: xkb_action.diff
Patch109: events.diff
%description
This package contains the X.Org Server.
@ -253,6 +255,8 @@ popd
%patch105 -p1
%patch106 -p1
%patch107 -p0
%patch108 -p1
%patch109 -p1
%build
pushd xorg-docs-*
@ -559,6 +563,13 @@ exit 0
%endif
%changelog
* Mon Apr 21 2008 sndirsch@suse.de
- events.diff
* eating up key events before going into the idle loop upon vt
switch instead of after return (bnc #152522)
* Mon Apr 21 2008 sndirsch@suse.de
- xkb_action.diff
* fixed remaining unitialized warning in X.Org (bnc #83910)
* Sun Apr 20 2008 sndirsch@suse.de
- fbdevhw.diff
* screen blanking not supported by vesafb of Linux kernel