Ideas for a brand new widget toolkit
Joakim
joakim at airpost.net
Thu Aug 15 07:50:40 PDT 2013
On Thursday, 15 August 2013 at 01:03:24 UTC, Tyler Jameson Little
wrote:
> On Wednesday, 14 August 2013 at 17:35:24 UTC, Joakim wrote:
>> While remote desktop is decent, it's trying to do too much:
>> mirroring an entire desktop is overkill. Better to use a lean
>> client that handles most situations.
>
> Maybe this is because I'm used to Linux, but I generally just
> want to forward an application, not the entire desktop. On
> Linux, this is trivial:
>
> $ ssh -X user at host
> $ gui-program <args>
>
> However, Windows doesn't have this workflow, so mirroring the
> entire desktop became necessary.
Sure, but X forwarding is still laggy, as you pointed out.
> Simpler is usually better, as long as simpler doesn't prevent
> you from creating something robust on top.
Well, that's where the problems come in. :) Making something
robust usually implies complexity.
Best to split up the job, client-server runtimes, like webapps or
the lean Crack client I'm talking about, handle most non-realtime
online GUIs, while other toolkits handle the offline or real-time
cases. No one toolkit can do it all, the market has already
splintered this way.
> In a widget toolkit, I think the same applies: make just enough
> controls that most people are satisfied, then make the toolkit
> easy to extend with custom controls.
I'm suggesting taking that philosophy to an extreme: almost no
local controls, just a simple rendering runtime that slaps up
rectangles and renders text, along with a few niceties like
caching to lessen lag. All the controls are composed and placed
into a layout on the server, which then tells the client how to
build those controls out of very simple primitives: put a
rectangle here and render this png into it, which happens to look
like a button to the user. This won't work for side-scrolling
games or other real-time stuff that's usually done in Flash now,
but it will handle the long tail of apps.
More information about the Digitalmars-d
mailing list