Mercurial > emacs
comparison src/xterm.c @ 95167:cf2e8e539693
(x_set_frame_alpha): Move declarations before
statements.
author | Dan Nicolaescu <dann@ics.uci.edu> |
---|---|
date | Wed, 21 May 2008 06:32:45 +0000 |
parents | 4f066b58a8c2 |
children | 626cda8569ae |
comparison
equal
deleted
inserted
replaced
95166:faf8a1255ff9 | 95167:cf2e8e539693 |
---|---|
465 struct frame *f; | 465 struct frame *f; |
466 { | 466 { |
467 struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f); | 467 struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f); |
468 Display *dpy = FRAME_X_DISPLAY (f); | 468 Display *dpy = FRAME_X_DISPLAY (f); |
469 Window win = FRAME_OUTER_WINDOW (f); | 469 Window win = FRAME_OUTER_WINDOW (f); |
470 double alpha = 1.0; | |
471 double alpha_min = 1.0; | |
472 unsigned int opac; | |
473 | |
470 if (FRAME_X_DISPLAY_INFO (f)->root_window != FRAME_X_OUTPUT (f)->parent_desc) | 474 if (FRAME_X_DISPLAY_INFO (f)->root_window != FRAME_X_OUTPUT (f)->parent_desc) |
471 /* Since the WM decoration lies under the FRAME_OUTER_WINDOW, | 475 /* Since the WM decoration lies under the FRAME_OUTER_WINDOW, |
472 we must treat the former instead of the latter. */ | 476 we must treat the former instead of the latter. */ |
473 win = FRAME_X_OUTPUT(f)->parent_desc; | 477 win = FRAME_X_OUTPUT(f)->parent_desc; |
474 | 478 |
475 double alpha = 1.0, alpha_min = 1.0; | |
476 | |
477 if (dpyinfo->x_highlight_frame == f) | 479 if (dpyinfo->x_highlight_frame == f) |
478 alpha = f->alpha[0]; | 480 alpha = f->alpha[0]; |
479 else | 481 else |
480 alpha = f->alpha[1]; | 482 alpha = f->alpha[1]; |
481 | 483 |
487 if (alpha < 0.0 || 1.0 < alpha) | 489 if (alpha < 0.0 || 1.0 < alpha) |
488 alpha = 1.0; | 490 alpha = 1.0; |
489 else if (0.0 <= alpha && alpha < alpha_min && alpha_min <= 1.0) | 491 else if (0.0 <= alpha && alpha < alpha_min && alpha_min <= 1.0) |
490 alpha = alpha_min; | 492 alpha = alpha_min; |
491 | 493 |
492 unsigned int opac = (unsigned int)(alpha * OPAQUE); | 494 opac = (unsigned int)(alpha * OPAQUE); |
493 | 495 |
494 /* return unless necessary */ | 496 /* return unless necessary */ |
495 { | 497 { |
496 unsigned char *data; | 498 unsigned char *data; |
497 Atom actual; | 499 Atom actual; |
506 { | 508 { |
507 XFree ((void *) data); | 509 XFree ((void *) data); |
508 return; | 510 return; |
509 } | 511 } |
510 else | 512 else |
511 { | 513 XFree ((void *) data); |
512 XFree ((void *) data); | |
513 } | |
514 } | 514 } |
515 | 515 |
516 XChangeProperty (dpy, win, XInternAtom (dpy, OPACITY, False), | 516 XChangeProperty (dpy, win, XInternAtom (dpy, OPACITY, False), |
517 XA_CARDINAL, 32, PropModeReplace, | 517 XA_CARDINAL, 32, PropModeReplace, |
518 (unsigned char *) &opac, 1L); | 518 (unsigned char *) &opac, 1L); |