Keymap: Change default spacebar action to play

This has been a contentious topic: Artists at the Blender-Studio prefer
this behavior, while the user community overwhelmingly prefers 2.7x
operator search. Previously this defaulted to accessing tools
(eg: Space-T activates transform.. Space-R rotate etc) which I still
believe is a better long term default - otherwise we don't have
efficient tool switching for a system we intend to make more use of,
nevertheless as far as I can tell users haven't been keen on adopting
this so far. Show the preference on the setup screen since many users
don't animate and will may want to quickly search or switch tools.
This commit is contained in:
Campbell Barton 2018-11-28 06:57:25 +11:00
parent 9d4129eee6
commit 3f33b4573d
2 changed files with 23 additions and 11 deletions

View File

@ -34,23 +34,25 @@ class Prefs(bpy.types.KeyConfigPreferences):
spacebar_action: EnumProperty(
name="Spacebar",
items=(
('TOOL', "Tool-Bar",
('PLAY', "Play",
"Toggle animation playback "
"('Shift-Space' for Tools)",
1),
('TOOL', "Tools",
"Open the popup tool-bar\n"
"When 'Space' is held and used as a modifier:\n"
"\u2022 Pressing the tools binding key switches to it immediately.\n"
"\u2022 Dragging the cursor over a tool and releasing activates it (like a pie menu).\n"
),
('PLAY', "Playback",
"Toggle animation playback"
),
('SEARCH', "Operator Search",
"Open the operator search popup"
),
"For Play use 'Shift-Space'",
0),
('SEARCH', "Search",
"Open the operator search popup",
2),
),
description=(
"Action when 'Space' is pressed ('Shift-Space' is used for the other action)"
"Action when 'Space' is pressed"
),
default='TOOL',
default='PLAY',
update=update_fn,
)
use_select_all_toggle: BoolProperty(

View File

@ -2554,9 +2554,17 @@ class WM_MT_splash(Menu):
row = sub.row()
row.alignment = 'RIGHT'
row.label(text="Select With")
sub.row().prop(kc_prefs, 'select_mouse', expand=True)
sub.row().prop(kc_prefs, "select_mouse", expand=True)
has_select_mouse = True
has_spacebar_action = hasattr(kc_prefs, "spacebar_action")
if has_spacebar_action:
sub = col.split(factor=0.35)
row = sub.row()
row.alignment = 'RIGHT'
row.label(text="Spacebar")
sub.row().prop(kc_prefs, "spacebar_action", expand=True)
has_select_mouse = True
col.separator()
@ -2580,6 +2588,8 @@ class WM_MT_splash(Menu):
# Keep height constant
if not has_select_mouse:
col.label()
if not has_spacebar_action:
col.label()
layout.label()