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")]
21pub const PRIORITY_REDRAW: u32 = ffi::GDK_PRIORITY_REDRAW as u32;
22
23#[doc(alias = "GDK_MODIFIER_MASK")]
25pub const MODIFIER_MASK: ModifierType = ModifierType::all();
26
27#[doc(alias = "GDK_ACTION_ALL")]
32pub const ACTION_ALL: u32 = ffi::GDK_ACTION_ALL as u32;
33
34#[doc(alias = "GDK_CURRENT_TIME")]
36pub const CURRENT_TIME: u32 = ffi::GDK_CURRENT_TIME as u32;
37
38#[doc(alias = "GDK_BUTTON_PRIMARY")]
41pub const BUTTON_PRIMARY: u32 = ffi::GDK_BUTTON_PRIMARY as u32;
42
43#[doc(alias = "GDK_BUTTON_MIDDLE")]
45pub const BUTTON_MIDDLE: u32 = ffi::GDK_BUTTON_MIDDLE as u32;
46
47#[doc(alias = "GDK_BUTTON_SECONDARY")]
50pub const BUTTON_SECONDARY: u32 = ffi::GDK_BUTTON_SECONDARY as u32;
51
52#[doc(alias = "GDK_EVENT_STOP")]
55pub const EVENT_STOP: u32 = ffi::GDK_EVENT_STOP as u32;
56
57#[doc(alias = "GDK_EVENT_PROPAGATE")]
60pub const EVENT_PROPAGATE: u32 = ffi::GDK_EVENT_PROPAGATE as u32;
61
62macro_rules! assert_initialized_main_thread {
64 () => {};
65}
66
67macro_rules! skip_assert_initialized {
69 () => {};
70}
71
72#[allow(clippy::derived_hash_with_manual_eq)]
73#[allow(clippy::type_complexity)]
74#[allow(unused_imports)]
75mod auto;
76
77#[macro_use]
78mod event;
79
80pub mod builders;
81pub mod prelude;
82pub mod subclass;
83
84mod button_event;
85mod cairo_interaction;
86mod clipboard;
87mod content_deserializer;
88mod content_formats;
89mod content_formats_builder;
90mod content_provider;
91mod content_serializer;
92mod crossing_event;
93#[cfg(feature = "v4_16")]
94#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
95mod cursor;
96mod delete_event;
97mod display;
98#[cfg(target_os = "linux")]
99#[cfg_attr(docsrs, doc(cfg(target_os = "linux")))]
100#[cfg(feature = "v4_14")]
101#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
102mod dmabuf_texture_builder;
103mod dnd_event;
104#[cfg(feature = "v4_12")]
105#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
106mod drag_surface;
107#[cfg(feature = "v4_12")]
108#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
109mod drag_surface_size;
110mod draw_context;
111mod drop;
112mod focus_event;
113mod functions;
114mod gl_texture;
115#[cfg(feature = "v4_12")]
116#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
117mod gl_texture_builder;
118mod grab_broken_event;
119mod key_event;
120mod keymap_key;
121mod keys;
122#[cfg(feature = "v4_16")]
123#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
124mod memory_texture_builder;
125mod motion_event;
126mod pad_event;
127mod popup_layout;
128mod proximity_event;
129mod rectangle;
130mod rgba;
131mod scroll_event;
132mod surface;
133mod texture;
134mod time_coord;
135mod toplevel;
136mod toplevel_size;
137mod touch_event;
138mod touchpad_event;
139
140pub use auto::*;
141pub use display::Backend;
142#[cfg(feature = "v4_12")]
143#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
144pub use drag_surface_size::DragSurfaceSize;
145pub use functions::*;
146pub use keymap_key::KeymapKey;
147pub use keys::Key;
148pub use time_coord::TimeCoord;
149pub use toplevel_size::ToplevelSize;