Skip to content

1.3.4-beta release - #18

Merged
Core447 merged 11 commits into
mainfrom
dev
Mar 31, 2024
Merged

Core447 merged 11 commits into
mainfrom
dev

Conversation

@Core447

@Core447 Core447 commented Mar 31, 2024

Copy link
Copy Markdown
Member

No description provided.

@Core447
Core447 merged commit 75b2f90 into main Mar 31, 2024
nazbert added a commit to nazbert/Deckard that referenced this pull request Jul 12, 2026
…etters

Two BetterDeck defects (issues StreamController#17, StreamController#18):

- reorder_physical_for_rotation computed out[p] = orig[get_logical_index(p)]
  where the contract is out[get_logical_index(p)] = orig[p] -- applying the
  INVERSE rotation. Self-inverse at 0/180, so it only showed under 90/270:
  key_states() scrambled and ControllerKey.__init__ reading the wrong
  key's press state on rotated decks.

- set_key_callback_async / set_dial_callback_async /
  set_touchscreen_callback_async called THEMSELVES instead of the wrapped
  deck: RecursionError for any plugin using the async API. Now delegate to
  self.deck (the key variant keeps its logical-index remapper; dials and
  the touchscreen need no remap, matching their sync counterparts).

tests/scenario_betterdeck_rotation.py verifies the map against
get_physical_index as an independent oracle (a different formula) plus a
hand-computed literal, and exercises all three async setters; red-checked:
pre-fix rotation 90 misplaces every key and the setters recurse.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant