Re: Snappy GUI response

Havoc Pennington <[email protected]>
Newsgroups gmane.comp.xfree86.forum
Message-ID <[email protected]>
On Fri, Jul 04, 2003 at 01:07:25PM -0700, Mark Vojkovich wrote: 
>   I see alot of people saying "things would be fast if we only
> had this, or that", but I know that's not going to change anything.
> Direct rendered 2D doesn't solve the event problem.  I'm pretty
> convinced that the synchronization issues will make it worse.
> We don't direct render 3D so that window moves will be smoother;
> it has quite the opposite effect.  Adding more complete
> acceleration will help, but the core problem is still there:
> people don't seem to know how to write apps to take advantage
> of what X has to offer. 

There's no chance of application developers as a general class ever
understanding X protocol or X architecture on any kind of detailed
level; and I'm talking about just things like setting back pixmaps,
exposes, etc. The chances of application developers understanding X
server implementation or hardware issues are even less. They also
don't understand how the toolkit works. Assume apps will not
understand any of this, it's a fact that can't be fought. They don't
understand equivalent stuff on Windows or OS X either.

Only people writing very specialized apps such as games (or more
accurately, game libraries) are going to bother to invest months in
learning system details. Maybe a few others that are just curious.

Think of a GUI builder. Put a button here, put a menu there. Not
everyone uses a GUI builder but they do the equivalent by hand. Most
apps are also cross-platform, and see only cross-platform APIs.  So we
can just assume that apps are thinking in terms of widgets, not
anything lower-level than that.

In short, solutions must be in the toolkit or the server and must
"just work" with minimal application efforts.  Anything that's more
complicated for app developers than the standard cross-platform APIs
won't be used.

Restating your core problem, we might say: X requires app authors to
understand and code in light of its details in order to write
responsive apps.  Windows and OS X generally do not. So what we have
is a user interface issue with the X API ;-)

Not convinced this is the only issue but it seems to apply to the
expose-handling problem you brought up.

Havoc
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.