Page MenuHome

Keymap versioning (disable repeat by default)
AbandonedPublic

Authored by Campbell Barton (campbellbarton) on Oct 21 2020, 2:42 PM.

Details

Summary

These changes support keymap versioning, needed to disable repeat by default. The versioning changes are quite minimal.


Keymap: add support for versioning keymaps

Write the Blender version into the keymap
so we can change defaults without breaking existing keymaps.

Based on patch by @Erik Abrahamsson (erik85) with own additions.


Keymap: disable 'repeat' by default for new keymap items

In practice, there are only a limited number of operations we need to
use repeat, typically arrow keys, page up/down and a few others.

Now we don't need to disable repeat explicitly when a modal operator
uses checks for a key being held as was needed for 17cb2a6da0c88.

Use versioning so existing exported keymaps are loaded properly.


PyAPI: expose the file version via bpy.app.version_file

This exposes the version saved to the file,
compatible with bpy.data.version.

This is needed to write out version information into key-maps.

Diff Detail

Repository
rB Blender
Branch
TEMP-KEYMAP-VERSIONING (branched from master)
Build Status
Buildable 10846
Build 10846: arc lint + arc unit