This does the following:
* Automatically generate icons from the SVG file as part of the binary build.
This will also ensure that the xournalpp.exe binary has an icon. As a result,
we need ImageMagick as a dependency.
* Replace the manual setup in `windows-setup/build-setup.sh` with a
`windows-setup/package.sh` script that uses the CMake package as a base and
then copies the additional runtime files (e.g. MinGW shared libraries). This
has the benefit of not needing us to update the windows build script when we
add additional resource files.
* Refactor the page cache algorithm
* Add a page preloading feature
* Add settings for number of pages to preload
* Add option to evict from page cache on page scroll (enabled by default)
In practice, evict on page scroll reduces memory consumption much more than when
having it off, so it has been enabled by default.
This commit replaced some implicit conversions with (in debug mode) checked casts.
I also had to remove some explicit type declarations, since they were wrong on ARM devices.
fixes#2514
* New translations German from Crowdin [skip ci]
* New translations Romanian from Crowdin [skip ci]
* New translations Vietnamese from Crowdin [skip ci]
* New translations Serbian (Cyrillic) from Crowdin [skip ci]
* New translations Swedish from Crowdin [skip ci]
* New translations Turkish from Crowdin [skip ci]
* New translations Ukrainian from Crowdin [skip ci]
* New translations Chinese Simplified from Crowdin [skip ci]
* New translations Chinese Traditional from Crowdin [skip ci]
* New translations English from Crowdin [skip ci]
* New translations Galician from Crowdin [skip ci]
* New translations Portuguese from Crowdin [skip ci]
* New translations Portuguese, Brazilian from Crowdin [skip ci]
* New translations Indonesian from Crowdin [skip ci]
* New translations Thai from Crowdin [skip ci]
* New translations Croatian from Crowdin [skip ci]
* New translations Hindi from Crowdin [skip ci]
* New translations Klingon from Crowdin [skip ci]
* New translations Chinese Traditional, Hong Kong from Crowdin [skip ci]
* New translations Russian from Crowdin [skip ci]
* New translations Polish from Crowdin [skip ci]
* New translations French from Crowdin [skip ci]
* New translations Greek from Crowdin [skip ci]
* New translations Spanish from Crowdin [skip ci]
* New translations Afrikaans from Crowdin [skip ci]
* New translations Arabic from Crowdin [skip ci]
* New translations Catalan from Crowdin [skip ci]
* New translations Czech from Crowdin [skip ci]
* New translations Danish from Crowdin [skip ci]
* New translations German from Crowdin [skip ci]
* New translations Basque from Crowdin [skip ci]
* New translations Norwegian from Crowdin [skip ci]
* New translations Finnish from Crowdin [skip ci]
* New translations Hebrew from Crowdin [skip ci]
* New translations Hungarian from Crowdin [skip ci]
* New translations Italian from Crowdin [skip ci]
* New translations Japanese from Crowdin [skip ci]
* New translations Korean from Crowdin [skip ci]
* New translations Dutch from Crowdin [skip ci]
* New translations Santali from Crowdin [skip ci]
* New translations Galician from Crowdin [skip ci]
* New translations Galician from Crowdin [skip ci]
* New translations Galician from Crowdin [skip ci]
* New translations Galician from Crowdin [skip ci]
* New translations Galician from Crowdin [skip ci]
* New translations French from Crowdin [skip ci]
* New translations French from Crowdin [skip ci]
* New translations French from Crowdin [skip ci]
* New translations French from Crowdin [skip ci]
* New translations French from Crowdin [skip ci]
* New translations Chinese Simplified from Crowdin [skip ci]
* New translations Chinese Simplified from Crowdin [skip ci]
* New translations French from Crowdin [skip ci]
* New translations French from Crowdin [skip ci]
* New translations French from Crowdin [skip ci]
* New translations German from Crowdin [skip ci]
* New translations German from Crowdin [skip ci]
* New translations Czech from Crowdin [skip ci]
* New translations Czech from Crowdin [skip ci]
* New translations Romanian from Crowdin [skip ci]
* New translations Vietnamese from Crowdin [skip ci]
* New translations Serbian (Cyrillic) from Crowdin [skip ci]
* New translations Swedish from Crowdin [skip ci]
* New translations Turkish from Crowdin [skip ci]
* New translations Ukrainian from Crowdin [skip ci]
* New translations Chinese Simplified from Crowdin [skip ci]
* New translations Chinese Traditional from Crowdin [skip ci]
* New translations English from Crowdin [skip ci]
* New translations Galician from Crowdin [skip ci]
* New translations Portuguese from Crowdin [skip ci]
* New translations Portuguese, Brazilian from Crowdin [skip ci]
* New translations Indonesian from Crowdin [skip ci]
* New translations Thai from Crowdin [skip ci]
* New translations Croatian from Crowdin [skip ci]
* New translations Hindi from Crowdin [skip ci]
* New translations Klingon from Crowdin [skip ci]
* New translations Chinese Traditional, Hong Kong from Crowdin [skip ci]
* New translations Russian from Crowdin [skip ci]
* New translations Polish from Crowdin [skip ci]
* New translations French from Crowdin [skip ci]
* New translations Greek from Crowdin [skip ci]
* New translations Spanish from Crowdin [skip ci]
* New translations Afrikaans from Crowdin [skip ci]
* New translations Arabic from Crowdin [skip ci]
* New translations Catalan from Crowdin [skip ci]
* New translations Czech from Crowdin [skip ci]
* New translations Danish from Crowdin [skip ci]
* New translations German from Crowdin [skip ci]
* New translations Basque from Crowdin [skip ci]
* New translations Norwegian from Crowdin [skip ci]
* New translations Finnish from Crowdin [skip ci]
* New translations Hebrew from Crowdin [skip ci]
* New translations Hungarian from Crowdin [skip ci]
* New translations Italian from Crowdin [skip ci]
* New translations Japanese from Crowdin [skip ci]
* New translations Korean from Crowdin [skip ci]
* New translations Dutch from Crowdin [skip ci]
* New translations Santali from Crowdin [skip ci]
* New translations Japanese from Crowdin [skip ci]
This commit adds support for renaming layers in Xournalpp (and some
other small tweaks).
The features it provides are as follow:
- Ability for layer and background to have name.
- Changing the name of currently selected layer to some other name.
- Custom dialog for doing the above action.
- Saving and loading layer names from/to xopp file (including compatibility with
Xorunal).
- Lua API for renaming layers and reading layers names.
- generateConvert.php Now generates modern c++ that is compatible with
clang-format.
- Added clangd support to .gitignore.