notmuch/emacs
Jani Nikula 1ecacab28f emacs: simplify point placement in notmuch-hello refresh
notmuch-hello (called also through notmuch-hello-update, bound to '='
by default) tries to find the widget under or following point before
refresh, and put the point back to the widget afterwards. The code has
grown quite complicated, and has at least the following issues:

1) All the individual section functions have to include code to
   support point placement. If there is no such support, point is
   dropped to the search box. Only saved searches and all tags
   sections support point placement.

2) Point placement is based on widget-value. If there are two widgets
   with the same widget-value (for example a saved search with the
   same name as a tag) the point is moved to the earlier one, even if
   point was on the later one.

3) When first entering notmuch-hello notmuch-hello-target is nil, and
   point is dropped to the search box.

Moving the point to the search box is annoying because the user is
required to move the point before being able to enter key bindings.

Simplify the code by removing all point placement based on widgets, as
it does not work properly, and trying to fix that would unnecessarily
complicate the code.

Save current line and column before refresh, and restore them
afterwards. Sometimes, if notmuch-show-empty-saved-searches is nil,
and the refresh adds or removes saved searches from the list, this has
the appearance of moving the point relative to the nearest
widgets. This is a much smaller and less frequent problem than the
ones listed above.
2012-09-30 11:20:08 -03:00
..
coolj.el emacs: Add more functions to clean up text/plain parts 2010-04-26 10:05:46 -07:00
Makefile fix sum moar typos [build scripts, Makefiles] 2011-06-23 15:44:59 -07:00
Makefile.local emacs: create notmuch-tag.el, and move appropriate functions from notmuch.el 2012-04-29 17:39:37 -03:00
notmuch-address.el emacs: globally replace non-branching "(if (not ..." with "(unless ..." 2012-01-21 08:17:56 -04:00
notmuch-crypto.el Spelling fix 2012-03-01 19:04:21 -04:00
notmuch-hello.el emacs: simplify point placement in notmuch-hello refresh 2012-09-30 11:20:08 -03:00
notmuch-lib.el emacs: add support for custom tag changes on message/thread archive 2012-09-19 08:04:10 -03:00
notmuch-logo.png emacs: Add notmuch-hello.el, a friendly frontend to notmuch 2010-04-23 12:50:18 -07:00
notmuch-maildir-fcc.el emacs: derive correct timestamp in FCC unique name 2012-06-22 07:39:21 -03:00
notmuch-message.el emacs: use new tag change helper to mark messages as replied 2012-09-19 08:03:35 -03:00
notmuch-mua.el emacs: Do not pass stderr of notmuch reply to JSON parser 2012-05-06 08:49:38 -03:00
notmuch-print.el emacs: Put notmuch-print-mechanism in custom group notmuch-show 2012-04-24 23:25:51 -03:00
notmuch-query.el emacs: Add support for PGP/MIME verification/decryption 2011-05-27 16:22:00 -07:00
notmuch-show.el Run notmuch-show-hook' after setting header-line-format' 2012-09-27 12:48:43 -03:00
notmuch-tag.el emacs: add helper for tag change list manipulation 2012-09-19 08:01:59 -03:00
notmuch-wash.el emacs: Add configurable wrapping width for notmuch-wash-wrap-long-lines 2012-06-29 22:38:52 -03:00
notmuch.el emacs: add support for reversing notmuch-search-archive-thread tag changes 2012-09-19 08:05:59 -03:00