Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2018-11-23 07:16:45 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-11-23 07:19:57 +0300
commitca5dd63618b29df6d5a9c451fc05226e02811844 (patch)
treea7071d0732c1a796bdaa8c99b7dc23743237c5cc /release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
parentcfffe615f4794606fc2b7a1bdb148714e3c6e158 (diff)
Fix toolbar keymap accumulating items
Create a temporary keymap with items from the original.
Diffstat (limited to 'release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py')
-rw-r--r--release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py14
1 files changed, 12 insertions, 2 deletions
diff --git a/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py b/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
index 3d861763ad6..97ace1b180b 100644
--- a/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
+++ b/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
@@ -77,12 +77,22 @@ def generate(context, space_type):
# Temporary, only create so we can pass 'properties' to find_item_from_operator.
use_hack_properties = True
- km_name = "Toolbar Popup"
+ km_name_default = "Toolbar Popup"
+ km_name = km_name_default + " <temp>"
wm = context.window_manager
keyconf = wm.keyconfigs.active
keymap = keyconf.keymaps.get(km_name)
if keymap is None:
- keymap = keyconf.keymaps.new(km_name, space_type='EMPTY', region_type='TEMPORARY', tool=True)
+ keymap = keyconf.keymaps.new(km_name, space_type='EMPTY', region_type='TEMPORARY')
+ for kmi in keymap.keymap_items:
+ keymap.keymap_items.remove(kmi)
+
+ keymap_src = keyconf.keymaps.get(km_name_default)
+ if keymap_src is not None:
+ for kmi_src in keymap_src.keymap_items:
+ keymap.keymap_items.new_from_item(kmi_src)
+ del keymap_src
+
kmi_unique_args = set()