• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: X11 window appearance
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: X11 window appearance


  • Subject: Re: X11 window appearance
  • From: Jeremy Huddleston <email@hidden>
  • Date: Tue, 1 Sep 2009 09:21:49 -0700


On Sep 1, 2009, at 02:19, Eeri Kask wrote:

Am 08/31/2009 05:15 PM, Jeremy Huddleston schrieb:
How, in particular, does quartz-wm tell CoreGraphics to do that; is
there any sample code/documentation available; where to look for?

Unfortunately not. It's all internal API stuff (hence why I needed to
wait for SnowLeopard to get the updated window look).

Pitifully I understand you effectively saying this CoreGraphics shadow-draw-requesting API is not meant to be used by applications created outside Apple?

Yes. /usr/lib/libXplugin.dylib is a library for use by X11 that exposes a minimal API that the X11 server needs to hook into the private/unpublished APIs used internally at Apple.


There has to be some control indeed, as quartz-wm requests shadow
look change while transferring focus from client to client... and
'override_redirect' X11 clients, which quartz-wm apparently ignores
altogether, don't feature any drop-off shadow at all.

override-redirect are ignored by ALL WMs (not just quartz-wm). Our code assumes they are menus or tooltips and treats them accordingly. override-redirect windows are "warped" to the current Space on activation rather than switching spaces to the one containing the window. This behavior fixes the "I switched spaces when opening a menu" bug that was fixed in Leopard's X11 maybe a year ago.


(Being that easy, then the spoken xcompmgr-like background-running
shadow-creator is probably not hard to implement at all --- if its
not done by somebody already; and would compensate for the missing
window borders at least for top-level windows in Xquartz.)

Not exactly... xcompmgr is a huge beast that does a bunch of things that
we do internally through the native windowing system.


Here is what I meant by the shadow-creator 'daemon':  catch
MapNotify, UnmapNotify, and maybe ConfigureNotify events for all
top-level X11-clients,

That's what a WM is.

and then ask CoreGraphics to put or remove
shadow around these.

yeah, that's part of the window frame drawing code in libXplugin.

--- Initially I meant to suggest to extract
exactly this part from quartz-wm into a separate program, for
everybody's use, regardless if some window manager is running or
not.  :-)

(If Xquartz would support Xorg's XCOMPOSITE-extension, we probably
could take xcompmgr for that as it is, unchanged.)

XCOMPOSITE is on the list. We removed it around XDC 2008 (Feb '08) because it caused weird crashes.


_______________________________________________
Do not post admin requests to the list. They will be ignored.
X11-users mailing list      (email@hidden)
This email sent to email@hidden


  • Follow-Ups:
    • Re: X11 window appearance
      • From: Eeri Kask <email@hidden>
References: 
 >Re: X11 window appearance (From: Eeri Kask <email@hidden>)

  • Prev by Date: Re: equivalent xorg.conf?
  • Next by Date: Re: equivalent xorg.conf?
  • Previous by thread: Re: X11 window appearance
  • Next by thread: Re: X11 window appearance
  • Index(es):
    • Date
    • Thread