Recalculate forms after command form changes

Summary:
notifyFormChanged is called by documentcommands when
Form fields are changed. E.g. by Undo / Redo.
We need to recalculate after such changes.

Test Plan:
Tested with simple_calculate example.

Run the unit test with the added line commented out and it failed, with the added line it passes.

Reviewers: #okular

Subscribers: aacid, ltoscano

Tags: #okular

Maniphest Tasks: T7805

Differential Revision: https://phabricator.kde.org/D10547
This commit is contained in:
Andre Heinecke 2018-02-21 23:57:01 +01:00 committed by Albert Astals Cid
parent 5f05e4a1fc
commit f0a80a675f
2 changed files with 10 additions and 0 deletions

View file

@ -91,6 +91,15 @@ void CalculateTextTest::testSimpleCalculate()
// Test that updating the field also worked with sum
QCOMPARE (fields[QStringLiteral ("Sum")]->text(), QStringLiteral( "40" ));
// Test that undo / redo works
QVERIFY( m_document->canUndo() );
m_document->undo();
QCOMPARE( fields[QStringLiteral ("Sum")]->text(), QStringLiteral( "60" ) );
QVERIFY( m_document->canRedo() );
m_document->redo();
QCOMPARE( fields[QStringLiteral ("Sum")]->text(), QStringLiteral( "40" ) );
}
QTEST_MAIN( CalculateTextTest )

View file

@ -3406,6 +3406,7 @@ void DocumentPrivate::notifyAnnotationChanges( int page )
void DocumentPrivate::notifyFormChanges( int /*page*/ )
{
recalculateForms();
}
void Document::addPageAnnotation( int page, Annotation * annotation )