Bug 318091

Summary: Undo / Redo of annotation creation doesn't properly handle page rotation
Product: [Applications] okular Reporter: Jon Mease <jon.mease>
Component: generalAssignee: Okular developers <okular-devel>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description Jon Mease 2013-04-09 14:47:41 UTC
If an annotation is created, the creation command is undone, the page is rotated, and the annotation creation command is redone the annotation's position is not rotated along with the page

Reproducible: Always

Steps to Reproduce:
1. Create ink annotation in upper left corner of a document that is not rotated
2. Undo annotation creation
3. Rotate page to the right
4. Redo annotation creation
Actual Results:  
Ink annotation appears at upper left of document relative to the screen but at the lower left relative to the rotated document

Expected Results:  
Ink annotation should appear at the upper right relative to the screen and the upper left relative to rotated document
Comment 1 Jon Mease 2013-04-09 14:49:36 UTC
This is a bug on master and I'm working on fixing it...
Comment 2 Albert Astals Cid 2013-04-13 20:55:36 UTC
Git commit 3c6140b616fe1e4979b229869c378396200bf4de by Albert Astals Cid, on behalf of Jon Mease.
Committed on 13/04/2013 at 22:54.
Pushed by aacid into branch 'master'.

Fix Undo / Redo of annotation creation doesn't properly handle page rotation and adds undo unit tests
REVIEW: 109989

M  +6    -0    core/document.cpp
M  +0    -1    core/page.cpp
M  +12   -0    tests/CMakeLists.txt
A  +190  -0    tests/addremoveannotationtest.cpp     [License: GPL (v2+)]
A  +519  -0    tests/editannotationcontentstest.cpp     [License: GPL (v2+)]
A  +138  -0    tests/modifyannotationpropertiestest.cpp     [License: GPL (v2+)]
A  +54   -0    tests/testingutils.cpp     [License: GPL (v2+)]
A  +51   -0    tests/testingutils.h     [License: GPL (v2+)]
A  +237  -0    tests/translateannotationtest.cpp     [License: GPL (v2+)]

http://commits.kde.org/okular/3c6140b616fe1e4979b229869c378396200bf4de