mutter/src/meta/prefs.h

481 lines
18 KiB
C
Raw Normal View History

/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
/* Mutter preferences */
2014-05-02 13:34:02 +00:00
/*
* Copyright (C) 2001 Havoc Pennington
* Copyright (C) 2006 Elijah Newren
2014-05-02 13:34:02 +00:00
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
2014-05-02 13:34:02 +00:00
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
/* This header is a "common" one between the UI and core side */
#include <meta/common.h>
#include <meta/types.h>
#include <pango/pango-font.h>
#include <gdesktop-enums.h>
#include <gio/gio.h>
/**
* MetaPreference:
* @META_PREF_MOUSE_BUTTON_MODS: mouse button modifiers
* @META_PREF_FOCUS_MODE: focus mode
* @META_PREF_FOCUS_NEW_WINDOWS: focus new windows
* @META_PREF_ATTACH_MODAL_DIALOGS: attach modal dialogs
* @META_PREF_RAISE_ON_CLICK: raise on click
* @META_PREF_ACTION_DOUBLE_CLICK_TITLEBAR: action double click titlebar
* @META_PREF_ACTION_MIDDLE_CLICK_TITLEBAR: action middle click titlebar
* @META_PREF_ACTION_RIGHT_CLICK_TITLEBAR: action right click titlebar
* @META_PREF_AUTO_RAISE: auto-raise
* @META_PREF_AUTO_RAISE_DELAY: auto-raise delay
* @META_PREF_FOCUS_CHANGE_ON_POINTER_REST: focus change on pointer rest
* @META_PREF_NUM_WORKSPACES: number of workspaces
* @META_PREF_DYNAMIC_WORKSPACES: dynamic workspaces
* @META_PREF_KEYBINDINGS: keybindings
* @META_PREF_DISABLE_WORKAROUNDS: disable workarounds
* @META_PREF_BUTTON_LAYOUT: button layout
* @META_PREF_WORKSPACE_NAMES: workspace names
* @META_PREF_VISUAL_BELL: visual bell
* @META_PREF_AUDIBLE_BELL: audible bell
* @META_PREF_VISUAL_BELL_TYPE: visual bell type
* @META_PREF_GNOME_ACCESSIBILITY: GNOME accessibility
* @META_PREF_GNOME_ANIMATIONS: GNOME animations
* @META_PREF_CURSOR_THEME: cursor theme
* @META_PREF_CURSOR_SIZE: cursor size
* @META_PREF_RESIZE_WITH_RIGHT_BUTTON: resize with right button
* @META_PREF_EDGE_TILING: edge tiling
* @META_PREF_FORCE_FULLSCREEN: force fullscreen
* @META_PREF_WORKSPACES_ONLY_ON_PRIMARY: workspaces only on primary
* @META_PREF_DRAGGABLE_BORDER_WIDTH: draggable border width
* @META_PREF_AUTO_MAXIMIZE: auto-maximize
2014-04-25 13:26:24 +00:00
* @META_PREF_CENTER_NEW_WINDOWS: center new windows
* @META_PREF_DRAG_THRESHOLD: drag threshold
* @META_PREF_LOCATE_POINTER: show pointer location
*/
/* Keep in sync with GSettings schemas! */
typedef enum
{
META_PREF_MOUSE_BUTTON_MODS,
META_PREF_FOCUS_MODE,
META_PREF_FOCUS_NEW_WINDOWS,
META_PREF_ATTACH_MODAL_DIALOGS,
META_PREF_RAISE_ON_CLICK,
META_PREF_ACTION_DOUBLE_CLICK_TITLEBAR,
META_PREF_ACTION_MIDDLE_CLICK_TITLEBAR,
META_PREF_ACTION_RIGHT_CLICK_TITLEBAR,
META_PREF_AUTO_RAISE,
META_PREF_AUTO_RAISE_DELAY,
META_PREF_FOCUS_CHANGE_ON_POINTER_REST,
META_PREF_NUM_WORKSPACES,
META_PREF_DYNAMIC_WORKSPACES,
(Apologies for huge commit; these were done on a transatlantic flight. This is why we need bzr.) 2008-11-22 Thomas Thurman <tthurman@gnome.org> * src/core/all-keybindings.h: "backward", not "backwards" throughout. 2008-11-20 Thomas Thurman <tthurman@gnome.org> * configure.in: turned on -Wall and -Werror in order to trap as many problems as possible. * src/ui/resizepopup.c: added correct #include. * src/ui/theme-viewer.c: initialised variable. * src/core/xprops.c: corrected cast. * src/core/main.c: added warning if chdir() fails. * src/core/schema-bindings.c: checking the return result of fgets(). 2008-11-20 Thomas Thurman <tthurman@gnome.org> Merged screen and window keybinding tables so that we can use just one file for the both. Also incidentally closes #528337. Further efficiencies of scale to come. * src/include/prefs.h: replace META_PREF_*_KEYBINDINGS with META_PREF_KEYBINDINGS * src/core/keybindings.c: replace *_bindings with key_bindings and similar throughout; all window-based functions are now guaranteed to receive a window so don't need to check for themselves (find_handler): moved so it can also be called from rebuild_binding_table * src/core/display-private.h: replace *_bindings with key_bindings * src/core/prefs.c: update_*_binding becomes update_key_binding; (change_notify): tidy up references to "enormous if statement" since it's almost entirely gone now * src/core/all-keybindings.h: new merged version of screen-bindings.h and window-bindings.h. svn path=/trunk/; revision=4022
2008-11-22 19:02:54 +00:00
META_PREF_KEYBINDINGS,
META_PREF_DISABLE_WORKAROUNDS,
META_PREF_BUTTON_LAYOUT,
META_PREF_WORKSPACE_NAMES,
META_PREF_VISUAL_BELL,
META_PREF_AUDIBLE_BELL,
Merge reduced_resources mode patch from the branch. Offers wireframe and 2003-10-12 Havoc Pennington <hp@redhat.com> Merge reduced_resources mode patch from the branch. Offers wireframe and no-animations. * src/window.c (implement_showing): no animation if we are in reduced resources mode * src/prefs.c: add REDUCED_RESOURCES pref * src/window.c (meta_window_update_keyboard_resize): fix to modify grab_anchor_window_pos to grab_wireframe_rect if appropriate instead of window->rect * src/display.h (struct _MetaDisplay): add grab_start_serial used to avoid responding to events that occurred prior to the grab initialization. Still broken in various ways, specifically EnterNotify that occurred prior to XGrabPointer is processed as if it occurred after. * src/window.c (meta_window_update_keyboard_move): add this instead of meta_window_warp_pointer() crack * src/effects.c (meta_effects_update_wireframe): draw a kind of grid for the wireframe, instead of just a rectangle, like twm * src/screen.c (meta_screen_new): line width of 3 for the XOR gc "Reduced resources" mode based on wireframe patch from Erwann Chenede. Still pretty buggy. * src/keybindings.c (process_keyboard_move_grab) (process_keyboard_resize_grab): add gruesome wireframe hacks * src/display.c (meta_display_end_grab_op): end wireframe (meta_display_begin_grab_op): begin wireframe * src/effects.c (meta_effects_end_wireframe) (meta_effects_update_wireframe, meta_effects_begin_wireframe): routines to draw the wireframe stuff * src/window.c (window_should_be_showing): hide window when doing wireframe, commented out as it breaks grab * src/window.c (meta_window_refresh_resize_popup): handle wireframe * src/screen.c (meta_screen_new): create a screen->root_xor_gc for use in drawing wireframes * src/frames.c (meta_frames_push_delay_exposes): repaint everything before we delay
2003-10-12 06:25:38 +00:00
META_PREF_VISUAL_BELL_TYPE,
META_PREF_GNOME_ACCESSIBILITY,
META_PREF_GNOME_ANIMATIONS,
META_PREF_CURSOR_THEME,
META_PREF_CURSOR_SIZE,
META_PREF_RESIZE_WITH_RIGHT_BUTTON,
META_PREF_EDGE_TILING,
META_PREF_FORCE_FULLSCREEN,
META_PREF_WORKSPACES_ONLY_ON_PRIMARY,
META_PREF_DRAGGABLE_BORDER_WIDTH,
2014-04-25 13:26:24 +00:00
META_PREF_AUTO_MAXIMIZE,
META_PREF_CENTER_NEW_WINDOWS,
META_PREF_DRAG_THRESHOLD,
META_PREF_LOCATE_POINTER,
META_PREF_CHECK_ALIVE_TIMEOUT,
} MetaPreference;
typedef void (* MetaPrefsChangedFunc) (MetaPreference pref,
gpointer user_data);
META_EXPORT
void meta_prefs_add_listener (MetaPrefsChangedFunc func,
gpointer user_data);
META_EXPORT
void meta_prefs_remove_listener (MetaPrefsChangedFunc func,
gpointer user_data);
META_EXPORT
const char* meta_preference_to_string (MetaPreference pref);
META_EXPORT
ClutterModifierType meta_prefs_get_mouse_button_mods (void);
META_EXPORT
gint meta_prefs_get_mouse_button_resize (void);
META_EXPORT
gint meta_prefs_get_mouse_button_menu (void);
META_EXPORT
GDesktopFocusMode meta_prefs_get_focus_mode (void);
META_EXPORT
GDesktopFocusNewWindows meta_prefs_get_focus_new_windows (void);
META_EXPORT
gboolean meta_prefs_get_attach_modal_dialogs (void);
META_EXPORT
gboolean meta_prefs_get_raise_on_click (void);
META_EXPORT
int meta_prefs_get_num_workspaces (void);
META_EXPORT
gboolean meta_prefs_get_dynamic_workspaces (void);
META_EXPORT
gboolean meta_prefs_get_disable_workarounds (void);
META_EXPORT
gboolean meta_prefs_get_auto_raise (void);
META_EXPORT
int meta_prefs_get_auto_raise_delay (void);
META_EXPORT
gboolean meta_prefs_get_focus_change_on_pointer_rest (void);
META_EXPORT
gboolean meta_prefs_get_gnome_accessibility (void);
META_EXPORT
gboolean meta_prefs_get_gnome_animations (void);
META_EXPORT
gboolean meta_prefs_get_edge_tiling (void);
META_EXPORT
gboolean meta_prefs_get_auto_maximize (void);
META_EXPORT
2014-04-25 13:26:24 +00:00
gboolean meta_prefs_get_center_new_windows (void);
META_EXPORT
gboolean meta_prefs_get_show_fallback_app_menu (void);
META_EXPORT
void meta_prefs_set_show_fallback_app_menu (gboolean whether);
META_EXPORT
void meta_prefs_get_button_layout (MetaButtonLayout *button_layout);
/* Double, right, middle click can be configured to any titlebar meta-action */
META_EXPORT
GDesktopTitlebarAction meta_prefs_get_action_double_click_titlebar (void);
META_EXPORT
GDesktopTitlebarAction meta_prefs_get_action_middle_click_titlebar (void);
META_EXPORT
GDesktopTitlebarAction meta_prefs_get_action_right_click_titlebar (void);
META_EXPORT
void meta_prefs_set_num_workspaces (int n_workspaces);
META_EXPORT
const char* meta_prefs_get_workspace_name (int i);
META_EXPORT
void meta_prefs_change_workspace_name (int i,
const char *name);
META_EXPORT
const char* meta_prefs_get_cursor_theme (void);
META_EXPORT
int meta_prefs_get_cursor_size (void);
META_EXPORT
gboolean meta_prefs_get_compositing_manager (void);
META_EXPORT
gboolean meta_prefs_get_force_fullscreen (void);
META_EXPORT
void meta_prefs_set_force_fullscreen (gboolean whether);
META_EXPORT
gboolean meta_prefs_get_workspaces_only_on_primary (void);
META_EXPORT
int meta_prefs_get_draggable_border_width (void);
META_EXPORT
int meta_prefs_get_drag_threshold (void);
/**
* MetaKeyBindingAction:
2014-05-02 13:34:02 +00:00
* @META_KEYBINDING_ACTION_NONE: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_1: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_2: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_3: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_4: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_5: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_6: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_7: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_8: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_9: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_10: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_11: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_12: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_LEFT: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_RIGHT: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_UP: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_DOWN: FILLME
* @META_KEYBINDING_ACTION_WORKSPACE_LAST: FILLME
* @META_KEYBINDING_ACTION_SWITCH_APPLICATIONS: FILLME
* @META_KEYBINDING_ACTION_SWITCH_APPLICATIONS_BACKWARD: FILLME
* @META_KEYBINDING_ACTION_SWITCH_GROUP: FILLME
* @META_KEYBINDING_ACTION_SWITCH_GROUP_BACKWARD: FILLME
* @META_KEYBINDING_ACTION_SWITCH_WINDOWS: FILLME
* @META_KEYBINDING_ACTION_SWITCH_WINDOWS_BACKWARD: FILLME
* @META_KEYBINDING_ACTION_SWITCH_PANELS: FILLME
* @META_KEYBINDING_ACTION_SWITCH_PANELS_BACKWARD: FILLME
* @META_KEYBINDING_ACTION_CYCLE_GROUP: FILLME
* @META_KEYBINDING_ACTION_CYCLE_GROUP_BACKWARD: FILLME
* @META_KEYBINDING_ACTION_CYCLE_WINDOWS: FILLME
* @META_KEYBINDING_ACTION_CYCLE_WINDOWS_BACKWARD: FILLME
* @META_KEYBINDING_ACTION_CYCLE_PANELS: FILLME
* @META_KEYBINDING_ACTION_CYCLE_PANELS_BACKWARD: FILLME
* @META_KEYBINDING_ACTION_SHOW_DESKTOP: FILLME
* @META_KEYBINDING_ACTION_PANEL_RUN_DIALOG: FILLME
* @META_KEYBINDING_ACTION_TOGGLE_RECORDING: FILLME
* @META_KEYBINDING_ACTION_SET_SPEW_MARK: FILLME
* @META_KEYBINDING_ACTION_ACTIVATE_WINDOW_MENU: FILLME
* @META_KEYBINDING_ACTION_TOGGLE_FULLSCREEN: FILLME
* @META_KEYBINDING_ACTION_TOGGLE_MAXIMIZED: FILLME
* @META_KEYBINDING_ACTION_TOGGLE_TILED_LEFT: FILLME
* @META_KEYBINDING_ACTION_TOGGLE_TILED_RIGHT: FILLME
* @META_KEYBINDING_ACTION_TOGGLE_ABOVE: FILLME
* @META_KEYBINDING_ACTION_MAXIMIZE: FILLME
* @META_KEYBINDING_ACTION_UNMAXIMIZE: FILLME
* @META_KEYBINDING_ACTION_TOGGLE_SHADED: FILLME
* @META_KEYBINDING_ACTION_MINIMIZE: FILLME
* @META_KEYBINDING_ACTION_CLOSE: FILLME
* @META_KEYBINDING_ACTION_BEGIN_MOVE: FILLME
* @META_KEYBINDING_ACTION_BEGIN_RESIZE: FILLME
* @META_KEYBINDING_ACTION_TOGGLE_ON_ALL_WORKSPACES: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_1: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_2: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_3: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_4: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_5: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_6: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_7: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_8: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_9: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_10: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_11: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_12: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_LEFT: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_RIGHT: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_UP: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_DOWN: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_LAST: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_MONITOR_LEFT: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_MONITOR_RIGHT: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_MONITOR_UP: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_MONITOR_DOWN: FILLME
2014-05-02 13:34:02 +00:00
* @META_KEYBINDING_ACTION_RAISE_OR_LOWER: FILLME
* @META_KEYBINDING_ACTION_RAISE: FILLME
* @META_KEYBINDING_ACTION_LOWER: FILLME
* @META_KEYBINDING_ACTION_MAXIMIZE_VERTICALLY: FILLME
* @META_KEYBINDING_ACTION_MAXIMIZE_HORIZONTALLY: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_CORNER_NW: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_CORNER_NE: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_CORNER_SW: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_CORNER_SE: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_SIDE_N: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_SIDE_S: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_SIDE_E: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_SIDE_W: FILLME
* @META_KEYBINDING_ACTION_MOVE_TO_CENTER: FILLME
* @META_KEYBINDING_ACTION_OVERLAY_KEY: FILLME
* @META_KEYBINDING_ACTION_LOCATE_POINTER_KEY: FILLME
2014-05-02 13:34:02 +00:00
* @META_KEYBINDING_ACTION_ALWAYS_ON_TOP: FILLME
* @META_KEYBINDING_ACTION_LAST: FILLME
*/
/* XXX FIXME This should be x-macroed, but isn't yet because it would be
* difficult (or perhaps impossible) to add the suffixes using the current
* system. It needs some more thought, perhaps after the current system
* evolves a little.
*/
typedef enum _MetaKeyBindingAction
{
META_KEYBINDING_ACTION_NONE,
META_KEYBINDING_ACTION_WORKSPACE_1,
META_KEYBINDING_ACTION_WORKSPACE_2,
META_KEYBINDING_ACTION_WORKSPACE_3,
META_KEYBINDING_ACTION_WORKSPACE_4,
META_KEYBINDING_ACTION_WORKSPACE_5,
META_KEYBINDING_ACTION_WORKSPACE_6,
META_KEYBINDING_ACTION_WORKSPACE_7,
META_KEYBINDING_ACTION_WORKSPACE_8,
META_KEYBINDING_ACTION_WORKSPACE_9,
META_KEYBINDING_ACTION_WORKSPACE_10,
META_KEYBINDING_ACTION_WORKSPACE_11,
META_KEYBINDING_ACTION_WORKSPACE_12,
META_KEYBINDING_ACTION_WORKSPACE_LEFT,
META_KEYBINDING_ACTION_WORKSPACE_RIGHT,
META_KEYBINDING_ACTION_WORKSPACE_UP,
META_KEYBINDING_ACTION_WORKSPACE_DOWN,
META_KEYBINDING_ACTION_WORKSPACE_LAST,
META_KEYBINDING_ACTION_SWITCH_APPLICATIONS,
META_KEYBINDING_ACTION_SWITCH_APPLICATIONS_BACKWARD,
META_KEYBINDING_ACTION_SWITCH_GROUP,
META_KEYBINDING_ACTION_SWITCH_GROUP_BACKWARD,
META_KEYBINDING_ACTION_SWITCH_WINDOWS,
META_KEYBINDING_ACTION_SWITCH_WINDOWS_BACKWARD,
META_KEYBINDING_ACTION_SWITCH_PANELS,
META_KEYBINDING_ACTION_SWITCH_PANELS_BACKWARD,
META_KEYBINDING_ACTION_CYCLE_GROUP,
META_KEYBINDING_ACTION_CYCLE_GROUP_BACKWARD,
META_KEYBINDING_ACTION_CYCLE_WINDOWS,
META_KEYBINDING_ACTION_CYCLE_WINDOWS_BACKWARD,
META_KEYBINDING_ACTION_CYCLE_PANELS,
META_KEYBINDING_ACTION_CYCLE_PANELS_BACKWARD,
META_KEYBINDING_ACTION_SHOW_DESKTOP,
META_KEYBINDING_ACTION_PANEL_RUN_DIALOG,
META_KEYBINDING_ACTION_TOGGLE_RECORDING,
META_KEYBINDING_ACTION_SET_SPEW_MARK,
META_KEYBINDING_ACTION_ACTIVATE_WINDOW_MENU,
META_KEYBINDING_ACTION_TOGGLE_FULLSCREEN,
META_KEYBINDING_ACTION_TOGGLE_MAXIMIZED,
META_KEYBINDING_ACTION_TOGGLE_TILED_LEFT,
META_KEYBINDING_ACTION_TOGGLE_TILED_RIGHT,
META_KEYBINDING_ACTION_TOGGLE_ABOVE,
META_KEYBINDING_ACTION_MAXIMIZE,
META_KEYBINDING_ACTION_UNMAXIMIZE,
META_KEYBINDING_ACTION_TOGGLE_SHADED,
META_KEYBINDING_ACTION_MINIMIZE,
META_KEYBINDING_ACTION_CLOSE,
META_KEYBINDING_ACTION_BEGIN_MOVE,
META_KEYBINDING_ACTION_BEGIN_RESIZE,
META_KEYBINDING_ACTION_TOGGLE_ON_ALL_WORKSPACES,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_1,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_2,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_3,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_4,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_5,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_6,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_7,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_8,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_9,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_10,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_11,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_12,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_LEFT,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_RIGHT,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_UP,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_DOWN,
META_KEYBINDING_ACTION_MOVE_TO_WORKSPACE_LAST,
META_KEYBINDING_ACTION_MOVE_TO_MONITOR_LEFT,
META_KEYBINDING_ACTION_MOVE_TO_MONITOR_RIGHT,
META_KEYBINDING_ACTION_MOVE_TO_MONITOR_UP,
META_KEYBINDING_ACTION_MOVE_TO_MONITOR_DOWN,
META_KEYBINDING_ACTION_RAISE_OR_LOWER,
META_KEYBINDING_ACTION_RAISE,
META_KEYBINDING_ACTION_LOWER,
META_KEYBINDING_ACTION_MAXIMIZE_VERTICALLY,
META_KEYBINDING_ACTION_MAXIMIZE_HORIZONTALLY,
META_KEYBINDING_ACTION_MOVE_TO_CORNER_NW,
META_KEYBINDING_ACTION_MOVE_TO_CORNER_NE,
META_KEYBINDING_ACTION_MOVE_TO_CORNER_SW,
META_KEYBINDING_ACTION_MOVE_TO_CORNER_SE,
META_KEYBINDING_ACTION_MOVE_TO_SIDE_N,
META_KEYBINDING_ACTION_MOVE_TO_SIDE_S,
META_KEYBINDING_ACTION_MOVE_TO_SIDE_E,
META_KEYBINDING_ACTION_MOVE_TO_SIDE_W,
META_KEYBINDING_ACTION_MOVE_TO_CENTER,
META_KEYBINDING_ACTION_OVERLAY_KEY,
META_KEYBINDING_ACTION_LOCATE_POINTER_KEY,
META_KEYBINDING_ACTION_ISO_NEXT_GROUP,
META_KEYBINDING_ACTION_ALWAYS_ON_TOP,
META_KEYBINDING_ACTION_SWITCH_MONITOR,
META_KEYBINDING_ACTION_ROTATE_MONITOR,
META_KEYBINDING_ACTION_LAST
} MetaKeyBindingAction;
/**
* MetaKeyBindingFlags:
* @META_KEY_BINDING_NONE: none
* @META_KEY_BINDING_PER_WINDOW: per-window
* @META_KEY_BINDING_BUILTIN: built-in
* @META_KEY_BINDING_IS_REVERSED: is reversed
* @META_KEY_BINDING_NON_MASKABLE: always active
* @META_KEY_BINDING_IGNORE_AUTOREPEAT: ignore autorepeat
* @META_KEY_BINDING_NO_AUTO_GRAB: not grabbed automatically
* @META_KEY_BINDING_CUSTOM_TRIGGER: uses a custom keybinding action
*/
typedef enum
{
META_KEY_BINDING_NONE,
META_KEY_BINDING_PER_WINDOW = 1 << 0,
META_KEY_BINDING_BUILTIN = 1 << 1,
META_KEY_BINDING_IS_REVERSED = 1 << 2,
META_KEY_BINDING_NON_MASKABLE = 1 << 3,
META_KEY_BINDING_IGNORE_AUTOREPEAT = 1 << 4,
META_KEY_BINDING_NO_AUTO_GRAB = 1 << 5,
META_KEY_BINDING_CUSTOM_TRIGGER = 1 << 6,
} MetaKeyBindingFlags;
/**
* MetaKeyHandlerFunc:
* @display: a #MetaDisplay
* @window: a #MetaWindow
* @event: (type gpointer): a #ClutterKeyEvent
* @binding: a #MetaKeyBinding
* @user_data: data passed to the function
*
*/
typedef void (* MetaKeyHandlerFunc) (MetaDisplay *display,
MetaWindow *window,
const ClutterKeyEvent *event,
MetaKeyBinding *binding,
gpointer user_data);
META_EXPORT
GType meta_key_binding_get_type (void);
META_EXPORT
MetaKeyBindingAction meta_prefs_get_keybinding_action (const char *name);
META_EXPORT
char * meta_prefs_get_keybinding_label (const char *name);
META_EXPORT
2011-11-14 19:13:56 +00:00
gboolean meta_prefs_get_visual_bell (void);
META_EXPORT
gboolean meta_prefs_bell_is_audible (void);
META_EXPORT
GDesktopVisualBellType meta_prefs_get_visual_bell_type (void);
META_EXPORT
unsigned int meta_prefs_get_check_alive_timeout (void);