00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef META_COMPOSITOR_H
00023 #define META_COMPOSITOR_H
00024
00025 #include <glib.h>
00026 #include <X11/Xlib.h>
00027
00028 #include "types.h"
00029 #include "boxes.h"
00030
00031 MetaCompositor *meta_compositor_new (MetaDisplay *display);
00032 void meta_compositor_destroy (MetaCompositor *compositor);
00033
00034 void meta_compositor_manage_screen (MetaCompositor *compositor,
00035 MetaScreen *screen);
00036 void meta_compositor_unmanage_screen (MetaCompositor *compositor,
00037 MetaScreen *screen);
00038
00039 void meta_compositor_add_window (MetaCompositor *compositor,
00040 MetaWindow *window,
00041 Window xwindow,
00042 XWindowAttributes *attrs);
00043 void meta_compositor_remove_window (MetaCompositor *compositor,
00044 Window xwindow);
00045
00046 void meta_compositor_set_updates (MetaCompositor *compositor,
00047 MetaWindow *window,
00048 gboolean updates);
00049
00050 void meta_compositor_process_event (MetaCompositor *compositor,
00051 XEvent *event,
00052 MetaWindow *window);
00053 Pixmap meta_compositor_get_window_pixmap (MetaCompositor *compositor,
00054 MetaWindow *window);
00055 void meta_compositor_set_active_window (MetaCompositor *compositor,
00056 MetaScreen *screen,
00057 MetaWindow *window);
00058
00059 void meta_compositor_begin_move (MetaCompositor *compositor,
00060 MetaWindow *window,
00061 MetaRectangle *initial,
00062 int grab_x, int grab_y);
00063 void meta_compositor_update_move (MetaCompositor *compositor,
00064 MetaWindow *window,
00065 int x, int y);
00066 void meta_compositor_end_move (MetaCompositor *compositor,
00067 MetaWindow *window);
00068 void meta_compositor_free_window (MetaCompositor *compositor,
00069 MetaWindow *window);
00070
00071 #endif
00072
00073
00074
00075
00076