Mercurial > emacs
changeset 53027:8ea9dad9855f
* xfns.c (x_window): Set XtNx and XtNy in shell widget for
program specified positions.
author | Jan Djärv <jan.h.d@swipnet.se> |
---|---|
date | Sun, 09 Nov 2003 16:26:48 +0000 |
parents | 8fccd5a26c77 |
children | 82e324c1ebf4 |
files | src/ChangeLog src/xfns.c |
diffstat | 2 files changed, 19 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog Sun Nov 09 04:49:58 2003 +0000 +++ b/src/ChangeLog Sun Nov 09 16:26:48 2003 +0000 @@ -1,3 +1,8 @@ +2003-11-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (x_window): Set XtNx and XtNy in shell widget for + program specified positions. + 2003-11-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
--- a/src/xfns.c Sun Nov 09 04:49:58 2003 +0000 +++ b/src/xfns.c Sun Nov 09 16:26:48 2003 +0000 @@ -2670,7 +2670,7 @@ { int len; char *tem, shell_position[32]; - Arg al[2]; + Arg al[10]; int ac = 0; int extra_borders = 0; int menubar_size @@ -2722,9 +2722,19 @@ (xneg ? '-' : '+'), left, (yneg ? '-' : '+'), top); else - sprintf (shell_position, "=%dx%d", - FRAME_PIXEL_WIDTH (f) + extra_borders, - FRAME_PIXEL_HEIGHT (f) + menubar_size + extra_borders); + { + sprintf (shell_position, "=%dx%d", + FRAME_PIXEL_WIDTH (f) + extra_borders, + FRAME_PIXEL_HEIGHT (f) + menubar_size + extra_borders); + + /* Setting x and y when the position is not specified in + the geometry string will set program position in the WM hints. + If Emacs had just one program position, we could set it in + fallback resources, but since each make-frame call can specify + different program positions, this is easier. */ + XtSetArg (al[ac], XtNx, left); ac++; + XtSetArg (al[ac], XtNy, top); ac++; + } } len = strlen (shell_position) + 1;