62 feature_subwindows = 0,
69 feature_custom_cursors,
72 feature_clipboard_primary,
73 feature_virtual_keyboard,
75 feature_status_indicators,
77 feature_input_dialogues,
78 feature_file_dialogues,
79 feature_filtered_file_dialogues,
85 feature_window_transparency,
87 feature_screen_reader,
88 feature_text_to_speech,
111 bool has_feature(
uint32_t feature)
const {
112 return features.test(feature);
115 virtual window* create_window(
const window::config&, window* =
nullptr) = 0;
117 virtual void connect() = 0;
118 virtual void disconnect() = 0;
119 virtual bool connected()
const = 0;
121 virtual void dispatch() = 0;
123 virtual void* get_native_handle() = 0;
125 gfxcontext* get_gfx_context() {
126 return gfx_context.get();
133 FENNEC_RTTI_CLASS_ENABLE() {