Skip to content

Feature/sample app - #7

Merged
mohdaquib merged 5 commits into
mainfrom
feature/sample-app
Jul 9, 2026
Merged

Feature/sample app#7
mohdaquib merged 5 commits into
mainfrom
feature/sample-app

Conversation

@mohdaquib

Copy link
Copy Markdown
Owner
  • Implemented the demo app with the broken and fixed versions and also included the scan and clear actions on the toolbar.
  • On the scan action, the issue overlay for the affected view will be shown.
  • Above the toolbar, the information view shows the total issue count and overall score, representing the percentage of rules that passed.
  • On the issue overlay, the bottom sheet is shown with the detailed description of the issue

mohdaquib added 5 commits June 6, 2026 18:08
…oken UI examples

- Replace `ScanTriggerDemo` with `BrokenAccessibilitySampleApp` to showcase real-world accessibility issues.
- Implement three sample screens: `BrokenLoginScreen`, `BrokenFeedScreen`, and `BrokenFormScreen`.
- Introduce intentional accessibility violations including small touch targets, missing content descriptions, poor color contrast, and duplicate semantics.
- Add a screen selection mechanism to toggle between different broken UI scenarios.
- Simplify the scanning trigger to a manual button tap for demonstration purposes.
…le app

- Update `SampleActivity` to use `A11yScannerScaffold` and `A11yScannerController` for accessibility scanning.
- Implement shake-to-scan trigger and a `FloatingActionButton` for manual scans.
- Add reflection-based helper functions to extract `SemanticsOwner` and `A11yNode` data from the view hierarchy.
- Configure `ScannerConfig` to demonstrate both automatic and manual scanning modes.
- Disable `A11yScannerInitializer` in `AndroidManifest.xml` to favor manual initialization.
…dency

- Remove Hilt and KSP dependencies from the project and sample application.
- Implement multiple-issue support in `IssueDetailPanel` and `A11yIssueOverlay`.
- Refine `A11yNodeExtractor` to better resolve `composableName` and collect text labels for clickable elements.
- Enhance accessibility rules:
    - `FocusOrderRule`: Ignore merged descendants and nested focusable nodes to reduce noise.
    - `TextScalingRule`: Skip merged descendants and only evaluate text within touch targets.
    - `ClickableRoleRule`: Add support for `TextField` role and exempt merged descendants.
- Improve `SampleActivity` with fixed versions of broken screens and better scroll handling for issue highlights.
- Add `A11yNodeExtractorTest` and `FixedScreenAccessibilityTest` to verify extraction logic and rule accuracy.
- Update JVM target to 11 across all modules.
- Redesign `SampleActivity` with a more modern Material 3 interface, including a `CenterAlignedTopAppBar`, `NavigationBar` for screen switching, and `FilterChip` for toggling between "Broken" and "Fixed" versions.
- Refactor sample screens to use `ElevatedCard` and `Surface` for better visual grouping.
- Update `A11yScannerController` node provider to automatically capture current scroll position.
- Enhance `A11yNodeExtractor` to correctly distinguish between visual bounds and touch target bounds by using `layoutInfo` dimensions for touch target size calculations.
- Make `onViewFixed` callback optional in broken screen components.
@mohdaquib
mohdaquib merged commit 535415a into main Jul 9, 2026
0 of 3 checks passed
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