~ctf/unity-settings-daemon/bug1389099_mic_volume_icons

« back to all changes in this revision

Viewing changes to plugins/media-keys/shortcuts-list.h

  • Committer: Package Import Robot
  • Author(s): Robert Ancell
  • Date: 2014-02-07 11:44:36 UTC
  • Revision ID: package-import@ubuntu.com-20140207114436-7t5u3yvwc4ul7w3e
Tags: upstream-14.04.0
ImportĀ upstreamĀ versionĀ 14.04.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
 
2
 *
 
3
 * Copyright (C) 2001 Bastien Nocera <hadess@hadess.net>
 
4
 *
 
5
 * This program is free software; you can redistribute it and/or modify
 
6
 * it under the terms of the GNU General Public License as published by
 
7
 * the Free Software Foundation; either version 2 of the License, or
 
8
 * (at your option) any later version.
 
9
 *
 
10
 * This program is distributed in the hope that it will be useful,
 
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
13
 * GNU General Public License for more details.
 
14
 *
 
15
 * You should have received a copy of the GNU General Public License
 
16
 * along with this program; if not, write to the Free Software
 
17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
 
18
 * USA.
 
19
 */
 
20
 
 
21
#ifndef __SHORTCUTS_LIST_H__
 
22
#define __SHORTCUTS_LIST_H__
 
23
 
 
24
#include "shell-keybinding-modes.h"
 
25
#include "gsd-keygrab.h"
 
26
 
 
27
#define SETTINGS_BINDING_DIR "org.gnome.settings-daemon.plugins.media-keys"
 
28
#define INPUT_SETTINGS_BINDING_DIR "org.gnome.desktop.wm.keybindings"
 
29
 
 
30
typedef enum {
 
31
        TOUCHPAD_KEY,
 
32
        TOUCHPAD_ON_KEY,
 
33
        TOUCHPAD_OFF_KEY,
 
34
        MUTE_KEY,
 
35
        VOLUME_DOWN_KEY,
 
36
        VOLUME_UP_KEY,
 
37
        MUTE_QUIET_KEY,
 
38
        VOLUME_DOWN_QUIET_KEY,
 
39
        VOLUME_UP_QUIET_KEY,
 
40
        MIC_MUTE_KEY,
 
41
        LOGOUT_KEY,
 
42
        EJECT_KEY,
 
43
        HOME_KEY,
 
44
        MEDIA_KEY,
 
45
        CALCULATOR_KEY,
 
46
        SEARCH_KEY,
 
47
        EMAIL_KEY,
 
48
        SCREENSAVER_KEY,
 
49
        HELP_KEY,
 
50
        SCREENSHOT_KEY,
 
51
        WINDOW_SCREENSHOT_KEY,
 
52
        AREA_SCREENSHOT_KEY,
 
53
        SCREENSHOT_CLIP_KEY,
 
54
        WINDOW_SCREENSHOT_CLIP_KEY,
 
55
        AREA_SCREENSHOT_CLIP_KEY,
 
56
        TERMINAL_KEY,
 
57
        WWW_KEY,
 
58
        PLAY_KEY,
 
59
        PAUSE_KEY,
 
60
        STOP_KEY,
 
61
        PREVIOUS_KEY,
 
62
        NEXT_KEY,
 
63
        REWIND_KEY,
 
64
        FORWARD_KEY,
 
65
        REPEAT_KEY,
 
66
        RANDOM_KEY,
 
67
        VIDEO_OUT_KEY,
 
68
        ROTATE_VIDEO_KEY,
 
69
        MAGNIFIER_KEY,
 
70
        SCREENREADER_KEY,
 
71
        ON_SCREEN_KEYBOARD_KEY,
 
72
        INCREASE_TEXT_KEY,
 
73
        DECREASE_TEXT_KEY,
 
74
        TOGGLE_CONTRAST_KEY,
 
75
        MAGNIFIER_ZOOM_IN_KEY,
 
76
        MAGNIFIER_ZOOM_OUT_KEY,
 
77
        POWER_KEY,
 
78
        SLEEP_KEY,
 
79
        SUSPEND_KEY,
 
80
        HIBERNATE_KEY,
 
81
        POWER_KEY_NO_DIALOG,
 
82
        SLEEP_KEY_NO_DIALOG,
 
83
        SUSPEND_KEY_NO_DIALOG,
 
84
        HIBERNATE_KEY_NO_DIALOG,
 
85
        SCREEN_BRIGHTNESS_UP_KEY,
 
86
        SCREEN_BRIGHTNESS_DOWN_KEY,
 
87
        KEYBOARD_BRIGHTNESS_UP_KEY,
 
88
        KEYBOARD_BRIGHTNESS_DOWN_KEY,
 
89
        KEYBOARD_BRIGHTNESS_TOGGLE_KEY,
 
90
        BATTERY_KEY,
 
91
        SWITCH_INPUT_SOURCE_KEY,
 
92
        SWITCH_INPUT_SOURCE_BACKWARD_KEY,
 
93
        CUSTOM_KEY
 
94
} MediaKeyType;
 
95
 
 
96
 
 
97
#define GSD_KEYBINDING_MODE_LAUNCHER (SHELL_KEYBINDING_MODE_NORMAL | \
 
98
                                      SHELL_KEYBINDING_MODE_OVERVIEW)
 
99
#define SCREENSAVER_MODE SHELL_KEYBINDING_MODE_ALL & ~SHELL_KEYBINDING_MODE_UNLOCK_SCREEN
 
100
#define POWER_KEYS_MODE (SHELL_KEYBINDING_MODE_NORMAL | \
 
101
                         SHELL_KEYBINDING_MODE_OVERVIEW | \
 
102
                         SHELL_KEYBINDING_MODE_LOGIN_SCREEN)
 
103
#define POWER_KEYS_MODE_NO_DIALOG (SHELL_KEYBINDING_MODE_LOCK_SCREEN | \
 
104
                                   SHELL_KEYBINDING_MODE_UNLOCK_SCREEN)
 
105
 
 
106
static struct {
 
107
        MediaKeyType key_type;
 
108
        const char *settings_key;
 
109
        const char *key_name;
 
110
        const char *hard_coded;
 
111
        ShellKeyBindingMode modes;
 
112
} media_keys[] = {
 
113
        { TOUCHPAD_KEY, NULL, N_("Touchpad toggle") ,"XF86TouchpadToggle", SHELL_KEYBINDING_MODE_ALL },
 
114
        { TOUCHPAD_ON_KEY, NULL, N_("Touchpad On"), "XF86TouchpadOn", SHELL_KEYBINDING_MODE_ALL },
 
115
        { TOUCHPAD_OFF_KEY, NULL, N_("Touchpad Off"), "XF86TouchpadOff", SHELL_KEYBINDING_MODE_ALL },
 
116
        { MUTE_KEY, "volume-mute", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
117
        { VOLUME_DOWN_KEY, "volume-down", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
118
        { VOLUME_UP_KEY, "volume-up", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
119
        { MIC_MUTE_KEY, NULL, N_("Microphone Mute"), "F20", SHELL_KEYBINDING_MODE_ALL },
 
120
        { MUTE_QUIET_KEY, NULL, N_("Quiet Volume Mute"), "<Alt>XF86AudioMute", SHELL_KEYBINDING_MODE_ALL },
 
121
        { VOLUME_DOWN_QUIET_KEY, NULL, N_("Quiet Volume Down"), "<Alt>XF86AudioLowerVolume", SHELL_KEYBINDING_MODE_ALL },
 
122
        { VOLUME_UP_QUIET_KEY, NULL, N_("Quiet Volume Up"), "<Alt>XF86AudioRaiseVolume", SHELL_KEYBINDING_MODE_ALL },
 
123
        { LOGOUT_KEY, "logout", NULL, NULL, GSD_KEYBINDING_MODE_LAUNCHER },
 
124
        { EJECT_KEY, "eject", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
125
        { HOME_KEY, "home", NULL, NULL, GSD_KEYBINDING_MODE_LAUNCHER },
 
126
        { MEDIA_KEY, "media", NULL, NULL, GSD_KEYBINDING_MODE_LAUNCHER },
 
127
        { CALCULATOR_KEY, "calculator", NULL, NULL, GSD_KEYBINDING_MODE_LAUNCHER },
 
128
        { SEARCH_KEY, "search", NULL, NULL, GSD_KEYBINDING_MODE_LAUNCHER },
 
129
        { EMAIL_KEY, "email", NULL, NULL, GSD_KEYBINDING_MODE_LAUNCHER },
 
130
        { SCREENSAVER_KEY, "screensaver", NULL, NULL, SCREENSAVER_MODE },
 
131
        { SCREENSAVER_KEY, NULL, N_("Lock Screen"), "XF86ScreenSaver", SCREENSAVER_MODE },
 
132
        { HELP_KEY, "help", NULL, NULL, GSD_KEYBINDING_MODE_LAUNCHER },
 
133
        { SCREENSHOT_KEY, "screenshot", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
134
        { WINDOW_SCREENSHOT_KEY, "window-screenshot", NULL, NULL, SHELL_KEYBINDING_MODE_NORMAL },
 
135
        { AREA_SCREENSHOT_KEY, "area-screenshot", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
136
        { SCREENSHOT_CLIP_KEY, "screenshot-clip", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
137
        { WINDOW_SCREENSHOT_CLIP_KEY, "window-screenshot-clip", NULL, NULL, SHELL_KEYBINDING_MODE_NORMAL },
 
138
        { AREA_SCREENSHOT_CLIP_KEY, "area-screenshot-clip", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
139
        { TERMINAL_KEY, "terminal", NULL, NULL, GSD_KEYBINDING_MODE_LAUNCHER },
 
140
        { WWW_KEY, "www", NULL, NULL, GSD_KEYBINDING_MODE_LAUNCHER },
 
141
        { PLAY_KEY, "play", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
142
        { PAUSE_KEY, "pause", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
143
        { STOP_KEY, "stop", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
144
        { PREVIOUS_KEY, "previous", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
145
        { NEXT_KEY, "next", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
146
        { REWIND_KEY, NULL, N_("Rewind"), "XF86AudioRewind", SHELL_KEYBINDING_MODE_ALL },
 
147
        { FORWARD_KEY, NULL, N_("Forward"), "XF86AudioForward", SHELL_KEYBINDING_MODE_ALL },
 
148
        { REPEAT_KEY, NULL, N_("Repeat"), "XF86AudioRepeat", SHELL_KEYBINDING_MODE_ALL },
 
149
        { RANDOM_KEY, NULL, N_("Random Play"), "XF86AudioRandomPlay", SHELL_KEYBINDING_MODE_ALL },
 
150
        { VIDEO_OUT_KEY, NULL, N_("Video Out"), "<Super>p", SHELL_KEYBINDING_MODE_ALL },
 
151
        /* Key code of the XF86Display key (Fn-F7 on Thinkpads, Fn-F4 on HP machines, etc.) */
 
152
        { VIDEO_OUT_KEY, NULL, N_("Video Out"), "XF86Display", SHELL_KEYBINDING_MODE_ALL },
 
153
        /* Key code of the XF86RotateWindows key (present on some tablets) */
 
154
        { ROTATE_VIDEO_KEY, NULL, N_("Rotate Screen"), "XF86RotateWindows", SHELL_KEYBINDING_MODE_NORMAL },
 
155
        { MAGNIFIER_KEY, "magnifier", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
156
        { SCREENREADER_KEY, "screenreader", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
157
        { ON_SCREEN_KEYBOARD_KEY, "on-screen-keyboard", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
158
        { INCREASE_TEXT_KEY, "increase-text-size", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
159
        { DECREASE_TEXT_KEY, "decrease-text-size", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
160
        { TOGGLE_CONTRAST_KEY, "toggle-contrast", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
161
        { MAGNIFIER_ZOOM_IN_KEY, "magnifier-zoom-in", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
162
        { MAGNIFIER_ZOOM_OUT_KEY, "magnifier-zoom-out", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
163
        { POWER_KEY, NULL, N_("Power Off"), "XF86PowerOff", POWER_KEYS_MODE },
 
164
        /* the kernel / Xorg names really are like this... */
 
165
        /* translators: "Sleep" means putting the machine to sleep, either through hibernate or suspend */
 
166
        { SLEEP_KEY, NULL, N_("Sleep"), "XF86Suspend", POWER_KEYS_MODE },
 
167
        { SUSPEND_KEY, NULL, N_("Suspend"), "XF86Sleep", POWER_KEYS_MODE },
 
168
        { HIBERNATE_KEY, NULL, N_("Hibernate"), "XF86Hibernate", POWER_KEYS_MODE },
 
169
        { POWER_KEY_NO_DIALOG, NULL, N_("Power Off"), "XF86PowerOff", POWER_KEYS_MODE_NO_DIALOG },
 
170
        /* the kernel / Xorg names really are like this... */
 
171
        /* translators: "Sleep" means putting the machine to sleep, either through hibernate or suspend */
 
172
        { SLEEP_KEY_NO_DIALOG, NULL, N_("Sleep"), "XF86Suspend", POWER_KEYS_MODE_NO_DIALOG },
 
173
        { SUSPEND_KEY_NO_DIALOG, NULL, N_("Suspend"), "XF86Sleep", POWER_KEYS_MODE_NO_DIALOG },
 
174
        { HIBERNATE_KEY_NO_DIALOG, NULL, N_("Hibernate"), "XF86Hibernate", POWER_KEYS_MODE_NO_DIALOG },
 
175
        { SCREEN_BRIGHTNESS_UP_KEY, NULL, N_("Brightness Up"), "XF86MonBrightnessUp", SHELL_KEYBINDING_MODE_ALL },
 
176
        { SCREEN_BRIGHTNESS_DOWN_KEY, NULL, N_("Brightness Down"), "XF86MonBrightnessDown", SHELL_KEYBINDING_MODE_ALL },
 
177
        { KEYBOARD_BRIGHTNESS_UP_KEY, NULL, N_("Keyboard Brightness Up"), "XF86KbdBrightnessUp", SHELL_KEYBINDING_MODE_ALL },
 
178
        { KEYBOARD_BRIGHTNESS_DOWN_KEY, NULL, N_("Keyboard Brightness Down"), "XF86KbdBrightnessDown", SHELL_KEYBINDING_MODE_ALL },
 
179
        { KEYBOARD_BRIGHTNESS_TOGGLE_KEY, NULL, N_("Keyboard Brightness Toggle"), "XF86KbdLightOnOff", SHELL_KEYBINDING_MODE_ALL },
 
180
        { BATTERY_KEY, NULL, N_("Battery Status"), "XF86Battery", GSD_KEYBINDING_MODE_LAUNCHER },
 
181
        { SWITCH_INPUT_SOURCE_KEY, "switch-input-source", NULL, NULL, SHELL_KEYBINDING_MODE_ALL },
 
182
        { SWITCH_INPUT_SOURCE_BACKWARD_KEY, "switch-input-source-backward", NULL, NULL, SHELL_KEYBINDING_MODE_ALL }
 
183
 
 
184
};
 
185
 
 
186
#undef SCREENSAVER_MODE
 
187
 
 
188
#endif /* __SHORTCUTS_LIST_H__ */