diff options
| author | Jan Djärv | 2004-12-11 18:46:43 +0000 |
|---|---|---|
| committer | Jan Djärv | 2004-12-11 18:46:43 +0000 |
| commit | c83c9f9db773a3d37482414c9eefddf347de08c7 (patch) | |
| tree | 68729d734dcd1f2999d6dc595fe309c7ca9ab06e /src | |
| parent | 0ccb50fc8a57e07c85a005cc4455dd44c9885939 (diff) | |
| download | emacs-c83c9f9db773a3d37482414c9eefddf347de08c7.tar.gz emacs-c83c9f9db773a3d37482414c9eefddf347de08c7.zip | |
* xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
for left and top calculations. Remove call to x_real_positions.
(x_check_expected_move): Do not set change_gravity to 1 when calling
x_set_offset.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 7 | ||||
| -rw-r--r-- | src/xterm.c | 25 |
2 files changed, 12 insertions, 20 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 38a079989be..3352ef3cd22 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,10 @@ | |||
| 1 | 2004-12-11 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff | ||
| 4 | for left and top calculations. Remove call to x_real_positions. | ||
| 5 | (x_check_expected_move): Do not set change_gravity to 1 when calling | ||
| 6 | x_set_offset. | ||
| 7 | |||
| 1 | 2004-12-08 Richard M. Stallman <rms@gnu.org> | 8 | 2004-12-08 Richard M. Stallman <rms@gnu.org> |
| 2 | 9 | ||
| 3 | * xdisp.c (get_next_display_element): Use `escape-glyph' for | 10 | * xdisp.c (get_next_display_element): Use `escape-glyph' for |
diff --git a/src/xterm.c b/src/xterm.c index e106027ff8b..d4841f75c28 100644 --- a/src/xterm.c +++ b/src/xterm.c | |||
| @@ -8147,20 +8147,11 @@ x_calc_absolute_position (f) | |||
| 8147 | if (! ((flags & XNegative) || (flags & YNegative))) | 8147 | if (! ((flags & XNegative) || (flags & YNegative))) |
| 8148 | return; | 8148 | return; |
| 8149 | 8149 | ||
| 8150 | /* Find the offsets of the outside upper-left corner of | ||
| 8151 | the inner window, with respect to the outer window. | ||
| 8152 | But do this only if we will need the results. */ | ||
| 8153 | if (f->output_data.x->parent_desc != FRAME_X_DISPLAY_INFO (f)->root_window) | ||
| 8154 | /* This is to get *_pixels_outer_diff. */ | ||
| 8155 | x_real_positions (f, &win_x, &win_y); | ||
| 8156 | |||
| 8157 | /* Treat negative positions as relative to the leftmost bottommost | 8150 | /* Treat negative positions as relative to the leftmost bottommost |
| 8158 | position that fits on the screen. */ | 8151 | position that fits on the screen. */ |
| 8159 | if (flags & XNegative) | 8152 | if (flags & XNegative) |
| 8160 | f->left_pos = (FRAME_X_DISPLAY_INFO (f)->width | 8153 | f->left_pos = (FRAME_X_DISPLAY_INFO (f)->width |
| 8161 | - 2 * FRAME_X_OUTPUT (f)->x_pixels_outer_diff | 8154 | - FRAME_PIXEL_WIDTH (f) + f->left_pos); |
| 8162 | - FRAME_PIXEL_WIDTH (f) | ||
| 8163 | + f->left_pos); | ||
| 8164 | 8155 | ||
| 8165 | { | 8156 | { |
| 8166 | int height = FRAME_PIXEL_HEIGHT (f); | 8157 | int height = FRAME_PIXEL_HEIGHT (f); |
| @@ -8182,15 +8173,7 @@ x_calc_absolute_position (f) | |||
| 8182 | #endif | 8173 | #endif |
| 8183 | 8174 | ||
| 8184 | if (flags & YNegative) | 8175 | if (flags & YNegative) |
| 8185 | f->top_pos = (FRAME_X_DISPLAY_INFO (f)->height | 8176 | f->top_pos = (FRAME_X_DISPLAY_INFO (f)->height - height + f->top_pos); |
| 8186 | - FRAME_X_OUTPUT (f)->y_pixels_outer_diff | ||
| 8187 | |||
| 8188 | /* Assume the window manager decorations are the same size on | ||
| 8189 | three sides, i.e. left, right and bottom. This is to | ||
| 8190 | compensate for the bottom part. */ | ||
| 8191 | - FRAME_X_OUTPUT (f)->x_pixels_outer_diff | ||
| 8192 | - height | ||
| 8193 | + f->top_pos); | ||
| 8194 | } | 8177 | } |
| 8195 | 8178 | ||
| 8196 | /* The left_pos and top_pos | 8179 | /* The left_pos and top_pos |
| @@ -8306,7 +8289,9 @@ x_check_expected_move (f) | |||
| 8306 | FRAME_X_OUTPUT (f)->move_offset_left = expect_left - f->left_pos; | 8289 | FRAME_X_OUTPUT (f)->move_offset_left = expect_left - f->left_pos; |
| 8307 | FRAME_X_OUTPUT (f)->move_offset_top = expect_top - f->top_pos; | 8290 | FRAME_X_OUTPUT (f)->move_offset_top = expect_top - f->top_pos; |
| 8308 | 8291 | ||
| 8309 | x_set_offset (f, expect_left, expect_top, 1); | 8292 | f->left_pos = expect_left; |
| 8293 | f->top_pos = expect_top; | ||
| 8294 | x_set_offset (f, expect_left, expect_top, 0); | ||
| 8310 | } | 8295 | } |
| 8311 | else if (FRAME_X_DISPLAY_INFO (f)->wm_type == X_WMTYPE_UNKNOWN) | 8296 | else if (FRAME_X_DISPLAY_INFO (f)->wm_type == X_WMTYPE_UNKNOWN) |
| 8312 | FRAME_X_DISPLAY_INFO (f)->wm_type = X_WMTYPE_B; | 8297 | FRAME_X_DISPLAY_INFO (f)->wm_type = X_WMTYPE_B; |