[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference bulova::decw_jan-89_to_nov-90

Title:DECWINDOWS 26-JAN-89 to 29-NOV-90
Notice:See 1639.0 for VMS V5.3 kit; 2043.0 for 5.4 IFT kit
Moderator:STAR::VATNE
Created:Mon Oct 30 1989
Last Modified:Mon Dec 31 1990
Last Successful Update:Fri Jun 06 1997
Number of topics:3726
Total number of notes:19516

2828.0. "Window Manager Root Window ?" by EVTAI1::LEGER (Vous avez dit GRAPHIQUE ?) Tue May 29 1990 05:25

    
    Questions about the "Window Manager Root Window" ...
    
    Looking at the source of X applications like XSETROOT, I have noticed
    that the Root Window is not directly used. Instead of that, the 
    application looks for a child window (2nd generation) of root, having
    the same dimensions as root (This operation is made in a routine 
    called WMRootWindow). The window-ID of the child (and not the ID of the
    "real" root window) is then used, for example to modify the window 
    background, or the window cursor.
    
    My questions :
    
       - using the debugger, I have verified that in a first pass, this
         routine finds a child having the same dimensions as root, and 
         in a second pass, it finds a "grand-child" of root, also with
         the same dimensions. 
    
         what is the signification of these two windows ? what are they
         used for ???
    
       - would XSETROOT work correctly if the background modification is
         made directly on the root window ? 
    
     
         Any information is welcome; thanks in advance...
    
        
T.RTitleUserPersonal
Name
DateLines
2828.1just becasue...GSRC::WESTHelp stamp out and abolish redundancy !Tue May 29 1990 12:5832
RE:        <<< Note 2828.0 by EVTAI1::LEGER "Vous avez dit GRAPHIQUE ?" >>>
                          -< Window Manager Root Window ? >-

    
>>         what is the signification of these two windows ? what are they
>>         used for ???

  I'm not really sure what the _significance_ of these two windows other
than to serve as a psuedo root window for the window manager.  When you
create a window, the window manager creates a _frame_ window (the window
with the title bar and buttons) and reparents your window to the frame
window.  The frame window is then parented to this psuedo root window.  I
believe it has a lot to do with general window management and event processing
that the window manager needs to be involved with.

  I know that there are others that can give you a much greater detailed
explaination.
    
>>       - would XSETROOT work correctly if the background modification is
>>         made directly on the root window ? 

  Define 'correctly' :^)  If this program was modified so that it only
drew to the server root window then it will work perfectly...it's just that
you won't be able to see what was drawn because the window manager root
covers the server root window.  That is why these kinds of programs check
for the existance of the window manager root window and if one is found then
use it to draw on so that you can see what it is that you expected to.
    
  I'm not the expert but I hope this helps...

						-=> Jim <=-