From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by arlo.cworth.org (Postfix) with ESMTP id D9C956DE1149 for ; Thu, 6 Oct 2016 14:42:09 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at cworth.org X-Spam-Flag: NO X-Spam-Score: 0.006 X-Spam-Level: X-Spam-Status: No, score=0.006 tagged_above=-999 required=5 tests=[AWL=-0.124, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=disabled Received: from arlo.cworth.org ([127.0.0.1]) by localhost (arlo.cworth.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id JN6KlAQQdCWH for ; Thu, 6 Oct 2016 14:42:09 -0700 (PDT) Received: from mail-wm0-f66.google.com (mail-wm0-f66.google.com [74.125.82.66]) by arlo.cworth.org (Postfix) with ESMTPS id E41796DE1104 for ; Thu, 6 Oct 2016 14:42:08 -0700 (PDT) Received: by mail-wm0-f66.google.com with SMTP id i130so2096945wmg.0 for ; Thu, 06 Oct 2016 14:42:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=bf4XLTnuCHOfP2YsdFS4M8tC7bVBO/YYVXJiyJtJcW8=; b=nO5W2ZDmv4oSQU+IRjqIfuQPc8Lgw21+XpSAwCXGm3jyQyYmhrlPypWeFgfAeshKOi AQ89aYQoFd5W8F807w/xYMkiiAVP+g8/tO85C2tAdc6i8M2z1zYVufch+yfchP6ZtPxS ZV+bMgy+e/8Vc+BpLrr6qvGqXINNOJsirp0lpQGhUtpAT6K9lcP0usMv7ki3OIGXaq4A t2xm0xOqNt41lrlF5/JNwRJ/IESanmmY8yUjMcCpygsRE34DtQxZHBeOEHh8YtafTdf4 lSaaZG/6vWiXhF8llpyDO9nCinkY57dk1ZBfAD2HK7f5KoY+nk9V+ONRvfwV6IdMEVha oSog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=bf4XLTnuCHOfP2YsdFS4M8tC7bVBO/YYVXJiyJtJcW8=; b=ZaUg5EjvtqPmmpWBfCXRtw2l7WTqskOUEViqJxsVhbFOjw+a7lqT71L6FlvnEGyxiF TkjJbgwkspdlz3tecdQIi6kcFtuQX2GvA3qZG74QxZ6WDr/cQSvAxaWq3EARX/F/zjgL s7EFTO0Y1AHNgvBgTVBA7XatZbUrqtrBooMTBuoGP5Va6RtVKILAj1bhGE86m9LlnTR2 UWbdIvJD47emSdOsaJ5hPX3CVznSGkl+5eCQQgBe6xpeiVgDxZeGWilFLf1nu7TQlM2C pcsZRbOHefpR54hc7l5KoJ5F1Z5YwjHPhlIPL2ru1trQPm3l+LZKZszaY4StBvH4ouj2 czeQ== X-Gm-Message-State: AA6/9RmlA69y+qOEqOMur7ubGi8WYbhZk7VZbU1hkIwmKaZHnzHVqOeDzJDeezXgVyqYKQ== X-Received: by 10.28.197.202 with SMTP id v193mr22184058wmf.124.1475790127197; Thu, 06 Oct 2016 14:42:07 -0700 (PDT) Received: from localhost (5751dfa2.skybroadband.com. [87.81.223.162]) by smtp.gmail.com with ESMTPSA id xb6sm16488815wjb.30.2016.10.06.14.42.06 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 06 Oct 2016 14:42:06 -0700 (PDT) From: Mark Walters To: notmuch@notmuchmail.org Subject: [PATCH] emacs: make the refresh code more consistent Date: Thu, 6 Oct 2016 22:42:02 +0100 Message-Id: <1475790122-21539-1-git-send-email-markwalters1009@gmail.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <87twcpb3dq.fsf@adiPC.i-did-not-set--mail-host-address--so-tickle-me> References: <87twcpb3dq.fsf@adiPC.i-did-not-set--mail-host-address--so-tickle-me> X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Oct 2016 21:42:10 -0000 The current refresh code is a little haphazard with some of the refresh functions called interactively, and some not. Some of the refresh functions take arguments and they aren't consistent. This makes all the functions have the same form. --- This might be a sensible change to make before the series id:20161006134227.17194-1-adi@adirat.com (or merge into that series). I think the refresh functions should all be called non-interactively as that will make it easier to pass arguments, and they should also take the same arguments (though they can feel free to ignore them). Best wishes Mark emacs/notmuch-hello.el | 2 +- emacs/notmuch-lib.el | 22 ++++++++++++---------- emacs/notmuch-show.el | 2 +- emacs/notmuch-tree.el | 5 ++--- emacs/notmuch.el | 2 +- 5 files changed, 17 insertions(+), 16 deletions(-) diff --git a/emacs/notmuch-hello.el b/emacs/notmuch-hello.el index d582bff..97280ca 100644 --- a/emacs/notmuch-hello.el +++ b/emacs/notmuch-hello.el @@ -604,7 +604,7 @@ with `notmuch-hello-query-counts'." (defimage notmuch-hello-logo ((:type png :file "notmuch-logo.png"))) -(defun notmuch-hello-update (&optional no-display) +(defun notmuch-hello-update (&optional ignore no-display) "Update the current notmuch view." ;; Lazy - rebuild everything. (notmuch-hello no-display)) diff --git a/emacs/notmuch-lib.el b/emacs/notmuch-lib.el index b2cdace..2d27e56 100644 --- a/emacs/notmuch-lib.el +++ b/emacs/notmuch-lib.el @@ -410,23 +410,25 @@ of its command symbol." (pop-to-buffer (help-buffer))))) (defvar notmuch-buffer-refresh-function nil - "Function to call to refresh the current buffer.") + "Function to call to refresh the current buffer. + +It will be called with two arguments: the first is the prefix +argument when notmuch-refresh-this-buffer is called +interactively, the second requests that the refresh call not +display the buffer.") (make-variable-buffer-local 'notmuch-buffer-refresh-function) -(defun notmuch-refresh-this-buffer () +(defun notmuch-refresh-this-buffer (prefix) "Refresh the current buffer." - (interactive) + (interactive "P") (when notmuch-buffer-refresh-function - (if (commandp notmuch-buffer-refresh-function) - ;; Pass prefix argument, etc. - (call-interactively notmuch-buffer-refresh-function) - (funcall notmuch-buffer-refresh-function)))) + (funcall notmuch-buffer-refresh-function prefix))) -(defun notmuch-poll-and-refresh-this-buffer () +(defun notmuch-poll-and-refresh-this-buffer (prefix) "Invoke `notmuch-poll' to import mail, then refresh the current buffer." - (interactive) + (interactive "P") (notmuch-poll) - (notmuch-refresh-this-buffer)) + (notmuch-refresh-this-buffer prefix)) (defun notmuch-prettify-subject (subject) ;; This function is used by `notmuch-search-process-filter' which diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index f2487ab..1772d10 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -1358,7 +1358,7 @@ This includes: ;; Go to the previously open message. (notmuch-show-goto-message current))) -(defun notmuch-show-refresh-view (&optional reset-state) +(defun notmuch-show-refresh-view (&optional reset-state ignore) "Refresh the current view. Refreshes the current view, observing changes in display diff --git a/emacs/notmuch-tree.el b/emacs/notmuch-tree.el index 1555812..c347712 100644 --- a/emacs/notmuch-tree.el +++ b/emacs/notmuch-tree.el @@ -271,7 +271,6 @@ FUNC." (define-key map "x" 'notmuch-tree-quit) (define-key map "A" 'notmuch-tree-archive-thread) (define-key map "a" 'notmuch-tree-archive-message-then-next) - (define-key map "=" 'notmuch-tree-refresh-view) (define-key map "z" 'notmuch-tree-to-tree) (define-key map "n" 'notmuch-tree-next-matching-message) (define-key map "p" 'notmuch-tree-prev-matching-message) @@ -571,9 +570,9 @@ message will be \"unarchived\", i.e. the tag changes in (when (window-live-p notmuch-tree-message-window) (notmuch-tree-show-message-in))) -(defun notmuch-tree-refresh-view () +(defun notmuch-tree-refresh-view (&rest ignore) "Refresh view." - (interactive) + (interactive "P") (let ((inhibit-read-only t) (basic-query notmuch-tree-basic-query) (query-context notmuch-tree-query-context) diff --git a/emacs/notmuch.el b/emacs/notmuch.el index 888672b..ee1bb54 100644 --- a/emacs/notmuch.el +++ b/emacs/notmuch.el @@ -982,7 +982,7 @@ the configured default sort order." (set-process-query-on-exit-flag proc nil)))) (run-hooks 'notmuch-search-hook))) -(defun notmuch-search-refresh-view () +(defun notmuch-search-refresh-view (&rest ignore) "Refresh the current view. Kills the current buffer and runs a new search with the same -- 2.1.4