1 /* 2 * Copyright © 2010 Codethink Limited 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2.1 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with this library; if not, write to the 16 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 17 * Boston, MA 02110-1301, USA. 18 * 19 * Authors: 20 * Ryan Lortie <desrt@desrt.ca> 21 */ 22 23 #ifndef __CDesktop_enums_h__ 24 #define __CDesktop_enums_h__ 25 26 typedef enum 27 { 28 C_DESKTOP_PROXY_MODE_NONE, 29 C_DESKTOP_PROXY_MODE_MANUAL, 30 C_DESKTOP_PROXY_MODE_AUTO 31 } CDesktopProxyMode; 32 33 typedef enum 34 { 35 C_DESKTOP_TOOLBAR_STYLE_BOTH, 36 C_DESKTOP_TOOLBAR_STYLE_BOTH_HORIZ, 37 C_DESKTOP_TOOLBAR_STYLE_ICONS, 38 C_DESKTOP_TOOLBAR_STYLE_TEXT 39 } CDesktopToolbarStyle; 40 41 typedef enum 42 { 43 C_DESKTOP_TOOLBAR_ICON_SIZE_SMALL, 44 C_DESKTOP_TOOLBAR_ICON_SIZE_LARGE 45 } CDesktopToolbarIconSize; 46 47 typedef enum 48 { 49 C_DESKTOP_BACKGROUND_STYLE_NONE, 50 C_DESKTOP_BACKGROUND_STYLE_WALLPAPER, 51 C_DESKTOP_BACKGROUND_STYLE_CENTERED, 52 C_DESKTOP_BACKGROUND_STYLE_SCALED, 53 C_DESKTOP_BACKGROUND_STYLE_STRETCHED, 54 C_DESKTOP_BACKGROUND_STYLE_ZOOM, 55 C_DESKTOP_BACKGROUND_STYLE_SPANNED 56 } CDesktopBackgroundStyle; 57 58 typedef enum 59 { 60 C_DESKTOP_BACKGROUND_SHADING_SOLID, 61 C_DESKTOP_BACKGROUND_SHADING_VERTICAL, 62 C_DESKTOP_BACKGROUND_SHADING_HORIZONTAL 63 } CDesktopBackgroundShading; 64 65 typedef enum 66 { 67 C_DESKTOP_MOUSE_DWELL_MODE_WINDOW, 68 C_DESKTOP_MOUSE_DWELL_MODE_GESTURE 69 } CDesktopMouseDwellMode; 70 71 typedef enum 72 { 73 C_DESKTOP_MOUSE_DWELL_DIRECTION_LEFT, 74 C_DESKTOP_MOUSE_DWELL_DIRECTION_RIGHT, 75 C_DESKTOP_MOUSE_DWELL_DIRECTION_UP, 76 C_DESKTOP_MOUSE_DWELL_DIRECTION_DOWN 77 } CDesktopMouseDwellDirection; 78 79 typedef enum 80 { 81 C_DESKTOP_SCREENSAVER_MODE_BLANK_ONLY, 82 C_DESKTOP_SCREENSAVER_MODE_RANDOM, 83 C_DESKTOP_SCREENSAVER_MODE_SINGLE 84 } CDesktopScreensaverMode; 85 86 typedef enum 87 { 88 C_DESKTOP_MAGNIFIER_MOUSE_TRACKING_MODE_NONE, 89 C_DESKTOP_MAGNIFIER_MOUSE_TRACKING_MODE_CENTERED, 90 C_DESKTOP_MAGNIFIER_MOUSE_TRACKING_MODE_PROPORTIONAL, 91 C_DESKTOP_MAGNIFIER_MOUSE_TRACKING_MODE_PUSH 92 } CDesktopMagnifierMouseTrackingMode; 93 94 typedef enum 95 { 96 C_DESKTOP_MAGNIFIER_SCREEN_POSITION_NONE, 97 C_DESKTOP_MAGNIFIER_SCREEN_POSITION_FULL_SCREEN, 98 C_DESKTOP_MAGNIFIER_SCREEN_POSITION_TOP_HALF, 99 C_DESKTOP_MAGNIFIER_SCREEN_POSITION_BOTTOM_HALF, 100 C_DESKTOP_MAGNIFIER_SCREEN_POSITION_LEFT_HALF, 101 C_DESKTOP_MAGNIFIER_SCREEN_POSITION_RIGHT_HALF 102 } CDesktopMagnifierScreenPosition; 103 104 typedef enum 105 { 106 C_DESKTOP_MAGNIFIER_LENS_SHAPE_NONE, 107 C_DESKTOP_MAGNIFIER_LENS_SHAPE_SQUARE, 108 C_DESKTOP_MAGNIFIER_LENS_SHAPE_HORIZONTAL, 109 C_DESKTOP_MAGNIFIER_LENS_SHAPE_VERTICAL 110 } CDesktopMagnifierLensShape; 111 112 typedef enum 113 { 114 C_DESKTOP_TITLEBAR_ACTION_TOGGLE_SHADE = 0, 115 C_DESKTOP_TITLEBAR_ACTION_TOGGLE_MAXIMIZE, 116 C_DESKTOP_TITLEBAR_ACTION_TOGGLE_MAXIMIZE_HORIZONTALLY, 117 C_DESKTOP_TITLEBAR_ACTION_TOGGLE_MAXIMIZE_VERTICALLY, 118 C_DESKTOP_TITLEBAR_ACTION_TOGGLE_STUCK, 119 C_DESKTOP_TITLEBAR_ACTION_TOGGLE_ABOVE, 120 C_DESKTOP_TITLEBAR_ACTION_MINIMIZE, 121 C_DESKTOP_TITLEBAR_ACTION_NONE, 122 C_DESKTOP_TITLEBAR_ACTION_LOWER, 123 C_DESKTOP_TITLEBAR_ACTION_MENU 124 } CDesktopTitlebarAction; 125 126 typedef enum 127 { 128 /* these must be more than max CDesktopTitlebarAction */ 129 C_DESKTOP_TITLEBAR_SCROLL_ACTION_SHADE = 10, 130 C_DESKTOP_TITLEBAR_SCROLL_ACTION_OPACITY, 131 C_DESKTOP_TITLEBAR_SCROLL_ACTION_NONE 132 } CDesktopTitlebarScrollAction; 133 134 typedef enum 135 { 136 C_DESKTOP_FOCUS_MODE_CLICK, 137 C_DESKTOP_FOCUS_MODE_SLOPPY, 138 C_DESKTOP_FOCUS_MODE_MOUSE 139 } CDesktopFocusMode; 140 141 typedef enum 142 { 143 C_DESKTOP_FOCUS_NEW_WINDOWS_SMART, 144 C_DESKTOP_FOCUS_NEW_WINDOWS_STRICT 145 } CDesktopFocusNewWindows; 146 147 typedef enum 148 { 149 C_DESKTOP_VISUAL_BELL_FULLSCREEN_FLASH, 150 C_DESKTOP_VISUAL_BELL_FRAME_FLASH 151 } CDesktopVisualBellType; 152 153 typedef enum 154 { 155 /* All bindings before _SEPARATOR are treated as 156 * "global" bindings, i.e. they work regardless of 157 * Cinnamon's global state (open menus, etc...) 158 */ 159 C_DESKTOP_MEDIA_KEY_MUTE, 160 C_DESKTOP_MEDIA_KEY_MUTE_QUIET, 161 C_DESKTOP_MEDIA_KEY_VOLUME_UP, 162 C_DESKTOP_MEDIA_KEY_VOLUME_UP_QUIET, 163 C_DESKTOP_MEDIA_KEY_VOLUME_DOWN, 164 C_DESKTOP_MEDIA_KEY_VOLUME_DOWN_QUIET, 165 C_DESKTOP_MEDIA_KEY_MIC_MUTE, 166 C_DESKTOP_MEDIA_KEY_EJECT, 167 C_DESKTOP_MEDIA_KEY_MEDIA, 168 C_DESKTOP_MEDIA_KEY_PLAY, 169 C_DESKTOP_MEDIA_KEY_PAUSE, 170 C_DESKTOP_MEDIA_KEY_STOP, 171 C_DESKTOP_MEDIA_KEY_PREVIOUS, 172 C_DESKTOP_MEDIA_KEY_NEXT, 173 C_DESKTOP_MEDIA_KEY_REWIND, 174 C_DESKTOP_MEDIA_KEY_FORWARD, 175 C_DESKTOP_MEDIA_KEY_REPEAT, 176 C_DESKTOP_MEDIA_KEY_RANDOM, 177 C_DESKTOP_MEDIA_KEY_SCREENSHOT, 178 C_DESKTOP_MEDIA_KEY_SCREENSHOT_CLIP, 179 180 C_DESKTOP_MEDIA_KEY_SEPARATOR, 181 /* The rest are normal priority - they won't trigger during 182 a modal Cinnamon state 183 */ 184 C_DESKTOP_MEDIA_KEY_WINDOW_SCREENSHOT, 185 C_DESKTOP_MEDIA_KEY_WINDOW_SCREENSHOT_CLIP, 186 C_DESKTOP_MEDIA_KEY_AREA_SCREENSHOT, 187 C_DESKTOP_MEDIA_KEY_AREA_SCREENSHOT_CLIP, 188 C_DESKTOP_MEDIA_KEY_TOUCHPAD, 189 C_DESKTOP_MEDIA_KEY_TOUCHPAD_ON, 190 C_DESKTOP_MEDIA_KEY_TOUCHPAD_OFF, 191 C_DESKTOP_MEDIA_KEY_LOGOUT, 192 C_DESKTOP_MEDIA_KEY_SHUTDOWN, 193 C_DESKTOP_MEDIA_KEY_HOME, 194 C_DESKTOP_MEDIA_KEY_CALCULATOR, 195 C_DESKTOP_MEDIA_KEY_SEARCH, 196 C_DESKTOP_MEDIA_KEY_EMAIL, 197 C_DESKTOP_MEDIA_KEY_SCREENSAVER, 198 C_DESKTOP_MEDIA_KEY_HELP, 199 C_DESKTOP_MEDIA_KEY_TERMINAL, 200 C_DESKTOP_MEDIA_KEY_WWW, 201 C_DESKTOP_MEDIA_KEY_VIDEO_OUT, 202 C_DESKTOP_MEDIA_KEY_ROTATE_VIDEO, 203 C_DESKTOP_MEDIA_KEY_ROTATE_VIDEO_LOCK, 204 C_DESKTOP_MEDIA_KEY_SCREENREADER, 205 C_DESKTOP_MEDIA_KEY_ON_SCREEN_KEYBOARD, 206 C_DESKTOP_MEDIA_KEY_INCREASE_TEXT, 207 C_DESKTOP_MEDIA_KEY_DECREASE_TEXT, 208 C_DESKTOP_MEDIA_KEY_TOGGLE_CONTRAST, 209 C_DESKTOP_MEDIA_KEY_SUSPEND, 210 C_DESKTOP_MEDIA_KEY_HIBERNATE, 211 C_DESKTOP_MEDIA_KEY_SCREEN_BRIGHTNESS_UP, 212 C_DESKTOP_MEDIA_KEY_SCREEN_BRIGHTNESS_DOWN, 213 C_DESKTOP_MEDIA_KEY_KEYBOARD_BRIGHTNESS_UP, 214 C_DESKTOP_MEDIA_KEY_KEYBOARD_BRIGHTNESS_DOWN, 215 C_DESKTOP_MEDIA_KEY_KEYBOARD_BRIGHTNESS_TOGGLE, 216 C_DESKTOP_MEDIA_KEY_BATTERY, 217 218 C_DESKTOP_MEDIA_KEY_LAST 219 } CDesktopMediaKeyType; 220 221 __attribute__((unused)) static const char *media_keys[] = { 222 [C_DESKTOP_MEDIA_KEY_MUTE] = "volume-mute", 223 [C_DESKTOP_MEDIA_KEY_MUTE_QUIET] = "mute-quiet", 224 [C_DESKTOP_MEDIA_KEY_VOLUME_UP] = "volume-up", 225 [C_DESKTOP_MEDIA_KEY_VOLUME_UP_QUIET] = "volume-up-quiet", 226 [C_DESKTOP_MEDIA_KEY_VOLUME_DOWN] = "volume-down", 227 [C_DESKTOP_MEDIA_KEY_VOLUME_DOWN_QUIET] = "volume-down-quiet", 228 [C_DESKTOP_MEDIA_KEY_MIC_MUTE] = "mic-mute", 229 [C_DESKTOP_MEDIA_KEY_EJECT] = "eject", 230 [C_DESKTOP_MEDIA_KEY_MEDIA] = "media", 231 [C_DESKTOP_MEDIA_KEY_SCREENSHOT] = "screenshot", 232 [C_DESKTOP_MEDIA_KEY_WINDOW_SCREENSHOT] = "window-screenshot", 233 [C_DESKTOP_MEDIA_KEY_PLAY] = "play", 234 [C_DESKTOP_MEDIA_KEY_PAUSE] = "pause", 235 [C_DESKTOP_MEDIA_KEY_STOP] = "stop", 236 [C_DESKTOP_MEDIA_KEY_PREVIOUS] = "previous", 237 [C_DESKTOP_MEDIA_KEY_NEXT] = "next", 238 [C_DESKTOP_MEDIA_KEY_REWIND] = "audio-rewind", 239 [C_DESKTOP_MEDIA_KEY_FORWARD] = "audio-forward", 240 [C_DESKTOP_MEDIA_KEY_REPEAT] = "audio-repeat", 241 [C_DESKTOP_MEDIA_KEY_RANDOM] = "audio-random", 242 [C_DESKTOP_MEDIA_KEY_AREA_SCREENSHOT] = "area-screenshot", 243 [C_DESKTOP_MEDIA_KEY_SCREENSHOT_CLIP] = "screenshot-clip", 244 [C_DESKTOP_MEDIA_KEY_WINDOW_SCREENSHOT_CLIP] = "window-screenshot-clip", 245 [C_DESKTOP_MEDIA_KEY_AREA_SCREENSHOT_CLIP] = "area-screenshot-clip", 246 247 [C_DESKTOP_MEDIA_KEY_SEPARATOR] = "", 248 249 [C_DESKTOP_MEDIA_KEY_TOUCHPAD] = "touchpad-toggle", 250 [C_DESKTOP_MEDIA_KEY_TOUCHPAD_ON] = "touchpad-on", 251 [C_DESKTOP_MEDIA_KEY_TOUCHPAD_OFF] = "touchpad-off", 252 [C_DESKTOP_MEDIA_KEY_LOGOUT] = "logout", 253 [C_DESKTOP_MEDIA_KEY_SHUTDOWN] = "shutdown", 254 [C_DESKTOP_MEDIA_KEY_HOME] = "home", 255 [C_DESKTOP_MEDIA_KEY_CALCULATOR] = "calculator", 256 [C_DESKTOP_MEDIA_KEY_SEARCH] = "search", 257 [C_DESKTOP_MEDIA_KEY_EMAIL] = "email", 258 [C_DESKTOP_MEDIA_KEY_SCREENSAVER] = "screensaver", 259 [C_DESKTOP_MEDIA_KEY_HELP] = "help", 260 [C_DESKTOP_MEDIA_KEY_TERMINAL] = "terminal", 261 [C_DESKTOP_MEDIA_KEY_WWW] = "www", 262 [C_DESKTOP_MEDIA_KEY_VIDEO_OUT] = "video-outputs", 263 [C_DESKTOP_MEDIA_KEY_ROTATE_VIDEO] = "video-rotation", 264 [C_DESKTOP_MEDIA_KEY_ROTATE_VIDEO_LOCK] = "video-rotation-lock", 265 [C_DESKTOP_MEDIA_KEY_SCREENREADER] = "screenreader", 266 [C_DESKTOP_MEDIA_KEY_ON_SCREEN_KEYBOARD] = "on-screen-keyboard", 267 [C_DESKTOP_MEDIA_KEY_INCREASE_TEXT] = "increase-text-size", 268 [C_DESKTOP_MEDIA_KEY_DECREASE_TEXT] = "decrease-text-size", 269 [C_DESKTOP_MEDIA_KEY_TOGGLE_CONTRAST] = "toggle-contrast", 270 [C_DESKTOP_MEDIA_KEY_SUSPEND] = "suspend", 271 [C_DESKTOP_MEDIA_KEY_HIBERNATE] = "hibernate", 272 [C_DESKTOP_MEDIA_KEY_SCREEN_BRIGHTNESS_UP] = "screen-brightness-up", 273 [C_DESKTOP_MEDIA_KEY_SCREEN_BRIGHTNESS_DOWN] = "screen-brightness-down", 274 [C_DESKTOP_MEDIA_KEY_KEYBOARD_BRIGHTNESS_UP] = "kbd-brightness-up", 275 [C_DESKTOP_MEDIA_KEY_KEYBOARD_BRIGHTNESS_DOWN] = "kbd-brightness-down", 276 [C_DESKTOP_MEDIA_KEY_KEYBOARD_BRIGHTNESS_TOGGLE] = "kbd-brightness-toggle", 277 [C_DESKTOP_MEDIA_KEY_BATTERY] = "battery", 278 279 [C_DESKTOP_MEDIA_KEY_LAST] = "" 280 }; 281 282 #endif /* __CDesktop_enums_h__ */ 283