mirror of
https://github.com/brl/mutter.git
synced 2024-11-24 09:00:42 -05:00
d2c3272eb7
Will be used by the stage to not paint the overlays. We skip all overlays since overlays are only ever used for pointer cursors when the hardware cursors cannot or should not be used. https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1207
77 lines
2.6 KiB
C
77 lines
2.6 KiB
C
/*
|
|
* Copyright (C) 2019 Red Hat Inc.
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2 of the License, or (at your option) any later version.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#ifndef CLUTTER_PAINT_CONTEXT_H
|
|
#define CLUTTER_PAINT_CONTEXT_H
|
|
|
|
#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
|
|
#error "Only <clutter/clutter.h> can be included directly."
|
|
#endif
|
|
|
|
#include <glib-object.h>
|
|
|
|
#include "clutter-macros.h"
|
|
#include "clutter-stage-view.h"
|
|
|
|
typedef struct _ClutterPaintContext ClutterPaintContext;
|
|
|
|
typedef enum _ClutterPaintFlag
|
|
{
|
|
CLUTTER_PAINT_FLAG_NONE = 0,
|
|
CLUTTER_PAINT_FLAG_NO_CURSORS = 1 << 0,
|
|
} ClutterPaintFlag;
|
|
|
|
#define CLUTTER_TYPE_PAINT_CONTEXT (clutter_paint_context_get_type ())
|
|
|
|
CLUTTER_EXPORT
|
|
GType clutter_paint_context_get_type (void);
|
|
|
|
CLUTTER_EXPORT
|
|
ClutterPaintContext * clutter_paint_context_new_for_framebuffer (CoglFramebuffer *framebuffer,
|
|
const cairo_region_t *redraw_clip,
|
|
ClutterPaintFlag paint_flags);
|
|
|
|
CLUTTER_EXPORT
|
|
ClutterPaintContext * clutter_paint_context_ref (ClutterPaintContext *paint_context);
|
|
|
|
CLUTTER_EXPORT
|
|
void clutter_paint_context_unref (ClutterPaintContext *paint_context);
|
|
|
|
CLUTTER_EXPORT
|
|
void clutter_paint_context_destroy (ClutterPaintContext *paint_context);
|
|
|
|
CLUTTER_EXPORT
|
|
CoglFramebuffer * clutter_paint_context_get_framebuffer (ClutterPaintContext *paint_context);
|
|
|
|
CLUTTER_EXPORT
|
|
ClutterStageView * clutter_paint_context_get_stage_view (ClutterPaintContext *paint_context);
|
|
|
|
CLUTTER_EXPORT
|
|
void clutter_paint_context_push_framebuffer (ClutterPaintContext *paint_context,
|
|
CoglFramebuffer *framebuffer);
|
|
|
|
CLUTTER_EXPORT
|
|
void clutter_paint_context_pop_framebuffer (ClutterPaintContext *paint_context);
|
|
|
|
CLUTTER_EXPORT
|
|
const cairo_region_t * clutter_paint_context_get_redraw_clip (ClutterPaintContext *paint_context);
|
|
|
|
CLUTTER_EXPORT
|
|
ClutterPaintFlag clutter_paint_context_get_paint_flags (ClutterPaintContext *paint_context);
|
|
|
|
#endif /* CLUTTER_PAINT_CONTEXT_H */
|