File indexing completed on 2024-05-12 16:27:16

0001 /*
0002    SPDX-FileCopyrightText: 2020-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "showpinnedmessagesdialog.h"
0008 #include "rocketchataccount.h"
0009 
0010 #include <KConfigGroup>
0011 #include <KLocalizedString>
0012 #include <KSharedConfig>
0013 #include <KWindowConfig>
0014 #include <QWindow>
0015 namespace
0016 {
0017 static const char myShowPinnedMessagesDialogGroupName[] = "ShowPinnedMessagesDialog";
0018 }
0019 
0020 ShowPinnedMessagesDialog::ShowPinnedMessagesDialog(RocketChatAccount *account, QWidget *parent)
0021     : ShowListMessageBaseDialog(account, parent)
0022 {
0023     setWindowTitle(i18nc("@title:window", "Show Pinned Messages - %1", account ? account->accountName() : QStringLiteral("AccountName")));
0024     readConfig();
0025 }
0026 
0027 ShowPinnedMessagesDialog::~ShowPinnedMessagesDialog()
0028 {
0029     writeConfig();
0030 }
0031 
0032 void ShowPinnedMessagesDialog::readConfig()
0033 {
0034     create(); // ensure a window is created
0035     windowHandle()->resize(QSize(800, 600));
0036     KConfigGroup group(KSharedConfig::openStateConfig(), QLatin1String(myShowPinnedMessagesDialogGroupName));
0037     KWindowConfig::restoreWindowSize(windowHandle(), group);
0038     resize(windowHandle()->size()); // workaround for QTBUG-40584
0039 }
0040 
0041 void ShowPinnedMessagesDialog::writeConfig()
0042 {
0043     KConfigGroup group(KSharedConfig::openStateConfig(), QLatin1String(myShowPinnedMessagesDialogGroupName));
0044     KWindowConfig::saveWindowSize(windowHandle(), group);
0045 }
0046 
0047 #include "moc_showpinnedmessagesdialog.cpp"