1/* libbamf3.vapi generated by vapigen, do not modify. */
2
3[CCode (cprefix = "Bamf", gir_namespace = "Bamf", gir_version = "3", lower_case_cprefix = "bamf_")]
4namespace Bamf {
5	[CCode (cheader_filename = "libbamf/libbamf.h", type_id = "bamf_application_get_type ()")]
6	public class Application : Bamf.View {
7		[CCode (has_construct_function = false)]
8		protected Application ();
9		[Version (deprecated = true, deprecated_since = "0.5.0")]
10		public bool get_application_menu (out string name, out string object_path);
11		public unowned string get_application_type ();
12		public unowned string get_desktop_file ();
13		public unowned Bamf.View get_focusable_child ();
14		public bool get_show_menu_stubs ();
15		[CCode (array_length = false, array_null_terminated = true)]
16		public string[] get_supported_mime_types ();
17		public unowned Bamf.Window get_window_for_xid (uint32 xid);
18		public GLib.List<weak Bamf.Window> get_windows ();
19		public GLib.Array<uint32> get_xids ();
20		public signal void desktop_file_updated (string object);
21		public signal void window_added (Bamf.Window object);
22		public signal void window_removed (Bamf.Window object);
23	}
24	[CCode (cheader_filename = "libbamf/libbamf.h", type_id = "bamf_control_get_type ()")]
25	public class Control : GLib.Object {
26		[CCode (has_construct_function = false)]
27		protected Control ();
28		public void create_local_desktop_file (Bamf.Application application);
29		public static Bamf.Control get_default ();
30		public void insert_desktop_file (string desktop_file);
31		public void register_application_for_pid (string desktop_file, int32 pid);
32		public void set_approver_behavior (int32 behavior);
33	}
34	[CCode (cheader_filename = "libbamf/libbamf.h", type_id = "bamf_matcher_get_type ()")]
35	public class Matcher : GLib.Object {
36		[CCode (has_construct_function = false)]
37		protected Matcher ();
38		public bool application_is_running (string desktop_file);
39		public unowned Bamf.Application get_active_application ();
40		public unowned Bamf.Window get_active_window ();
41		public unowned Bamf.Application get_application_for_desktop_file (string desktop_file_path, bool create_if_not_found);
42		public unowned Bamf.Application get_application_for_window (Bamf.Window window);
43		public unowned Bamf.Application get_application_for_xid (uint32 xid);
44		public GLib.List<weak Bamf.Application> get_applications ();
45		public static Bamf.Matcher get_default ();
46		public GLib.List<weak Bamf.Application> get_running_applications ();
47		public GLib.List<weak Bamf.Tab> get_tabs ();
48		public unowned Bamf.Window get_window_for_xid (uint32 xid);
49		public GLib.List<weak Bamf.Window> get_window_stack_for_monitor (int monitor);
50		public GLib.List<weak Bamf.Window> get_windows ();
51		public GLib.Array<uint32> get_xids_for_application (string desktop_file);
52		public void register_favorites ([CCode (array_length = false)] string[] favorites);
53		public signal void active_application_changed (Bamf.Application object, Bamf.Application p0);
54		public signal void active_window_changed (Bamf.Window object, Bamf.Window p0);
55		public signal void stacking_order_changed ();
56		public signal void view_closed (Bamf.View object);
57		public signal void view_opened (Bamf.View object);
58	}
59	[CCode (cheader_filename = "libbamf/libbamf.h", type_id = "bamf_tab_get_type ()")]
60	public class Tab : Bamf.View {
61		[CCode (has_construct_function = false)]
62		protected Tab ();
63		public bool close ();
64		public virtual unowned string get_desktop_name ();
65		public virtual bool get_is_foreground_tab ();
66		public virtual unowned string get_location ();
67		public virtual uint64 get_xid ();
68		public bool raise ();
69		public void request_preview ([CCode (scope = "async")] Bamf.TabPreviewReadyCallback callback);
70		[NoAccessorMethod]
71		public string desktop_id { owned get; }
72		public bool is_foreground_tab { get; }
73		public string location { get; }
74		public uint64 xid { get; }
75	}
76	[CCode (cheader_filename = "libbamf/libbamf.h", type_id = "bamf_view_get_type ()")]
77	public class View : GLib.InitiallyUnowned {
78		[CCode (has_construct_function = false)]
79		protected View ();
80		[NoWrapper]
81		public virtual Bamf.ClickBehavior click_behavior ();
82		public virtual GLib.List<weak Bamf.View> get_children ();
83		public Bamf.ClickBehavior get_click_suggestion ();
84		public virtual string get_icon ();
85		public virtual string get_name ();
86		[CCode (vfunc_name = "view_type")]
87		public virtual unowned string get_view_type ();
88		public bool has_child (Bamf.View child);
89		public virtual bool is_active ();
90		public bool is_closed ();
91		public virtual bool is_running ();
92		public virtual bool is_starting ();
93		public bool is_sticky ();
94		public virtual bool is_urgent ();
95		public virtual bool is_user_visible ();
96		public unowned GLib.List<Bamf.View> peek_children ();
97		[NoWrapper]
98		public virtual void set_path (string path);
99		public virtual void set_sticky (bool value);
100		[NoAccessorMethod]
101		public bool active { get; }
102		[NoAccessorMethod]
103		public string path { owned get; }
104		[NoAccessorMethod]
105		public bool running { get; }
106		[NoAccessorMethod]
107		public bool starting { get; }
108		[NoAccessorMethod]
109		public bool urgent { get; }
110		[NoAccessorMethod]
111		public bool user_visible { get; }
112		public virtual signal void active_changed (bool active);
113		public virtual signal void child_added (Bamf.View child);
114		public virtual signal void child_moved (Bamf.View child);
115		public virtual signal void child_removed (Bamf.View child);
116		public virtual signal void closed ();
117		public virtual signal void icon_changed (string icon);
118		public virtual signal void name_changed (string old_name, string new_name);
119		public virtual signal void running_changed (bool running);
120		public virtual signal void starting_changed (bool starting);
121		public virtual signal void urgent_changed (bool urgent);
122		public virtual signal void user_visible_changed (bool user_visible);
123	}
124	[CCode (cheader_filename = "libbamf/libbamf.h", type_id = "bamf_window_get_type ()")]
125	public class Window : Bamf.View {
126		[CCode (has_construct_function = false)]
127		protected Window ();
128		public virtual int get_monitor ();
129		public virtual uint32 get_pid ();
130		public virtual unowned Bamf.Window? get_transient ();
131		public virtual string get_utf8_prop (string prop);
132		public virtual Bamf.WindowType get_window_type ();
133		public virtual uint32 get_xid ();
134		public virtual long last_active ();
135		public virtual Bamf.WindowMaximizationType maximized ();
136		public virtual signal void maximized_changed (int old_value, int new_value);
137		public virtual signal void monitor_changed (int old_value, int new_value);
138	}
139	[CCode (cheader_filename = "libbamf/libbamf.h", cprefix = "BAMF_CLICK_BEHAVIOR_", has_type_id = false)]
140	public enum ClickBehavior {
141		NONE,
142		OPEN,
143		FOCUS,
144		FOCUS_ALL,
145		MINIMIZE,
146		RESTORE,
147		RESTORE_ALL,
148		PICKER
149	}
150	[CCode (cheader_filename = "libbamf/libbamf.h", cprefix = "BAMF_WINDOW_", has_type_id = false)]
151	public enum WindowMaximizationType {
152		FLOATING,
153		HORIZONTAL_MAXIMIZED,
154		VERTICAL_MAXIMIZED,
155		MAXIMIZED
156	}
157	[CCode (cheader_filename = "libbamf/libbamf.h", cprefix = "BAMF_WINDOW_", has_type_id = false)]
158	public enum WindowType {
159		NORMAL,
160		DESKTOP,
161		DOCK,
162		DIALOG,
163		TOOLBAR,
164		MENU,
165		UTILITY,
166		SPLASHSCREEN,
167		UNKNOWN
168	}
169	[CCode (cheader_filename = "libbamf/libbamf.h", instance_pos = 2.9)]
170	public delegate void TabPreviewReadyCallback (Bamf.Tab self, string preview_data);
171}
172