Bug 358097 - Scene moved after scroll wheel zoom or window resize
Summary: Scene moved after scroll wheel zoom or window resize
Status: RESOLVED FIXED
Alias: None
Product: umbrello
Classification: Applications
Component: general (show other bugs)
Version: Git
Platform: Mint (Ubuntu based) Linux
: NOR normal
Target Milestone: ---
Assignee: Umbrello Development Group
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-01-16 21:30 UTC by Tzvetelin Katchov
Modified: 2016-01-27 13:40 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In: 2.18.2 (KDE Applications 15.12.2)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tzvetelin Katchov 2016-01-16 21:30:45 UTC
View of class diagram is moved to bottom right corner after scroll wheel zoom or window resize

Reproducible: Always

Steps to Reproduce:
1. Open class diagram
2. Zoom in more than size of diagram, until scroll bars are active and diagram don't fit in window
3. Move to the center of the diagram
4. Perform zoom with mouse scroll wheel or resize the window

Actual Results:  
View of class diagram moved to bottom right corner and scroll bars also moved accordingly

Expected Results:  
Mouse pointer should stay on the same position in diagram after zoom
Comment 1 Ralf Habacker 2016-01-26 12:47:16 UTC
Git commit 014319ab1d71b162a0b9bc9bd518317f9387becb by Ralf Habacker, on behalf of Tzvetelin Katchov.
Committed on 26/01/2016 at 08:43.
Pushed by habacker into branch 'Applications/15.12'.

Refactoring UMLView

Fix centering of scene view after scroll wheel zoom or window resize.
Remove internal properties for zoom level and center point.
Instead of them get actual value from matrix().m11().
Remove unnecesary and dupliicate methods.
Fix setting of zoom in diagram properties page.
FIXED-IN:2.18.2 (KDE Applications 15.12.2)
REVIEW:126773

M  +2    -2    umbrello/dialogs/pages/diagrampropertiespage.cpp
M  +1    -1    umbrello/uml.cpp
M  +12   -106  umbrello/umlview.cpp
M  +0    -9    umbrello/umlview.h

http://commits.kde.org/umbrello/014319ab1d71b162a0b9bc9bd518317f9387becb
Comment 2 Ralf Habacker 2016-01-26 12:47:16 UTC
Git commit fbfbffea75726b5a2d329a791c896dfb809bbfde by Ralf Habacker.
Committed on 26/01/2016 at 12:47.
Pushed by habacker into branch 'Applications/15.12'.

Fix wheel mouse inaccuracy on zooming.

The inaccuracy is caused by UMLApp instance and UMLView scroll bars
propagating slightly modified zoom value back to the UMLView instance.

The fix is to disable the back propagation.

M  +6    -2    umbrello/uml.cpp
M  +2    -1    umbrello/uml.h
M  +24   -4    umbrello/umlview.cpp
M  +1    -0    umbrello/umlview.h

http://commits.kde.org/umbrello/fbfbffea75726b5a2d329a791c896dfb809bbfde
Comment 3 Ralf Habacker 2016-01-26 14:13:24 UTC
Git commit 334d8488e1d5a36ab6cd7c979303919b60281bc0 by Ralf Habacker.
Committed on 26/01/2016 at 14:13.
Pushed by habacker into branch 'Applications/15.12'.

Fix bug been locked near lower zoom limit on windows.

Trying to zoom in with mouse wheel after reaching the lower limit
locks the zoom level at 11%.

For better debugging support print out current zoom level on any update.

M  +6    -6    umbrello/umlview.cpp
M  +2    -2    umbrello/umlview.h

http://commits.kde.org/umbrello/334d8488e1d5a36ab6cd7c979303919b60281bc0
Comment 4 Ralf Habacker 2016-01-27 13:40:53 UTC
Git commit de1dce05bcf5afa1157d3baf1a2667dd54c45e32 by Ralf Habacker.
Committed on 27/01/2016 at 13:40.
Pushed by habacker into branch 'Applications/15.12'.

Fix wheel event position issue after selecting widgets on linux.

After selecting a widget with visible scroll bars the scene position
was not in sync with mouse pointer position.

M  +1    -5    umbrello/umlview.cpp

http://commits.kde.org/umbrello/de1dce05bcf5afa1157d3baf1a2667dd54c45e32