[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

X Strike Force XFree86 SVN commit: r1652 - in trunk/debian: . patches



Author: branden
Date: 2004-07-15 02:13:32 -0500 (Thu, 15 Jul 2004)
New Revision: 1652

Modified:
   trunk/debian/CHANGESETS
   trunk/debian/TODO
   trunk/debian/changelog
   trunk/debian/patches/000_stolen_from_HEAD.diff
Log:
Grab from XFree86 CVS (no later than 2003-11-10) several fixes to the
RandR extension manual page and server-side implementation.
+ Fixed rounding of refresh rate in RandR, updated Xrandr man page
  (BugzillaR #527, Egbert Eich).
+ Fix RandR initialization problem when default screen resolution is
  different from the virtual resolution. (Bugzilla #853, Bob Paauwe).
+ The call to xf86RandRSetMode() from xf86RandRCreateScreenResources()
  doesn't appear to be necessary.  Removing it restores the documented
  ViewPort behaviour when RandR is enabled (David Dawes).
+ Warning fix [Marc Aurele La France]
(Closes: #256297)


Modified: trunk/debian/CHANGESETS
===================================================================
--- trunk/debian/CHANGESETS	2004-07-15 06:36:06 UTC (rev 1651)
+++ trunk/debian/CHANGESETS	2004-07-15 07:13:32 UTC (rev 1652)
@@ -95,4 +95,17 @@
 Update XTerm FAQ to latest version (1.84) from Thomas Dickey's website.
     1647
 
+Grab from XFree86 CVS (no later than 2003-11-10) several fixes to the
+RandR extension manual page and server-side implementation.
++ Fixed rounding of refresh rate in RandR, updated Xrandr man page
+  (BugzillaR #527, Egbert Eich).
++ Fix RandR initialization problem when default screen resolution is
+  different from the virtual resolution. (Bugzilla #853, Bob Paauwe).
++ The call to xf86RandRSetMode() from xf86RandRCreateScreenResources()
+  doesn't appear to be necessary.  Removing it restores the documented
+  ViewPort behaviour when RandR is enabled (David Dawes).
++ Warning fix [Marc Aurele La France]
+(Closes: #256297)
+    1652
+
 vim:set ai et sts=4 sw=4 tw=80:

Modified: trunk/debian/TODO
===================================================================
--- trunk/debian/TODO	2004-07-15 06:36:06 UTC (rev 1651)
+++ trunk/debian/TODO	2004-07-15 07:13:32 UTC (rev 1652)
@@ -57,7 +57,6 @@
     more careful about clobbering autodetected monitor sync ranges; study Jay
     Berkenbilt's feedback [BR]
   + #259080: xserver-xfree86: [debconf] specialized mouse defaults for Hurd [BR]
-* #256297: Apply RandR fixes suggested by Thomas Winischhofer.
 * #255224: Apply SU Yong's patch to fix GBK to COMPOUND_TEXT conversion in the
   zh_CN.gbk locale.
 * #255701: add ISO 10646-1 character set support to ja_JP.UTF-8 XLC_LOCALE data

Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog	2004-07-15 06:36:06 UTC (rev 1651)
+++ trunk/debian/changelog	2004-07-15 07:13:32 UTC (rev 1652)
@@ -73,8 +73,20 @@
 
   * Update XTerm FAQ to latest version (1.84) from Thomas Dickey's website.
 
- -- Branden Robinson <branden@debian.org>  Wed, 14 Jul 2004 19:59:42 -0500
+  * Grab from XFree86 CVS (no later than 2003-11-10) several fixes to the
+    RandR extension manual page and server-side implementation.
+    + Fixed rounding of refresh rate in RandR, updated Xrandr man page
+      (BugzillaR #527, Egbert Eich).
+    + Fix RandR initialization problem when default screen resolution is
+      different from the virtual resolution. (Bugzilla #853, Bob Paauwe).
+    + The call to xf86RandRSetMode() from xf86RandRCreateScreenResources()
+      doesn't appear to be necessary.  Removing it restores the documented
+      ViewPort behaviour when RandR is enabled (David Dawes).
+    + Warning fix [Marc Aurele La France]
+    (Closes: #256297)
 
+ -- Branden Robinson <branden@debian.org>  Thu, 15 Jul 2004 02:13:15 -0500
+
 xfree86 (4.3.0.dfsg.1-6) unstable; urgency=low
 
   Changes by Branden Robinson:

Modified: trunk/debian/patches/000_stolen_from_HEAD.diff
===================================================================
--- trunk/debian/patches/000_stolen_from_HEAD.diff	2004-07-15 06:36:06 UTC (rev 1651)
+++ trunk/debian/patches/000_stolen_from_HEAD.diff	2004-07-15 07:13:32 UTC (rev 1652)
@@ -1,5 +1,7 @@
 $Id$
 
+vim:set encoding=latin1:
+
 Comments by Branden Robinson are made in [brackets].
 
 xc/config/imake/imake.c @ 3.64
@@ -202,6 +204,38 @@
    113. Fix xkbcomp crash with some combinations of layouts in a multi-layout
         keyboard map (Ivan Pascal).
 
+xc/lib/Xrandr/Xrandr.man @ 1.4
+  Remove reference to non-existent Xrender(3) man page (reported to webmaster).
+
+xc/lib/Xrandr/Xrandr.man @ 1.5
+  Fix manual pages typos (Bugzilla #316, Jens Schweikhardt).
+
+xc/programs/xrandr/xrandr.man @ 1.6
+   213. Removed Copyright sign from man pages as this causes some formatters
+        to choke (Egbert Eich).
+
+xc/lib/Xrandr/Xrandr.man @ 1.7
+xc/programs/Xserver/hw/xfree86/common/xf86RandR.c @ 1.5
+   338. Fixed rounding of refresh rate in RandR, updated Xrandr man page
+         (BugzillaR #527, Egbert Eich).
+
+xc/programs/Xserver/hw/xfree86/common/xf86RandR.c @ 1.6
+   562. Fix RandR initialization problem when default screen resolution is
+        different from the virtual resolution. (Bugzilla #853, Bob Paauwe).
+
+xc/programs/Xserver/hw/xfree86/common/xf86RandR.c @ 1.7
+   568. The call to xf86RandRSetMode() from xf86RandRCreateScreenResources()
+        doesn't appear to be necessary.  Removing it restores the documented
+        ViewPort behaviour when RandR is enabled (David Dawes).
+
+xc/programs/Xserver/hw/xfree86/common/xf86RandR.c @ 1.8
+  Warning fix
+  [Marc Aurele La France]
+
+xc/lib/Xrandr/Xrandr.man @ 1.8
+  C-style comments were being stripped by preprocessing.
+  [David Dawes]
+
 diff -urN xc.orig/config/imake/imake.c xc/config/imake/imake.c
 --- xc.orig/config/imake/imake.c	2002-12-17 09:48:27.000000000 +1100
 +++ xc/config/imake/imake.c	2003-04-09 01:58:14.000000000 +1000
@@ -5307,3 +5341,282 @@
            }
            break;
         case KEY_Prefix0:
+Index: xc/programs/Xserver/hw/xfree86/common/xf86RandR.c
+===================================================================
+RCS file: /cvs/xc/programs/Xserver/hw/xfree86/common/xf86RandR.c,v
+retrieving revision 1.4
+retrieving revision 1.8
+diff -u -r1.4 -r1.8
+--- xc/programs/Xserver/hw/xfree86/common/xf86RandR.c	13 Feb 2003 10:49:38 -0000	1.4
++++ xc/programs/Xserver/hw/xfree86/common/xf86RandR.c	10 Nov 2003 16:42:13 -0000	1.8
+@@ -1,5 +1,5 @@
+ /*
+- * $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86RandR.c,v 1.4 2003/02/13 10:49:38 eich Exp $
++ * $XFree86: xc/programs/Xserver/hw/xfree86/common/xf86RandR.c,v 1.8 2003/11/10 16:42:13 tsi Exp $
+  *
+  * Copyright � 2002 Keith Packard, member of The XFree86 Project, Inc.
+  *
+@@ -48,9 +48,9 @@
+ xf86RandRModeRefresh (DisplayModePtr mode)
+ {
+     if (mode->VRefresh)
+-	return (int) mode->VRefresh;
++	return (int) (mode->VRefresh + 0.5);
+     else
+-	return (int) (mode->Clock * 1000.0 / mode->HTotal / mode->VTotal);
++	return (int) (mode->Clock * 1000.0 / mode->HTotal / mode->VTotal + 0.5);
+ }
+ 
+ static Bool
+@@ -60,7 +60,6 @@
+     ScrnInfoPtr		    scrp = XF86SCRNINFO(pScreen);
+     XF86RandRInfoPtr	    randrp = XF86RANDRINFO(pScreen);
+     DisplayModePtr	    mode;
+-    Bool		    reportVirtual = TRUE;
+     int			    refresh0 = 60;
+     
+     *rotations = RR_Rotate_0;
+@@ -75,9 +74,6 @@
+ 				pScreen->mmWidth, pScreen->mmHeight);
+ 	if (!pSize)
+ 	    return FALSE;
+-	if (mode->HDisplay == randrp->virtualX && 
+-	    mode->VDisplay == randrp->virtualY)
+-	    reportVirtual = FALSE;
+ 	RRRegisterRate (pScreen, pSize, refresh);
+ 	if (mode == scrp->currentMode &&
+ 	    mode->HDisplay == pScreen->width && mode->VDisplay == pScreen->height)
+@@ -85,13 +81,14 @@
+ 	if (mode->next == scrp->modes)
+ 	    break;
+     }
+-    if (reportVirtual)
++    if (scrp->currentMode->HDisplay != randrp->virtualX ||
++	scrp->currentMode->VDisplay != randrp->virtualY)
+     {
+ 	mode = scrp->modes;
+ 	pSize = RRRegisterSize (pScreen,
+ 				randrp->virtualX, randrp->virtualY,
+-				pScreen->mmWidth * randrp->virtualX / mode->HDisplay,
+-				pScreen->mmHeight * randrp->virtualY / mode->VDisplay);
++				pScreen->mmWidth * randrp->virtualX / scrp->currentMode->HDisplay,
++				pScreen->mmHeight * randrp->virtualY / scrp->currentMode->VDisplay);
+ 	if (!pSize)
+ 	    return FALSE;
+ 	RRRegisterRate (pScreen, pSize, refresh0);
+@@ -202,17 +199,21 @@
+ static Bool
+ xf86RandRCreateScreenResources (ScreenPtr pScreen)
+ {
+-    ScrnInfoPtr		    scrp = XF86SCRNINFO(pScreen);
+     XF86RandRInfoPtr	    randrp = XF86RANDRINFO(pScreen);
++#if 0
++    ScrnInfoPtr		    scrp = XF86SCRNINFO(pScreen);
+     DisplayModePtr	    mode;
++#endif
+ 
+     pScreen->CreateScreenResources = randrp->CreateScreenResources;
+     if (!(*pScreen->CreateScreenResources) (pScreen))
+ 	return FALSE;
+     
++#if 0
+     mode = scrp->currentMode;
+     if (mode)
+ 	xf86RandRSetMode (pScreen, mode, TRUE);
++#endif
+     
+     return TRUE;
+ }
+Index: xc/lib/Xrandr/Xrandr.man
+===================================================================
+RCS file: /cvs/xc/lib/Xrandr/Xrandr.man,v
+retrieving revision 1.3
+retrieving revision 1.8
+diff -u -r1.3 -r1.8
+--- xc/lib/Xrandr/Xrandr.man	8 Oct 2002 13:00:48 -0000	1.3
++++ xc/lib/Xrandr/Xrandr.man	23 Nov 2003 05:40:36 -0000	1.8
+@@ -1,8 +1,7 @@
+ .\"
+-.\" $XFree86: xc/lib/Xrandr/Xrandr.man,v 1.3 2002/10/08 13:00:48 keithp Exp $
+-.\"
+-.\" Copyright � 2002 Hewlett-Packard Company
++.\" $XFree86: xc/lib/Xrandr/Xrandr.man,v 1.8 2003/11/23 05:40:36 dawes Exp $
+ .\"
++.\" Copyright 2002 Hewlett-Packard Company.\"
+ .\" Permission to use, copy, modify, distribute, and sell this software and its
+ .\" documentation for any purpose is hereby granted without fee, provided that
+ .\" the above copyright notice appear in all copies and that both that
+@@ -54,6 +53,14 @@
+ 	Rotation \fIrotation\fP,
+ 	Time \fItimestamp\fP\^);
+ .sp
++Status XRRSetScreenConfigAndRate \^(\^Display *\fIdpy\fP, 
++				  XRRScreenConfiguration *\fIconfig\fP,
++				  Drawable \fIdraw\fP,
++				  int \fIsize_index\fP,
++				  Rotation \fIrotation\fP,
++				  short \fIrate\fP,
++				  Time \fItimestamp\fP\^);
++.sp
+ Rotation XRRConfigRotations\^(\^
+ 	XRRScreenConfiguration *\fIconfig\fP, 
+ 	Rotation *\fIcurrent_rotation\fP\^);
+@@ -66,10 +73,18 @@
+ 	XRRScreenConfiguration *\fIconfig\fP, 
+ 	int *\fInsizes\fP\^);
+ .sp
++short *XRRConfigRates \^(\^
++	XRRScreenConfiguration *\fIconfig\fP, 
++	int \fIsize_index\fP, 
++	int *\fInrates\fP\^);
++.sp
+ SizeID XRRConfigCurrentConfiguration \^(\^
+ 	XRRScreenConfiguration *\fIconfig\fP, 
+ 	Rotation *\fIrotation\fP\^);
+-.sp    
++.sp
++short XRRConfigCurrentRate \^(\^
++	XRRScreenConfiguration *\fIconfig\fP\^);    
++.sp
+ int XRRRootToScreen\^(\^
+ 	Display *\fIdpy\fP, 
+ 	Window \fIroot\fP\^);
+@@ -81,14 +96,14 @@
+ .sp
+ void XRRSelectInput\^(\^Display *\fIdpy\fP, Window \fIwindow\fP, int \fImask\fP\^);
+ .sp
+-/* 
++/\(** 
+  * intended to take RRScreenChangeNotify,  or 
+  * ConfigureNotify \^(\^\fIon the root window\fP\^)
+  * returns 1 if it is an event type it understands, 0 if not
+  */
+ int XRRUpdateConfiguration\^(\^XEvent *\fIevent\fP^);
+ .sp
+-/* 
++/\(** 
+  * the following are always safe to call, even if RandR is 
+  * not implemented on a screen 
+  */
+@@ -100,6 +115,9 @@
+ XRRScreenSize *XRRSizes\^(\^Display *\fIdpy\fP, 
+ 	int \fIscreen\fP, int *\fInsizes\fP\^);
+ .sp
++short *XRRRates \^(\^Display *\fIdpy\fP, int \fIscreen\fP, 
++	int \fIsize_index\fP, int *\fInrates\fP\^);
++.sp
+ Time XRRTimes \^(\^Display *\fIdpy\fP, int \fIscreen\fP, Time *\fIconfig_timestamp\fP\^);
+ .fi
+ .SH ARGUMENTS
+@@ -121,6 +139,8 @@
+ Specifies the screen configuration being used.
+ .IP \fIsizes\fP 1i
+ Specifies the array of sizes supported.
++.IP \fIrate\fP 1i
++Specifies the refresh rate in Hz.
+ 
+ .SH DATATYPES
+ 
+@@ -134,8 +154,8 @@
+ #define RR_Rotate_180           4
+ #define RR_Rotate_270           8
+ 
+-/* new in 1.0 protocol, to allow reflection of screen */
+-/* reflection is applied after rotation */
++/\(** new in 1.0 protocol, to allow reflection of screen */
++/\(** reflection is applied after rotation */
+ 
+ #define RR_Reflect_X            16
+ #define RR_Reflect_Y            32
+@@ -147,14 +167,14 @@
+ } XRRScreenSize;
+ 
+ typedef struct {
+-    int type;				/* event base */
+-    unsigned long serial;	/* # of last request processed by server */
+-    Bool send_event;		/* true if this came from a SendEvent request */
+-    Display *display;		/* Display the event was read from */
+-    Window window;			/* window which selected for this event */
+-    Window root;			/* Root window for changed screen */
+-    Time timestamp;			/* when the screen change occurred */
+-    Time config_timestamp;	/* when the last configuration change */
++    int type;				/\(** event base */
++    unsigned long serial;	/\(** # of last request processed by server */
++    Bool send_event;		/\(** true if this came from a SendEvent request */
++    Display *display;		/\(** Display the event was read from */
++    Window window;			/\(** window which selected for this event */
++    Window root;			/\(** Root window for changed screen */
++    Time timestamp;			/\(** when the screen change occurred */
++    Time config_timestamp;	/\(** when the last configuration change */
+     SizeID size_index;
+     SubpixelOrder subpixel_order;
+     Rotation rotation;
+@@ -187,7 +207,7 @@
+ is a simple library designed to interface the X Resize and Rotate
+ Extension.  This allows clients to change the size and rotation of the
+ root window of a screen, along with the ability to reflect the screen
+-about either axis (if supported by the impementation).  Rotation and
++about either axis (if supported by the implementation).  Rotation and
+ reflection may be implemented by software and may result in slower
+ performance if rotation and reflection are implemented in this fashion 
+ (as are all implementations as of October 2002).
+@@ -239,7 +259,7 @@
+ we did not want to change display structure data behind the back of toolkits,
+ as in multithreaded clients, various race conditions might occur.
+ Toolkits should provide clients some mechanism for notification of
+-screen change, of couse.
++screen change, of course.
+ 
+ .SH FUNCTIONS
+ There are two classes of interfaces: those which can be safely called
+@@ -258,6 +278,10 @@
+ of the server. If RandR is not supported, it returns 0 for
+ the number of sizes.
+ .PP
++.B XRRRates
++returns a pointer to a the rates supported by the specified size.
++If RandR is not supported, it returns 0 for the number of rates.
++.PP
+ .B XRRTimes
+ returns the time last reported by the server along with the
+ timestamp the last configuration changed.
+@@ -277,7 +301,7 @@
+ .B BadValue
+ error.
+ \fIsize_index\fP specifies which size configuration is to be used,
+-\fIrotation\fP specifies which rotatation or reflection is to
++\fIrotation\fP specifies which rotation or reflection is to
+ be used (or a 
+ .B BadValue
+ error is returned).
+@@ -287,11 +311,20 @@
+ information if it fails and try the call again (by calling 
+ \fBXRRGetScreenInfo\fP).
+ .PP
++.B XRRSetScreenConfigAndRate
++like
++.B XRRSetScreenConfig
++but also set the refresh rate. If specified rate is not supported a
++.B BadValue
++error is returned.
++.PP
+ .B XRRConfigRotations,
+ .B XRRConfigSizes,
+ .B XRRConfigCurrentConfiguration,
++.B XRRConfigTimes,
++.B XRRConfigRates,
+ and
+-.B XRRConfigTimes
++.B XRRConfigCurrentRate
+ are used to get specific configuration information out of a screen
+ configuration.
+ .PP
+@@ -312,8 +345,6 @@
+ .SH RESTRICTIONS
+ .B Xrandr
+ will remain upward compatible after the current 1.0 release.
+-.SH "SEE ALSO"
+-Xrender(3)
+ .SH AUTHOR
+ Jim Gettys, HP, and Keith Packard, member of the XFree86 Project, Inc. and
+ HP.



Reply to: