Merge lp://qastaging/~raoul-snyman/openlp/fix-translations-2.4 into lp://qastaging/openlp
Status: | Superseded | ||||
---|---|---|---|---|---|
Proposed branch: | lp://qastaging/~raoul-snyman/openlp/fix-translations-2.4 | ||||
Merge into: | lp://qastaging/openlp | ||||
Diff against target: |
230948 lines (+170694/-11892) (has conflicts) 150 files modified
.bzrignore (+4/-0) CHANGELOG.rst (+11/-0) openlp/.version (+4/-0) openlp/core/__init__.py (+15/-11) openlp/core/common/__init__.py (+6/-0) openlp/core/common/historycombobox.py.OTHER (+84/-0) openlp/core/lib/colorbutton.py.OTHER (+82/-0) openlp/core/lib/dockwidget.py.OTHER (+56/-0) openlp/core/lib/listwidgetwithdnd.py.OTHER (+107/-0) openlp/core/lib/projector/constants.py (+64/-0) openlp/core/lib/projector/pjlink1.py (+67/-1) openlp/core/lib/spelltextedit.py.OTHER (+204/-0) openlp/core/lib/toolbar.py.OTHER (+90/-0) openlp/core/lib/treewidgetwithdnd.py.OTHER (+144/-0) openlp/core/resources.py (+87665/-11233) openlp/core/ui/aboutdialog.py (+14/-0) openlp/core/ui/exceptionform.py (+7/-0) openlp/core/ui/generaltab.py (+0/-1) openlp/core/ui/listpreviewwidget.py.OTHER (+176/-0) openlp/core/ui/maindisplay.py (+4/-0) openlp/core/ui/mainwindow.py (+20/-9) openlp/core/ui/media/systemplayer.py (+35/-2) openlp/core/ui/mediadockmanager.py.OTHER (+71/-0) openlp/core/ui/projector/manager.py (+65/-2) openlp/core/ui/projector/sourceselectform.py (+63/-4) openlp/core/ui/settingsdialog.py (+5/-0) openlp/core/ui/wizard.py.OTHER (+305/-0) openlp/core/utils/__init__.py.OTHER (+543/-0) openlp/core/utils/actions.py.OTHER (+388/-0) openlp/core/utils/db.py.OTHER (+71/-0) openlp/core/utils/languagemanager.py.OTHER (+148/-0) openlp/plugins/bibles/forms/bibleupgradeform.py.OTHER (+561/-0) openlp/plugins/bibles/lib/importers/http.py (+10/-0) openlp/plugins/bibles/lib/importers/zefania.py (+11/-0) openlp/plugins/bibles/lib/mediaitem.py (+8/-0) openlp/plugins/presentations/lib/pdfcontroller.py (+31/-0) openlp/plugins/remotes/html/index.html (+18/-0) openlp/plugins/remotes/html/jquery-migrate.js (+752/-0) openlp/plugins/remotes/html/jquery-migrate.min.js (+2/-0) openlp/plugins/remotes/html/jquery.js.OTHER (+11008/-0) openlp/plugins/remotes/html/jquery.min.js.OTHER (+5/-0) openlp/plugins/remotes/html/jquery.mobile.css (+2332/-0) openlp/plugins/remotes/html/jquery.mobile.js.OTHER (+9162/-0) openlp/plugins/remotes/html/jquery.mobile.min.css.OTHER (+2/-0) openlp/plugins/remotes/html/jquery.mobile.min.js.OTHER (+2/-0) openlp/plugins/remotes/html/main.css.OTHER (+32/-0) openlp/plugins/remotes/html/main.js.OTHER (+45/-0) openlp/plugins/remotes/html/openlp.css.OTHER (+31/-0) openlp/plugins/remotes/html/openlp.js.OTHER (+386/-0) openlp/plugins/remotes/html/stage.css.OTHER (+64/-0) openlp/plugins/remotes/html/stage.js.OTHER (+170/-0) openlp/plugins/remotes/lib/httpserver.py (+19/-0) openlp/plugins/remotes/lib/remotetab.py (+20/-0) openlp/plugins/songs/forms/editsongform.py (+18/-2) openlp/plugins/songs/forms/songmaintenanceform.py (+4/-5) openlp/plugins/songs/lib/__init__.py (+8/-0) openlp/plugins/songs/lib/db.py (+2/-2) openlp/plugins/songs/lib/importers/easyworship.py (+32/-0) openlp/plugins/songs/lib/importers/mediashout.py (+7/-0) openlp/plugins/songs/lib/importers/openlp.py (+83/-0) openlp/plugins/songs/lib/importers/presentationmanager.py (+43/-16) openlp/plugins/songs/lib/importers/songbeamer.py (+13/-0) openlp/plugins/songs/lib/importers/videopsalm.py (+6/-0) openlp/plugins/songs/lib/mediaitem.py (+26/-0) openlp/plugins/songs/lib/songselect.py (+58/-5) openlp/plugins/songs/lib/upgrade.py (+55/-1) openlp/plugins/songusage/forms/songusagedetailform.py (+11/-2) openlp/plugins/songusage/songusageplugin.py (+3/-3) resources/i18n/af.ts (+2187/-40) resources/i18n/bg.ts (+2087/-39) resources/i18n/cs.ts (+1419/-9) resources/i18n/da.ts (+1429/-9) resources/i18n/de.ts (+1414/-11) resources/i18n/el.ts (+2213/-47) resources/i18n/en.ts (+1418/-9) resources/i18n/en_GB.ts (+1417/-9) resources/i18n/en_ZA.ts (+1418/-9) resources/i18n/es.ts (+1448/-9) resources/i18n/et.ts (+1435/-9) resources/i18n/fi.ts (+1440/-12) resources/i18n/fr.ts (+1420/-9) resources/i18n/hu.ts (+1997/-16) resources/i18n/id.ts (+1410/-9) resources/i18n/ja.ts (+1874/-12) resources/i18n/ko.ts (+2421/-28) resources/i18n/lt.ts (+2527/-40) resources/i18n/nb.ts (+1420/-11) resources/i18n/nl.ts (+1411/-9) resources/i18n/pl.ts (+1749/-12) resources/i18n/pt_BR.ts (+1697/-16) resources/i18n/ru.ts (+1412/-8) resources/i18n/sk.ts (+1441/-9) resources/i18n/sv.ts (+1836/-17) resources/i18n/ta_LK.ts (+2206/-39) resources/i18n/th_TH.ts (+2134/-39) resources/i18n/zh_CN.ts (+2565/-39) resources/i18n/zh_TW.ts (+1722/-12) scripts/translation_utils.py (+4/-0) tests/functional/openlp_core/test_init.py (+46/-1) tests/functional/openlp_core_common/test_projector_utilities.py (+4/-0) tests/functional/openlp_core_common/test_registryproperties.py (+31/-1) tests/functional/openlp_core_lib/test_color_button.py.OTHER (+199/-0) tests/functional/openlp_core_lib/test_htmlbuilder.py (+25/-0) tests/functional/openlp_core_lib/test_projector_pjlink1.py (+345/-0) tests/functional/openlp_core_ui/test_aboutform.py (+44/-0) tests/functional/openlp_core_ui/test_firsttimeform.py (+20/-0) tests/functional/openlp_core_ui/test_generaltab.py (+54/-0) tests/functional/openlp_core_ui/test_listpreviewwidget.py.OTHER (+52/-0) tests/functional/openlp_core_ui/test_mainwindow.py (+13/-0) tests/functional/openlp_core_ui/test_projector_sourceselectform.py (+83/-0) tests/functional/openlp_core_ui/test_servicemanager.py (+140/-11) tests/functional/openlp_core_ui/test_settingsform.py (+14/-0) tests/functional/openlp_core_ui/test_shortcutlistdialog.py (+60/-0) tests/functional/openlp_core_ui/test_themetab.py (+84/-0) tests/functional/openlp_core_ui_media/test_systemplayer.py (+499/-0) tests/functional/openlp_core_utils/__init__.py.OTHER (+21/-0) tests/functional/openlp_core_utils/test_actions.py.OTHER (+245/-0) tests/functional/openlp_core_utils/test_db.py.OTHER (+104/-0) tests/functional/openlp_core_utils/test_first_time.py.OTHER (+57/-0) tests/functional/openlp_core_utils/test_init.py.OTHER (+129/-0) tests/functional/openlp_core_utils/test_utils.py.OTHER (+491/-0) tests/functional/openlp_plugins/bibles/test_manager.py (+69/-0) tests/functional/openlp_plugins/presentations/test_pdfcontroller.py (+74/-0) tests/functional/openlp_plugins/remotes/test_router.py (+43/-0) tests/functional/openlp_plugins/songs/test_editsongform.py (+35/-0) tests/functional/openlp_plugins/songs/test_lib.py (+27/-0) tests/functional/openlp_plugins/songs/test_openlpimporter.py (+75/-0) tests/functional/openlp_plugins/songs/test_songselect.py (+218/-25) tests/functional/openlp_plugins/songusage/test_songusage.py (+28/-1) tests/interfaces/openlp_core_common/test_historycombobox.py.OTHER (+65/-0) tests/interfaces/openlp_core_lib/test_pluginmanager.py (+10/-0) tests/interfaces/openlp_core_ui/test_listpreviewwidget.py.OTHER (+106/-0) tests/interfaces/openlp_core_ui/test_projectorsourceform.py (+5/-8) tests/interfaces/openlp_core_utils/__init__.py.OTHER (+21/-0) tests/interfaces/openlp_core_utils/test_utils.py.OTHER (+81/-0) tests/interfaces/openlp_plugins/bibles/forms/test_bibleimportform.py (+10/-6) tests/interfaces/openlp_plugins/custom/forms/test_customform.py (+19/-0) tests/interfaces/openlp_plugins/songs/forms/test_editsongform.py (+49/-2) tests/interfaces/openlp_plugins/songs/forms/test_editverseform.py (+1/-0) tests/interfaces/openlp_plugins/songs/forms/test_songmaintenanceform.py (+423/-0) tests/interfaces/openlp_plugins/songusage/test_songusagedetailform.py (+99/-0) tests/resources/easyslidessongs/Export_2017-01-12_BB.json (+44/-0) tests/resources/easyslidessongs/Export_2017-01-12_BB.xml (+50/-0) tests/resources/opensongsongs/Amazing Grace with bad CCLI (+56/-0) tests/resources/opensongsongs/Amazing Grace without CCLI.json (+42/-0) tests/resources/presentationmanagersongs/Agnus Dei.sng.OTHER (+34/-0) tests/resources/songshowplussongs/cleanse-me.json (+38/-0) tests/resources/videopsalmsongs/as-safe-a-stronghold2.json (+35/-0) tests/resources/videopsalmsongs/videopsalm-as-safe-a-stronghold2.json (+47/-0) tests/utils/test_bzr_tags.py (+1/-1) Text conflict in .bzrignore Conflict adding file CHANGELOG.rst. Moved existing file to CHANGELOG.rst.moved. Text conflict in openlp/.version Text conflict in openlp/core/__init__.py Text conflict in openlp/core/common/__init__.py Contents conflict in openlp/core/common/historycombobox.py Contents conflict in openlp/core/lib/colorbutton.py Contents conflict in openlp/core/lib/dockwidget.py Contents conflict in openlp/core/lib/listwidgetwithdnd.py Text conflict in openlp/core/lib/projector/constants.py Text conflict in openlp/core/lib/projector/pjlink1.py Contents conflict in openlp/core/lib/spelltextedit.py Contents conflict in openlp/core/lib/toolbar.py Contents conflict in openlp/core/lib/treewidgetwithdnd.py Text conflict in openlp/core/resources.py Text conflict in openlp/core/ui/aboutdialog.py Text conflict in openlp/core/ui/exceptionform.py Contents conflict in openlp/core/ui/listpreviewwidget.py Text conflict in openlp/core/ui/maindisplay.py Text conflict in openlp/core/ui/mainwindow.py Text conflict in openlp/core/ui/media/systemplayer.py Contents conflict in openlp/core/ui/mediadockmanager.py Text conflict in openlp/core/ui/projector/manager.py Text conflict in openlp/core/ui/projector/sourceselectform.py Text conflict in openlp/core/ui/settingsdialog.py Contents conflict in openlp/core/ui/wizard.py Conflict adding files to openlp/core/utils. Created directory. Conflict because openlp/core/utils is not versioned, but has versioned children. Versioned directory. Contents conflict in openlp/core/utils/__init__.py Contents conflict in openlp/core/utils/actions.py Contents conflict in openlp/core/utils/db.py Contents conflict in openlp/core/utils/languagemanager.py Contents conflict in openlp/plugins/bibles/forms/bibleupgradeform.py Text conflict in openlp/plugins/bibles/lib/importers/http.py Text conflict in openlp/plugins/bibles/lib/importers/zefania.py Text conflict in openlp/plugins/bibles/lib/mediaitem.py Text conflict in openlp/plugins/presentations/lib/pdfcontroller.py Text conflict in openlp/plugins/remotes/html/index.html Contents conflict in openlp/plugins/remotes/html/jquery.js Contents conflict in openlp/plugins/remotes/html/jquery.min.js Contents conflict in openlp/plugins/remotes/html/jquery.mobile.js Contents conflict in openlp/plugins/remotes/html/jquery.mobile.min.css Contents conflict in openlp/plugins/remotes/html/jquery.mobile.min.js Contents conflict in openlp/plugins/remotes/html/main.css Contents conflict in openlp/plugins/remotes/html/main.js Contents conflict in openlp/plugins/remotes/html/openlp.css Contents conflict in openlp/plugins/remotes/html/openlp.js Contents conflict in openlp/plugins/remotes/html/stage.css Contents conflict in openlp/plugins/remotes/html/stage.js Text conflict in openlp/plugins/remotes/lib/httpserver.py Text conflict in openlp/plugins/remotes/lib/remotetab.py Text conflict in openlp/plugins/songs/lib/__init__.py Text conflict in openlp/plugins/songs/lib/importers/easyworship.py Text conflict in openlp/plugins/songs/lib/importers/mediashout.py Text conflict in openlp/plugins/songs/lib/importers/openlp.py Text conflict in openlp/plugins/songs/lib/importers/presentationmanager.py Text conflict in openlp/plugins/songs/lib/importers/songbeamer.py Text conflict in openlp/plugins/songs/lib/importers/videopsalm.py Text conflict in openlp/plugins/songs/lib/mediaitem.py Text conflict in openlp/plugins/songs/lib/songselect.py Text conflict in openlp/plugins/songs/lib/upgrade.py Text conflict in resources/i18n/af.ts Text conflict in resources/i18n/bg.ts Text conflict in resources/i18n/cs.ts Text conflict in resources/i18n/da.ts Text conflict in resources/i18n/de.ts Text conflict in resources/i18n/el.ts Text conflict in resources/i18n/en.ts Text conflict in resources/i18n/en_GB.ts Text conflict in resources/i18n/en_ZA.ts Text conflict in resources/i18n/es.ts Text conflict in resources/i18n/et.ts Text conflict in resources/i18n/fi.ts Text conflict in resources/i18n/fr.ts Text conflict in resources/i18n/hu.ts Text conflict in resources/i18n/id.ts Text conflict in resources/i18n/ja.ts Text conflict in resources/i18n/ko.ts Text conflict in resources/i18n/lt.ts Text conflict in resources/i18n/nb.ts Text conflict in resources/i18n/nl.ts Text conflict in resources/i18n/pl.ts Text conflict in resources/i18n/pt_BR.ts Text conflict in resources/i18n/ru.ts Text conflict in resources/i18n/sk.ts Text conflict in resources/i18n/sv.ts Text conflict in resources/i18n/ta_LK.ts Text conflict in resources/i18n/th_TH.ts Text conflict in resources/i18n/zh_CN.ts Text conflict in resources/i18n/zh_TW.ts Conflict adding file resources/images/ios_app_qr.png. Moved existing file to resources/images/ios_app_qr.png.moved. Text conflict in scripts/translation_utils.py Conflict adding file tests/functional/openlp_core/__init__.py. Moved existing file to tests/functional/openlp_core/__init__.py.moved. Text conflict in tests/functional/openlp_core/test_init.py Text conflict in tests/functional/openlp_core_common/test_projector_utilities.py Text conflict in tests/functional/openlp_core_common/test_registryproperties.py Contents conflict in tests/functional/openlp_core_lib/test_color_button.py Text conflict in tests/functional/openlp_core_lib/test_htmlbuilder.py Text conflict in tests/functional/openlp_core_lib/test_projector_pjlink1.py Text conflict in tests/functional/openlp_core_ui/test_aboutform.py Text conflict in tests/functional/openlp_core_ui/test_firsttimeform.py Contents conflict in tests/functional/openlp_core_ui/test_listpreviewwidget.py Text conflict in tests/functional/openlp_core_ui/test_mainwindow.py Text conflict in tests/functional/openlp_core_ui/test_servicemanager.py Text conflict in tests/functional/openlp_core_ui/test_settingsform.py Conflict adding file tests/functional/openlp_core_ui/test_shortcutlistdialog.py. Moved existing file to tests/functional/openlp_core_ui/test_shortcutlistdialog.py.moved. Conflict adding file tests/functional/openlp_core_ui/test_themetab.py. Moved existing file to tests/functional/openlp_core_ui/test_themetab.py.moved. Conflict adding file tests/functional/openlp_core_ui_media/test_systemplayer.py. Moved existing file to tests/functional/openlp_core_ui_media/test_systemplayer.py.moved. Conflict adding files to tests/functional/openlp_core_utils. Created directory. Conflict because tests/functional/openlp_core_utils is not versioned, but has versioned children. Versioned directory. Contents conflict in tests/functional/openlp_core_utils/__init__.py Contents conflict in tests/functional/openlp_core_utils/test_actions.py Contents conflict in tests/functional/openlp_core_utils/test_db.py Contents conflict in tests/functional/openlp_core_utils/test_first_time.py Contents conflict in tests/functional/openlp_core_utils/test_init.py Contents conflict in tests/functional/openlp_core_utils/test_utils.py Conflict adding file tests/functional/openlp_plugins/bibles/test_manager.py. Moved existing file to tests/functional/openlp_plugins/bibles/test_manager.py.moved. Text conflict in tests/functional/openlp_plugins/presentations/test_pdfcontroller.py Text conflict in tests/functional/openlp_plugins/remotes/test_router.py Text conflict in tests/functional/openlp_plugins/songs/test_editsongform.py Text conflict in tests/functional/openlp_plugins/songs/test_lib.py Conflict adding file tests/functional/openlp_plugins/songs/test_openlpimporter.py. Moved existing file to tests/functional/openlp_plugins/songs/test_openlpimporter.py.moved. Text conflict in tests/functional/openlp_plugins/songs/test_songselect.py Text conflict in tests/functional/openlp_plugins/songusage/test_songusage.py Contents conflict in tests/interfaces/openlp_core_common/test_historycombobox.py Text conflict in tests/interfaces/openlp_core_lib/test_pluginmanager.py Contents conflict in tests/interfaces/openlp_core_ui/test_listpreviewwidget.py Conflict adding files to tests/interfaces/openlp_core_utils. Created directory. Conflict because tests/interfaces/openlp_core_utils is not versioned, but has versioned children. Versioned directory. Contents conflict in tests/interfaces/openlp_core_utils/__init__.py Contents conflict in tests/interfaces/openlp_core_utils/test_utils.py Conflict adding file tests/interfaces/openlp_plugins/bibles/forms/__init__.py. Moved existing file to tests/interfaces/openlp_plugins/bibles/forms/__init__.py.moved. Text conflict in tests/interfaces/openlp_plugins/bibles/forms/test_bibleimportform.py Text conflict in tests/interfaces/openlp_plugins/custom/forms/test_customform.py Conflict adding file tests/interfaces/openlp_plugins/songs/forms/test_songmaintenanceform.py. Moved existing file to tests/interfaces/openlp_plugins/songs/forms/test_songmaintenanceform.py.moved. Conflict adding file tests/resources/easyslidessongs/Export_2017-01-12_BB.json. Moved existing file to tests/resources/easyslidessongs/Export_2017-01-12_BB.json.moved. Conflict adding file tests/resources/easyslidessongs/Export_2017-01-12_BB.xml. Moved existing file to tests/resources/easyslidessongs/Export_2017-01-12_BB.xml.moved. Conflict adding file tests/resources/opensongsongs/Amazing Grace with bad CCLI. Moved existing file to tests/resources/opensongsongs/Amazing Grace with bad CCLI.moved. Conflict adding file tests/resources/opensongsongs/Amazing Grace without CCLI.json. Moved existing file to tests/resources/opensongsongs/Amazing Grace without CCLI.json.moved. Contents conflict in tests/resources/presentationmanagersongs/Agnus Dei.sng Conflict adding file tests/resources/songshowplussongs/cleanse-me.json. Moved existing file to tests/resources/songshowplussongs/cleanse-me.json.moved. Conflict adding file tests/resources/songshowplussongs/cleanse-me.sbsong. Moved existing file to tests/resources/songshowplussongs/cleanse-me.sbsong.moved. Conflict adding file tests/resources/videopsalmsongs/as-safe-a-stronghold2.json. Moved existing file to tests/resources/videopsalmsongs/as-safe-a-stronghold2.json.moved. Conflict adding file tests/resources/videopsalmsongs/videopsalm-as-safe-a-stronghold2.json. Moved existing file to tests/resources/videopsalmsongs/videopsalm-as-safe-a-stronghold2.json.moved. |
||||
To merge this branch: | bzr merge lp://qastaging/~raoul-snyman/openlp/fix-translations-2.4 | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
OpenLP Core | Pending | ||
Review via email:
|
This proposal has been superseded by a proposal from 2017-03-28.
Commit message
Fix a problem with loading Qt's translation files, bug #1676163
Description of the change
Fix a problem with loading Qt's translation files
Add this to your merge proposal:
-------
lp:~raoul-snyman/openlp/fix-translations-2.4 (revision 2680)
[SUCCESS] https:/
[SUCCESS] https:/
[SUCCESS] https:/
[SUCCESS] https:/
[SUCCESS] https:/
[SUCCESS] https:/
[SUCCESS] https:/
Unmerged revisions
- 2681. By Raoul Snyman
-
Removed a forgotten print
- 2680. By Raoul Snyman
-
Update changelog
- 2679. By Raoul Snyman
-
Fix a problem with loading Qt's translation files
- 2678. By Tim Bentley
-
Next set of translations
- 2677. By Raoul Snyman
-
Revert the database upgrade, fix a few more bugs, and add some tests.
Bugs fixed:
- Sometimes the timer goes off as OpenLP is shutting down, and the application has already been deleted (reported via support system)
- Fix opening the data folder (KDE thought the old way was an SMB share)
- Fix a problem with the new QMediaPlayer not controlling the playlist anymoreAdd this to your merge proposal:
-------------- ------- ------- ----
lp:~raoul-snyman/openlp/fix-db-upgrade-2.4 (revision 2681)
[... - 2676. By Raoul Snyman
-
Add this to your merge proposal:
-------------- ------- ------- ----
lp:~raoul-snyman/openlp/db-upgrades-2.4 (revision 2681)
[SUCCESS] https://ci.openlp. io/job/ Branch- 01-Pull/ 1929/
[SUCCESS] https://ci.openlp. io/job/ Branch- 02-Functional- Tests/1840/
[SUCCESS] https://ci.openlp. io/job/ Branch- 03-Interface- Tests/1781/
[SUCCESS] https://ci.openlp. io/job/ Branch- 04a-Windows_ Functional_ Tests/1511/
[SUCCESS] https://ci.openlp. io/job/ Branch- 04b-Windows_ Interface_ Tests/1101/
[SUCCESS] https://ci.openlp. io/... - 2675. By Raoul Snyman
-
- Fix SongSelect so that it detects the login URL
- Fix PresentationManager importer to handle weird XML
- Pull in OpenLP song importer fixes from Olli's branch - 2674. By Raoul Snyman
-
Fix bug #1666005 and bug #1668994
Add this to your merge proposal:
-------------- ------- ------- ----
lp:~raoul-snyman/openlp/off-by-one-2.4 (revision 2676)
[SUCCESS] https://ci.openlp. io/job/ Branch- 01-Pull/ 1915/
[SUCCESS] https://ci.openlp. io/job/ Branch- 02-Functional- Tests/1826/
[SUCCESS] https://ci.openlp. io/job/ Branch- 03-Interface- Tests/1767/
[SUCCESS] https://ci.openlp. io/job/ Branch- 04a-Windows_ Functional_ Tests/1500/
[SUCCESS] https://ci.openlp. io/job/ Branch- 04b-Windows_ Interface_ Tests/109... - 2673. By Raoul Snyman
-
Fix bug #1668669 by reducing the height of the widget.
Add this to your merge proposal:
-------------- ------- ------- ----
lp:~raoul-snyman/openlp/bug-1668669-2.4 (revision 2673)
[SUCCESS] https://ci.openlp. io/job/ Branch- 01-Pull/ 1908/
[SUCCESS] https://ci.openlp. io/job/ Branch- 02-Functional- Tests/1819/
[SUCCESS] https://ci.openlp. io/job/ Branch- 03-Interface- Tests/1759/
[SUCCESS] https://ci.openlp. io/job/ Branch- 04a-Windows_ Functional_ Tests/1493/
[SUCCESS] https://ci.openlp. io/job/ Branch- 04b-Windo... - 2672. By Raoul Snyman
-
Release 2.4.5