Jeffrey,
Thanks for the sanity check here. It's very much appreciated. Comments
below.
Jeffrey Harris wrote:
I haven't worked with Javascript in years, and I've never done much with
XMLHttpRequest, so I'm probably missing something here. Can you explain
why the save can't be done asynchronously, with different callbacks
depending on whether the save failed, timed out, or succeeded, while
normal rendering and event handling continues for the user? That's what
I'd expect to happen here, but again I haven't done much with the
Javascript event loop.
The current implementation is already done the way you describe --
async, with different callbacks based on what type of edit and
success/failure. So in theory you can drag a lozenge, drop it, and grab
another one, drag, etc.
The processing XHR calls don't actually block the UI, but they will make
the it feel sluggish and unresponsive. (Jeremy put it well in his
previous message -- "On certain browsers, processing an ajax request
(depending on what you are doing) may tie up the browser until the
payload is processed.")
It's possible I'm overestimating the amount of slowdown, and
underestimating people's tolerance for it. I tend to be the type of
person who notices when the news site I'm reading decides to it's time
to go fetch some new ads, but other people might be less sensitive to that.
Right now there are obvious, intuitive points where the UI gets tied up
-- and they're all directly at points where the user has taken an
explicit action to save (dropping a lozenge, or clicking Save), so
there's a level of expectation that the UI should "feel busy." I think
it may be bit less intuitive with a background save -- when from the
user's persepctive, they've already gone on to working on something
else, and the UI is essentially playing catch-up.
Your feedback is well-taken though -- and I'll look forward to seeing
what kind of consensus coalesces around this.
Thanks very much!
Matthew
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Open Source Applications Foundation "Design" mailing list
http://lists.osafoundation.org/mailman/listinfo/design