Repository navigation
WindowServer
Reimplementation (PPC): In Progress (2027-10-31)
This screenshot is a test app WindowServerTester that runs a modified WindowServer that runs in RAM. This tool is being used to test future features (like transparent windows). These windows demonstrate transparent compositing of windows.
#include <mach/mach_init.h>
#include <mach/message.h>
#include <dirent.h>
#include <math.h>
#include <setjmp.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
You will see #if defined(WindowServerTesting) throughout the source code to signify areas where we can launch a separate WindowServer process to test connections. #if defined(WindowServerTesting) is also used in AppKit to ensure that we connect to the new WindowServerNew instead of WindowServer process.
In the testing mode, drawing is sent to a region of private memory, instead of accessing framebuffer and driver state, and will not display on screen. Testing functions are added to extract the produced image for verification.
- Any ABI breaking feature is gated through defined(DistributionRhapsodyOS) to ensure it runs as expected under vanilla Mac OS X Server 1.2v3. New features should strongly not rely on that and should instead aim to ABI/API compliant.
- Transparent Window Compositing
- The ability to have windows move in tandem with other windows (i.e the new NSDrawers and attached Modals in AppKit.framework)
- Antialiased Drawing & Text
- Transparent Text Drawing
- PDF Style Commands (for compatibility with Mac OS X 10+), PPC, Intel, ARM