2010-11-12 12:18:58 +00:00
|
|
|
/* GDK - The GIMP Drawing Kit
|
|
|
|
* Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
|
|
|
|
*
|
|
|
|
* 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
|
2012-02-27 13:01:10 +00:00
|
|
|
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
2010-11-12 12:18:58 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
|
|
|
|
* file for a list of people on the GTK+ Team. See the ChangeLog
|
|
|
|
* files for a list of changes. These files are distributed with
|
|
|
|
* GTK+ at ftp://ftp.gtk.org/pub/gtk/.
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Private uninstalled header defining things local to X windowing code
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __GDK_PRIVATE_BROADWAY_H__
|
|
|
|
#define __GDK_PRIVATE_BROADWAY_H__
|
|
|
|
|
|
|
|
#include <gdk/gdkcursor.h>
|
|
|
|
#include <gdk/gdkinternals.h>
|
2018-03-20 10:46:11 +00:00
|
|
|
#include "gdksurface-broadway.h"
|
2010-11-12 12:18:58 +00:00
|
|
|
#include "gdkdisplay-broadway.h"
|
2018-04-24 13:39:53 +00:00
|
|
|
#include "gdkdrawcontext-broadway.h"
|
2010-11-12 12:18:58 +00:00
|
|
|
|
2011-01-06 22:36:44 +00:00
|
|
|
#include "gdkbroadwaycursor.h"
|
2018-03-20 10:46:11 +00:00
|
|
|
#include "gdkbroadwaysurface.h"
|
2010-11-12 12:18:58 +00:00
|
|
|
|
2017-11-21 18:33:12 +00:00
|
|
|
guint32 gdk_broadway_display_ensure_texture (GdkDisplay *display,
|
2018-03-21 08:17:50 +00:00
|
|
|
GdkTexture *texture);
|
|
|
|
|
|
|
|
void gdk_broadway_surface_set_nodes (GdkSurface *surface,
|
|
|
|
GArray *nodes,
|
|
|
|
GPtrArray *node_textures);
|
|
|
|
|
|
|
|
void _gdk_broadway_surface_register_dnd (GdkSurface *surface);
|
2018-06-29 17:34:14 +00:00
|
|
|
GdkDrag * _gdk_broadway_surface_drag_begin (GdkSurface *surface,
|
2018-03-21 08:17:50 +00:00
|
|
|
GdkDevice *device,
|
|
|
|
GdkContentProvider *content,
|
|
|
|
GdkDragAction actions,
|
|
|
|
gint dx,
|
|
|
|
gint dy);
|
|
|
|
void _gdk_broadway_surface_translate (GdkSurface *surface,
|
|
|
|
cairo_region_t *area,
|
|
|
|
gint dx,
|
|
|
|
gint dy);
|
|
|
|
gboolean _gdk_broadway_moveresize_handle_event (GdkDisplay *display,
|
|
|
|
BroadwayInputMsg *msg);
|
|
|
|
gboolean _gdk_broadway_moveresize_configure_done (GdkDisplay *display,
|
|
|
|
GdkSurface *surface);
|
|
|
|
void _gdk_broadway_roundtrip_notify (GdkSurface *surface,
|
|
|
|
guint32 tag,
|
|
|
|
gboolean local_reply);
|
|
|
|
void _gdk_broadway_surface_grab_check_destroy (GdkSurface *surface);
|
|
|
|
void _gdk_broadway_surface_grab_check_unmap (GdkSurface *surface,
|
|
|
|
gulong serial);
|
2010-11-12 12:18:58 +00:00
|
|
|
|
|
|
|
void _gdk_keymap_keys_changed (GdkDisplay *display);
|
2010-11-16 11:33:02 +00:00
|
|
|
gint _gdk_broadway_get_group_for_state (GdkDisplay *display,
|
2018-03-21 08:17:50 +00:00
|
|
|
GdkModifierType state);
|
2010-11-12 12:18:58 +00:00
|
|
|
void _gdk_keymap_add_virtual_modifiers_compat (GdkKeymap *keymap,
|
|
|
|
GdkModifierType *modifiers);
|
|
|
|
gboolean _gdk_keymap_key_is_modifier (GdkKeymap *keymap,
|
2018-03-21 08:17:50 +00:00
|
|
|
guint keycode);
|
2010-11-12 12:18:58 +00:00
|
|
|
|
2017-11-01 18:46:26 +00:00
|
|
|
void _gdk_broadway_display_size_changed (GdkDisplay *display,
|
2018-03-21 08:17:50 +00:00
|
|
|
BroadwayInputScreenResizeNotify *msg);
|
2011-01-06 22:36:44 +00:00
|
|
|
|
2012-12-19 11:37:02 +00:00
|
|
|
void _gdk_broadway_events_got_input (BroadwayInputMsg *message);
|
2011-01-06 22:36:44 +00:00
|
|
|
|
2017-11-01 18:46:26 +00:00
|
|
|
void _gdk_broadway_display_init_root_window (GdkDisplay *display);
|
2011-01-06 22:36:44 +00:00
|
|
|
void _gdk_broadway_display_init_dnd (GdkDisplay *display);
|
|
|
|
GdkDisplay * _gdk_broadway_display_open (const gchar *display_name);
|
|
|
|
void _gdk_broadway_display_queue_events (GdkDisplay *display);
|
|
|
|
GdkCursor*_gdk_broadway_display_get_cursor_for_name (GdkDisplay *display,
|
2018-03-21 08:17:50 +00:00
|
|
|
const gchar *name);
|
2017-11-03 00:59:15 +00:00
|
|
|
GdkCursor *_gdk_broadway_display_get_cursor_for_texture (GdkDisplay *display,
|
|
|
|
GdkTexture *texture,
|
|
|
|
int x,
|
|
|
|
int y);
|
2011-01-06 22:36:44 +00:00
|
|
|
gboolean _gdk_broadway_display_supports_cursor_alpha (GdkDisplay *display);
|
|
|
|
gboolean _gdk_broadway_display_supports_cursor_color (GdkDisplay *display);
|
|
|
|
void _gdk_broadway_display_get_default_cursor_size (GdkDisplay *display,
|
2018-03-21 08:17:50 +00:00
|
|
|
guint *width,
|
|
|
|
guint *height);
|
2011-01-06 22:36:44 +00:00
|
|
|
void _gdk_broadway_display_get_maximal_cursor_size (GdkDisplay *display,
|
2018-03-21 08:17:50 +00:00
|
|
|
guint *width,
|
|
|
|
guint *height);
|
|
|
|
void _gdk_broadway_display_create_surface_impl (GdkDisplay *display,
|
|
|
|
GdkSurface *surface,
|
|
|
|
GdkSurface *real_parent,
|
|
|
|
GdkSurfaceAttr *attributes);
|
2011-01-06 22:36:44 +00:00
|
|
|
gint _gdk_broadway_display_text_property_to_utf8_list (GdkDisplay *display,
|
2018-03-21 08:17:50 +00:00
|
|
|
GdkAtom encoding,
|
|
|
|
gint format,
|
|
|
|
const guchar *text,
|
|
|
|
gint length,
|
|
|
|
gchar ***list);
|
2011-01-06 22:36:44 +00:00
|
|
|
gchar *_gdk_broadway_display_utf8_to_string_target (GdkDisplay *display,
|
2018-03-21 08:17:50 +00:00
|
|
|
const gchar *str);
|
2011-01-06 22:36:44 +00:00
|
|
|
GdkKeymap* _gdk_broadway_display_get_keymap (GdkDisplay *display);
|
2011-04-05 08:44:53 +00:00
|
|
|
void _gdk_broadway_display_consume_all_input (GdkDisplay *display);
|
2011-04-01 13:08:28 +00:00
|
|
|
BroadwayInputMsg * _gdk_broadway_display_block_for_input (GdkDisplay *display,
|
2018-03-21 08:17:50 +00:00
|
|
|
char op,
|
|
|
|
guint32 serial,
|
|
|
|
gboolean remove);
|
2011-01-06 22:36:44 +00:00
|
|
|
|
2018-03-21 08:17:50 +00:00
|
|
|
/* Surface methods - testing */
|
|
|
|
void _gdk_broadway_surface_resize_surface (GdkSurface *surface);
|
2010-11-12 12:18:58 +00:00
|
|
|
|
2010-11-16 11:33:02 +00:00
|
|
|
void _gdk_broadway_cursor_update_theme (GdkCursor *cursor);
|
|
|
|
void _gdk_broadway_cursor_display_finalize (GdkDisplay *display);
|
2010-11-12 12:18:58 +00:00
|
|
|
|
2018-03-20 10:40:08 +00:00
|
|
|
#define GDK_SURFACE_IS_BROADWAY(win) (GDK_IS_SURFACE_IMPL_BROADWAY (((GdkSurface *)win)->impl))
|
2010-11-12 12:18:58 +00:00
|
|
|
|
|
|
|
#endif /* __GDK_PRIVATE_BROADWAY_H__ */
|