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 "showthreadsdialog.h"
0008 #include "rocketchataccount.h"
0009 
0010 #include <KConfigGroup>
0011 #include <KLocalizedString>
0012 #include <KSharedConfig>
0013 #include <KWindowConfig>
0014 #include <QWindow>
0015 
0016 namespace
0017 {
0018 static const char myShowThreadsDialogGroupName[] = "ShowThreadsDialog";
0019 }
0020 ShowThreadsDialog::ShowThreadsDialog(RocketChatAccount *account, QWidget *parent)
0021     : ShowListMessageBaseDialog(account, parent)
0022 {
0023     setWindowTitle(i18nc("@title:window", "Show Threads Messages"));
0024     readConfig();
0025 }
0026 
0027 ShowThreadsDialog::~ShowThreadsDialog()
0028 {
0029     writeConfig();
0030 }
0031 
0032 void ShowThreadsDialog::readConfig()
0033 {
0034     create(); // ensure a window is created
0035     windowHandle()->resize(QSize(800, 600));
0036     KConfigGroup group(KSharedConfig::openStateConfig(), QLatin1String(myShowThreadsDialogGroupName));
0037     KWindowConfig::restoreWindowSize(windowHandle(), group);
0038     resize(windowHandle()->size()); // workaround for QTBUG-40584
0039 }
0040 
0041 void ShowThreadsDialog::writeConfig()
0042 {
0043     KConfigGroup group(KSharedConfig::openStateConfig(), QLatin1String(myShowThreadsDialogGroupName));
0044     KWindowConfig::saveWindowSize(windowHandle(), group);
0045 }
0046 
0047 #include "moc_showthreadsdialog.cpp"