1#![cfg_attr(docsrs, feature(doc_cfg))]
4#![allow(deprecated)]
5#![allow(clippy::manual_c_str_literals)]
6#![doc = include_str!("../README.md")]
7
8pub use cairo;
9pub use gdk4_sys as ffi;
10pub use gdk_pixbuf;
11pub use gio;
12#[cfg(feature = "gl")]
13#[cfg_attr(docsrs, doc(cfg(feature = "gl")))]
14pub use gl;
15pub use glib;
16pub use pango;
17
18#[doc(alias = "GDK_PRIORITY_REDRAW")]
19pub const PRIORITY_REDRAW: u32 = ffi::GDK_PRIORITY_REDRAW as u32;
20
21#[doc(alias = "GDK_MODIFIER_MASK")]
22pub const MODIFIER_MASK: ModifierType = ModifierType::all();
23
24#[doc(alias = "GDK_ACTION_ALL")]
25pub const ACTION_ALL: u32 = ffi::GDK_ACTION_ALL as u32;
26
27#[doc(alias = "GDK_CURRENT_TIME")]
28pub const CURRENT_TIME: u32 = ffi::GDK_CURRENT_TIME as u32;
29
30#[doc(alias = "GDK_BUTTON_PRIMARY")]
31pub const BUTTON_PRIMARY: u32 = ffi::GDK_BUTTON_PRIMARY as u32;
32
33#[doc(alias = "GDK_BUTTON_MIDDLE")]
34pub const BUTTON_MIDDLE: u32 = ffi::GDK_BUTTON_MIDDLE as u32;
35
36#[doc(alias = "GDK_BUTTON_SECONDARY")]
37pub const BUTTON_SECONDARY: u32 = ffi::GDK_BUTTON_SECONDARY as u32;
38
39#[doc(alias = "GDK_EVENT_STOP")]
40pub const EVENT_STOP: u32 = ffi::GDK_EVENT_STOP as u32;
41
42#[doc(alias = "GDK_EVENT_PROPAGATE")]
43pub const EVENT_PROPAGATE: u32 = ffi::GDK_EVENT_PROPAGATE as u32;
44
45macro_rules! assert_initialized_main_thread {
47 () => {};
48}
49
50macro_rules! skip_assert_initialized {
52 () => {};
53}
54
55#[allow(clippy::derived_hash_with_manual_eq)]
56#[allow(clippy::type_complexity)]
57#[allow(unused_imports)]
58mod auto;
59
60#[macro_use]
61mod event;
62
63pub mod builders;
64pub mod prelude;
65pub mod subclass;
66
67mod button_event;
68mod cairo_interaction;
69mod clipboard;
70mod content_deserializer;
71mod content_formats;
72mod content_formats_builder;
73mod content_provider;
74mod content_serializer;
75mod crossing_event;
76#[cfg(feature = "v4_16")]
77#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
78mod cursor;
79mod delete_event;
80mod display;
81#[cfg(target_os = "linux")]
82#[cfg_attr(docsrs, doc(cfg(target_os = "linux")))]
83#[cfg(feature = "v4_14")]
84#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
85mod dmabuf_texture_builder;
86mod dnd_event;
87#[cfg(feature = "v4_12")]
88#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
89mod drag_surface;
90#[cfg(feature = "v4_12")]
91#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
92mod drag_surface_size;
93mod draw_context;
94mod drop;
95mod focus_event;
96mod functions;
97mod gl_texture;
98#[cfg(feature = "v4_12")]
99#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
100mod gl_texture_builder;
101mod grab_broken_event;
102mod key_event;
103mod keymap_key;
104mod keys;
105#[cfg(feature = "v4_16")]
106#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
107mod memory_texture_builder;
108mod motion_event;
109mod pad_event;
110mod popup_layout;
111mod proximity_event;
112mod rectangle;
113mod rgba;
114mod scroll_event;
115mod surface;
116mod texture;
117mod time_coord;
118mod toplevel;
119mod toplevel_size;
120mod touch_event;
121mod touchpad_event;
122
123pub use auto::*;
124pub use display::Backend;
125#[cfg(feature = "v4_12")]
126#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
127pub use drag_surface_size::DragSurfaceSize;
128pub use functions::*;
129pub use keymap_key::KeymapKey;
130pub use keys::Key;
131pub use time_coord::TimeCoord;
132pub use toplevel_size::ToplevelSize;