• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[APP][7.0+] Quick Cursor: one hand mouse pointer

Search This thread

micku7zu

Senior Member
Oct 8, 2010
188
347
26
Cluj-Napoca
Quick Cursor

ZiGWIey.png


The app is free and without ads!


XDA Article



What is it for:
Helps you to use big screens easily with one hand by introducing a computer like cursor controlled with one finger by swiping from edge of the screen.


How to use:
1. Swipe from left or right margin from the bottom half of the screen.
2. Reach the top half of the screen by dragging the tracker using one hand in the bottom half.
3. Touch the tracker to click with the cursor. The tracker will disappear on any action outside the tracker or after a period of time.

TIP: While using the quick cursor, touch with another finger to open the quick settings menu.


Download


Google Play Store link



Screenshots





Telegram Quick Cursor group
If anyone wants to help by testing the internal builds before the release, please join telegram group




Credits
Quick Cursor is an alternative to the already known Reachability Cursor app. I really liked it, and I appreciated the developer attitude and his vision about the app in his replies online. Unfortunately, NiftyUI's last message about the app was on 7 October 2018 and the last app update was on 4 October 2018 and it doesn't work on most Android 10 phones. I do hope that he is ok, and give him a big thumbs up for the idea and the implementation!

Why
I saw a lot of threads and replies on XDA and Reddit for an alternative app for Reachability Cursor for a long time and I needed one too!

Monetization
The app uses the same monetization scheme as Reachability Cursor: it offers an In-App purchase for "PRO" mode which adds some more functionalities (floating tracker mode, long clicks, edge actions) and a lot of customization on each part of the app: cursor, tracker, trigger area, tracker area, cursor area, feedback. Basically this is a support for the developer (me), because the free version should be enough for most use cases.

Help needed
The app should run on Android 7.0 or later, theoretically. I tested it only on 10 devices running Android 9 and Android 10 (Pixel, Samsung, Xiaomi, Oneplus).

I need help to collect some feedback on this early version from more devices, so please send feedback anywhere (here on XDA, Telegram, Reddit, Email, Play store), including the device name and Android version.

I'm more interested in this topics:
  • critical bugs that won't let you use the app properly
  • if it works ok daily in your case
  • if you see any performance impact on your phone
  • 90hz or 120hz affected?
  • feature requests
  • I need these feedback to estimate the current state of the app and how much work I have to do until I can fully release it, not early access, and more polished. I don't work as a full time Android Developer, so I don't have a lot of things necessary to test it well enough on my own (time, phones, knowledge, etc), and don't want to release the app publicly if it is not polished enough.

Thank you!


Changelog

1.10.0:

  • improve simple triggers config (more options and easier to config)
  • more trigger config for free version
  • fix cursor preview when cursor stroke size is bigger than cursor size
  • switch to limited mode manually instead of automatically in case of dispatch bug
  • add more debug options

1.9.5:
  • fix wrong value displayed on Advanced mode edit

1.9.4:
  • first stable version (no beta)
  • Please rate the new version on Play Store, the older "beta feedback" was only for developer (not public)

1.9.3 Beta:
  • fix "Quick actions" bottom sheet back button bug
  • fix crash when settings are outside of min-max range
  • create adaptive icon
  • change icon to respect Android guidelines

1.9.2 Beta:
  • fix error toast on unlocking phone

1.9.1 Beta:
  • small crash fix

1.9.0 Beta:
  • add support for devices with adjustable screens (foldable devices)
  • add support for devices with configurable resolution. scale preferences based on resolution change
  • refactor all size preferences to float
  • fix floating tracker mode with move triggers above keyboard bug
  • fix trail bug on "hide cursor" edge action

1.8.2 Beta:
  • add new visual debugs
  • fix crash from Google Play store feedback

1.8.1 Beta:
  • fix crash introduced in 1.8.0 beta. Sorry for that!
  • fix bug with app shown as stopped in the main screen
  • fix bug on first use tutorial

1.8.0 Beta:
  • add blacklist/whitelist functionality
  • add action to add an app to blacklist from Quick Settings

1.7.0 Beta:
  • improve the debug system with debug logs
  • change the configurable long click distance threshold to be used for click also
  • fix quick settings popup bug

1.6.13 Beta:
  • add configurable long click distance threshold
  • fix quick settings tile crash
  • fix not registered click on fast tracker tapping
  • update translations

1.6.12 Beta:
  • add gesture recorder cancel edge action

1.6.11 Beta:
  • add debug for Quick Actions popup to identify a bug
  • fix some crashes on app opening reported on Play Store

1.6.10 Beta:
  • add Russian translation (thanks to Alex Procopovich)
  • fix translation bug on Quick Actions popup

1.6.9 Beta:
  • fix temporarily pause feature on Android 11

1.6.8 Beta:
  • fix crash on first use tutorial

1.6.7 Beta:
  • add info about how to prevent Android killing the app
  • fix gesture replay crash
  • fix start/stop app bug

1.6.6 Beta:
  • update accessibility service tutorial design and screenshot
  • add how to use tutorial on the main screen
  • update PRO features description and layout
  • improve debug logging

1.6.5 Beta:
  • update main app activity design
  • fix top crashes from Google Play store reports
  • fix crash with trail effect on some edge case
  • fix crash on edge cases clicking outside screen
  • fix crash on quick settings tile add
  • fix bug when clicking with cursor on the tracker (or gesture replay on tracker)
  • fix wrong edge tracker position on floating mode
  • fix gesture recorder animation when dot color is the same as recorder trail color
  • fix FPS debug text in debug mode
  • try to fix bug with keyboard detection after app update (fixed by an app restart)

1.6.4 Beta:
  • add Kurdish translation (thanks to Alân Yalçın)
  • update Turkish translations (thanks to Alân Yalçın)
  • fix annoying "service interrupted by Android" toast message on some devices

1.6.3 Beta:
  • add German translation (thanks to Holger Hartwig)
1.6.2 Beta:
  • add trail and cursor animations (show, hide, gesture record, click)
  • improve rendering performance
  • improve animations
  • add more features to "debug mode"
  • add toggle zone app shortcut
  • fix wrong detection of accessibility service as stopped
  • fix "accessibility settings" button not opening menu
  • fix crash on accessibility service tutorial
  • fix haptic feedback lag on some devices (ex: OnePlus)
  • fix shortcut with Tap-tap app

1.4.0 Beta:
  • add a reset to default for all settings
  • fix bug with preferences format and with backup (not a breaking change)
  • fix bug with backup not exporting the default values
  • update translations

1.3.0 Beta:
  • add translations: Dutch, Polish, Spanish, Turkish
  • fix wrong alignment of disable service
  • change warning icon

1.2.0 Beta:
  • add backup and restore functionality for all settings
  • fix edge actions wrong defaults for PRO

1.1.0 Beta:
  • add option to not block the system gesture navigation with triggers/tracker because of the OnePlus bug
  • fix wrong cursor position when using the app shortcuts (trigger the cursor from another apps)
  • fix overlapping triggers when multiple triggers are moved above keyboard

1.0.0 Beta:
  • use semantic versioning MAJOR.MINOR.PATCH (major for incompatible changes, minor for new features, patch for bug fixing)
  • refactor all screen coordinates and sizes
  • refactor all defaults and constants
  • refactor horizontal/vertical to left/top
  • all size or positioning preferences have been reset to work with the new system
  • fix wrong positions on devices with cutouts
  • fix pixelated cursor/tracker/ripple by enabling smooth anti aliasing

0.9.42 Beta:
  • fix bug with turn off/on
  • change FAQ info

0.9.41 Beta:
  • add new debug mode for better remote debugging
  • fix keyboard detection bug in Android 11 (change the detection mechanism)
  • fix keyboard detection bug when opening the status bar
  • fix bug on first tutorial auto start
  • fix bug with gesture recorder together with disable triggers when keyboard is visible
  • fix stop/start bugs when the app is stopped from different combinations
  • disable/enable the Android System Bug popup
  • move quick actions menu above navigation bar

0.9.40 Beta:
  • add quick settings tile to toggle start/stop
  • add a way to stop the app without disabling the accessibility service
  • fix shortcut glitch that happens randomly
  • add new shortcuts (start, stop, toggle and hide cursor) that can be triggered by launcher or from other apps (tasker, etc)

0.9.39 Beta:
  • fix crash on application startup on some devices
  • revert update of third party library that caused the above crash

0.9.38 Beta:
  • fix bug with 'limited mode' in the free version
  • fix problems with PRO overlay in the free version for tap behaviour

0.9.37 Beta:
  • fix gesture recorder preview trail position on some devices

0.9.36 Beta:
  • added gesture support in advanced mode (drag and drop, scroll, swipe, etc)
  • updated dev libraries

0.9.35 Beta:
  • highlight the Quick Cursor accessibility service on Android settings open
  • improve first run of the app

0.9.34 Beta:
  • fix a bug with changelog popup
  • add button for changelog popup in About section

0.9.33 Beta:
  • implemented an experimental 'limited mode' for those where the app stops working after some time or doesn't work at all
  • prepare settings UI for a more advanced mode that supports gesture (swipe, drag, scroll, etc)

0.9.32 Beta:
  • Fix a bug with slider preference
  • Fix multiple floating bubbles bug

0.9.31 Beta:
  • add description on list preferences for better UI (when keyboard is visible, edge actions, swipe mode, etc)
  • change almost all sliders in the settings with a new one
  • fix tracker glitch on "hide cursor" edge action
  • fix frame drops on "hide cursor" visual feedback (ripple)

0.9.30 Beta:
  • add changelog popup on first use after update
  • add info when the accessibility service can't send gesture anymore (in some devices)
  • fix bug on "hide cursor" edge action
  • fix bug on tap not recognized as tap on OnePlus launcher in some scenario
  • fix bug with "Hide cursor" edge action when triggered faster than the reveal animation
  • fix bug when tracker is tapped when the hide animation is in progress

0.9.29 Beta:
  • - fix multiple crashes:
  • - on first time use tutorial slide
  • - on phone rotate
  • - on long click through trigger zone
  • - when trying to detect the keyboard open/close
  • - on tutorial auto slide
  • - when stopping the app
  • - on click

0.9.28 Beta:
  • fix bug: QC activated while the keyboard was visible on some keyboard apps actions (many SwiftKey actions, share dialog from Google Keyboard, etc)

0.9.27 Beta:
  • fix bug: connection to Google Play store remained open in some cases and the "buy pro" dialog was displayed any time the connection was reconnected
  • fix bug: show the toast "PRO version activated" more times, in some rare situations, after the PRO was bought

0.9.26 Beta:
  • fix bug with buy pro Google Play popup randomly appear
  • sorry to all free users that had this bug, this was not intentional to spam the pro version

0.9.25 Beta:
  • add "FAQ and troubleshooting"

0.9.26 Beta:
  • fix bug with buy pro Google Play popup randomly appear in some rare situation on the free version
  • sorry to all free users that had this bug, this was not intentional to spam the pro version, it should be fixed now

0.9.25 Beta:
  • add "FAQ and troubleshooting" based on all the feedback received

0.9.24 Beta:
  • try to fix "Open Settings" from "Quick Settings" on some phones
  • general overall development improvements:
  • - clean up some old code
  • - fix some leaked IntentReceiver

0.9.23 Beta:
  • fix crash with raise triggers above keyboard on landscape
  • fix QC enabled on landscape on keyboard action

0.9.22 Beta:
  • fix bug with some lock screen configurations that never re-enabled the QC after phone unlock


0.9.21 Beta:
  • disable QC on lock screen
  • fix bug with quick settings opening when phone is locked / unlocked
  • fix trigger size not saving correctly on simple mode with location bottom

0.9.20 Beta:
  • acessibility service enable tutorial screenshots:
  • add accessibility tutorial for Samsung
  • add accessibility tutorial for Xiaomi

0.9.19 Beta:
  • fix bug on accessibility service enabled and exit back to tutorial

0.9.18 Beta:
  • add tutorial for how to enable accessibility service on generic device
  • add first time use tutorial
  • add trigger size config on first time use tutorial
  • add share button in About section
  • fixed bug on advanced mode: cursor height was not saved correctly

0.9.17 Beta:
  • add option to disable QC quick settings and fix open by mistake when touching the margins
  • possible fix for Android Quick Settings show for 1ms on some phones when tapping the trigger

0.9.16 Beta:
  • triggers can be disabled when keyboard is visible
  • triggers can be automatically raised above keyboard when it is visible
  • improve trigger performance on tap
  • fix "hide on outside tap" bug (not everyone affected)
  • fix bug in "floating tracker" mode when a long clickable element is behind the small tracker on the edge

0.9.15 Beta:
  • draw tracker and cursor over system apps (like Settings) (this already worked on some phones)
  • fix tracker "hide on outside tap" config on some phones (Note 10+, and others maybe)

0.9.14 Beta:
  • fix the problems from 0.9.12 Beta

0.9.13 Beta:
  • roll back the last release because it break something

0.9.12 Beta:
  • internal refactor of the code for better development in the future. for those who use the shortcut feature, you need to recreate them
  • fix bug with PRO in app purchase. a big change on how PRO IAP is handled in the app, hopefully nothing will be impacted for those who bought pro already
  • by fixing the above problems I unblocked the development on new features

0.9.11 Beta:
  • fixed the default position of trigger zones on some phones
  • improve debug on PRO version bug

0.9.10 Beta:
  • add XDA thread link

0.9.9 Beta:
  • fix navigation bar size bug when using "bottom" position
  • add "create a copy" in advanced mode
  • add feedback and news channels (telegram, XDA, Reddit, email)
  • add vibrations and visual feedback on click settings (both are off by default)
  • take into consideration navigation bar height in advanced mode
  • change all controls from advanced mode from PX to DP
  • fix bug when "inactivity hide" is disabled

0.9.8 Beta:
  • make trigger area to not respond to long clicks if a clickable view is behind it
  • fix bug when changing back to simple mode
  • fix "create new" zone bug in advanced mode

0.9.7 Beta:
  • fix overlapping triggers when "Location" is "Bottom"
  • add 3 options to support the developer when buying the PRO

0.9.6 Beta:
  • fix bug when long click is disabled (for all non-pro and some pro)

0.9.5 Beta:
  • remove accidental taps of trigger areas (react only to drag or long tap)
  • improve click performance (fix some delay issue)
  • create shortcut to trigger the cursor from other apps (example: FNG)
  • improve accessibility service performance
  • improve performance for timer based actions
  • increase default trigger size to 16dp (because of no accidental taps)
  • fix bug on zone delete
  • fix wrong position on preview in advanced mode
  • fix bug when changing from floating mode

0.9.4 Beta:
  • rename "Move area" to "Tracker area" in swipe zones preview
  • preview both trigger zones (left and right) on simple mode
  • enable dark theme for all phones
  • fix bug with "Override force-dark" from Developer options
  • probably fix the edge side action set to nothing
  • fix main screen scroll on small devices


XDA:DevDB Information
Quick Cursor: one hand mouse pointer, App for all devices (see above for details)

Contributors
micku7zu

Version Information
Status:
Beta
Current Beta Version: 0.9.9 Beta
Beta Release Date: 2020-04-25

Created 2020-04-25
Last Updated 2020-11-07
 

Attachments

  • store_screenshot_1.png
    store_screenshot_1.png
    131.8 KB · Views: 1,732
  • store_screenshot_2.png
    store_screenshot_2.png
    136.9 KB · Views: 1,739
  • store_screenshot_3.png
    store_screenshot_3.png
    136.3 KB · Views: 1,728
  • store_screenshot_5.png
    store_screenshot_5.png
    180.9 KB · Views: 1,627
  • store_screenshot_4.png
    store_screenshot_4.png
    197.9 KB · Views: 1,578
  • store_screenshot_6.jpg
    store_screenshot_6.jpg
    222 KB · Views: 1,530
  • store_screenshot_7.png
    store_screenshot_7.png
    176.7 KB · Views: 1,412
  • store_screenshot_8.png
    store_screenshot_8.png
    126.1 KB · Views: 1,360
Last edited:

micku7zu

Senior Member
Oct 8, 2010
188
347
26
Cluj-Napoca
My current to do list, which contains bugs, feature requests, nice to have, possible fixed problems, ideas, etc.
It's a raw draft of what I probably should do next:
Code:
Important features:
- OnePlus trigger bug with navigation gesture: add a warning message for OnePlus devices
- refactor all coordinates system to use only one display size (because of navigation bar/display cutouts/status bar/resolution change)
- refactor all sizes to use only one unit (dp or px)
- refactor (cursor drawing, ripple drawing, gesture recorder drawing, trail drawing) all in only one overlay view to increase performance
- cache all size operations
- default trigger/tracker/cursor sizes based on display size ratio (tall phones, small phones, big phones, etc)
- translations
- blacklist/whitelist: start/stop the app based on what app is running
- more simple configs to "simple triggers": cursor speed (slow, normal, fast), trigger position (lowest, low, middle)
- a new way to configure zones with a nice UI with visual resize and drag of the areas
- edge actions improvements: more actions, different action per left/right/top edge and each side to split in half with a nice UI to configure
- backup/import/export app configs

Nice to have:
- [experimental] "WRITE_SECURE_SETTINGS" to automatically restart accessibility service when the Android System Bug appears
- [experimental] make the long click trigger faster by interrupting the event (if possible) (also edge action swipe)
- landscape mode
- Chrome accessibility mode: address bar and tabs are permanently show if there is an accessibility service enable - see if something can be done to fix this
- Cursor trail animation
- Cursor animations: on show, on click, on gesture record, on hide
- optimize images inside apk

Bugs:
- OnePlus trigger bug with navigation gesture
- Accessibility Service is not detected as enabled in some cases
- long click not working on devices with long click wrong default time

So, there are still a lot of things, and I will implement them week by week when I have some free time :D
 
Last edited:
  • Like
Reactions: leonardoroza

micku7zu

Senior Member
Oct 8, 2010
188
347
26
Cluj-Napoca
Troubleshooting

Bug: The app stops working after some time
Solution: Some manufacturers (Xiaomi, Huawei, and others) are killing the background apps even when the user doesn't want that, so the user must do some special configs to disable that.
Each manufacturer has his own settings, you can check more details about this here: https://dontkillmyapp.com



Bug: "Open settings" from Quick actions doesn't work on MIUI
Fix: "Display pop-up while in background" permission should be enabled manually for Quick Cursor in the MIUI settings. This permission is specific to MIUI.



Bug: Tapping with cursor stopped working or never worked
Possible fixes:
  • restart the Quick Cursor accessibility service
  • force stop the app from the phone settings and start the accessibility service again
  • restart the device (this worked on many devices)
  • some other accessibility services are blocking the Quick Cursor accessibility service and the app doesn\'t work. This can be fixed only by manual uninstalling other accessibility services.

Unfortunately, in some rare cases on some devices, the accessibility service can't tap or click on behalf of user because of unknown reasons.
If you are in this situation, there is no fix for the moment, but please send me your device model and Android version to gather more data why this happens.
 
Last edited:
  • Like
Reactions: leonardoroza

cjxsutton

Senior Member
Nov 3, 2011
103
32
Panama City Beach, FL
Fantastic, thank you! Got the pro version.

Something I wanted from Reachability that I'm hoping you can implement as well:

An option to have the keyboard take precedence over this app's edge triggers. To prevent accidentally activating while swipe typing.
 
Last edited:
  • Like
Reactions: leonardoroza

micku7zu

Senior Member
Oct 8, 2010
188
347
26
Cluj-Napoca
Fantastic, thank you!

Some things I wanted from Reachability that I'm hoping you can implement as well:

An option to have the keyboard take precedence over this app's edge screens? To prevent accidentally activating while swipe typing.

Also an option to adjust the Tracker pad's opacity, all the way down to 0% (completely transparent) if desired, would be fantastic as well. Really only need to see the cursor, not the thumb control pad.

Yes, I plan to handle the keyboard by raising the trigger zones when the keyboard appears on the screen. It will be available in the next release, hopefully.

Yes, there is already an option to set the opacity to tracker, just change the opacity on the color of the tracker. Unfortunately, this customization is available only on the pro version. Settings -> Tracker -> Inside color and Outside color, change the opacity for both of them to 0.

Thanks!
 
  • Like
Reactions: leonardoroza

cjxsutton

Senior Member
Nov 3, 2011
103
32
Panama City Beach, FL
Yes, I plan to handle the keyboard by raising the trigger zones when the keyboard appears on the screen. It will be available in the next release, hopefully.

Yes, there is already an option to set the opacity to tracker, just change the opacity on the color of the tracker. Unfortunately, this customization are available only on the pro version. Settings -> Tracker -> Inside color and Outside color, change the opacity for both of them to 0.

Thanks!

Yeah I found the opacity after my comment, so I went back and edited it as you were replying lol

Honestly an option to just completely disable them during keyboard would probably be best, if you're typing you probably aren't planning on clicking anything out of reach until you're done typing and the keyboard closes
 

micku7zu

Senior Member
Oct 8, 2010
188
347
26
Cluj-Napoca
Yeah I found the opacity after my comment, so I went back and edited it as you were replying lol

Honestly an option to just completely disable them during keyboard would probably be best, if you're typing you probably aren't planning on clicking anything out of reach until you're done typing and the keyboard closes

I totally agree. The first thing I need to do is to detect the keyboard and handle it. After that, I will make it configurable:

  • Triggers over the keyboard
  • Triggers removed
  • Triggers moved above the keyboard

Because everyone wants it differently.

Thanks!
 
Last edited:
  • Like
Reactions: leonardoroza

cjxsutton

Senior Member
Nov 3, 2011
103
32
Panama City Beach, FL
App just dumped all my customizations and is telling me to activate pro version even though it already was. Basically acting like I just downloaded it now for the very first time and never bought it or changed any settings. Please investigate. I don't know if you just updated it or something but yeah it basically did a complete reset. Kinda sucks because I had it exactly how I wanted it, and it took a while trying to get precise numbers with that slider (I'd also recommend letting us click on the number to set it instead of just the slider).

Screenshots:
https://bit.ly/3eT6Brx
https://bit.ly/2Y7yfer
https://bit.ly/3bF6z4L


---------- Post added at 07:51 PM ---------- Previous post was at 07:35 PM ----------

Also being able to put a little black border around the white parts of the cursor would be great. Pretty much exactly how it is now but with a thin black outline on the center dot and outer circle, to make it stand out on a white background like a webpage or something, without having to permanently change it to a darker color all the time.
 
Last edited:
  • Like
Reactions: micku7zu

micku7zu

Senior Member
Oct 8, 2010
188
347
26
Cluj-Napoca
Yeah, those sliders should have a custom way to input the numbers. I will work on the UI, because currently it is not that great but it does the job.
Great idea with cursor border, I noted the feature request.

About the PRO version problem, I had this bug before, and it is really strange because Google Play Store reports the purchase as not there or in pending, but the purchase was already made and reported as 'purchased' before. I integrated the Google Play Billing library from Google for in app purchases. So I just ask Google what is the current state of the purchase, the response is ok and after some time it tells me that the purchase is 'pending' or not there.

If you have the time and can help me, I can send you a debug version that will print some debug info for me to understand the problem better.

Otherwise, if you just want your app to work again, the only solution I found is to clear the cache (or the app data) of the Play Store from your phone. After that, Play Store will report again the purchase and the application will update to PRO again.

I apologize for these problems, I can't control what Play Store returns, I don't know why it returns bad data, but if you have time to help with debug, it would help me to understand the problem better.
 

micku7zu

Senior Member
Oct 8, 2010
188
347
26
Cluj-Napoca
I have updated the app to 0.9.11 Beta and added some debug information on PRO. Tap 7 times on the text below the buy buttons and a debug info will appear below! Thanks
 

cjxsutton

Senior Member
Nov 3, 2011
103
32
Panama City Beach, FL
Yeah, those sliders should have a custom way to input the numbers. I will work on the UI, because currently it is not that great but it does the job.
Great idea with cursor border, I noted the feature request.

About the PRO version problem, I had this bug before, and it is really strange because Google Play Store reports the purchase as not there or in pending, but the purchase was already made and reported as 'purchased' before. I integrated the Google Play Billing library from Google for in app purchases. So I just ask Google what is the current state of the purchase, the response is ok and after some time it tells me that the purchase is 'pending' or not there.

If you have the time and can help me, I can send you a debug version that will print some debug info for me to understand the problem better.

Otherwise, if you just want your app to work again, the only solution I found is to clear the cache (or the app data) of the Play Store from your phone. After that, Play Store will report again the purchase and the application will update to PRO again.

I apologize for these problems, I can't control what Play Store returns, I don't know why it returns bad data, but if you have time to help with debug, it would help me to understand the problem better.

Okay, I can try the debug. I haven't experienced this issue with any other apps so I'd like to help you get to the bottom of it. See latest from non-debug version: https://bit.ly/3bF6z4L

---------- Post added at 09:21 AM ---------- Previous post was at 09:13 AM ----------

I have updated the app to 0.9.11 Beta and added some debug information on PRO. Tap 7 times on the text below the buy buttons and a debug info will appear below! Thanks

Following these instructions doesn't produce anything. Also I completely uninstalled the app from my phone and reinstalled it and am still getting prompted to purchase the pro version, but when I try to again just for giggles it says I already own it. Yet I still can't change any pro settings - only could for a few hours after my initial purchase (pretty much until your next update came through).

This is why I hate IAP unlocks. Should just have a completely separate apps for free and pro versions. Or a separate app that's just an unlock key that doesn't appear in your app tray. That way you don't have these problems, AND the customer can refund through Google Play.
 
Last edited:

micku7zu

Senior Member
Oct 8, 2010
188
347
26
Cluj-Napoca
Can you please double check that you have 0.9.11 Beta from Play Store? After that, tap 7 times the text bellow the buttons: "Any of the above will unlock the same PROversion. The only ...." and then scroll down on the same page. There should be a new box with some debug information.

I have found a way to fix the problem, but I'm still curious about what data Play Store returns in your case. I will fix this in the next release.

If you want to fix it on your phone right now, there are 3 solutions right now:

1. Force stop Play Store and clear data + force stop quick cursor and clear data, after that when you tap on the buy it will work
2. I can refund and revoke the item so you can buy it again right now (or not, if you don't want pro anymore)
3. I can refund your order without revoking the item, so you will get the money back, and you can't buy it again, but the app will start working after Play Store cache data is refreshed or if you do step 1.

I'm happy to help you in any way you want. Thank you for your help!

I have the plan to fix this in the next release, but it is some work to do so it will take some time :)
 

micku7zu

Senior Member
Oct 8, 2010
188
347
26
Cluj-Napoca
This is why I hate IAP unlocks. Should just have a completely separate apps for free and pro versions. Or a separate app that's just an unlock key that doesn't appear in your app tray. That way you don't have these problems, AND the customer can refund through Google Play.

First time working with billing in Android, I'm not a full time Android developer, so I did a quick study to find the best way to do it but probably I picked wrong and now it is hard to change.

There is a way to refund in app purchases as well from what I know, it's some kind of online form. It's a side project, I'm not interested in making lots of money from this app, but still want some support for the hours invested, that's why I picked the simplest solution (or what it seemed the simplest solution). Happy to give refund to anyone who has problems or doesn't like the app after the purchase, I'm responsive on any channel.

Hopefully it will be fixed in the next release and everyone will be happy :D
 

cjxsutton

Senior Member
Nov 3, 2011
103
32
Panama City Beach, FL
First time working with billing in Android, I'm not a full time Android developer, so I did a quick study to find the best way to do it but probably I picked wrong and now it is hard to change.

There is a way to refund in app purchases as well from what I know, it's some kind of online form. It's a side project, I'm not interested in making lots of money from this app, but still want some support for the hours invested, that's why I picked the simplest solution (or what it seemed the simplest solution). Happy to give refund to anyone who has problems or doesn't like the app after the purchase, I'm responsive on any channel.

Hopefully it will be fixed in the next release and everyone will be happy :D

Yeah I'm not grumbling about the money, I mean I obviously paid for it originally for a reason lol. Would just love to be able to edit it again. The remarks about disliking IAP were just an aside. I just think it would be easier to have one version with the free features, one pro version with everything. Then you don't have any extra scripts checking for the IAP history or whatever else. Cut and dry. That's just generally speaking for all apps, I've noticed this huge trend lately on IAP unlocks.
 
Last edited:

micku7zu

Senior Member
Oct 8, 2010
188
347
26
Cluj-Napoca
True, the IAP purchase right now made by Google is crap. They have issues unresolved for a long time: https://github.com/android/play-billing-samples/issues/122 and the overall documentation / implementation is really bad.

For my use case, I already have the plan in mind on how to fix this and to never be a problem again, so hopefully will be implemented in short time before anyone else will have this problem, and thanks for help again!
 

cjxsutton

Senior Member
Nov 3, 2011
103
32
Panama City Beach, FL
Can you please double check that you have 0.9.11 Beta from Play Store? After that, tap 7 times the text bellow the buttons: "Any of the above will unlock the same PROversion. The only ...." and then scroll down on the same page. There should be a new box with some debug information.

I have found a way to fix the problem, but I'm still curious about what data Play Store returns in your case. I will fix this in the next release.

If you want to fix it on your phone right now, there are 3 solutions right now:

1. Force stop Play Store and clear data + force stop quick cursor and clear data, after that when you tap on the buy it will work
2. I can refund and revoke the item so you can buy it again right now (or not, if you don't want pro anymore)
3. I can refund your order without revoking the item, so you will get the money back, and you can't buy it again, but the app will start working after Play Store cache data is refreshed or if you do step 1.

I'm happy to help you in any way you want. Thank you for your help!

I have the plan to fix this in the next release, but it is some work to do so it will take some time :)

Option 1 solved the problem for me, I didn't have to click buy again. Just a note I did have to reopen Play Store once though to sync back up. Then reopened Quick Cursor and it was good. Going straight to Quick Cursor after clearing data still had the issue but that reopen of Play Store solved it.

---------- Post added at 06:34 PM ---------- Previous post was at 06:26 PM ----------

Got it all set back up - thanks!

Looking forward to that "disable panels when keyboard is active" and then it will be absolutely perfect! I already uninstalled Reachability, lol.

And also maybe an option to add an outline to the cursor ring and dot, with custom color/thickness, as mentioned before!
 
Last edited:
  • Like
Reactions: micku7zu

micku7zu

Senior Member
Oct 8, 2010
188
347
26
Cluj-Napoca
Glad that it is fixed now. Sorry for the trouble :(

First, I will fix this pro problem so it will not happen to more people in the future, and after that I will work on the keyboard :)
 

Godecki

Senior Member
Oct 6, 2017
78
36
Hi, thanks for the effort. I would like to report that I use OnePlus 7 Pro with forced 90 Hz mode, no issues with that, smooth as should be. I will provide more feedback after some time.

Sent from my OnePlus 7 Pro using XDA Labs
 
  • Like
Reactions: AbhishekS

Top Liked Posts

  • There are no posts matching your filters.
  • 11
    Quick Cursor

    ZiGWIey.png


    The app is free and without ads!


    XDA Article



    What is it for:
    Helps you to use big screens easily with one hand by introducing a computer like cursor controlled with one finger by swiping from edge of the screen.


    How to use:
    1. Swipe from left or right margin from the bottom half of the screen.
    2. Reach the top half of the screen by dragging the tracker using one hand in the bottom half.
    3. Touch the tracker to click with the cursor. The tracker will disappear on any action outside the tracker or after a period of time.

    TIP: While using the quick cursor, touch with another finger to open the quick settings menu.


    Download


    Google Play Store link



    Screenshots





    Telegram Quick Cursor group
    If anyone wants to help by testing the internal builds before the release, please join telegram group




    Credits
    Quick Cursor is an alternative to the already known Reachability Cursor app. I really liked it, and I appreciated the developer attitude and his vision about the app in his replies online. Unfortunately, NiftyUI's last message about the app was on 7 October 2018 and the last app update was on 4 October 2018 and it doesn't work on most Android 10 phones. I do hope that he is ok, and give him a big thumbs up for the idea and the implementation!

    Why
    I saw a lot of threads and replies on XDA and Reddit for an alternative app for Reachability Cursor for a long time and I needed one too!

    Monetization
    The app uses the same monetization scheme as Reachability Cursor: it offers an In-App purchase for "PRO" mode which adds some more functionalities (floating tracker mode, long clicks, edge actions) and a lot of customization on each part of the app: cursor, tracker, trigger area, tracker area, cursor area, feedback. Basically this is a support for the developer (me), because the free version should be enough for most use cases.

    Help needed
    The app should run on Android 7.0 or later, theoretically. I tested it only on 10 devices running Android 9 and Android 10 (Pixel, Samsung, Xiaomi, Oneplus).

    I need help to collect some feedback on this early version from more devices, so please send feedback anywhere (here on XDA, Telegram, Reddit, Email, Play store), including the device name and Android version.

    I'm more interested in this topics:
    • critical bugs that won't let you use the app properly
    • if it works ok daily in your case
    • if you see any performance impact on your phone
    • 90hz or 120hz affected?
    • feature requests
    • I need these feedback to estimate the current state of the app and how much work I have to do until I can fully release it, not early access, and more polished. I don't work as a full time Android Developer, so I don't have a lot of things necessary to test it well enough on my own (time, phones, knowledge, etc), and don't want to release the app publicly if it is not polished enough.

    Thank you!


    Changelog

    1.10.0:

    • improve simple triggers config (more options and easier to config)
    • more trigger config for free version
    • fix cursor preview when cursor stroke size is bigger than cursor size
    • switch to limited mode manually instead of automatically in case of dispatch bug
    • add more debug options

    1.9.5:
    • fix wrong value displayed on Advanced mode edit

    1.9.4:
    • first stable version (no beta)
    • Please rate the new version on Play Store, the older "beta feedback" was only for developer (not public)

    1.9.3 Beta:
    • fix "Quick actions" bottom sheet back button bug
    • fix crash when settings are outside of min-max range
    • create adaptive icon
    • change icon to respect Android guidelines

    1.9.2 Beta:
    • fix error toast on unlocking phone

    1.9.1 Beta:
    • small crash fix

    1.9.0 Beta:
    • add support for devices with adjustable screens (foldable devices)
    • add support for devices with configurable resolution. scale preferences based on resolution change
    • refactor all size preferences to float
    • fix floating tracker mode with move triggers above keyboard bug
    • fix trail bug on "hide cursor" edge action

    1.8.2 Beta:
    • add new visual debugs
    • fix crash from Google Play store feedback

    1.8.1 Beta:
    • fix crash introduced in 1.8.0 beta. Sorry for that!
    • fix bug with app shown as stopped in the main screen
    • fix bug on first use tutorial

    1.8.0 Beta:
    • add blacklist/whitelist functionality
    • add action to add an app to blacklist from Quick Settings

    1.7.0 Beta:
    • improve the debug system with debug logs
    • change the configurable long click distance threshold to be used for click also
    • fix quick settings popup bug

    1.6.13 Beta:
    • add configurable long click distance threshold
    • fix quick settings tile crash
    • fix not registered click on fast tracker tapping
    • update translations

    1.6.12 Beta:
    • add gesture recorder cancel edge action

    1.6.11 Beta:
    • add debug for Quick Actions popup to identify a bug
    • fix some crashes on app opening reported on Play Store

    1.6.10 Beta:
    • add Russian translation (thanks to Alex Procopovich)
    • fix translation bug on Quick Actions popup

    1.6.9 Beta:
    • fix temporarily pause feature on Android 11

    1.6.8 Beta:
    • fix crash on first use tutorial

    1.6.7 Beta:
    • add info about how to prevent Android killing the app
    • fix gesture replay crash
    • fix start/stop app bug

    1.6.6 Beta:
    • update accessibility service tutorial design and screenshot
    • add how to use tutorial on the main screen
    • update PRO features description and layout
    • improve debug logging

    1.6.5 Beta:
    • update main app activity design
    • fix top crashes from Google Play store reports
    • fix crash with trail effect on some edge case
    • fix crash on edge cases clicking outside screen
    • fix crash on quick settings tile add
    • fix bug when clicking with cursor on the tracker (or gesture replay on tracker)
    • fix wrong edge tracker position on floating mode
    • fix gesture recorder animation when dot color is the same as recorder trail color
    • fix FPS debug text in debug mode
    • try to fix bug with keyboard detection after app update (fixed by an app restart)

    1.6.4 Beta:
    • add Kurdish translation (thanks to Alân Yalçın)
    • update Turkish translations (thanks to Alân Yalçın)
    • fix annoying "service interrupted by Android" toast message on some devices

    1.6.3 Beta:
    • add German translation (thanks to Holger Hartwig)
    1.6.2 Beta:
    • add trail and cursor animations (show, hide, gesture record, click)
    • improve rendering performance
    • improve animations
    • add more features to "debug mode"
    • add toggle zone app shortcut
    • fix wrong detection of accessibility service as stopped
    • fix "accessibility settings" button not opening menu
    • fix crash on accessibility service tutorial
    • fix haptic feedback lag on some devices (ex: OnePlus)
    • fix shortcut with Tap-tap app

    1.4.0 Beta:
    • add a reset to default for all settings
    • fix bug with preferences format and with backup (not a breaking change)
    • fix bug with backup not exporting the default values
    • update translations

    1.3.0 Beta:
    • add translations: Dutch, Polish, Spanish, Turkish
    • fix wrong alignment of disable service
    • change warning icon

    1.2.0 Beta:
    • add backup and restore functionality for all settings
    • fix edge actions wrong defaults for PRO

    1.1.0 Beta:
    • add option to not block the system gesture navigation with triggers/tracker because of the OnePlus bug
    • fix wrong cursor position when using the app shortcuts (trigger the cursor from another apps)
    • fix overlapping triggers when multiple triggers are moved above keyboard

    1.0.0 Beta:
    • use semantic versioning MAJOR.MINOR.PATCH (major for incompatible changes, minor for new features, patch for bug fixing)
    • refactor all screen coordinates and sizes
    • refactor all defaults and constants
    • refactor horizontal/vertical to left/top
    • all size or positioning preferences have been reset to work with the new system
    • fix wrong positions on devices with cutouts
    • fix pixelated cursor/tracker/ripple by enabling smooth anti aliasing

    0.9.42 Beta:
    • fix bug with turn off/on
    • change FAQ info

    0.9.41 Beta:
    • add new debug mode for better remote debugging
    • fix keyboard detection bug in Android 11 (change the detection mechanism)
    • fix keyboard detection bug when opening the status bar
    • fix bug on first tutorial auto start
    • fix bug with gesture recorder together with disable triggers when keyboard is visible
    • fix stop/start bugs when the app is stopped from different combinations
    • disable/enable the Android System Bug popup
    • move quick actions menu above navigation bar

    0.9.40 Beta:
    • add quick settings tile to toggle start/stop
    • add a way to stop the app without disabling the accessibility service
    • fix shortcut glitch that happens randomly
    • add new shortcuts (start, stop, toggle and hide cursor) that can be triggered by launcher or from other apps (tasker, etc)

    0.9.39 Beta:
    • fix crash on application startup on some devices
    • revert update of third party library that caused the above crash

    0.9.38 Beta:
    • fix bug with 'limited mode' in the free version
    • fix problems with PRO overlay in the free version for tap behaviour

    0.9.37 Beta:
    • fix gesture recorder preview trail position on some devices

    0.9.36 Beta:
    • added gesture support in advanced mode (drag and drop, scroll, swipe, etc)
    • updated dev libraries

    0.9.35 Beta:
    • highlight the Quick Cursor accessibility service on Android settings open
    • improve first run of the app

    0.9.34 Beta:
    • fix a bug with changelog popup
    • add button for changelog popup in About section

    0.9.33 Beta:
    • implemented an experimental 'limited mode' for those where the app stops working after some time or doesn't work at all
    • prepare settings UI for a more advanced mode that supports gesture (swipe, drag, scroll, etc)

    0.9.32 Beta:
    • Fix a bug with slider preference
    • Fix multiple floating bubbles bug

    0.9.31 Beta:
    • add description on list preferences for better UI (when keyboard is visible, edge actions, swipe mode, etc)
    • change almost all sliders in the settings with a new one
    • fix tracker glitch on "hide cursor" edge action
    • fix frame drops on "hide cursor" visual feedback (ripple)

    0.9.30 Beta:
    • add changelog popup on first use after update
    • add info when the accessibility service can't send gesture anymore (in some devices)
    • fix bug on "hide cursor" edge action
    • fix bug on tap not recognized as tap on OnePlus launcher in some scenario
    • fix bug with "Hide cursor" edge action when triggered faster than the reveal animation
    • fix bug when tracker is tapped when the hide animation is in progress

    0.9.29 Beta:
    • - fix multiple crashes:
    • - on first time use tutorial slide
    • - on phone rotate
    • - on long click through trigger zone
    • - when trying to detect the keyboard open/close
    • - on tutorial auto slide
    • - when stopping the app
    • - on click

    0.9.28 Beta:
    • fix bug: QC activated while the keyboard was visible on some keyboard apps actions (many SwiftKey actions, share dialog from Google Keyboard, etc)

    0.9.27 Beta:
    • fix bug: connection to Google Play store remained open in some cases and the "buy pro" dialog was displayed any time the connection was reconnected
    • fix bug: show the toast "PRO version activated" more times, in some rare situations, after the PRO was bought

    0.9.26 Beta:
    • fix bug with buy pro Google Play popup randomly appear
    • sorry to all free users that had this bug, this was not intentional to spam the pro version

    0.9.25 Beta:
    • add "FAQ and troubleshooting"

    0.9.26 Beta:
    • fix bug with buy pro Google Play popup randomly appear in some rare situation on the free version
    • sorry to all free users that had this bug, this was not intentional to spam the pro version, it should be fixed now

    0.9.25 Beta:
    • add "FAQ and troubleshooting" based on all the feedback received

    0.9.24 Beta:
    • try to fix "Open Settings" from "Quick Settings" on some phones
    • general overall development improvements:
    • - clean up some old code
    • - fix some leaked IntentReceiver

    0.9.23 Beta:
    • fix crash with raise triggers above keyboard on landscape
    • fix QC enabled on landscape on keyboard action

    0.9.22 Beta:
    • fix bug with some lock screen configurations that never re-enabled the QC after phone unlock


    0.9.21 Beta:
    • disable QC on lock screen
    • fix bug with quick settings opening when phone is locked / unlocked
    • fix trigger size not saving correctly on simple mode with location bottom

    0.9.20 Beta:
    • acessibility service enable tutorial screenshots:
    • add accessibility tutorial for Samsung
    • add accessibility tutorial for Xiaomi

    0.9.19 Beta:
    • fix bug on accessibility service enabled and exit back to tutorial

    0.9.18 Beta:
    • add tutorial for how to enable accessibility service on generic device
    • add first time use tutorial
    • add trigger size config on first time use tutorial
    • add share button in About section
    • fixed bug on advanced mode: cursor height was not saved correctly

    0.9.17 Beta:
    • add option to disable QC quick settings and fix open by mistake when touching the margins
    • possible fix for Android Quick Settings show for 1ms on some phones when tapping the trigger

    0.9.16 Beta:
    • triggers can be disabled when keyboard is visible
    • triggers can be automatically raised above keyboard when it is visible
    • improve trigger performance on tap
    • fix "hide on outside tap" bug (not everyone affected)
    • fix bug in "floating tracker" mode when a long clickable element is behind the small tracker on the edge

    0.9.15 Beta:
    • draw tracker and cursor over system apps (like Settings) (this already worked on some phones)
    • fix tracker "hide on outside tap" config on some phones (Note 10+, and others maybe)

    0.9.14 Beta:
    • fix the problems from 0.9.12 Beta

    0.9.13 Beta:
    • roll back the last release because it break something

    0.9.12 Beta:
    • internal refactor of the code for better development in the future. for those who use the shortcut feature, you need to recreate them
    • fix bug with PRO in app purchase. a big change on how PRO IAP is handled in the app, hopefully nothing will be impacted for those who bought pro already
    • by fixing the above problems I unblocked the development on new features

    0.9.11 Beta:
    • fixed the default position of trigger zones on some phones
    • improve debug on PRO version bug

    0.9.10 Beta:
    • add XDA thread link

    0.9.9 Beta:
    • fix navigation bar size bug when using "bottom" position
    • add "create a copy" in advanced mode
    • add feedback and news channels (telegram, XDA, Reddit, email)
    • add vibrations and visual feedback on click settings (both are off by default)
    • take into consideration navigation bar height in advanced mode
    • change all controls from advanced mode from PX to DP
    • fix bug when "inactivity hide" is disabled

    0.9.8 Beta:
    • make trigger area to not respond to long clicks if a clickable view is behind it
    • fix bug when changing back to simple mode
    • fix "create new" zone bug in advanced mode

    0.9.7 Beta:
    • fix overlapping triggers when "Location" is "Bottom"
    • add 3 options to support the developer when buying the PRO

    0.9.6 Beta:
    • fix bug when long click is disabled (for all non-pro and some pro)

    0.9.5 Beta:
    • remove accidental taps of trigger areas (react only to drag or long tap)
    • improve click performance (fix some delay issue)
    • create shortcut to trigger the cursor from other apps (example: FNG)
    • improve accessibility service performance
    • improve performance for timer based actions
    • increase default trigger size to 16dp (because of no accidental taps)
    • fix bug on zone delete
    • fix wrong position on preview in advanced mode
    • fix bug when changing from floating mode

    0.9.4 Beta:
    • rename "Move area" to "Tracker area" in swipe zones preview
    • preview both trigger zones (left and right) on simple mode
    • enable dark theme for all phones
    • fix bug with "Override force-dark" from Developer options
    • probably fix the edge side action set to nothing
    • fix main screen scroll on small devices


    XDA:DevDB Information
    Quick Cursor: one hand mouse pointer, App for all devices (see above for details)

    Contributors
    micku7zu

    Version Information
    Status:
    Beta
    Current Beta Version: 0.9.9 Beta
    Beta Release Date: 2020-04-25

    Created 2020-04-25
    Last Updated 2020-11-07
    2
    Changelog 0.9.21 Beta:
    • disable QC on lock screen
    • fix bug with quick settings opening when phone is locked / unlocked
    • fix trigger size not saving correctly on simple mode with location bottom

    If anyone wants to help and test internal builds before I release them, please join the telegram group: https://t.me/quickcursor
    2
    So we finally have an XDA thread for this wonderful app. ?

    A huge shout out to the dev (@micku7zu). He is absolutely amazing and super responsive to all questions, feature requests, bug reports, etc. ??
    2
    Yes, I plan to handle the keyboard by raising the trigger zones when the keyboard appears on the screen. It will be available in the next release, hopefully.

    Yes, there is already an option to set the opacity to tracker, just change the opacity on the color of the tracker. Unfortunately, this customization are available only on the pro version. Settings -> Tracker -> Inside color and Outside color, change the opacity for both of them to 0.

    Thanks!

    Yeah I found the opacity after my comment, so I went back and edited it as you were replying lol

    Honestly an option to just completely disable them during keyboard would probably be best, if you're typing you probably aren't planning on clicking anything out of reach until you're done typing and the keyboard closes
    1
    My current to do list, which contains bugs, feature requests, nice to have, possible fixed problems, ideas, etc.
    It's a raw draft of what I probably should do next:
    Code:
    Important features:
    - OnePlus trigger bug with navigation gesture: add a warning message for OnePlus devices
    - refactor all coordinates system to use only one display size (because of navigation bar/display cutouts/status bar/resolution change)
    - refactor all sizes to use only one unit (dp or px)
    - refactor (cursor drawing, ripple drawing, gesture recorder drawing, trail drawing) all in only one overlay view to increase performance
    - cache all size operations
    - default trigger/tracker/cursor sizes based on display size ratio (tall phones, small phones, big phones, etc)
    - translations
    - blacklist/whitelist: start/stop the app based on what app is running
    - more simple configs to "simple triggers": cursor speed (slow, normal, fast), trigger position (lowest, low, middle)
    - a new way to configure zones with a nice UI with visual resize and drag of the areas
    - edge actions improvements: more actions, different action per left/right/top edge and each side to split in half with a nice UI to configure
    - backup/import/export app configs
    
    Nice to have:
    - [experimental] "WRITE_SECURE_SETTINGS" to automatically restart accessibility service when the Android System Bug appears
    - [experimental] make the long click trigger faster by interrupting the event (if possible) (also edge action swipe)
    - landscape mode
    - Chrome accessibility mode: address bar and tabs are permanently show if there is an accessibility service enable - see if something can be done to fix this
    - Cursor trail animation
    - Cursor animations: on show, on click, on gesture record, on hide
    - optimize images inside apk
    
    Bugs:
    - OnePlus trigger bug with navigation gesture
    - Accessibility Service is not detected as enabled in some cases
    - long click not working on devices with long click wrong default time

    So, there are still a lot of things, and I will implement them week by week when I have some free time :D