forked from pool/xorg-x11-server
de140e0677
Copy from X11:XOrg/xorg-x11-server based on submit request 19080 from user sndirsch OBS-URL: https://build.opensuse.org/request/show/19080 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/xorg-x11-server?expand=0&rev=138
122 lines
4.6 KiB
Diff
122 lines
4.6 KiB
Diff
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Config.c
|
|
===================================================================
|
|
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Config.c
|
|
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Config.c
|
|
@@ -706,6 +706,7 @@ typedef enum {
|
|
FLAG_NOTRAPSIGNALS,
|
|
FLAG_DONTVTSWITCH,
|
|
FLAG_DONTZAP,
|
|
+ FLAG_ZAPWARNING,
|
|
FLAG_DONTZOOM,
|
|
FLAG_DISABLEVIDMODE,
|
|
FLAG_ALLOWNONLOCAL,
|
|
@@ -743,6 +744,8 @@ static OptionInfoRec FlagOptions[] = {
|
|
{0}, FALSE },
|
|
{ FLAG_DONTZAP, "DontZap", OPTV_BOOLEAN,
|
|
{0}, FALSE },
|
|
+ { FLAG_ZAPWARNING, "ZapWarning", OPTV_BOOLEAN,
|
|
+ {0}, FALSE },
|
|
{ FLAG_DONTZOOM, "DontZoom", OPTV_BOOLEAN,
|
|
{0}, FALSE },
|
|
{ FLAG_DISABLEVIDMODE, "DisableVidModeExtension", OPTV_BOOLEAN,
|
|
@@ -855,6 +858,7 @@ configServerFlags(XF86ConfFlagsPtr flags
|
|
xf86GetOptValBool(FlagOptions, FLAG_NOTRAPSIGNALS, &xf86Info.notrapSignals);
|
|
xf86GetOptValBool(FlagOptions, FLAG_DONTVTSWITCH, &xf86Info.dontVTSwitch);
|
|
xf86GetOptValBool(FlagOptions, FLAG_DONTZAP, &xf86Info.dontZap);
|
|
+ xf86GetOptValBool(FlagOptions, FLAG_ZAPWARNING, &xf86Info.ZapWarning);
|
|
xf86GetOptValBool(FlagOptions, FLAG_DONTZOOM, &xf86Info.dontZoom);
|
|
|
|
xf86GetOptValBool(FlagOptions, FLAG_IGNORE_ABI, &xf86Info.ignoreABI);
|
|
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Events.c
|
|
===================================================================
|
|
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Events.c
|
|
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Events.c
|
|
@@ -191,12 +191,26 @@ xf86ProcessActionEvent(ActionEvent actio
|
|
#endif
|
|
switch (action) {
|
|
case ACTION_TERMINATE:
|
|
- if (!xf86Info.dontZap) {
|
|
+ if (xf86Info.dontZap)
|
|
+ break;
|
|
+
|
|
+ if (xf86Info.ZapWarning) {
|
|
+ static struct timeval LastZap = { 0, 0};
|
|
+ struct timeval NewZap;
|
|
+
|
|
+ gettimeofday(&NewZap, NULL);
|
|
+
|
|
+ if ((NewZap.tv_sec - LastZap.tv_sec) >= 2) {
|
|
+ xf86OSRingBell(100, 1000, 500);
|
|
+ LastZap = NewZap;
|
|
+ break;
|
|
+ }
|
|
+ }
|
|
+
|
|
#ifdef XFreeXDGA
|
|
- DGAShutdown();
|
|
+ DGAShutdown();
|
|
#endif
|
|
- GiveUp(0);
|
|
- }
|
|
+ GiveUp(0);
|
|
break;
|
|
case ACTION_NEXT_MODE:
|
|
if (!xf86Info.dontZoom)
|
|
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Globals.c
|
|
===================================================================
|
|
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Globals.c
|
|
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Globals.c
|
|
@@ -106,6 +106,7 @@ xf86InfoRec xf86Info = {
|
|
.vtRequestsPending = FALSE,
|
|
.dontVTSwitch = FALSE,
|
|
.dontZap = FALSE,
|
|
+ .ZapWarning = FALSE,
|
|
.dontZoom = FALSE,
|
|
.notrapSignals = FALSE,
|
|
.caughtSignal = FALSE,
|
|
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Privstr.h
|
|
===================================================================
|
|
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Privstr.h
|
|
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Privstr.h
|
|
@@ -72,6 +72,7 @@ typedef struct {
|
|
Bool vtRequestsPending;
|
|
Bool dontVTSwitch;
|
|
Bool dontZap;
|
|
+ Bool ZapWarning;
|
|
Bool dontZoom;
|
|
Bool notrapSignals; /* don't exit cleanly - die at fault */
|
|
Bool caughtSignal;
|
|
Index: xorg-server-1.6.3.901/hw/xfree86/doc/man/Xorg.man.pre
|
|
===================================================================
|
|
--- xorg-server-1.6.3.901.orig/hw/xfree86/doc/man/Xorg.man.pre
|
|
+++ xorg-server-1.6.3.901/hw/xfree86/doc/man/Xorg.man.pre
|
|
@@ -452,8 +452,8 @@ are:
|
|
Immediately kills the server -- no questions asked. This is disabled by
|
|
default. It can be enabled with the -retro command line flag or by setting
|
|
the
|
|
-.B DontZap
|
|
-__xconfigfile__(__filemansuffix__) file option to a FALSE value.
|
|
+.B DontZap/ZapWarning
|
|
+__xconfigfile__(__filemansuffix__) file options to a FALSE value.
|
|
.TP 8
|
|
.B Ctrl+Alt+Keypad-Plus
|
|
Change video mode to next one specified in the configuration file.
|
|
Index: xorg-server-1.6.3.901/hw/xfree86/doc/man/xorg.conf.man.pre
|
|
===================================================================
|
|
--- xorg-server-1.6.3.901.orig/hw/xfree86/doc/man/xorg.conf.man.pre
|
|
+++ xorg-server-1.6.3.901/hw/xfree86/doc/man/xorg.conf.man.pre
|
|
@@ -470,6 +470,13 @@ This action is normally used to terminat
|
|
When this option is enabled, the action has no effect.
|
|
Default: off.
|
|
.TP 7
|
|
+.BI "Option \*qZapWarning\*q \*q" boolean \*q
|
|
+This warns the user loudly when the
|
|
+.B Ctrl+Alt+Backspace
|
|
+sequence is pressed for the first time but still terminates the __xservername__
|
|
+server when this key-sequence is pressed again shortly after.
|
|
+Default: off.
|
|
+.TP 7
|
|
.BI "Option \*qDontZoom\*q \*q" boolean \*q
|
|
This disallows the use of the
|
|
.B Ctrl+Alt+Keypad\-Plus
|