micku7zu / micku7zu/QuickCursor

Google Chrome UI changes when Quick Cursor is enabled

Open
#3 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

cant_be_fixed
Dominant language
No language data
Stars
83
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Issue description

Google Chrome UI changes when Quick Cursor is enabled:

  • https://github.com/micku7zu/QuickCursor/issues/2 -✅ Fix available
  • Address bar doesn't hide on page scroll
  • Tab switcher animations are disabled
  • Swipe down on address bar to open tab switcher is not working - This is actually a Chrome bug, because it actually works randomly (aprox once in ten attempts)
  • "Undo Closed Tab" Message Timeout (it will increase to 30 seconds)

What happens

Chromium based browsers (Google Chrome, Brave, Vivaldi, etc) automatically detects when touch exploration or an accessibility service that can perform gestures (like Quick Cursor) is enabled and automatically changes the UI to adapt for accessibility needs.

It doesn't let the user decide if they want to UI to be adapted for accessibility needs, Chrome automatically makes this decision based on what accessibility services are running.

There is no way for me as a developer to exclude Quick Cursor from that check, Chrome doesn't have any exceptions, it checks for any accessibility service that can perform gestures on screens.

Chromium source code

You can find the method that detects the accessibility service with "canPerformGesture" permission or touch exploration on Chromium source code website. File ui/android/java/src/org/chromium/ui/util/AccessibilityUtil.java, method isAccessibilityEnabled()

2022-12-29_23-26-56

But why other accessibility services don't have the same effect?

Because Chrome checks for any accessibility service that have the permission to "simulate a touch on the screen". Not all accessibility services needs or have this permission, but Quick Cursor needs this to simulate the tap at the cursor position.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with ui/android/java/src/org/chromium/ui/util/AccessibilityUtil.java and its isAccessibilityEnabled() method, as linked in the issue. Compare the listed Chrome UI changes with the documented accessibility detection behavior. The issue does not identify an app-side change that can be made or a concrete completion test.

Written by the indexing model from the issue text.

Assessment

Tech stack
android
Domain
accessibility, mobile-dev
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
18/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.