[vlc-devel] commit: Change the default hotkeys to avoid conflicts. ( Jean-Baptiste Kempf )
git version control
git at videolan.org
Fri Sep 12 20:09:26 CEST 2008
vlc | branch: 0.9-bugfix | Jean-Baptiste Kempf <jb at videolan.org> | Fri Sep 12 10:45:02 2008 -0700| [d6ff5d2c31d8da17c97e1af89fbabde5c80cbe88] | committer: Jean-Baptiste Kempf
Change the default hotkeys to avoid conflicts.
1) Every Human Interface Guideline on Unix/Linux/Windows reserves alt key for menu and button accessibility... Try to NOT use those...
Moreover, you have NO idea how the translators are going to translate your accelerators...
On the other hand, with this long list of keys it was become more than difficult... I'll document on the wiki.
2) Use keys next-to-each-other like-a-cross for cropping
Those keys are making a cross in most layouts ( on the contrary to the previous ones).
3) At the same time, use easier snapshot key. (shift+s is easier than Ctrl+alt+s)
4) Comment previous changes and remove whitespace.
Nota Bene:
I have no idea on how are the default on the mac and if the are conflicts there too, so I won't make changes there.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d6ff5d2c31d8da17c97e1af89fbabde5c80cbe88
---
src/libvlc-module.c | 73 ++++++++++++++++++++++++++++++---------------------
1 files changed, 43 insertions(+), 30 deletions(-)
diff --git a/src/libvlc-module.c b/src/libvlc-module.c
index 7fcfa3c..e0b95b3 100644
--- a/src/libvlc-module.c
+++ b/src/libvlc-module.c
@@ -2095,7 +2095,7 @@ vlc_module_begin();
# define KEY_UNCROP_RIGHT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'l'
/* the macosx-interface already has bindings */
-# define KEY_ZOOM_QUARTER KEY_UNSET
+# define KEY_ZOOM_QUARTER KEY_UNSET
# define KEY_ZOOM_HALF KEY_UNSET
# define KEY_ZOOM_ORIGINAL KEY_UNSET
# define KEY_ZOOM_DOUBLE KEY_UNSET
@@ -2134,7 +2134,14 @@ vlc_module_begin();
# define KEY_MENU_DOWN KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_DOWN
# define KEY_MENU_SELECT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_ENTER
-#else
+#else /* Non Mac OS X */
+ /*
+ You should try to avoid Ctrl + letter key, because they are usually for
+ dialogs showing and interface related stuffs.
+ It would be nice (less important than previous rule) to try to avoid
+ alt + letter key, because they are usually for menu accelerators and you
+ don't know how the translator is going to do it.
+ */
# define KEY_TOGGLE_FULLSCREEN 'f'
# define KEY_LEAVE_FULLSCREEN KEY_ESC
# define KEY_PLAY_PAUSE KEY_SPACE
@@ -2177,30 +2184,41 @@ vlc_module_begin();
# define KEY_DEINTERLACE 'd'
# define KEY_INTF_SHOW 'i'
# define KEY_INTF_HIDE KEY_MODIFIER_SHIFT|'i'
-# define KEY_DISC_MENU KEY_MODIFIER_ALT|'r'
-# define KEY_TITLE_PREV KEY_MODIFIER_ALT|'o'
-# define KEY_TITLE_NEXT KEY_MODIFIER_ALT|'b'
-# define KEY_CHAPTER_PREV KEY_MODIFIER_ALT|'p'
-# define KEY_CHAPTER_NEXT KEY_MODIFIER_ALT|'n'
-# define KEY_SNAPSHOT KEY_MODIFIER_CTRL|KEY_MODIFIER_ALT|'s'
+# define KEY_DISC_MENU KEY_MODIFIER_SHIFT|'m'
+# define KEY_TITLE_PREV KEY_MODIFIER_SHIFT|'o'
+# define KEY_TITLE_NEXT KEY_MODIFIER_SHIFT|'b'
+# define KEY_CHAPTER_PREV KEY_MODIFIER_SHIFT|'p'
+# define KEY_CHAPTER_NEXT KEY_MODIFIER_SHIFT|'n'
+# define KEY_SNAPSHOT KEY_MODIFIER_SHIFT|'s'
# define KEY_ZOOM 'z'
# define KEY_UNZOOM KEY_MODIFIER_SHIFT|'z'
-# define KEY_CROP_TOP KEY_MODIFIER_ALT|'i'
-# define KEY_UNCROP_TOP KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'i'
-# define KEY_CROP_LEFT KEY_MODIFIER_ALT|'j'
-# define KEY_UNCROP_LEFT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'j'
-# define KEY_CROP_BOTTOM KEY_MODIFIER_ALT|'k'
-# define KEY_UNCROP_BOTTOM KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'k'
-# define KEY_CROP_RIGHT KEY_MODIFIER_ALT|'l'
-# define KEY_UNCROP_RIGHT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'l'
+# define KEY_AUDIODEVICE_CYCLE KEY_MODIFIER_SHIFT|'a'
+
+# define KEY_HISTORY_BACK KEY_MODIFIER_SHIFT|'g'
+# define KEY_HISTORY_FORWARD KEY_MODIFIER_SHIFT|'h'
+# define KEY_RECORD KEY_MODIFIER_SHIFT|'r'
+# define KEY_DUMP KEY_MODIFIER_SHIFT|'d'
+# define KEY_WALLPAPER 'w'
+/* Cropping */
+# define KEY_CROP_TOP KEY_MODIFIER_ALT|'r'
+# define KEY_UNCROP_TOP KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'r'
+# define KEY_CROP_LEFT KEY_MODIFIER_ALT|'d'
+# define KEY_UNCROP_LEFT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'d'
+# define KEY_CROP_BOTTOM KEY_MODIFIER_ALT|'c'
+# define KEY_UNCROP_BOTTOM KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'c'
+# define KEY_CROP_RIGHT KEY_MODIFIER_ALT|'f'
+# define KEY_UNCROP_RIGHT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'f'
+
+/* Zooming */
# define KEY_ZOOM_QUARTER KEY_MODIFIER_CTRL|'1'
# define KEY_ZOOM_HALF KEY_MODIFIER_CTRL|'2'
# define KEY_ZOOM_ORIGINAL KEY_MODIFIER_CTRL|'3'
# define KEY_ZOOM_DOUBLE KEY_MODIFIER_CTRL|'4'
+/* Bookmarks */
# define KEY_SET_BOOKMARK1 KEY_MODIFIER_CTRL|KEY_F1
# define KEY_SET_BOOKMARK2 KEY_MODIFIER_CTRL|KEY_F2
# define KEY_SET_BOOKMARK3 KEY_MODIFIER_CTRL|KEY_F3
@@ -2221,20 +2239,15 @@ vlc_module_begin();
# define KEY_PLAY_BOOKMARK8 KEY_F8
# define KEY_PLAY_BOOKMARK9 KEY_F9
# define KEY_PLAY_BOOKMARK10 KEY_F10
-# define KEY_HISTORY_BACK KEY_MODIFIER_ALT|'g'
-# define KEY_HISTORY_FORWARD KEY_MODIFIER_ALT|'h'
-# define KEY_RECORD KEY_MODIFIER_CTRL|KEY_MODIFIER_SHIFT|'r'
-# define KEY_DUMP KEY_MODIFIER_CTRL|KEY_MODIFIER_SHIFT|'d'
-# define KEY_WALLPAPER 'w'
-# define KEY_MENU_ON KEY_MODIFIER_ALT|'m'
-# define KEY_MENU_OFF KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'m'
+/* OSD menu */
+# define KEY_MENU_ON KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'m'
+# define KEY_MENU_OFF KEY_MODIFIER_ALT|KEY_MODIFIER_CTRL|'m'
# define KEY_MENU_RIGHT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_RIGHT
# define KEY_MENU_LEFT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_LEFT
# define KEY_MENU_UP KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_UP
# define KEY_MENU_DOWN KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_DOWN
# define KEY_MENU_SELECT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_ENTER
-# define KEY_AUDIODEVICE_CYCLE KEY_MODIFIER_ALT|'a'
#endif
add_key( "key-toggle-fullscreen", KEY_TOGGLE_FULLSCREEN, NULL, TOGGLE_FULLSCREEN_KEY_TEXT,
@@ -2383,15 +2396,15 @@ vlc_module_begin();
LOOP_KEY_TEXT, LOOP_KEY_LONGTEXT, false );
set_section ( N_("Zoom" ), NULL );
- add_key( "key-zoom-quarter", KEY_ZOOM_QUARTER, NULL,
+ add_key( "key-zoom-quarter", KEY_ZOOM_QUARTER, NULL,
ZOOM_QUARTER_KEY_TEXT, NULL, false );
- add_key( "key-zoom-half", KEY_ZOOM_HALF, NULL,
+ add_key( "key-zoom-half", KEY_ZOOM_HALF, NULL,
ZOOM_HALF_KEY_TEXT, NULL, false );
- add_key( "key-zoom-original", KEY_ZOOM_ORIGINAL, NULL,
+ add_key( "key-zoom-original", KEY_ZOOM_ORIGINAL, NULL,
ZOOM_ORIGINAL_KEY_TEXT, NULL, false );
- add_key( "key-zoom-double", KEY_ZOOM_DOUBLE, NULL,
+ add_key( "key-zoom-double", KEY_ZOOM_DOUBLE, NULL,
ZOOM_DOUBLE_KEY_TEXT, NULL, false );
-
+
set_section ( N_("Jump sizes" ), NULL );
add_integer( "extrashort-jump-size", 3, NULL, JIEXTRASHORT_TEXT,
JIEXTRASHORT_LONGTEXT, false );
@@ -2497,7 +2510,7 @@ vlc_module_begin();
N_("resets the current plugins cache")
#define VERSION_TEXT \
N_("print version information")
-
+
add_bool( "help", false, NULL, HELP_TEXT, "", false );
change_short( 'h' );
change_internal();
More information about the vlc-devel
mailing list