From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Pip Cet Newsgroups: gmane.emacs.bugs Subject: bug#36165: 27.0.50; `select-frame-set-input-focus' moves mouse pointer outside of frame Date: Tue, 11 Jun 2019 07:22:41 +0000 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="000000000000d0fc1e058b072b0c" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="137988"; mail-complaints-to="usenet@blaine.gmane.org" To: 36165@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Jun 11 09:26:38 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1habB0-000Zkh-7m for geb-bug-gnu-emacs@m.gmane.org; Tue, 11 Jun 2019 09:26:38 +0200 Original-Received: from localhost ([::1]:52382 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1habAz-0003JU-7w for geb-bug-gnu-emacs@m.gmane.org; Tue, 11 Jun 2019 03:26:37 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:35496) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hab8X-0008ND-PJ for bug-gnu-emacs@gnu.org; Tue, 11 Jun 2019 03:24:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hab8W-00048c-JJ for bug-gnu-emacs@gnu.org; Tue, 11 Jun 2019 03:24:05 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:44391) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hab8U-00046P-T7 for bug-gnu-emacs@gnu.org; Tue, 11 Jun 2019 03:24:04 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hab8U-00080r-Nm for bug-gnu-emacs@gnu.org; Tue, 11 Jun 2019 03:24:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Pip Cet Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 11 Jun 2019 07:24:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 36165 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.156023780830759 (code B ref -1); Tue, 11 Jun 2019 07:24:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 11 Jun 2019 07:23:28 +0000 Original-Received: from localhost ([127.0.0.1]:57935 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hab7w-000803-AT for submit@debbugs.gnu.org; Tue, 11 Jun 2019 03:23:28 -0400 Original-Received: from lists.gnu.org ([209.51.188.17]:49332) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hab7u-0007zu-O8 for submit@debbugs.gnu.org; Tue, 11 Jun 2019 03:23:27 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:35318) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hab7t-0007yx-7t for bug-gnu-emacs@gnu.org; Tue, 11 Jun 2019 03:23:26 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hab7s-0003G2-34 for bug-gnu-emacs@gnu.org; Tue, 11 Jun 2019 03:23:25 -0400 Original-Received: from mail-ot1-x335.google.com ([2607:f8b0:4864:20::335]:32840) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hab7r-0003BN-St for bug-gnu-emacs@gnu.org; Tue, 11 Jun 2019 03:23:24 -0400 Original-Received: by mail-ot1-x335.google.com with SMTP id p4so7678657oti.0 for ; Tue, 11 Jun 2019 00:23:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=CCU9Fv6/Ke+zYP1os1CYMEhJEHfFbDY0KbMcd9iu/Iw=; b=OBmQe6YMV3L7YRN7sXfrY+sSHgkX9s7mlLLTzPQwLIwTlx6FR3IfyNuwOmoPtLGJRW 4t5Kv51OsCEM1K43js0vkBCr8agUL8Kmv2D5zOIAgdrVcVl37rvMqNzanJpWc/65+jQ7 h/EipS++YPNrGMx/ZySIpp45NEXmhdWVmzPhUjtoFHlyFxprVAAwg3j9KPRz+bIhMXcy bUA+l03jV1l5CoSwcLzRt/RwE1XUlRSntJJDMJFqvHN8BYB1J5BhFtU3NlJ1sDRNQAZo 0VLUL7eKRDmH5p1RKJtb5J0yvcsz41UQiuDpd1oYjMqbqCbGSvdQrXILfZbCyZwm+tKn K3FA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=CCU9Fv6/Ke+zYP1os1CYMEhJEHfFbDY0KbMcd9iu/Iw=; b=A3rhqYJJ69bBd0pL1B/fHJONc42mAWUUOVvksgV2IKxFrDbEQF2WbzB5MLHPbScMIZ flo8lkY/Dqxvk4Kr4Qc5aXu7ZvO5xSlMQg3EWmY131QD0ktZSxrWP3O1J8i7z1E2Qx+F IXOgW0IsJPBlhFnwwHVfI8bcEidmD8FsjETiNg97pi7vkAD2MDQKiVSAqo+mHIHxEDN1 dvS26U4b3xKqrJ/zO8os7FhhbEAnqqb/CIKXGsJo+y4bodCerYBbSbMmUrEzRONY+MZP ha6RdQ8OUy3pYR/roD7qyT8qj6XgjAYGF8+yFkqUKCdoFS1jn86lXcJ1xEuGL7rrY2Y0 q+rg== X-Gm-Message-State: APjAAAWwsB8a1cS7s5DbttWzhyaNHX64OECnL/uWbWCuFjm2ox2KyNDy XS6X9UDGsenIbKqHhTAVvrPaY9WM70ep6jjNcSmjI1OGJLY= X-Google-Smtp-Source: APXvYqx+JN4I3/IalkrGZ0FuvEaYJYKYtsyiOVNntdvp7BfshG1Ndq1b/I9+tOoOQYawzHXEiIo5h7dc5UCsyAz5EeY= X-Received: by 2002:a9d:7284:: with SMTP id t4mr23698444otj.154.1560237799684; Tue, 11 Jun 2019 00:23:19 -0700 (PDT) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:160350 Archived-At: --000000000000d0fc1e058b072b0c Content-Type: text/plain; charset="UTF-8" In emacs -Q, disable scroll-bar-mode and evaluate: (let ((mouse-autoselect-window t)) (select-frame-set-input-focus (window-frame))) The mouse pointer will now be to the right of the window frame; with normal window managers, this doesn't matter much, except that a "resize this window" cursor might be shown rather than the usual one, but with tiling window managers, the cursor position may correspond to another window, which is then raised and wrongly receives keyboard focus. This actually happened to me. The attached patch fixes things, by moving the mouse pointer to the last valid x position. diff --git a/lisp/frame.el b/lisp/frame.el index a8c230cb7b..7b61003c9a 100644 --- a/lisp/frame.el +++ b/lisp/frame.el @@ -979,10 +979,11 @@ select-frame-set-input-focus ;; Move mouse cursor if necessary. (cond (mouse-autoselect-window - (let ((edges (window-inside-edges (frame-selected-window frame)))) + (let ((edges (window-edges (frame-selected-window frame) + t nil t))) ;; Move mouse cursor into FRAME's selected window to avoid that ;; Emacs mouse-autoselects another window. - (set-mouse-position frame (nth 2 edges) (nth 1 edges)))) + (set-mouse-pixel-position frame (1- (nth 2 edges)) (nth 1 edges)))) (focus-follows-mouse ;; Move mouse cursor into FRAME to avoid that another frame gets ;; selected by the window manager. --000000000000d0fc1e058b072b0c Content-Type: text/x-patch; charset="US-ASCII"; name="emacs-patch-2.diff" Content-Disposition: attachment; filename="emacs-patch-2.diff" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jwrh968c0 ZGlmZiAtLWdpdCBhL2xpc3AvZnJhbWUuZWwgYi9saXNwL2ZyYW1lLmVsCmluZGV4IGE4YzIzMGNi N2IuLjdiNjEwMDNjOWEgMTAwNjQ0Ci0tLSBhL2xpc3AvZnJhbWUuZWwKKysrIGIvbGlzcC9mcmFt ZS5lbApAQCAtOTc5LDEwICs5NzksMTEgQEAgc2VsZWN0LWZyYW1lLXNldC1pbnB1dC1mb2N1cwog ICA7OyBNb3ZlIG1vdXNlIGN1cnNvciBpZiBuZWNlc3NhcnkuCiAgIChjb25kCiAgICAobW91c2Ut YXV0b3NlbGVjdC13aW5kb3cKLSAgICAobGV0ICgoZWRnZXMgKHdpbmRvdy1pbnNpZGUtZWRnZXMg KGZyYW1lLXNlbGVjdGVkLXdpbmRvdyBmcmFtZSkpKSkKKyAgICAobGV0ICgoZWRnZXMgKHdpbmRv dy1lZGdlcyAoZnJhbWUtc2VsZWN0ZWQtd2luZG93IGZyYW1lKQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHQgbmlsIHQpKSkKICAgICAgIDs7IE1vdmUgbW91c2UgY3Vyc29yIGludG8g RlJBTUUncyBzZWxlY3RlZCB3aW5kb3cgdG8gYXZvaWQgdGhhdAogICAgICAgOzsgRW1hY3MgbW91 c2UtYXV0b3NlbGVjdHMgYW5vdGhlciB3aW5kb3cuCi0gICAgICAoc2V0LW1vdXNlLXBvc2l0aW9u IGZyYW1lIChudGggMiBlZGdlcykgKG50aCAxIGVkZ2VzKSkpKQorICAgICAgKHNldC1tb3VzZS1w aXhlbC1wb3NpdGlvbiBmcmFtZSAoMS0gKG50aCAyIGVkZ2VzKSkgKG50aCAxIGVkZ2VzKSkpKQog ICAgKGZvY3VzLWZvbGxvd3MtbW91c2UKICAgICA7OyBNb3ZlIG1vdXNlIGN1cnNvciBpbnRvIEZS QU1FIHRvIGF2b2lkIHRoYXQgYW5vdGhlciBmcmFtZSBnZXRzCiAgICAgOzsgc2VsZWN0ZWQgYnkg dGhlIHdpbmRvdyBtYW5hZ2VyLgo= --000000000000d0fc1e058b072b0c--