diff options
| author | Jim Blandy | 1993-01-22 02:47:12 +0000 |
|---|---|---|
| committer | Jim Blandy | 1993-01-22 02:47:12 +0000 |
| commit | c0ff3fabb8e366a08ecb24a8e3c51a9760640aac (patch) | |
| tree | 779ca0bff7b2fa6955cb9ec6b16d4017d815eee2 /src | |
| parent | 8678b9ccf53e6e6e05af74b748e25e4dc55b84f2 (diff) | |
| download | emacs-c0ff3fabb8e366a08ecb24a8e3c51a9760640aac.tar.gz emacs-c0ff3fabb8e366a08ecb24a8e3c51a9760640aac.zip | |
* xterm.c (x_scrollbar_create): Set the scrollbars to use
EastGravity.
* frame.c (Fdelete_frame): Clear the frame's display after calling
the window-system-dependent frame destruction routine. We
no longer need to pass the display as a separate argument to
x_destroy_window.
* xterm.c (x_destroy_window): Put the code which clears out f's
display here, right after we free the storage it points to. Put
everything, including the code which clears x_focus_frame and
x_highlight_frame, inside the BLOCK/UNBLOCK_INPUT pair.
Diffstat (limited to 'src')
| -rw-r--r-- | src/xterm.c | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/src/xterm.c b/src/xterm.c index e55685f37e1..b534751dbf7 100644 --- a/src/xterm.c +++ b/src/xterm.c | |||
| @@ -1758,8 +1758,9 @@ x_scrollbar_create (window, top, left, width, height) | |||
| 1758 | | ButtonMotionMask | PointerMotionHintMask | 1758 | | ButtonMotionMask | PointerMotionHintMask |
| 1759 | | ExposureMask); | 1759 | | ExposureMask); |
| 1760 | a.cursor = x_vertical_scrollbar_cursor; | 1760 | a.cursor = x_vertical_scrollbar_cursor; |
| 1761 | a.win_gravity = EastGravity; | ||
| 1761 | 1762 | ||
| 1762 | mask = (CWBackPixel | CWEventMask | CWCursor); | 1763 | mask = (CWBackPixel | CWEventMask | CWCursor | CWWinGravity); |
| 1763 | 1764 | ||
| 1764 | SET_SCROLLBAR_X_WINDOW | 1765 | SET_SCROLLBAR_X_WINDOW |
| 1765 | (bar, | 1766 | (bar, |
| @@ -4061,28 +4062,26 @@ x_iconify_frame (f) | |||
| 4061 | UNBLOCK_INPUT; | 4062 | UNBLOCK_INPUT; |
| 4062 | } | 4063 | } |
| 4063 | 4064 | ||
| 4064 | /* Destroy the X window of frame F. | 4065 | /* Destroy the X window of frame F. */ |
| 4065 | DISPL is the former f->display (since f->display | ||
| 4066 | has already been nulled out). */ | ||
| 4067 | 4066 | ||
| 4068 | x_destroy_window (f, displ) | 4067 | x_destroy_window (f) |
| 4069 | struct frame *f; | 4068 | struct frame *f; |
| 4070 | union display displ; | ||
| 4071 | { | 4069 | { |
| 4072 | int mask; | ||
| 4073 | |||
| 4074 | BLOCK_INPUT; | 4070 | BLOCK_INPUT; |
| 4075 | if (displ.x->icon_desc != 0) | 4071 | |
| 4076 | XDestroyWindow (XDISPLAY displ.x->icon_desc); | 4072 | if (f->display.x->icon_desc != 0) |
| 4077 | XDestroyWindow (XDISPLAY displ.x->window_desc); | 4073 | XDestroyWindow (XDISPLAY f->display.x->icon_desc); |
| 4074 | XDestroyWindow (XDISPLAY f->display.x->window_desc); | ||
| 4078 | XFlushQueue (); | 4075 | XFlushQueue (); |
| 4079 | UNBLOCK_INPUT; | ||
| 4080 | 4076 | ||
| 4081 | free (displ.x); | 4077 | free (f->display.x); |
| 4078 | f->display.x = 0; | ||
| 4082 | if (f == x_focus_frame) | 4079 | if (f == x_focus_frame) |
| 4083 | x_focus_frame = 0; | 4080 | x_focus_frame = 0; |
| 4084 | if (f == x_highlight_frame) | 4081 | if (f == x_highlight_frame) |
| 4085 | x_highlight_frame = 0; | 4082 | x_highlight_frame = 0; |
| 4083 | |||
| 4084 | UNBLOCK_INPUT; | ||
| 4086 | } | 4085 | } |
| 4087 | 4086 | ||
| 4088 | /* Manage event queues for X10. */ | 4087 | /* Manage event queues for X10. */ |