Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 63635 | Differences between
and this patch

Collapse All | Expand All

(-)transset/dsimple.c (+34 lines)
Lines 130-135 Link Here
130
    return (displayname);
130
    return (displayname);
131
}
131
}
132
132
133
/*
134
 * Get_Translucence (argc, argv) Look for -display, -d, or host:dpy (obselete)
135
 * If found, remove it from command line.  Don't go past a lone -.
136
 */
137
double Get_Translucence(pargc, argv)
138
    int *pargc;  /* MODIFIED */
139
    char **argv; /* MODIFIED */
140
{
141
    int argc = *pargc;
142
    char **pargv = argv+1;
143
    double tr = 1.0;
144
    int i;
145
146
    for (i = 1; i < argc; i++) {
147
	char *arg = argv[i];
148
149
	if (!strcmp (arg, "-translucence") || !strcmp (arg, "-tr")) {
150
	    if (++i >= argc) usage ();
151
152
	    tr = atof(argv[i]);
153
	    *pargc -= 2;
154
	    continue;
155
	}
156
	if (!strcmp(arg,"-")) {
157
		while (i<argc)
158
			*pargv++ = argv[i++];
159
		break;
160
	}
161
	*pargv++ = arg;
162
    }
163
164
    *pargv = NULL;
165
    return tr;
166
}
133
167
134
/*
168
/*
135
 * Open_Display: Routine to open a display with correct error handling.
169
 * Open_Display: Routine to open a display with correct error handling.
(-)transset/dsimple.h (+1 lines)
Lines 54-59 Link Here
54
char *Malloc(unsigned);
54
char *Malloc(unsigned);
55
char *Realloc(char *, int);
55
char *Realloc(char *, int);
56
char *Get_Display_Name(int *, char **);
56
char *Get_Display_Name(int *, char **);
57
double Get_Translucence(int *, char **);
57
Display *Open_Display(char *);
58
Display *Open_Display(char *);
58
void Setup_Display_And_Screen(int *, char **);
59
void Setup_Display_And_Screen(int *, char **);
59
XFontStruct *Open_Font(char *);
60
XFontStruct *Open_Font(char *);
(-)transset/transSet.c (-12 / +18 lines)
Lines 30-60 Link Here
30
/* nothing fancy */
30
/* nothing fancy */
31
int main(int argc, char **argv)
31
int main(int argc, char **argv)
32
{
32
{
33
  int gotd = 0;
33
  double d = -1.0;
34
  double d;
35
  unsigned int opacity;
34
  unsigned int opacity;
36
35
37
  /* wonderful utility */
36
  /* wonderful utility */
38
  Setup_Display_And_Screen(&argc, argv);
37
  Setup_Display_And_Screen(&argc, argv);
38
  d = Get_Translucence(&argc, argv);
39
  target_win = Select_Window_Args(&argc, argv);
39
40
40
  if (argv[1])
41
  /* grab mouse and return window that is next clicked */
42
  if (target_win == 0)
43
    target_win = Select_Window(dpy);
44
  /* get the target_win id from argument id */
45
  else
41
  {
46
  {
42
    printf ("got arg %s\n", argv[1]);
47
     Window parent,root;
43
    d = atof (argv[1]);
48
     Window* ch_ret;
44
    printf ("d is %g\n", d);
49
     unsigned int nch_ret;
45
    gotd = 1;
50
     XQueryTree(dpy,target_win,&root,&parent,&ch_ret,&nch_ret);
51
     XFree(ch_ret);
52
     XQueryTree(dpy,parent,&root,&parent,&ch_ret,&nch_ret);
53
     XFree(ch_ret);
54
     target_win=parent;
46
  }
55
  }
47
56
 
48
  /* grab mouse and return window that is next clicked */
49
  target_win = Select_Window(dpy);
50
51
  unsigned char *data;
57
  unsigned char *data;
52
58
53
  Atom actual;
59
  Atom actual;
54
  int format;
60
  int format;
55
  unsigned long n, left;
61
  unsigned long n, left;
56
62
57
  if (gotd)
63
  if (d >= 0.0)
58
    opacity = (unsigned int) (d * OPAQUE);
64
    opacity = (unsigned int) (d * OPAQUE);
59
  else
65
  else
60
  {
66
  {

Return to bug 63635