[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MiNT] Background



On Wed, 14 Sep 2011 22:44:02 +0200, Peter Slegg <p.slegg@scubadivers.co.uk> wrote:

I disagree. The AES background should override all other backgrounds.
That's the purpose of it.

That's crazy. A desktop is an app that is run to do a task, the AES
can't just arbitrarily over-ride that task. By that logic every window
I open would be hidden behind a vile yellow background.

No. You don't understand how the desktop is drawn. It works like this:

1. The application that wants to use the desktop loads or creates a resource tree that makes up the desktop. This includes *everything* on the desktop, like icons or notes. 2. The AES is notified by the application about the new desktop tree using wind_set(). 3. The *AES* now takes care of redrawing the desktop object tree whenever necessary. 4. The AES takes care of switching desktops. Whenever an application with an installed desktop takes focus, the desktop is switched. If an application that's not the shell has a desktop and it loose focus, the AES switches to the shell desktop (if it has a desktop) or XaAES desktop.

The AES is there to provide services for applications hence it's name
Application Environment Services. So it should provide an ability to

Yes, and one service is to draw the desktop.

display an image but is should be an application that displays the
background image not the AES.

The background image is displayed by the AES, not by an application. What XaAES does in this case, is to replace the root object of the desktop object tree with an image. So *all* applications that installs a desktop gets the same background. This is how it should be!

There are several things about the current implementation I don't like, but the basic design is correct.

Jo Even