You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Clement Lefebvre 4b86b29d74 1.0.2 4 years ago
debian 1.0.2 4 years ago
files Rework XAppKbdLayoutController: 4 years ago
libxapp Rework XAppKbdLayoutController: 4 years ago
m4 Initial commit 5 years ago
po Initial commit 5 years ago
schemas Initial commit 5 years ago
test-scripts Rework XAppKbdLayoutController: 4 years ago
AUTHORS Initial commit 5 years ago
COPYING Initial commit 5 years ago
ChangeLog Initial commit 5 years ago Initial commit 5 years ago
README Initial commit 5 years ago Create 4 years ago
acinclude.m4 Initial commit 5 years ago Fix Warnings 4 years ago 1.0.2 4 years ago

This project gathers the components which are common to multiple desktop environments and required to implement cross-DE solutions.


A set of resources and tools.


A library available in C, Python and other languages (via Gobject Introspection).


In the long term Xapps are there to provide applications to users in multiple DEs, but also to provide building blocks, resources and libraries to Linux developers who want to develop applications which work well in multiple DEs.

This project is still relatively new though and we can’t yet commit to a stable ABI.

You are welcome to use libxapp or xapps-common in your application, but if you do, please make sure to tell us, so that we can communicate with you going forward about any potential changes.


XAppMonitorBlanker is used to blank other monitors. It takes a window as an argument and blanks all the monitors but the one where the window is located.

This is particularly useful in multi-monitor situations, for presentations, full screen media playback etc..

XAppMonitorBlanker *xapp_monitor_blanker_new (void);

void xapp_monitor_blanker_blank_other_monitors (XAppMonitorBlanker *self, GtkWindow *window);

void xapp_monitor_blanker_unblank_monitors (XAppMonitorBlanker *self);

gboolean xapp_monitor_blanker_are_monitors_blanked (XAppMonitorBlanker *self);

This is used by:

  • xplayer


XAppKbdLayoutController is used to get a keyboard layout code or flag for a given locale.

XAppKbdLayoutController *xapp_kbd_layout_controller_new (void);

gboolean xapp_kbd_layout_controller_get_enabled (XAppKbdLayoutController *controller);

guint xapp_kbd_layout_controller_get_current_group (XAppKbdLayoutController *controller);

void xapp_kbd_layout_controller_set_current_group (XAppKbdLayoutController *controller, guint group);

void xapp_kbd_layout_controller_next_group (XAppKbdLayoutController *controller);

void xapp_kbd_layout_controller_previous_group (XAppKbdLayoutController *controller);

gchar *xapp_kbd_layout_controller_get_current_name (XAppKbdLayoutController *controller);

gchar **xapp_kbd_layout_controller_get_all_names (XAppKbdLayoutController *controller);

gchar *xapp_kbd_layout_controller_get_current_icon_name (XAppKbdLayoutController *controller);

gchar *xapp_kbd_layout_controller_get_icon_name_for_group (XAppKbdLayoutController *controller, guint group);

gchar *xapp_kbd_layout_controller_get_short_name (XAppKbdLayoutController *controller);

gchar *xapp_kbd_layout_controller_get_short_name_for_group (XAppKbdLayoutController *controller, guint group);

This is used by:

  • cinnamon-screensaver
  • cinnamon keyboard applet