XGac is distributed under Microsoft Public License (MS-PL).
Rendering components of XGac depends on Cairo and Pango, which are licensed under the GNU Lesser General Public License (LGPL). Please follow the requirements of these libraries when distributing your application.
XGac is still in early development stage. It is definitely not ready for production usage.
Pull requests and issue reports are welcomed.
- Xlib (libx11) with extensions
- Cairo and its Xlib backend
- Pango and its Cairo backend
Gaclib uses a global mouse hook to handle pop-up windows. To implement these hook function, XGac requires XRecord extension enabled on X Server.
XDBE (Double Buffer Extension) is used for double buffering. Without this extension XGac will still work but without double buffering.
Included CMake makefiles can be used to build the examples on Linux/OSX systems.
Instructions on how to use XGac in production will be given once XGac reaches stable.
- Window related functions
- Bitmap/Image handling
- TextBox/RichTextEditor renderer
- Multi-monitor handling (Xinerama/Xrandr)
- Cairo-GL based, hardware accelerated backend
- Input method support
- Double buffering causes problem while resizing windows
- Pop-up windows flash on left-top under XQuartz before showing up on right position
- Pop-up windows would not hide in Window Manager's list
- Pop-up windows would not keep on top of stack