From d0def05a35eb0202aa967ea81ed3b3ffc2cee3d7 Mon Sep 17 00:00:00 2001
From: Philipp Zabel <philipp.zabel@gmail.com>
Date: Sat, 8 Sep 2007 10:29:55 +0000
Subject: xserver-kdrive-1.3.0.0: drop version specific
 hide-cursor-and-ppm-root.patch * it's identical to the one in xserver-kdrive/

---
 .../hide-cursor-and-ppm-root.patch                 | 307 ---------------------
 1 file changed, 307 deletions(-)
 delete mode 100644 packages/xorg-xserver/xserver-kdrive-1.3.0.0/hide-cursor-and-ppm-root.patch

diff --git a/packages/xorg-xserver/xserver-kdrive-1.3.0.0/hide-cursor-and-ppm-root.patch b/packages/xorg-xserver/xserver-kdrive-1.3.0.0/hide-cursor-and-ppm-root.patch
deleted file mode 100644
index c160cd41dc..0000000000
--- a/packages/xorg-xserver/xserver-kdrive-1.3.0.0/hide-cursor-and-ppm-root.patch
+++ /dev/null
@@ -1,307 +0,0 @@
-diff -u -r xorg-server-X11R7.1-1.1.0.orig/dix/window.c xorg-server-X11R7.1-1.1.0/dix/window.c
---- xorg-server-X11R7.1-1.1.0.orig/dix/window.c	2007-01-08 14:30:38.000000000 +0000
-+++ xorg-server-X11R7.1-1.1.0/dix/window.c	2007-01-16 17:16:19.000000000 +0000
-@@ -185,6 +185,8 @@
- _X_EXPORT int numSaveUndersViewable = 0;
- _X_EXPORT int deltaSaveUndersViewable = 0;
- 
-+char* RootPPM = NULL;
-+
- #ifdef DEBUG
- /******
-  * PrintWindowTree
-@@ -311,6 +313,115 @@
- #endif
- }
- 
-+static int
-+get_int(FILE *fp)
-+{
-+  int c = 0;
-+
-+  while ((c = getc(fp)) != EOF)
-+    {
-+      if (isspace(c))
-+	continue;
-+
-+      if (c == '#')
-+	while (c = getc(fp))
-+	  if (c == EOF)
-+	    return 0;
-+	  else if (c == '\n')
-+	    break;
-+
-+      if (isdigit(c)) 
-+	{
-+	  int val = c - '0';
-+	  while ((c = getc(fp)) && isdigit(c))
-+	    val = (val * 10) + (c - '0');
-+	  return val;
-+	}
-+    }
-+
-+  return 0;
-+}
-+
-+static unsigned char*
-+ppm_load (const char* path, int depth, int *width, int *height)
-+{
-+  FILE *fp;
-+  int   max, n = 0, w, h, i, j, bytes_per_line;
-+  unsigned char *data, *res, h1, h2;
-+
-+  if (depth < 16 || depth > 32)
-+    return NULL;
-+
-+  if (depth > 16)
-+    depth = 32;
-+
-+  fp = fopen (path, "r");
-+  if (fp == NULL)
-+    return FALSE;
-+
-+  h1 = getc(fp);
-+  h2 = getc(fp);
-+
-+  /* magic is 'P6' for raw ppm */
-+  if (h1 != 'P' && h2 != '6')
-+      goto fail;
-+
-+  w = get_int(fp);
-+  h = get_int(fp);
-+
-+  if (w == 0 || h == 0)
-+    goto fail;
-+
-+  max = get_int(fp);
-+
-+  if (max != 255)
-+      goto fail;
-+
-+  bytes_per_line = ((w * depth + 31) >> 5) << 2;
-+
-+  res = data = malloc(bytes_per_line * h);
-+
-+  for (i=0; i<h; i++)
-+    {
-+      for (j=0; j<w; j++)
-+	{
-+	  unsigned char buf[3];
-+	  fread(buf, 1, 3, fp);
-+	  
-+	  switch (depth)
-+	    {
-+	    case 24:
-+	    case 32:
-+	      *data     = buf[2];
-+	      *(data+1) = buf[1];
-+	      *(data+2) = buf[0];
-+	      data += 4;
-+	      break;
-+	    case 16:
-+	    default:
-+	      *(unsigned short*)data
-+		= ((buf[0] >> 3) << 11) | ((buf[1] >> 2) << 5) | (buf[2] >> 3);
-+	      data += 2;
-+	      break;
-+	    }
-+	}
-+      data += (bytes_per_line - (w*(depth>>3)));
-+    }
-+
-+  data = res;
-+
-+  *width  = w;
-+  *height = h;
-+
-+  fclose(fp);
-+
-+  return res;
-+
-+ fail:
-+  fclose(fp);
-+  return NULL;
-+}
-+
- static void
- MakeRootTile(WindowPtr pWin)
- {
-@@ -321,6 +432,36 @@
-     register unsigned char *from, *to;
-     register int i, j;
- 
-+    if (RootPPM != NULL)
-+      {
-+	int            w, h;
-+	unsigned char *data;
-+
-+	if ((data = ppm_load (RootPPM, pScreen->rootDepth, &w, &h)) != NULL)
-+	  {
-+	    pWin->background.pixmap 
-+	      = (*pScreen->CreatePixmap)(pScreen, w, h, pScreen->rootDepth);
-+
-+	    pWin->backgroundState = BackgroundPixmap;
-+	    pGC = GetScratchGC(pScreen->rootDepth, pScreen);
-+	    if (!pWin->background.pixmap || !pGC)
-+	      FatalError("could not create root tile");
-+
-+	    ValidateGC((DrawablePtr)pWin->background.pixmap, pGC);
-+
-+	    (*pGC->ops->PutImage)((DrawablePtr)pWin->background.pixmap, 
-+				  pGC, 
-+				  pScreen->rootDepth,
-+				  0, 0, w, h, 0, ZPixmap, (char *)data);
-+	    FreeScratchGC(pGC);
-+	    
-+	    free(data);
-+	    return;
-+	  }
-+	else
-+	  ErrorF("Unable to load root window image.");
-+      }
-+
-     pWin->background.pixmap = (*pScreen->CreatePixmap)(pScreen, 4, 4,
- 						    pScreen->rootDepth);
- 
-@@ -357,6 +498,7 @@
- 
- }
- 
-+
- WindowPtr
- AllocateWindow(ScreenPtr pScreen)
- {
-diff -u -r xorg-server-X11R7.1-1.1.0.orig/hw/kdrive/src/kdrive.c xorg-server-X11R7.1-1.1.0/hw/kdrive/src/kdrive.c
---- xorg-server-X11R7.1-1.1.0.orig/hw/kdrive/src/kdrive.c	2007-01-08 14:30:38.000000000 +0000
-+++ xorg-server-X11R7.1-1.1.0/hw/kdrive/src/kdrive.c	2007-01-15 17:53:06.000000000 +0000
-@@ -58,6 +58,9 @@
-     { 32, 32 }
- };
- 
-+int 
-+ProcXFixesHideCursor (ClientPtr client) ;
-+
- #define NUM_KD_DEPTHS (sizeof (kdDepths) / sizeof (kdDepths[0]))
- 
- int                 kdScreenPrivateIndex;
-@@ -84,6 +87,9 @@
- KdOsFuncs	*kdOsFuncs;
- extern WindowPtr *WindowTable;
- 
-+extern Bool CursorInitiallyHidden; /* See Xfixes cursor.c */
-+extern char* RootPPM;		   /* dix/window.c */
-+
- void
- KdSetRootClip (ScreenPtr pScreen, BOOL enable)
- {
-@@ -312,6 +318,7 @@
-     KdSetRootClip (pScreen, TRUE);
-     if (pScreenPriv->card->cfuncs->dpms)
- 	(*pScreenPriv->card->cfuncs->dpms) (pScreen, pScreenPriv->dpmsState);
-+
-     return TRUE;
- }
- 
-@@ -686,10 +693,14 @@
-     ErrorF("-mouse path[,n]  Filename of mouse device, n is number of buttons\n");
-     ErrorF("-switchCmd       Command to execute on vt switch\n");
-     ErrorF("-nozap           Don't terminate server on Ctrl+Alt+Backspace\n");
-+    ErrorF("-hide-cursor     Start with cursor hidden\n");
-+    ErrorF("-root-ppm [path] Specify ppm file to use as root window background.\n");
-     ErrorF("vtxx             Use virtual terminal xx instead of the next available\n");
- #ifdef PSEUDO8
-     p8UseMsg ();
- #endif
-+
-+
- }
- 
- int
-@@ -761,6 +772,19 @@
- 	kdSoftCursor = TRUE;
- 	return 1;
-     }
-+    if (!strcmp (argv[i], "-hide-cursor"))
-+    {
-+      CursorInitiallyHidden = TRUE;
-+      return 1;
-+    }
-+    if (!strcmp (argv[i], "-root-ppm"))
-+    {
-+      if ((i+1) < argc)
-+	RootPPM =  argv[i+1];
-+      else
-+	UseMsg ();
-+      return 2;
-+    }
-     if (!strcmp (argv[i], "-videoTest"))
-     {
- 	kdVideoTest = TRUE;
-diff -u -r xorg-server-X11R7.1-1.1.0.orig/xfixes/cursor.c xorg-server-X11R7.1-1.1.0/xfixes/cursor.c
---- xorg-server-X11R7.1-1.1.0.orig/xfixes/cursor.c	2007-01-08 14:30:38.000000000 +0000
-+++ xorg-server-X11R7.1-1.1.0/xfixes/cursor.c	2007-01-11 16:33:00.000000000 +0000
-@@ -59,9 +59,12 @@
- static RESTYPE		CursorWindowType;
- static int		CursorScreenPrivateIndex = -1;
- static int		CursorGeneration;
-+static Bool             CursorGloballyHidden; 
- static CursorPtr	CursorCurrent;
- static CursorPtr        pInvisibleCursor = NULL;
- 
-+Bool CursorInitiallyHidden = FALSE;
-+
- static void deleteCursorHideCountsForScreen (ScreenPtr pScreen);
- 
- #define VERIFY_CURSOR(pCursor, cursor, client, access) { \
-@@ -130,7 +133,7 @@
- 
-     Unwrap (cs, pScreen, DisplayCursor);
- 
--    if (cs->pCursorHideCounts != NULL) {
-+    if (cs->pCursorHideCounts != NULL || CursorGloballyHidden) {
- 	ret = (*pScreen->DisplayCursor) (pScreen, pInvisibleCursor);
-     } else {
- 	ret = (*pScreen->DisplayCursor) (pScreen, pCursor);
-@@ -848,6 +851,12 @@
- 	return BadWindow;
-     }
- 
-+    /* Is cursor set to be initially hidden ?, if so reset this 
-+     * flag as now visibility assumed under control of client.
-+    */
-+    if (CursorGloballyHidden)
-+      CursorGloballyHidden = FALSE;
-+
-     /* 
-      * Has client hidden the cursor before on this screen? 
-      * If so, just increment the count. 
-@@ -899,9 +908,19 @@
- 	return BadWindow;
-     }
- 
-+    /* X was started with cursor hidden, therefore just reset our flag
-+     * (returning to normal client control) and cause cursor to now be
-+     * shown.
-+    */
-+    if (CursorGloballyHidden == TRUE)
-+      {
-+	CursorGloballyHidden = FALSE;
-+	return (client->noClientException);
-+      }
-+
-     /* 
-      * Has client hidden the cursor on this screen?
--     * If not, generate an error.
-+     * If so, generate an error.
-      */
-     pChc = findCursorHideCount(client, pWin->drawable.pScreen);
-     if (pChc == NULL) {
-@@ -1009,6 +1028,8 @@
- XFixesCursorInit (void)
- {
-     int	i;
-+
-+    CursorGloballyHidden = CursorInitiallyHidden;
-     
-     if (CursorGeneration != serverGeneration)
-     {
-- 
cgit v1.2.3