From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 19 07:06:17 2022 Received: (at submit) by debbugs.gnu.org; 19 Oct 2022 11:06:17 +0000 Received: from localhost ([127.0.0.1]:55976 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ol6ts-0007Bq-Ve for submit@debbugs.gnu.org; Wed, 19 Oct 2022 07:06:17 -0400 Received: from lists.gnu.org ([209.51.188.17]:38934) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ol2hZ-000684-VU for submit@debbugs.gnu.org; Wed, 19 Oct 2022 02:37:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:42470) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ol2hZ-0001fs-JY for bug-gnu-emacs@gnu.org; Wed, 19 Oct 2022 02:37:17 -0400 Received: from mail-lj1-x231.google.com ([2a00:1450:4864:20::231]:39777) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ol2hX-0001H4-Hj for bug-gnu-emacs@gnu.org; Wed, 19 Oct 2022 02:37:17 -0400 Received: by mail-lj1-x231.google.com with SMTP id c22so19559135lja.6 for ; Tue, 18 Oct 2022 23:37:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=RD14WoDaN135sM3IXBD4aMBsvg+ZwhYQIoUFbiz5kZk=; b=V+ZLbk1ky78wD/0TsytlfuBvhma9HbhgGFMyqNxu68gzNuqG4zs5vuFhkt4DB8MN4w wQZYDgkmuHC07L8Ip2RSbIuA87/JMfwvLgraNpzsowHVcFYhqbYGT9sLH+xpWSeTcD8J oMefqlVR0vhAgKkhp4E5tP565HIJUcRQwwrwhLbDmVcQOC5/0KxWm3xcCRDib/QLhtV2 hDow2nkfkWvshaiH5Z2N2Mwanb3qy9PXBy3971E2E4Tw4yFmpCIdmWB7T8+eY5IAUmn6 ui66/jYhIlh+mMYVkW+8IHg90XlBc02J+Ux6//SRXzHn+24Kp0ez2YYm+xnVdnU4uYZd tpCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=RD14WoDaN135sM3IXBD4aMBsvg+ZwhYQIoUFbiz5kZk=; b=Sgu2qBWa6pf6yUwfywgplJFjjltwpuKdBtBXLq8DP6Wjt8uPoWkoDJyEpd8dPbVz7G e92CL8LZSD5KUn1f8fVblptRF8key5GxmXJ7+UsyRru0f1AScjMzsnKUtLNIMAmR3MMi Pa9uId3vZHcNhNIQMO3HP61Om+tinWWLwimcRe9XR6lbGfk9PfqachRNaB8DrJeA5BuZ 4YPT9OetwOFJH8wSZalHKI5DAA56Vvhl9Jv4iNcjLEUdWyfcQjivYsz52FexbzE28hQG 2motavoGnt+NIVIb4hqvTyhlWubSOb1A40DiRmKNegLM7uDBf9JBVEdSHAO+2jJw17gU xbbw== X-Gm-Message-State: ACrzQf0pLtY3AN9fuB9NLokkSZ9y31DHkDjtY15al5DG7nAIinmC4upq NLCsPHUmhJKc9DRZOMKlUZRPypRCqcPt8irf8mEP2ZwDFIQ= X-Google-Smtp-Source: AMsMyM7vVuSc6qnFZZ4QXkT3Gz4PUpKtom7NWqz5ldsROS7LqDfmUpgemiFc3bNkXmj70auVijI4IxvAvRzvablKqio= X-Received: by 2002:a2e:9304:0:b0:26c:64af:5f5e with SMTP id e4-20020a2e9304000000b0026c64af5f5emr2327897ljh.211.1666161431730; Tue, 18 Oct 2022 23:37:11 -0700 (PDT) MIME-Version: 1.0 From: Yuwei Tian Date: Wed, 19 Oct 2022 14:37:00 +0800 Message-ID: Subject: 29.0.50; `set-frame-position' doesn't set frame position correctly when it is called with negative X or Y To: bug-gnu-emacs@gnu.org Content-Type: text/plain; charset="UTF-8" Received-SPF: pass client-ip=2a00:1450:4864:20::231; envelope-from=fishtai0@gmail.com; helo=mail-lj1-x231.google.com X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.1 (-) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Wed, 19 Oct 2022 07:06:02 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.1 (--) The manual for the function `set-frame-position' says this: "Negative parameter values position the right edge of the outer frame by -X pixels left from the right edge of the screen (or the parent frame's native rectangle) and the bottom edge by - Y pixels up from the bottom edge of the screen (or the parent frame's native rectangle)." Tested with NS port Emacs 28.2 and 29.0.50 on macOS 12.6. In Emacs 28, when using `set-frame-position' to set the position of the child frame, when X or Y is a negative value, it correctly sets the position of the child frame so that its right edge is X pixels away from the right edge of its parent frame or its bottom edge is Y pixels away from the bottom edge of its parent frame. But in Emacs 29, when X or Y is negative, `set-frame-position` sets the position of child frame's (0, 0) point -X pixels left or -Y pixels up from its parent frame's (0, 0) point. `set-frame-position' has inconsistent behavior in Emacs 28 and 29. In GNU Emacs 29.0.50 (build 1, x86_64-apple-darwin21.6.0, NS appkit-2113.60 Version 12.6 (Build 21G115)) of 2022-10-19 built on fishtai0-macmini.local Windowing system distributor 'Apple', version 10.3.2113 System Description: macOS 12.6 Configured using: 'configure --disable-dependency-tracking --disable-silent-rules --enable-locallisppath=/usr/local/share/emacs/site-lisp --infodir=/usr/local/Cellar/emacs-plus@29/29.0.50/share/info/emacs --prefix=/usr/local/Cellar/emacs-plus@29/29.0.50 --with-xml2 --with-gnutls --without-compress-install --without-dbus --without-imagemagick --with-modules --with-rsvg --with-ns --disable-ns-self-contained 'CFLAGS=-Os -w -pipe -march=nehalem -mmacosx-version-min=12 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk -DFD_SETSIZE=10000 -DDARWIN_UNLIMITED_SELECT' 'CPPFLAGS=-I/usr/local/opt/icu4c/include -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/readline/include -F/usr/local/Frameworks -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk' 'LDFLAGS=-L/usr/local/opt/icu4c/lib -L/usr/local/opt/openssl@1.1/lib -L/usr/local/opt/readline/lib -L/usr/local/lib -F/usr/local/Frameworks -Wl,-headerpad_max_install_names -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk'' Configured features: ACL GIF GLIB GMP GNUTLS JPEG JSON LCMS2 LIBXML2 MODULES NOTIFY KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS WEBP XIM ZLIB Important settings: value of $LC_ALL: en_US.UTF-8 value of $LC_CTYPE: UTF-8 value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Fundamental Minor modes in effect: tooltip-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t blink-cursor-mode: t buffer-read-only: t line-number-mode: t indent-tabs-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug message mailcap yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config gnus-util text-property-search time-date subr-x mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader cl-loaddefs cl-lib sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils rmc iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/ns-win ns-win ucs-normalize mule-util term/common-win tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads kqueue cocoa ns lcms2 multi-tty make-network-process emacs) Memory information: ((conses 16 38723 7803) (symbols 48 5013 0) (strings 32 13162 1904) (string-bytes 1 380714) (vectors 16 10573) (vector-slots 8 162118 16691) (floats 8 21 18) (intervals 56 378 0) (buffers 1000 12)) From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 19 07:19:06 2022 Received: (at 58627) by debbugs.gnu.org; 19 Oct 2022 11:19:06 +0000 Received: from localhost ([127.0.0.1]:56001 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ol76I-0001Ht-Gq for submit@debbugs.gnu.org; Wed, 19 Oct 2022 07:19:06 -0400 Received: from sonic312-23.consmr.mail.ne1.yahoo.com ([66.163.191.204]:40199) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ol76E-0001HN-Ef for 58627@debbugs.gnu.org; Wed, 19 Oct 2022 07:19:05 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1666178335; bh=i3rlEpvcgQ4UohGOUWUUygTTtHfxL9YcA5PE5DgTS6U=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=Lcr7EV2n104Eqztqe2RkmHUhXRqERf7+BWEVZu6MddtZOvhLtPPSrBwnD9gBMZAlE5PSlgiAiJrLKn3OXbLW7BAbUnywomhS7HbTg/F3RODhLr6LW8HMmU1lDDRV4xbUYzJNXNpGyCI6G40zcej+Nwk8p8s+M8dLN3c0sFXHAwe3+p1clmkrf2WVs375DZ+TUNeg9cnp1elmUiL56Z4XHMlozOu2Zpipzuh6HYPAsiXdXBiYPMuCbq31rjCjV4LAnpJsWzhzZTfpGCyRgofbDm73b4rkUxP9NWG2cD8UsFh/W9xj/IdcP2RYHwqCRQbrRKAsbpS9zV9SdRnaLlmsgw== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1666178335; bh=Tmuu/iHUYjQu1rbpfGasapOzwC7xWiTbzqKHyu/L3u0=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=jEIzCq0Rf/x/pzEyV1eOySqSyitSh27jpWVqybOx+RdCutiZvPgjOfed9YdXhf4AvSQwhwRttKs4JmlH8bLWeBVLIeSIgqH0duT2JOgjuKCAW6Tu/TTn9qtg8l6WQrJylLnM0iRBqqUZohiRLaWPpSTq1suZOPaDq9bO5hwmyewq2AH+3FPkPAOr6EoWpxbeT7rtkOGOunTGfEGUv0GisCB21BSjQfXfUiKQjZtFhlIHSZJ+lUf0tDwBbVCxIVL5i5Togn6MKouBnlBf4dm004ZEfy55uux9OHEYvmREDcqib1BzUZhF9txf1PutFFcjHEwlVWPh7oJmhqUcuYnVVA== X-YMail-OSG: sbxHzhkVM1mUS8OnGMBy.uYqnEQTPFY.M6mFie_6rxNmnDZkgOq.nvcD7gX350X HlFiW7Se_M0Ag0egq1AbA3ef38.S1mA4ti9G.BQKw3C9VMux_La_bsqu8hXBifcG29qHY_9byUtt qTbXCBO09vAoJwkI9qGXh6kQMkq8sehZ.ID1MTqDOZMXwAfz__197FrRFau9L2McBrtkT361DBFl mmaWabRjxl3HKi5bMd9dTkXM2zgimlTTnm07EFmd2T8RkwUj4WraAUOticOswe77NfZYUxoOmcNj ptKIsdQx1AvpSJ_RS6yRPPU3V2ErYc.ZsjEJppPHoPYKEaN5fTXNSFb3CzZAf9OEHFqN.uQZ_pSf xYL8dgrT9fFDOdFqWpOw2sWjTvX5hpT3XD57Sy6SLcDzx3ccp5frN9MLvVxpiEFit6RAIj6jlH0w gHTPVwiRhVMfRT65x6LtXIAxWqQbGKp_s6llNa6Uw74J3eW.J4dS3NJKcgM9CmdX.M17wk6ItSDf lv1pEPCZv_hvH9I5JibuZSQoazU2U3tqVYfcJjeSF5RpeDC8xEPlW11cAWAHxk9.EIiBGsoOOnwj ZLs1DJHfSFfQq8weeLYIMUnEoSkp2_qq963hUE6Ox8Xp3zhRoV..5cULfEvUIyNMXCo5SqD_hj3Y hjuXT4BrFd9PtNUk4Ha7tucJQ9Y2Sg_iyg9Ha4T1FqnVedVilW_bm2gBiqTV2eFNv59_y_Afrz2b G5T2Pgqj9bq1nPTt1KTV4Ue72sI6VhSop9HueDxLnYfkWxpL4VCTvFnjqkQlY3ioiyhQJpAOj6KT PuUUvksi0kgyArwoFU0yKvFlZjCVok9g6SynWzqxLIOqZ27mYApRctA5YgeVy25y65KCMYN8rksJ mtZsvk1w0L8wtX0VxB7ZwI6VnX_4_PeF6n9SrY7S8CmUxA5MAMz_wJOt6WQ_Zq4KqXCSi5fZ7d4x Jee0oNJjzTxVGCHd6C0BYdPr7bSACtXgOdHXv2uAxI2om8X1Fzh7Ls2D8FK.useQVgRuIepuJwSz hPgaMW0Wox2jiJviQ4wgJTdQ8X0JanvYi_WJmMVAy2U3pZ3dWraZvsXFNcj_BywjlKiLKFxeCxgU klBMmrn.f2SOyjzSMsa5GbSJLhAJevEIGimF37ZK0gHBxLZAnhsEAQJa.YVr9PuBDEdvhbfChrhl btVPGfm_EJuiYsWILV8J7_lq_l4QoeduveZgajgo67pu0kE_HN39gKJwPcJXY19VVyDoBLUjhlSV BKlOlbdOpmdB6uUPb5cryLYVaByzc3G9an.9UVk82xEesbGo_QToQ_m23eMBzeFvZOZbb6.okVtX jwsfXZdkz8Aornum4YtdElE4S_GOAFJdO5MgsTE8OhOBa.c67H70TPWjWiepGMccfccvpXOIc2b6 I0pPmzVs4nIkDAy3JOT5mYfsiJ88qxqq2JTTuP04otWP19Gk03HhYD2VAVegmTRZFY796PsgxNLQ Osn676JoNXMkOcnYwllr.rljBP3nS2_RWoo8jKXaWRbfl8wZuyshRhSr.R2i55U5fabY82AVOztI 3yeSu73chdORQZ6NAw7qyttSsVlNTFSVJ.4Qjbkzhz1ppKIWu5_84TyxC6dHfV640OjUtFa0dRpG Mecv90jKhXN8YcGobn9JaIMD4HdHo2xadF.SyH_3VNU9UB5d.CNHeXX9BJJYpBGN40p3KPgm1ksM 1Q.zPNh0Zg1kj8U_SXP5l309k87uVkgzIbel_hNprgAONxVHmjtz6TE5nSC.s0upQzIeIvNbFy2r bQvvLjk1WFk_ZzPx8ItbpNjgKXS1AHlMhTcizyLjxAvbQVFEOp1JR6JLv_4XVM3VO63CZK3mFXPn fhSUAnthwNsTWsiTYPcd7vrxYAMLxtkmvwUlv4sOnAOBIlrrihQCRj1eo1GD8NNaW3Ksw78rwegt R05VQIZrCh.AJlL_elnVJNiUa8qPN4P26NayrR5.Gn5ryW3uM3odIKT0QCfgFMHinpvRu9IYhJv6 dbcVOxs47QX0DITN.fhLFFY1LqXU9AmzsaxgcQLh1x6mfVu_Sww0n.bDDq8axS8eQzPzKijAL64_ B_qYIEcif1Xv6OONkZ5fbctYZPTUBicqiqeu4_nbM2GheWUHRdKJuM4yxWkAdUwK7KPUjN9zcD8t dWtOCy3DGUCRrScW0jEn097JrU6iWKt18p1ll0_Hig3cMxUk6CuXmCTl3jc43nffDGtHL5AiojTr WsjiL2bL6iZkOtOBm9HXxOQBt8EnxOy8avMBG3r3c3BxIskmB1BbrwWCAuRkGAVnrD_XZzfZp X-Sonic-MF: Received: from sonic.gate.mail.ne1.yahoo.com by sonic312.consmr.mail.ne1.yahoo.com with HTTP; Wed, 19 Oct 2022 11:18:55 +0000 Received: by hermes--production-sg3-74fb94585-fbrfq (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID af2f71f55850503f4d1f7d283ad86d6f; Wed, 19 Oct 2022 11:18:52 +0000 (UTC) From: Po Lu To: Yuwei Tian Subject: Re: bug#58627: 29.0.50; `set-frame-position' doesn't set frame position correctly when it is called with negative X or Y In-Reply-To: (Yuwei Tian's message of "Wed, 19 Oct 2022 14:37:00 +0800") References: Date: Wed, 19 Oct 2022 19:18:48 +0800 Message-ID: <87r0z483jb.fsf@yahoo.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Mailer: WebService/1.1.20754 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Content-Length: 1102 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58627 Cc: 58627@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Yuwei Tian writes: > The manual for the function `set-frame-position' says this: > > "Negative parameter values position the right edge of the outer > frame by -X pixels left from the right edge of the screen (or the > parent frame's native rectangle) and the bottom edge by - Y pixels > up from the bottom edge of the screen (or the parent frame's native > rectangle)." > > Tested with NS port Emacs 28.2 and 29.0.50 on macOS 12.6. > > In Emacs 28, when using `set-frame-position' to set the position of > the child frame, when X or Y is a negative value, it correctly sets > the position of the child frame so that its right edge is X pixels > away from the right edge of its parent frame or its bottom edge is > Y pixels away from the bottom edge of its parent frame. > > But in Emacs 29, when X or Y is negative, `set-frame-position` sets > the position of child frame's (0, 0) point -X pixels left or -Y pixels > up from its parent frame's (0, 0) point. > > `set-frame-position' has inconsistent behavior in Emacs 28 and 29. Did you build Emacs 28.2 on Mac OS 12.6 as well? From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 19 09:10:51 2022 Received: (at 58627) by debbugs.gnu.org; 19 Oct 2022 13:10:51 +0000 Received: from localhost ([127.0.0.1]:56182 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ol8qR-0000GU-49 for submit@debbugs.gnu.org; Wed, 19 Oct 2022 09:10:51 -0400 Received: from sonic312-23.consmr.mail.ne1.yahoo.com ([66.163.191.204]:36965) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ol8qN-0000GD-Md for 58627@debbugs.gnu.org; Wed, 19 Oct 2022 09:10:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1666185040; bh=87eKzSmQxPW11OHjhT9m8aXp0uXIR0UyUFGUUjyaSps=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=ulT2fIXR/Zvbdbf3qHogeFKtYHVDbmhy9xp/kZnX8U4n1rI52SSbFg0Hwe8x/FKT4T1iNnSGyyxj8Cq1e4j8Two3hAVq4gUKT4eBJ/foNz0pZJgvXRLo0PikQrUj2x98cn/iooVSmHOT44XWjixVVbY+tWCsm3Nmnv5vFI9YFLs4ZG5DnYEEmIZi5CcyGCTndXusS5BEgHzIUZsUFwoI4Wew7dugaHC40koWxlG3ryVCgBNWDGUeHyoEAdGdLZfl47XXvl65CaLQbINii751OQyJ5SJKg66xqZx17dZI50sprAPLs+2/BYDTIUDwSKHA65RX+YKiA89dRJv6uRkevg== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1666185040; bh=OM0KGFOrr4OfJVAqS3X2vCCy6WV8GY9DQGBctBLITox=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=QD64t+1Ds53LBTL4IuJ//nFvfiY81OCPVnyvBg6RtIy8Lg5CMy3QknAMrtIyhR0wEDd41pD4CSfq/ksSg2Isgv+L+GIoRXKKWTrwbn+AQ7j/UYTsdj0sbgmb/9IdK1lmLaNyrooOnWuPYNurXNCnn0tIBkLi9xO7ld+lu0ldLEPVjbO/mEh3lOm/wMnm/GkFpK76Om3lfgt/v/kMRWlusFTz+JHxj9ZDFNIXT6AFybeWxJY80pcdMzJ/jH3SDdkx7pnbXlnGs77Etd4H+jQ7s8kaZpVx0FNp49Znek6H5WCr0y74WMoO5EJJgeeqhO3PVRAqS+KP7xZr0vKoAK3kTA== X-YMail-OSG: FOgZp.4VM1l.dOYZmVJhbl7E5LONzOLnVunnhNJ6AhjXnIVe7NtPOcAVtptRheO .4Ha7VgQyqiS_4WCif6FHpT9axkL4RQT2Oy0E6OM.P_vBmFF8tZqDuC0ICkcmXsd7wmaJxWTWAm2 saNApgIJ2T3w445Lt2j60n83uRR1z1c_36KhzRM3.3Q7JqsDk383GiNLinQXc4JAaIfoj9aE9n5E PqYBQK5C_YufXBwqRQb7dmr8pB2__9etIEGpKaUye0u2.qaZXK8soAB.IZfcybaKPgKtbsPuCwb8 mAz.Ics4z9PAZc4bl683.ylxeo22O5GgazshhTzWA9LJDRvOkB3ZAlpKqHE322KA1WJFuTpb647W xcYM3.FitiWN.HELmSLAxAUnH3qKyFz457jBj4ygqtygh6pANKdvn3LMPehiaeaauuPdIf13iFzE jJRvEKTciqzdKRMnz8LkkBPV7KVao.8x2IA7QMeCBdgymMK6xlDV.tKBdrJajunjsOnvToVGooLS xgUw6xNTIiIGxyJo1A56m7bR8J48mZscAcXyHW0oU6iT0fRxH9tn5iyWc3kSwPadjTFz3uR7T0u_ qHAqLR3o8Z8Nvdsc2.Fu6wlFa.b6.kiddJiTOC0Uc6jKedlTXD2K6Swr61vegtjq9yOd2gC9OIaR gRvNTgcbK2CsdszLArJE4Ax_c4N1ZI_t9PhzRMawtP7RcY8IeE9fXBo7I6rVMEP53jLQFQxM1THf KSzUbsp3c3BryjtLPpMhZ5ruDqAVWzHpA8TILgndmjbRODfFlNWo1nK_f8PEHNFLc5Q1fCIbIP0a fqWjlacALR47FjjBWIQrwzWOud0KDWlSbz.jjnlvHPwKD9qq4sRRfhnmqkFcafFGvZFoiRWhdqxF N6ILK6h1ToSSo4w4vNrop9huHEYWOnyJVQqUJKYoI_NqvJlTATMFwsFs9gZI46E44uhEaz6VFpMe K8_3sXqvPV.90bJU4mL6klgZnGG.cp3iQkeFtajOx9eFS1wAMZ71Vij84RaL6vRbsb79uBb1Ah.5 DTkm25gbPvCHendjD_qmgOVetsNdeRQJmw.BRH0P9bi50zIfRwjlXRInHY.hiUJTN5rnPj6k1F.w 4MUCuBR4b2iDrbCqXrf.QLyGp1gB6fYPGD8BSCXHwdcj8Af2ZuPZtimlrMegDRHMEyy.E2B0wysd KJALCTujRgSgfqTh27XIPTCO1Rffw0vMriWQq9oY.rz27bRKiZPkzmP56ANbOZWZ_rmskucOmbsp bJSjACsl18IFTWqE3YZA.Elt2EhgsUW5ZibAUwf._FodYxZASIZKAyorn98V.H8g2skqoKIwi8.1 C3sqJxcLklQCWyGRgevuKSiTSxF9Qe44mmQgFOhJpg4FZz7xLdWyrEFJUhLH49Y3dVQqWhWTqBTP y4PR4_LSF4LzaIJdQeo98DxC7Z7fz6ZBCU1.cj1m1P5n9g6T4bQ.fhVlVXQsaSz7l.Ll.89j5ms7 mbFZCZeGOcBIzfWn4gVNXyCf1hDbUVZJeLGgDJlLv7WyePjKFFS0uGeKNs91rk7j6BgKxaMpt4sK B7.zwSK4ccHY9J2P1dLmkTVTF1Nd6ZbN151MHTMa_6VzolPaWAlN6PnOt_TE_m8zJz310f5bVSym HfWtsXOJILxfPU03Ynnauo2l36GVesY8xYnaM9WNNyTbziEXsCdxaSaLcYDtLxoxxMuEMpoIv0H9 3m8.GS2zCLHcOVY3F_ZQFBETqFbZ4e7K.y6sUme6FFUfe_MwLg.SW0au_MHUzbLwAPScz.Khx_RC L6aAY4xGN4EK8hzmxSDO388VYD.zE7nIZp.s4Kqws7s3YNQ_dAY2Wlrho1Nt6SPbo1gu0RSGmWkP wkYkdJ47ZILLYox95tU.TEaEzGau3JEMw9TBUiiK1mvUhzeCatUTlyj1EUofJj21PL7a_Esgz0Dt 05FsfWajqJdayXLAgUScfLCOjNK9e5MV0fHaTsaU4FXAW.h7LBxhnt3_0GC1dXE_bTyFg87OXX6U QNLn5gih2X215WXoGcuar_fSafHuEWN31gaYdp4DwcsKbHws13yHAczYY7M_OrFULrzpOAVbhPHb udW7A3kEyXyPkDslCFGvWWLqIX2XcjNGQKNo3bmk.1QVPrKr6ARO_ATqZgk4e9NdGLXg_35uyjBW AX1VbyNOnGWRUbrTHfAnoI3slD1n.DFHam9tbO4ILVFP6nLozbr1_QYWNjSWExJA1zEVD66Lv8TG UCiUUhfE1l_dwJ73nngWI3mBYDxv0RBd3XzHtplfigubKP1_Q0_Zp5tVZ8AqolonalIxFPjQ- X-Sonic-MF: Received: from sonic.gate.mail.ne1.yahoo.com by sonic312.consmr.mail.ne1.yahoo.com with HTTP; Wed, 19 Oct 2022 13:10:40 +0000 Received: by hermes--production-sg3-74fb94585-btmps (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID c88f21b6c51219bbc7ce53e5d020cd27; Wed, 19 Oct 2022 13:10:33 +0000 (UTC) From: Po Lu To: Yuwei Tian Subject: Re: bug#58627: 29.0.50; `set-frame-position' doesn't set frame position correctly when it is called with negative X or Y In-Reply-To: (Yuwei Tian's message of "Wed, 19 Oct 2022 20:23:51 +0800") References: <87r0z483jb.fsf@yahoo.com> Date: Wed, 19 Oct 2022 21:10:27 +0800 Message-ID: <87mt9s7yd8.fsf@yahoo.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Mailer: WebService/1.1.20754 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Content-Length: 564 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58627 Cc: 58627@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Yuwei Tian writes: > Sorry. I just built Emacs 28.2 on macOS 12.6. It behaves the same as Emacs 29. > I tested it again on the Mac port version of Emacs 28.2, and the behavior is the > same as described in the manual. Is it an issue with the NS version Emacs only? Carbon Emacs (the "Mac port") probably implements set-frame-position correctly. The NS port is definitely wrong there. If someone points me to how Carbon Emacs implements it, I'd be happy to implement it similarly for NS, as long as it doesn't use Carbon to move the frame. From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 19 10:44:47 2022 Received: (at 58627) by debbugs.gnu.org; 19 Oct 2022 14:44:48 +0000 Received: from localhost ([127.0.0.1]:59668 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1olAJL-0005me-Hj for submit@debbugs.gnu.org; Wed, 19 Oct 2022 10:44:47 -0400 Received: from mail-lf1-f50.google.com ([209.85.167.50]:38769) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ol87F-0007Rr-NC for 58627@debbugs.gnu.org; Wed, 19 Oct 2022 08:24:10 -0400 Received: by mail-lf1-f50.google.com with SMTP id g7so22726899lfv.5 for <58627@debbugs.gnu.org>; Wed, 19 Oct 2022 05:24:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=iwX/gS05P1FfS7fxiY5z2+AzMT5l9zt+2aGLHTF9roQ=; b=WUfr6/ZgvGJVxD5UH2+aSr05Nm4QW+bUYmh0yAs6dLXI2FYtSaA/eQfHhVR4ybpZnU 7HH9h14havm2g3Mr3BZJVcc0Uigqq92xv5VofEVVYnCnWfWqoCORapbXVbjEFvM+u794 V8jKFI3cAK46WA6RIcREhg21GjB0nmglWw0T3dNcqKKzkKFgXQxJFGk6ULKBwdZZFaQj sPYYyXld4ntsk64HnlVMpGRiC6xSKPWb3pHc7I0W7qwqBOQ3szKYtMetmwctPQ5H3j6f hsfs02uSdcJWOWOWOfc8if8oyJg+usFtKp5Uml4hQGVgfHxAuaxC4yNTJyLRiALj6SD1 cW9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=iwX/gS05P1FfS7fxiY5z2+AzMT5l9zt+2aGLHTF9roQ=; b=lMceZGxUc9quZrohXtFJDs3RoV3lrtrmjl+nvaWJeeme09rpMR3nHYmNoWj2q/j67D 6jNuHi9b0RmqcUW6sjIILWr478sbjCpC3dgnvsue8/oJkBWgdAEI6RzhzW0gJtHmUVak 1rKg5YmDRGiBujdzkS5XqiUD/zKI/WqQeJ5jtXkCesnCWrKz17O+wG+aCFKFG+cU2OMP 4OgONwDrM17EF9yUrqoZPWtC7qy080mBMKLL+YS+9Vc+wWWGjEb8beTzfoKQMpVlZe71 WI5jwQmck3PrrUbBDSAAd3u68wuCkh2jAZkt+JCl7i+KMpXvdKw/TNBoVJMFJXEnREVf w+hQ== X-Gm-Message-State: ACrzQf2UfaNo4sNgPjkqI5oW0vdUXFEdG4fmxOB63ey5HeRMcoVnW4S3 sM8BTKW85U396JNTD2vR4/8orFmnTESFMhPZpNA= X-Google-Smtp-Source: AMsMyM42GSkpyZBSxk+cn/5JEa5+ylY5Wa6OIk9JMounfOJVFijNBFWU6v5oNJuSHJqGoyQ4CgCFgxvghCKmr/aISms= X-Received: by 2002:ac2:5fac:0:b0:4a1:faff:53a8 with SMTP id s12-20020ac25fac000000b004a1faff53a8mr2670129lfe.587.1666182243512; Wed, 19 Oct 2022 05:24:03 -0700 (PDT) MIME-Version: 1.0 References: <87r0z483jb.fsf@yahoo.com> In-Reply-To: <87r0z483jb.fsf@yahoo.com> From: Yuwei Tian Date: Wed, 19 Oct 2022 20:23:51 +0800 Message-ID: Subject: Re: bug#58627: 29.0.50; `set-frame-position' doesn't set frame position correctly when it is called with negative X or Y To: Po Lu Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.2 (/) X-Debbugs-Envelope-To: 58627 X-Mailman-Approved-At: Wed, 19 Oct 2022 10:44:45 -0400 Cc: 58627@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.8 (/) Sorry. I just built Emacs 28.2 on macOS 12.6. It behaves the same as Emacs 29. I tested it again on the Mac port version of Emacs 28.2, and the behavior is the same as described in the manual. Is it an issue with the NS version Emacs only? On Wed, Oct 19, 2022 at 7:18 PM Po Lu wrote: > > Yuwei Tian writes: > > > The manual for the function `set-frame-position' says this: > > > > "Negative parameter values position the right edge of the outer > > frame by -X pixels left from the right edge of the screen (or the > > parent frame's native rectangle) and the bottom edge by - Y pixels > > up from the bottom edge of the screen (or the parent frame's native > > rectangle)." > > > > Tested with NS port Emacs 28.2 and 29.0.50 on macOS 12.6. > > > > In Emacs 28, when using `set-frame-position' to set the position of > > the child frame, when X or Y is a negative value, it correctly sets > > the position of the child frame so that its right edge is X pixels > > away from the right edge of its parent frame or its bottom edge is > > Y pixels away from the bottom edge of its parent frame. > > > > But in Emacs 29, when X or Y is negative, `set-frame-position` sets > > the position of child frame's (0, 0) point -X pixels left or -Y pixels > > up from its parent frame's (0, 0) point. > > > > `set-frame-position' has inconsistent behavior in Emacs 28 and 29. > > Did you build Emacs 28.2 on Mac OS 12.6 as well?