Change cursor icon to a small dot when writing #11

Closed
opened 2025-05-07 08:42:24 +00:00 by wenbocn · 15 comments

Can the cursor icon be changed from an arrow to a small dot when using a stylus for writing?
Thank you!

Can the cursor icon be changed from an arrow to a small dot when using a stylus for writing? Thank you!
Owner

Great idea! I've implemented this in commit 5322944ad9. It will be a part of the next release, which I plan to publish soon.

Feel free to re-open this issue, once you've tried the feature, if any problem arises. Thanks!

Great idea! I've implemented this in commit https://git.massive.box/massivebox/siyuan-jsdraw-plugin/commit/5322944ad9c2bc93c54a58e854292dd17fd7bdf9. It will be a part of the next release, which I plan to publish soon. Feel free to re-open this issue, once you've tried the feature, if any problem arises. Thanks!
Author

Dear massivebox,
I tried out the latest version of the plugin, but it seems there's been a misunderstanding regarding my suggestion.
Here's what I had in mind: when using the stylus for handwriting, the cursor should switch to a tiny dot (or even disappear completely) to minimize visual distraction during writing. However, for all other functions, the standard arrow cursor should remain unchanged.

Dear massivebox, I tried out the latest version of the plugin, but it seems there's been a misunderstanding regarding my suggestion. Here's what I had in mind: when using the stylus for handwriting, the cursor should switch to a tiny dot (or even disappear completely) to minimize visual distraction during writing. However, for all other functions, the standard arrow cursor should remain unchanged.
Author
@massivebox
wenbocn reopened this issue 2025-05-10 14:10:16 +00:00
Owner

I'm sorry, I don't understand what the problem is. With the current implementation, the cursor is presented as a dot when drawing with a stylus, a graphics tablet, or even a mouse, and the traditional icon is kept for all the other menus.
Can you specify what you wanted to see instead?

I'm sorry, I don't understand what the problem is. With the current implementation, the cursor is presented as a dot when drawing with a stylus, a graphics tablet, or even a mouse, and the traditional icon is kept for all the other menus. Can you specify what you wanted to see instead?
Author

Hi, I've recorded a video showing this plugin in action with OneNote.
The goal is to minimize the mouse cursor flickering during writing—ideally, it should either stay hidden or appear as a small dot while in use.

Hi, I've recorded a video showing this plugin in action with OneNote. The goal is to minimize the mouse cursor flickering during writing—ideally, it should either stay hidden or appear as a small dot while in use.
Author

If possible, I'd prefer the mouse cursor to remain hidden when using a stylus for handwriting (with the handwriting tool selected and the cursor within the canvas window). This would prevent the constant flickering of the cursor appearing and disappearing during the natural writing process of lifting and touching the stylus, which creates visual distraction. @massivebox

If possible, I'd prefer the mouse cursor to remain hidden when using a stylus for handwriting (with the handwriting tool selected and the cursor within the canvas window). This would prevent the constant flickering of the cursor appearing and disappearing during the natural writing process of lifting and touching the stylus, which creates visual distraction. @massivebox
Owner

Thanks for the report, I get that it can be really distracting. Unfortunately, I don't have access to any tablet with an active stylus so I can't reproduce it on my devices, but I'll try to look into it as best as I can.

My theory is that your device reloads the cursor whenever the pen is lifted. Since we don't use a standard cursor, I think your device first loads and shows the fallback cursor (the hand), then after a split second it loads the custom cursor (the circle) and it shows that one, which generates the flickering.

If you want, I can give you a custom build of the plugin with the fallback cursor disabled, and you can report whether the problem still occurs.
In any case, I will change the circle cursor to a smaller dot, because even though I initially thought this solution was the best, it is kind of annoying.

Thanks for the report, I get that it can be really distracting. Unfortunately, I don't have access to any tablet with an active stylus so I can't reproduce it on my devices, but I'll try to look into it as best as I can. My theory is that your device reloads the cursor whenever the pen is lifted. Since we don't use a standard cursor, I think your device first loads and shows the fallback cursor (the hand), then after a split second it loads the custom cursor (the circle) and it shows that one, which generates the flickering. If you want, I can give you a custom build of the plugin with the fallback cursor disabled, and you can report whether the problem still occurs. In any case, I will change the circle cursor to a smaller dot, because even though I initially thought this solution was the best, it is kind of annoying.
Author

"I will change the circle cursor to a smaller dot, because even though I initially thought this solution was the best, it is kind of annoying."

I agree with your idea—changing the cursor to a dot is indeed a great improvement. However, this change should only apply when the writing tool is selected and the cursor is within the drawing window.

"My theory is that your device reloads the cursor whenever the pen is lifted. Since we don't use a standard cursor, I think your device first loads and shows the fallback cursor (the hand), then after a split second it loads the custom cursor (the circle) and it shows that one, which generates the flickering."

Apologies if the term "flickering" caused confusion. What I meant was that the cursor constantly appearing and disappearing as the stylus writes and lifts creates noticeable visual distraction. This issue persists whether the cursor is set to the default arrow or the current circle shape.

"I will change the circle cursor to a smaller dot, because even though I initially thought this solution was the best, it is kind of annoying." I agree with your idea—changing the cursor to a dot is indeed a great improvement. However, this change should only apply when the writing tool is selected and the cursor is within the drawing window. "My theory is that your device reloads the cursor whenever the pen is lifted. Since we don't use a standard cursor, I think your device first loads and shows the fallback cursor (the hand), then after a split second it loads the custom cursor (the circle) and it shows that one, which generates the flickering." Apologies if the term "flickering" caused confusion. What I meant was that the cursor constantly appearing and disappearing as the stylus writes and lifts creates noticeable visual distraction. This issue persists whether the cursor is set to the default arrow or the current circle shape.
Owner

@wenbocn wrote in #11 (comment):

Apologies if the term "flickering" caused confusion. What I meant was that the cursor constantly appearing and disappearing as the stylus writes and lifts creates noticeable visual distraction. This issue persists whether the cursor is set to the default arrow or the current circle shape.

I get it, what I meant to say is that the "flickering" effect is made more distracting by the fact that, on your device, the default hand cursor flashes before the correct one is rendered.
I believe that by fixing that issue, the effect should already be way less distracting.

I also understand that you'd rather have the cursor disappear completely, but I'm not sure that's doable.
People who use graphics tablets without screens (such as Wacom Intuos or Huion Inspiron tablets) need the cursor to be shown, so that they know where they're hovering their pen on and where their stroke will end up on the canvas. But AFAIK, the APIs that are available to me don't allow me to tell them apart.

Just out of curiosity, can you tell me how does the cursor on https://excalidraw.com behave with your tablet, and what is the brand and model name of your tablet? Thanks!

@wenbocn wrote in https://git.massive.box/massivebox/siyuan-jsdraw-plugin/issues/11#issuecomment-80: > Apologies if the term "flickering" caused confusion. What I meant was that the cursor constantly appearing and disappearing as the stylus writes and lifts creates noticeable visual distraction. This issue persists whether the cursor is set to the default arrow or the current circle shape. I get it, what I meant to say is that the "flickering" effect is made more distracting by the fact that, on your device, the default hand cursor flashes before the correct one is rendered. I believe that by fixing that issue, the effect should already be way less distracting. I also understand that you'd rather have the cursor disappear completely, but I'm not sure that's doable. People who use graphics tablets without screens (such as Wacom Intuos or Huion Inspiron tablets) need the cursor to be shown, so that they know where they're hovering their pen on and where their stroke will end up on the canvas. But AFAIK, the APIs that are available to me don't allow me to tell them apart. Just out of curiosity, can you tell me how does the cursor on https://excalidraw.com behave with your tablet, and what is the brand and model name of your tablet? Thanks!
Author

On Excalidraw, both mouse and stylus cursors remain visible at all times.

You make a great point—using a solid dot as the cursor is indeed the most practical solution for graphics tablet users.

For reference, I use two pen displays: a Wacom One DTC133 and a Gaomon G12.

On Excalidraw, both mouse and stylus cursors remain visible at all times. You make a great point—using a solid dot as the cursor is indeed the most practical solution for graphics tablet users. For reference, I use two pen displays: a Wacom One DTC133 and a Gaomon G12.
Author

It would be ideal if the cursor could remain as a small dot at all times when the stylus is selected—even during active drawing. This way, the indicator stays visible without disappearing mid-stroke.

It would be ideal if the cursor could remain as a small dot at all times when the stylus is selected—even during active drawing. This way, the indicator stays visible without disappearing mid-stroke.
Author

Currently, when using Windows Ink with the stylus, the cursor icon disappears during active writing and reappears when lifting the pen. Without Windows Ink enabled, however, the stylus cursor remains visible at all times—both during writing and when hovering.

Currently, when using Windows Ink with the stylus, the cursor icon disappears during active writing and reappears when lifting the pen. Without Windows Ink enabled, however, the stylus cursor remains visible at all times—both during writing and when hovering.
Author

If program modification isn't feasible, users can simply disable Windows Ink for their stylus - this will keep the dot cursor permanently visible. Meanwhile, we'd still need you to update the stylus icon to a small dot shape.

If program modification isn't feasible, users can simply disable Windows Ink for their stylus - this will keep the dot cursor permanently visible. Meanwhile, we'd still need you to update the stylus icon to a small dot shape.
Owner

Thanks for all the feedback, I wasn't aware of the Windows Ink thing. I will push out an update with a better cursor soon. I'll try to get it done today.

Thanks for all the feedback, I wasn't aware of the Windows Ink thing. I will push out an update with a better cursor soon. I'll try to get it done today.
Owner

The improvements have been pushed in ff83c23851, and a minor release has already been created. It should go live on the SiYuan Baazar soon. Feel free to open the issue again if there are other problems.

The improvements have been pushed in https://git.massive.box/massivebox/siyuan-jsdraw-plugin/commit/ff83c23851b23ce117d9a91dc77306ab90357076, and a minor release has already been created. It should go live on the SiYuan Baazar soon. Feel free to open the issue again if there are other problems.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: massivebox/siyuan-jsdraw-plugin#11
No description provided.