From 9b002b8d0ce837c5af429b5d87106ae32a212ee5 Mon Sep 17 00:00:00 2001 From: Karl Heuer Date: Mon, 29 May 1995 07:12:58 +0000 Subject: [PATCH] (x_report_frame_params): Report top and left in a way that represents negative offsets correctly. --- src/xfns.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/xfns.c b/src/xfns.c index 5b125682cc8..790397e8edd 100644 --- a/src/xfns.c +++ b/src/xfns.c @@ -981,9 +981,22 @@ x_report_frame_params (f, alistptr) Lisp_Object *alistptr; { char buf[16]; + Lisp_Object tem; + + /* Represent negative positions (off the top or left screen edge) + in a way that Fmodify_frame_parameters will understand correctly. */ + XSETINT (tem, f->display.x->left_pos); + if (f->display.x->left_pos >= 0) + store_in_alist (alistptr, Qleft, tem); + else + store_in_alist (alistptr, Qleft, Fcons (Qplus, Fcons (tem, Qnil))); + + XSETINT (tem, f->display.x->top_pos); + if (f->display.x->top_pos >= 0) + store_in_alist (alistptr, Qtop, tem); + else + store_in_alist (alistptr, Qtop, Fcons (Qplus, Fcons (tem, Qnil))); - store_in_alist (alistptr, Qleft, make_number (f->display.x->left_pos)); - store_in_alist (alistptr, Qtop, make_number (f->display.x->top_pos)); store_in_alist (alistptr, Qborder_width, make_number (f->display.x->border_width)); store_in_alist (alistptr, Qinternal_border_width, -- 2.39.2