Skip to content

fix: SG-45532: Update presentation pointer while drawing with Annotation (Beta) - #1451

Open
cedrik-fuoco-adsk wants to merge 1 commit into
AcademySoftwareFoundation:mainfrom
cedrik-fuoco-adsk:SG-45532-fix-presentation-pointer-annotation
Open

cedrik-fuoco-adsk wants to merge 1 commit into
AcademySoftwareFoundation:mainfrom
cedrik-fuoco-adsk:SG-45532-fix-presentation-pointer-annotation

Conversation

@cedrik-fuoco-adsk

@cedrik-fuoco-adsk cedrik-fuoco-adsk commented Oct 9, 2026 •

Copy link
Copy Markdown
Contributor

fix: SG-45532: Update presentation pointer while drawing with Annotation (Beta)

Linked issues

none

Summarize your change.

Call recordPixelInfo from the Annotation (Beta) engine's _pointer_location, so the Presentation Mode pointer follows the cursor while drawing.

Describe the reason for the change.

With Pointer enabled in Presentation Settings, the pointer on the presentation device froze at the press position while drawing with the Annotation (Beta) tools.

The Presentation Mode pointer is drawn from State.pointerPositionNormalized, which only recordPixelInfo updates. The beta engine's drag handlers consume pointer drag events without calling it, so rvui's handlers never update that state during a stroke.

Describe what you have tested and on which operating system.

Tested the different tools on MacOS

Add a list of changes, and note any that might need special attention during the review.

  • annotate_beta_engine.py: _pointer_location calls extra_commands.recordPixelInfo(event) with the raw event (it applies the device pixel ratio itself). The call is wrapped so a failure never aborts a stroke.
  • This adds one imagesAtPixel call per pointer event.

If possible, provide screenshots.

N/A

…ion (Beta)

The Presentation Mode pointer is drawn from State.pointerPositionNormalized,
which only recordPixelInfo updates. The beta engine's drag handlers consume
pointer drag events without calling it, so the pointer froze (or faded out)
on the presentation device until the stroke was released.

Call recordPixelInfo from _pointer_location.

Signed-off-by: Cédrik Fuoco <cedrik.fuoco@autodesk.com>
@cedrik-fuoco-adsk
cedrik-fuoco-adsk force-pushed the SG-45532-fix-presentation-pointer-annotation branch from 63d421b to fc7043e Compare October 9, 2026 17:22
@cedrik-fuoco-adsk
cedrik-fuoco-adsk marked this pull request as ready for review October 9, 2026 17:25

@bernie-laberge bernie-laberge left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

default sequence) the innermost entry may be a virtual composite image whose
source name is not valid for eventToImageSpace.
"""
# Update RV's shared pointer state

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this comment relevant? This is only describing what the function does.

@cedrik-fuoco-adsk cedrik-fuoco-adsk Oct 9, 2026 •

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For me, recordPixelInfo doesn't really tell me what's the intent of calling it here

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.

3 participants