KMyMoney loses printer settings STEPS TO REPRODUCE 1. start kmymoney 2. open a file 3. choose a report 4. select file->print 5. In the print dialog choose a non default setting 5. print report 6. repeat from 4. OBSERVED RESULT When printing the second time, the special settings must be entered again. EXPECTED RESULT When printing the second time, the special settings should be preselected. SOFTWARE/OS VERSIONS Windows: 10 MacOS: Linux/KDE Plasma: opensuse Leap_42.3 ADDITIONAL INFORMATION The reason for this behavior is that a new QPrinter instance is created for each print and all selected settings are lost.
Git commit 1b40b16af46774ef18330852f272ef243f28f332 by Ralf Habacker. Committed on 04/03/2019 at 12:39. Pushed by habacker into branch '4.8-staging'. Fix 'Printer settings are not saved' A global QPrinter instance in class KMyMoneyApp is used to reuse the printer settings. FIXED-IN:4.8.4 M +25 -1 kmymoney/kmymoney.cpp M +2 -0 kmymoney/kmymoney.h M +7 -3 kmymoney/views/kreportsview.cpp https://commits.kde.org/kmymoney/1b40b16af46774ef18330852f272ef243f28f332
In the 5.0/Master branch, kmymoney contains four different QPrinter instances, in the Checkprinting plugin, in the KHomeView, KReportTab and KReportDlg class, which means that you may need to enter custom settings 4 times in a kmymoney session. In addition, if printing is canceled, any previously set changes to the print settings will be lost because the QPrinter instance will be destroyed.
Git commit cbdb6d3b5c6726cffebc401da84bbdca44b60b76 by Ralf Habacker. Committed on 05/03/2019 at 13:09. Pushed by habacker into branch '4.8-staging'. Fix 'Printer settings are not saved' A global QPrinter instance in class KMyMoneyApp is used to reuse the printer settings. FIXED-IN:4.8.4 M +25 -1 kmymoney/kmymoney.cpp M +2 -0 kmymoney/kmymoney.h M +7 -3 kmymoney/views/kreportsview.cpp https://commits.kde.org/kmymoney/cbdb6d3b5c6726cffebc401da84bbdca44b60b76
Git commit c4a8edc6566bb1c36e61e3fef786b538fe9a839f by Thomas Baumgart. Committed on 25/03/2019 at 18:26. Pushed by tbaumgart into branch '5.0'. Use a global printer object for all print jobs Summary: BUG: 405059 Differential Revision: https://phabricator.kde.org/D20010 M +2 -0 kmymoney/CMakeLists.txt M +7 -3 kmymoney/kmymoney.cpp M +23 -0 kmymoney/misc/CMakeLists.txt A +71 -0 kmymoney/misc/kmm_printer.cpp [License: GPL (v2+)] A +40 -0 kmymoney/misc/kmm_printer.h [License: GPL (v2+)] M +1 -0 kmymoney/plugins/checkprinting/CMakeLists.txt M +11 -15 kmymoney/plugins/checkprinting/checkprinting.cpp M +0 -2 kmymoney/plugins/checkprinting/checkprinting.h M +1 -0 kmymoney/plugins/reconciliationreport/CMakeLists.txt M +25 -32 kmymoney/plugins/reconciliationreport/kreconciliationreportdlg.cpp M +0 -2 kmymoney/plugins/reconciliationreport/kreconciliationreportdlg.h M +1 -0 kmymoney/plugins/views/reports/CMakeLists.txt M +6 -13 kmymoney/plugins/views/reports/kreportsview_p.h M +1 -0 kmymoney/views/CMakeLists.txt M +10 -13 kmymoney/views/khomeview.cpp M +0 -3 kmymoney/views/khomeview_p.h https://commits.kde.org/kmymoney/c4a8edc6566bb1c36e61e3fef786b538fe9a839f
Git commit 5f4f90e83565647f3579660e4c5d9ac447547a02 by Ralf Habacker. Committed on 26/03/2019 at 22:29. Pushed by habacker into branch '4.8'. Fix 'Printer settings are not saved' A global QPrinter instance in class KMyMoneyApp is used to reuse the printer settings. FIXED-IN:4.8.4 M +25 -1 kmymoney/kmymoney.cpp M +2 -0 kmymoney/kmymoney.h M +5 -0 kmymoney/views/kreportsview.cpp https://commits.kde.org/kmymoney/5f4f90e83565647f3579660e4c5d9ac447547a02