Archive of RubyForge sup-talk mailing list
 help / color / mirror / Atom feed
From: rlane@club.cc.cmu.edu (Rich Lane)
Subject: [sup-talk] How hard would a universal undo be?
Date: Fri, 11 Sep 2009 15:52:24 -0400	[thread overview]
Message-ID: <1252685502-sup-8928@zyrg.net> (raw)
In-Reply-To: <1252660564-sup-4253@peray>

Excerpts from Nicolas Pouillard's message of Fri Sep 11 05:16:49 -0400 2009:
> Excerpts from Rich Lane's message of Fri Sep 11 00:45:20 +0200 2009:
> > Excerpts from Carl Worth's message of Wed Sep 09 13:32:30 -0400 2009:
> > > Would it be a small change to move the undo keybinding to somewhere
> > > more universal?
> > 
> > No :(
> > 
> > > As a first cut, I'd be happy if it just undid the changes to the
> > > index, even without undoing any interface changes. That is, if my
> > > previous command was archive-thread-and-view-next-thread, it would be
> > > OK if it just undid the archiving part. Bonus points if it also undoes
> > > the view-next part, but I can imagine that being more work.
> > 
> > I know I sound a bit like a broken record here, but immediate
> > label changes will solve this problem. Then, the undo system would just
> > need to keep a global stack of (msgid, previous_labels). I'm just hoping
> > somebody will volunteer for this - it will be a big patch.
> 
> What prevent us from having a global stack of (msgid, previous_labels) in
> the actual settings?

Hmm, you may be right. I was thinking that changes weren't propagated
between buffers except on save, but that's wrong because UpdateManager
is called in the keybinding. In that case, the user sees a mostly*
linear series of label changes, so it's safe to have a global undo
stack.

*
 User opens thread-index-mode A containing message M with labels L1
 User changes labels on A.M to L2
 User opens thread-index-mode B containing message M with labels L1
 User changes labels on B.M to L3
 UpdateManager changes labels on A.M to L3
 User hits 'u' - now A.M and B.M have labels L1


  reply	other threads:[~2009-09-11 19:52 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-09 17:32 Carl Worth
2009-09-10 14:13 ` William Morgan
2009-09-10 14:35 ` Marc Weber
2009-09-10 22:45 ` Rich Lane
2009-09-11  9:16   ` Nicolas Pouillard
2009-09-11 19:52     ` Rich Lane [this message]
2009-09-11 21:25       ` Nicolas Pouillard
2009-09-13 21:40         ` Rich Lane
2009-09-14 16:29           ` Nicolas Pouillard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1252685502-sup-8928@zyrg.net \
    --to=rlane@club.cc.cmu.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox