#include "whats_new_dialog.h" #include "yacreader_global.h" #include YACReader::WhatsNewDialog::WhatsNewDialog(QWidget *parent) : RoundedCornersDialog(parent) { auto scrollArea = new QScrollArea(this); scrollArea->setStyleSheet("background-color:transparent;" "border:none;"); scrollArea->horizontalScrollBar()->setStyleSheet("QScrollBar {height:0px;}"); scrollArea->verticalScrollBar()->setStyleSheet("QScrollBar {width:0px;}"); scrollArea->setContentsMargins(0, 0, 0, 0); auto mainLayout = new QVBoxLayout(this); mainLayout->setContentsMargins(0, 0, 0, 0); auto contentLayout = new QGridLayout(); auto content = new QFrame(); content->setStyleSheet("background-color:transparent;" "border:none;"); auto headerImageLabel = new QLabel(); QPixmap headerImage(":/images/whats_new/whatsnew_header.svg"); headerImageLabel->setPixmap(headerImage); headerImageLabel->setFixedSize(headerImage.size()); auto headerLabel = new QLabel(); headerLabel->setText("What's New in\nYACReader"); QFont headerLabelFont("Arial", 34, QFont::ExtraBold); headerLabel->setFont(headerLabelFont); headerLabel->setAlignment(Qt::AlignCenter); headerLabel->setStyleSheet("padding: 18px 0 0 0;" "background-color:transparent;" "color:#0A0A0A;"); auto versionLabel = new QLabel(); versionLabel->setText(VERSION); QFont versionLabelFont("Arial", 12, QFont::Normal); versionLabel->setFont(versionLabelFont); versionLabel->setAlignment(Qt::AlignCenter); versionLabel->setStyleSheet("padding:0 0 0 0;" "background-color:transparent;" "color:#858585;"); auto text = new QLabel(); text->setText("This version brings new features, improved functionality, enhanced customization options, bug fixes, and performance improvements across all apps:
" "
" "YACReader
" " • Save magnifying glass size and zoom level
" " • Add shortcut to reset the magnifying glass to its defaults (size and zoom), it is `slash` by default but it can be reassigned
" " • Bump PDF render size
" " • Fix trackpad scrolling, it makes using trackpads more responsive and natural
" " • Added more info to Help -> System info
" " • Don't use scroll animations on macos by default, it where hdpi scroll is most likely to be used and it causes scroll issues. (new 9.15.1)
" "
" "YACReaderLibrary
" " • Fix headers in the table view getting stuck in a non-movable state
" " • Add option to set the type of a library. It will convert all the content to the desired type (comic, manga, etc.) and set that type as the default for the library. Available in the library context menu
" " • Added more info to Help -> System info
" " • New setting to open comics in third-party reader apps by entering a command that launches the app, e.g., \"/path/to/the/app {comic_file_path}\". Use `{comic_file_path}` as a placeholder where `YACReaderLibrary` places the path to the comic file
" " • Purge covers and metadata not being used after a full library update
" " • Fix crash when updating the current folder content after a library update
" " • Fix crash when current folder is empty after an update
" " • Enable dropping content on the FolderContentView
" " • Fix `open containing folder...` shortcut for comics
" " • Add a dialog to show information about a library, including the number of folders, comics, and read comics
" " • Fix occasional crashes when using automatic library updates
" " • Add setting to hide the \"Continue Reading...\" banner from the home view
" " • Improve Grid and Flow Info comics view scroll performance
" " • Improve flexibility of the open comic in third party app setting so more complex commands can be used. e.g. `open -a \"/Applications/My Reader.app" "{comic_file_path}\"` (new 9.15.1)
" "
" "YACReaderLibraryServer
" " • New command --system-info to print information about the execution environment and available resources (including what image formats are supported and what libraries are used by the app).
" " • Fix automatic libraries updates not being triggered.
" "
" "All apps
" " • Sorting heuristic to try to find spreads in the content of a comic is now only used for files with less than 1000 pages to avoid false positives.
" "
" "I hope you enjoy the new update. Please, if you like YACReader consider to become a patron in Patreon " "or donate some money using Pay-Pal and help keeping the project alive. " "Remember that there is an iOS version available in the Apple App Store, " "and there is a brand new app for Android that you can get on the Google Play Store."); QFont textLabelFont("Arial", 15, QFont::Light); text->setFont(textLabelFont); text->setStyleSheet("padding:51px;" "background-color:transparent;" "color:#0A0A0A;"); text->setWordWrap(true); text->setOpenExternalLinks(true); contentLayout->addItem(new QSpacerItem(0, 50), 0, 0); contentLayout->addWidget(headerImageLabel, 1, 0, Qt::AlignTop | Qt::AlignHCenter); contentLayout->addWidget(headerLabel, 1, 0, Qt::AlignTop | Qt::AlignHCenter); contentLayout->addWidget(versionLabel, 2, 0, Qt::AlignTop | Qt::AlignHCenter); contentLayout->addWidget(text, 3, 0, Qt::AlignTop); contentLayout->setRowStretch(3, 1); content->setLayout(contentLayout); mainLayout->addWidget(scrollArea); // containerLayout->addWidget(content); scrollArea->setWidget(content); scrollArea->setWidgetResizable(true); this->setLayout(mainLayout); auto closeButton = new QPushButton(this); closeButton->setFlat(true); closeButton->setStyleSheet("background-color:transparent;"); auto closeIcon = QPixmap(":/images/custom_dialog/custom_close_button.svg"); if (!closeIcon.isNull()) { closeButton->setIcon(QPixmap(":/images/custom_dialog/custom_close_button.svg")); closeButton->setIconSize(QSize(44, 44)); closeButton->setFixedSize(44, 44); closeButton->move(656, 20); } else { closeButton->setText(tr("Close")); auto font = closeButton->font(); font.setPointSize(16); closeButton->setFont(font); closeButton->move(616, 20); } scrollArea->setFixedSize(720, 640); setFixedSize(720, 640); setModal(true); connect(closeButton, &QPushButton::clicked, this, &QDialog::close); }