Skip to content

Bug fixes from manual testing#626

Open
lawsie wants to merge 2 commits into
flipcomputing:mainfrom
lawsie:13052-bugfixes
Open

Bug fixes from manual testing#626
lawsie wants to merge 2 commits into
flipcomputing:mainfrom
lawsie:13052-bugfixes

Conversation

@lawsie
Copy link
Copy Markdown
Collaborator

@lawsie lawsie commented May 13, 2026

Summary

Fix bugs found in manual testing.

  • Canvas cursor mode is now cancelled when AreaManager opens (otherwise it prevents you from doing anything!)
  • The editor is now reinstated in the tab order post-Blockly 13

AI usage

Claude Sonnet 4.6 located issues, all code was manually approved.

Summary by CodeRabbit

  • Bug Fixes
    • Fixed keyboard navigation behavior when opening area menus to prevent conflicting keyboard states
    • Improved tab focus handling in the workspace for more reliable keyboard-based navigation

Review Change Stack

@lawsie lawsie changed the title 13052 bugfixes Bug fixes from manual testing May 13, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 13, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 0c0a4d82-7672-48b8-96af-cf1333b7ca67

📥 Commits

Reviewing files that changed from the base of the PR and between 4584ea1 and 7ed5233.

📒 Files selected for processing (2)
  • accessibility/keyboardui.js
  • main/input.js

📝 Walkthrough

Walkthrough

Canvas keyboard mode is now stopped when the area navigation overlay opens, and Blockly's main workspace tab-focus handling is simplified with improved SVG visibility detection and more robust tab navigation logic when the active element may not be directly in the tracked focus list.

Changes

Keyboard and Focus Handling

Layer / File(s) Summary
Canvas keyboard mode interrupt on area overlay
accessibility/keyboardui.js
Import stopCanvasKeyboardMode and call it when opening the area navigation overlay to prevent continued canvas keyboard mode interaction.
Blockly main workspace tab-focus selection and visibility
main/input.js
Simplify workspace group selection to the first g.blocklyWorkspace under svg.blocklySvg without multi-workspace sorting; set accessibility attributes when visible. Update isElementVisible to measure via ownerSVGElement for accurate bounding dimensions on <g> elements.
Tab navigation fallback and index calculation
main/input.js
Add fallback logic to derive the current focus index when the active element is not found directly in the tracked focus list by searching for a container that owns the active element.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

  • flipcomputing/flock#609: Refactors stopCanvasKeyboardMode to use the new InputManager mode stack, directly tied to the canvas keyboard-mode stopping behavior triggered by this PR.
  • flipcomputing/flock#621: Modifies AreaManager.toggle(show) logic in accessibility/keyboardui.js for overlay open/close, making code-level changes related to the area overlay path.
  • flipcomputing/flock#615: InputManager-driven Area menu toggling via AreaManager.toggle(show) creates the scenario where this PR now stops the active canvas keyboard mode when that overlay opens.

🐰 A hop and skip through the keyboard, focus is on the way—
Canvas modes fade when areas play, and tab-travel stays astray no more, hooray!
Blockly's workspace shines with sight, accessibility takes flight!

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive The title 'Bug fixes from manual testing' is vague and generic, using non-descriptive language that doesn't convey the specific changes made to the codebase. Consider a more specific title that highlights the main fixes, such as 'Fix canvas cursor mode and tab navigation accessibility issues' or 'Cancel canvas keyboard mode and restore tab focus in Blockly workspace'.
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

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