[interfacekit] Re: a question about the Desktop

From: "Ingo Weinhold" <bonefish@xxxxxxxxxxxxxxx>
> > > >     Well, I don't understand anymore... THE DESKTOP is a (B)Window
or
> > > > NOT???
> > >
> > > The desktop itself is just a BWindow. But when you quit Tracker, there
> > > is no desktop anymore, it's just a "canvas" or whatever. I don't know
> > > how it's done internally, though (it definitely still has a color :-).
> >
> >     But you quit tracker when shutting down, isn't that so? So I can
assume
> > that there is always a window on the desktop, can I?
>
> No, the window is created and owned by the Tracker and goes away when the
> Tracker terminates.

OKay! I tested myself that by killing Tracker.

>
> >     The Desktop background... is it set through BView::SetViewBitmap() ?
Or
> > is it transparent, and app_server handles that?
>
> The app server is responsible for that.

    Yes, but in the question I wanted to say: "background image".



Thank you guys for your help! I have managed to understand how "The Desktop"
works; here is my conclusion:


* app_server draws a canvas where windows don't sit (that blue color).
* Tracker has a screen sized BWindow that sitz below all other windows.
    * he sets the color of its top most view to the color of app_server
canvas,
            by using BView::SetViewColor()
    * if a background is to be displayed as a wallpaper, he sets it,
            by using BView::SetViewBitmap()

Correct?


PS: that makes a lot of sense from app_server's PoV.


Adi.


Other related posts: