9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Theo Honohan <theoh@chiark.greenend.org.uk>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] Réf. : Re: [9fans] Re: moving things in a window
Date: Fri, 29 Sep 2000 20:06:19 +0100	[thread overview]
Message-ID: <E13f5UC-0006Wd-00@chiark.greenend.org.uk> (raw)
In-Reply-To: Your message of "Fri, 29 Sep 2000 10:55:18 EDT." <20000929145519.BF8D9199E8@mail>

In message <20000929145519.BF8D9199E8@mail>, "Russ Cox" writes:
> 	guess you can go a ways with xor :)
> 
> I think xor had little to do with it.  You could
> do it with the current draw about as easily.
> It seems to have come out of the trick of looking at
> the color of the pixels in your way to see if
> you are going to hit anything, rather than 
> keeping higher-level objects.
> 
> See http://research.microsoft.com/Users/luca/Papers/Crabs/Crabs.ps

That's fun.  It does mention that "Crab icons must be drawn in XOR
mode, to be able to restore the background when the crab moves away."
So the presence of XOR is crucial to the implementation -- if you
can't cheat by using XOR, then you have to do your best to efficiently
redisplay all the underlying objects.  Doug's suggestion would be one
way of doing that -- maybe that was his point.

It's also interesting (maybe) to think how you might efficiently
implement crabs "between" layers.

Hardware acceleration aside, I like the idea of avoiding a complete
redraw by keeping a "pre-blended" copy of each layer in backing store
in the server.
http://www.webcom.com/~haahr/montage/montage-usenix-s90.html

I suppose that could be a new refresh method -- or maybe it's the kind
of thing Refmesg is intended for.  Can you implement it with Refmesg
without breaking the "Laws" in the crabs paper?



  reply	other threads:[~2000-09-29 19:06 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-09-29 14:55 Russ Cox
2000-09-29 19:06 ` Theo Honohan [this message]
  -- strict thread matches above, loose matches on Subject: below --
2000-09-29 13:23 boyd.roberts

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=E13f5UC-0006Wd-00@chiark.greenend.org.uk \
    --to=theoh@chiark.greenend.org.uk \
    --cc=9fans@cse.psu.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;
as well as URLs for NNTP newsgroup(s).