nanogui: Thread: Nanowm information


[<<] [<] Page 1 of 1 [>] [>>]
Subject: Nanowm information
From: Prafulla WADASKAR ####@####.####
Date: 3 Oct 2006 12:25:58 +0100
Message-Id: <014b01c6e6de$a2ed32a0$872cc70a@dlh.st.com>

Hi
I am trying to understand how nano-x windows manager (nanowm) works in the
practicle scenario along with nano-X server.
In general, there should be graphics server and window manger on top of so
any request from application goes through windows manager to GUI server.
But in case of nano-x; applications works directly on nano-X where as if
started windows manager you get additional contols in your graphics

My basic questions are- How this happens?
How nano-X, nanowm and applications work togather?

Regards..
Prafulla . .

Subject: Re: [nanogui] Nanowm information
From: "Greg Haerr" ####@####.####
Date: 3 Oct 2006 22:39:35 +0100
Message-Id: <0a1c01c6e734$6abf10a0$0300a8c0@RDP>

: I am trying to understand how nano-x windows manager (nanowm) works in the
: practicle scenario along with nano-X server.
: In general, there should be graphics server and window manger on top of so
: any request from application goes through windows manager to GUI server.
: But in case of nano-x; applications works directly on nano-X where as if
: started windows manager you get additional contols in your graphics

All nano-X applications, including the window mgr
nanowm, make a connection to the nano-X server.
There is nothing special about the nanowm
application.  It selects on an event, known
as CHLD_UPDATE, on the root window.  When
an top-level window is created by an application,
(which is by definition a child of the root
window), then the nano-X server sends an
event to any application registered for them,
which includes nanowm.  Nanowm then gets information
about the window, using GrGetWindowInfo, and
"reparents" the window, using GrReparentWindow,
to a new "frame" window of the root.
This causes a window to be inserted between the
application's original window and the root.
The nanowm manager carefully manages the size
of this window to exactly fit (envelope) the
original window, and then paints a "frame"
around the new parent window.  The effect
is an illusion that the application window
has a frame, close box, etc.  When the
close box is pressed, nanowm sends an event
to the application owning the original window,
to close the window. etc.

Regards,

Greg

[<<] [<] Page 1 of 1 [>] [>>]


Powered by ezmlm-browse 0.20.