From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: "J.P." Newsgroups: gmane.emacs.bugs Subject: bug#51753: bug#55540: 29.0.50; ERC launches autojoin-channels in current frame instead of original frame Date: Tue, 06 Sep 2022 20:10:23 -0700 Message-ID: <874jxj282o.fsf__25231.0992962279$1662520281$gmane$org@neverwas.me> References: <878rqwjqua.fsf@codeisgreat.org> <87a6b92ers.fsf@neverwas.me> <875ylxm07b.fsf@codeisgreat.org> <87fsl0zo2e.fsf@neverwas.me> <87a68cnss7.fsf_-_@neverwas.me> <87sfm3tro1.fsf@codeisgreat.org> <87o7vsu5pc.fsf_-_@gnus.org> <87o7vs38yp.fsf@neverwas.me> <87y1uwr47b.fsf@gnus.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="15764"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) Cc: 55540@debbugs.gnu.org, 51753@debbugs.gnu.org, emacs-erc@gnu.org, Pankaj Jangid To: Lars Ingebrigtsen Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed Sep 07 05:11:14 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oVlT7-0003vd-I0 for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 07 Sep 2022 05:11:14 +0200 Original-Received: from localhost ([::1]:46544 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oVlT6-0002hc-Kk for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 06 Sep 2022 23:11:12 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:46420) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oVlSw-0002hG-Gj for bug-gnu-emacs@gnu.org; Tue, 06 Sep 2022 23:11:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:36144) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oVlSw-0004Pd-8j for bug-gnu-emacs@gnu.org; Tue, 06 Sep 2022 23:11:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oVlSv-0008O0-Vk for bug-gnu-emacs@gnu.org; Tue, 06 Sep 2022 23:11:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: "J.P." Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 07 Sep 2022 03:11:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 51753 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch moreinfo Original-Received: via spool by 51753-submit@debbugs.gnu.org id=B51753.166252023932208 (code B ref 51753); Wed, 07 Sep 2022 03:11:01 +0000 Original-Received: (at 51753) by debbugs.gnu.org; 7 Sep 2022 03:10:39 +0000 Original-Received: from localhost ([127.0.0.1]:53075 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oVlSY-0008NN-MK for submit@debbugs.gnu.org; Tue, 06 Sep 2022 23:10:39 -0400 Original-Received: from mail-108-mta158.mxroute.com ([136.175.108.158]:45895) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oVlSU-0008Mv-Hg for 51753@debbugs.gnu.org; Tue, 06 Sep 2022 23:10:37 -0400 Original-Received: from mail-111-mta2.mxroute.com ([136.175.111.2] mail-111-mta2.mxroute.com) (Authenticated sender: mN4UYu2MZsgR) by mail-108-mta158.mxroute.com (ZoneMTA) with ESMTPSA id 18315ed78af000dd1a.002 for <51753@debbugs.gnu.org> (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES128-GCM-SHA256); Wed, 07 Sep 2022 03:10:28 +0000 X-Zone-Loop: 6301184a049097961c7cfaab1db1874b9bc6e928b159 X-Originating-IP: [136.175.111.2] DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=neverwas.me ; s=x; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date:References: Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=Y9yBcVSqrEmte5ZgV3THgrVWy5wPJIewXM34E7HPg5I=; b=ZxwXpD236OJzb7JIrpGfPx0dch xEgh7VHaw8AwSsQMeW9Ky3eMWhy1meeT6+KA4NnMaGCeVd85KXWXfTf0H7Tabcvl1hplCtUJuvAa6 ghlj0xkukHh1mEMr90BtdxHaJ8LX4tkquDnXL9WLOfNciOJ9QxJK+bP82e0uRK8bsFm/ZVTWjbhVc b6pTtoas029FVzf2iBh0j4Rk4tSNQ45dLRCe04l1T9iEGdTBgEjRveY6VPf97y6wxc7luXlWABo/P ZlqxkjpdvNxrbT6tDfLCeIJ7TG/cDWFS0l/8MZJ+ywKr8mCOSAJ1jEYCxeIzmmqqCpO70+YeUxepD 8D5l93HQ==; In-Reply-To: <87y1uwr47b.fsf@gnus.org> (Lars Ingebrigtsen's message of "Tue, 06 Sep 2022 16:02:32 +0200") X-Authenticated-Id: masked@neverwas.me X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:241717 Archived-At: --=-=-= Content-Type: text/plain Lars Ingebrigtsen writes: > "J.P." writes: > >> Really, the only safe option is `bury' (well, maybe also the proposed >> frame stuff in Pankaj's patch, but only when an extra, ERC-specific >> frame already exists, which we can't count on). That said, there's no >> reason we'd have to stick with existing options/behavior when choosing a >> new default. I guess it just comes down to what users want to happen. > > I think the default action should be to do nothing to the window setup > at all, and just add the notification to the mode line. I believe changing the default for `erc-join-buffer' (alone) to `bury' is the easiest way to achieve that. Thus, if no one objects within the next week or so, I will add the patch below or similar to trunk (and what will become ERC 5.5), along with a related NEWS entry. Thanks. --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-Bury-new-ERC-buffers-by-default.patch >From 8b4edbca2771227d4e6ee464ddd210080339f63b Mon Sep 17 00:00:00 2001 From: "F. Jason Park" Date: Tue, 6 Sep 2022 19:09:54 -0700 Subject: [PATCH] Bury new ERC buffers by default * lisp/erc/erc.el (erc-join-buffer): Change default value to `bury'. * test/lisp/erc/erc-scenarios-base-reconnect.el (erc-scenarios-common-base-reconnect-options): Update helper to handle new default value for option `erc-join-buffer'. (erc-scenarios-base-reconnect-options--buffer): Update and rename function `erc-scenarios-base-reconnect-options--default'. (erc-scenarios-base-reconnect-options--default): Update and rename function `erc-scenarios-base-reconnect-options--bury'. --- lisp/erc/erc.el | 3 +- test/lisp/erc/erc-scenarios-base-reconnect.el | 45 ++++++++++--------- 2 files changed, 25 insertions(+), 23 deletions(-) diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el index 151d75e7ce..657ef8cdb3 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el @@ -1651,7 +1651,7 @@ erc-default-port-tls "IRC port to use for encrypted connections if it cannot be \ detected otherwise.") -(defcustom erc-join-buffer 'buffer +(defcustom erc-join-buffer 'bury "Determines how to display a newly created IRC buffer. The available choices are: @@ -1662,6 +1662,7 @@ erc-join-buffer `bury' - bury it in a new buffer, `buffer' - in place of the current buffer, any other value - in place of the current buffer." + :package-version '(ERC . "5.4.1") ; FIXME increment upon publishing to ELPA :group 'erc-buffers :type '(choice (const :tag "Split window and select" window) (const :tag "Split window, don't select" window-noselect) diff --git a/test/lisp/erc/erc-scenarios-base-reconnect.el b/test/lisp/erc/erc-scenarios-base-reconnect.el index 30d692058d..49298dc594 100644 --- a/test/lisp/erc/erc-scenarios-base-reconnect.el +++ b/test/lisp/erc/erc-scenarios-base-reconnect.el @@ -99,10 +99,11 @@ erc-scenarios-common--base-reconnect-options (funcall test) + ;; A manual /JOIN command tells ERC we're done auto-reconnecting (with-current-buffer "FooNet" (erc-cmd-JOIN "#spam")) - (erc-d-t-wait-for 5 "Channel #spam shown when autojoined" - (eq (window-buffer) (get-buffer "#spam"))) + (erc-d-t-ensure-for 1 "Newly joined chan ignores `erc-reconnect-display'" + (not (eq (window-buffer) (get-buffer "#spam")))) (ert-info ("Wait for auto reconnect") (with-current-buffer erc-server-buffer @@ -114,43 +115,43 @@ erc-scenarios-common--base-reconnect-options (with-current-buffer (erc-d-t-wait-for 10 (get-buffer "#spam")) (funcall expect 10 "her elves come here anon"))))) -(ert-deftest erc-scenarios-base-reconnect-options--default () +(ert-deftest erc-scenarios-base-reconnect-options--buffer () :tags '(:expensive-test) - (should (eq erc-join-buffer 'buffer)) + (should (eq erc-join-buffer 'bury)) (should-not erc-reconnect-display) ;; FooNet (the server buffer) is not switched to because it's ;; already current (but not shown) when `erc-open' is called. See ;; related conditional guard towards the end of that function. - (erc-scenarios-common--base-reconnect-options - (lambda () - (pop-to-buffer-same-window "*Messages*") + (let ((erc-reconnect-display 'buffer)) + (erc-scenarios-common--base-reconnect-options + (lambda () + (pop-to-buffer-same-window "*Messages*") - (erc-d-t-ensure-for 1 "Server buffer not shown" - (not (eq (window-buffer) (get-buffer "FooNet")))) + (erc-d-t-ensure-for 1 "Server buffer not shown" + (not (eq (window-buffer) (get-buffer "FooNet")))) - (erc-d-t-wait-for 5 "Channel #chan shown when autojoined" - (eq (window-buffer) (get-buffer "#chan")))))) + (erc-d-t-wait-for 5 "Channel #chan shown when autojoined" + (eq (window-buffer) (get-buffer "#chan"))))))) -(ert-deftest erc-scenarios-base-reconnect-options--bury () +(ert-deftest erc-scenarios-base-reconnect-options--default () :tags '(:expensive-test) - (should (eq erc-join-buffer 'buffer)) + (should (eq erc-join-buffer 'bury)) (should-not erc-reconnect-display) - (let ((erc-reconnect-display 'bury)) - (erc-scenarios-common--base-reconnect-options + (erc-scenarios-common--base-reconnect-options - (lambda () - (pop-to-buffer-same-window "*Messages*") + (lambda () + (pop-to-buffer-same-window "*Messages*") - (erc-d-t-ensure-for 1 "Server buffer not shown" - (not (eq (window-buffer) (get-buffer "FooNet")))) + (erc-d-t-ensure-for 1 "Server buffer not shown" + (not (eq (window-buffer) (get-buffer "FooNet")))) - (erc-d-t-ensure-for 3 "Channel #chan not shown" - (not (eq (window-buffer) (get-buffer "#chan")))) + (erc-d-t-ensure-for 3 "Channel #chan not shown" + (not (eq (window-buffer) (get-buffer "#chan")))) - (eq (window-buffer) (messages-buffer)))))) + (eq (window-buffer) (messages-buffer))))) ;; Upon reconnecting, playback for channel and target buffers is ;; routed correctly. Autojoin is irrelevant here, but for the -- 2.37.2 --=-=-=--