Bug report #20131

[3d] Navigation in 3d map and locked left click

Added by Saber Razmjooei about 2 years ago. Updated about 2 years ago.

Status:Closed
Priority:Normal
Assignee:-
Category:3D
Affected QGIS version:3.3(master) Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:
Crashes QGIS or corrupts data:No Copied to github as #:27952

Description

It happens a lot of times, when panning (using left-click and drag) the map gets stuck and panning does not work any more.

After using a combination of other keys and clicks it eventually gets unlocked but it after a couple of attempts, it gets locked again.
Here is my example project:
https://www.dropbox.com/s/emqb4zj7792qzmo/3d_navigation_left_click.zip

Associated revisions

Revision fbde0c87
Added by Martin Dobias about 2 years ago

[3d] fix camera controller using wrong shift/ctrl status (fixes #20131)

We used Qt3DInput::QLogicalDevice with its axes and actions for camera
controller, but over time this got quite impractical, moreover we started
to have problems with shift/ctrl actions getting stuck in wrong state
in case they were pressed or released while 3D canvas was not focused
(which is in fact relatively common when using other widgets in the GUI)

This commit switches over to using just QMouseHandler and QKeyboardHandler
for handling key and mouse events and this not only makes the code easier
to read, but also the issues with shift/ctrl go away (because we do not
keep their status anymore, we just check whether they are active inside
event handlers).

The speed of change with mouse wheel and keys should be similar or a bit
less than what it was before.

Revision 7c4708e0
Added by Martin Dobias about 2 years ago

[3d] fix camera controller using wrong shift/ctrl status (fixes #20131)

We used Qt3DInput::QLogicalDevice with its axes and actions for camera
controller, but over time this got quite impractical, moreover we started
to have problems with shift/ctrl actions getting stuck in wrong state
in case they were pressed or released while 3D canvas was not focused
(which is in fact relatively common when using other widgets in the GUI)

This commit switches over to using just QMouseHandler and QKeyboardHandler
for handling key and mouse events and this not only makes the code easier
to read, but also the issues with shift/ctrl go away (because we do not
keep their status anymore, we just check whether they are active inside
event handlers).

The speed of change with mouse wheel and keys should be similar or a bit
less than what it was before.

(cherry picked from commit fbde0c8752740358fdb9bf9c232f72badfa1e87b)

History

#1 Updated by Martin Dobias about 2 years ago

  • % Done changed from 0 to 100
  • Status changed from Open to Closed

Also available in: Atom PDF