> On Aug. 3, 2014, 11:13 nachm., Lukáš Tinkl wrote: > > No change here, ie. it doesn't restore the file dialog geometry. > > Thomas Lübking wrote: > what is your precise testcase? > a bit remote because of your other patches: did you check that the > correct platformtheme lib is used? (ran into this in a custom installation. > self compiled plugin ended up in a different path than the distro qt5 plugin > path) > is the size data updated in kdeglobals? > > Lukáš Tinkl wrote: > Testcase: opening a filedialog in any Qt/KDE app, restarting the app -> > default file/window size > > I guess I'm using the correct platformtheme, otherwise I wouldn't be > seeing KDE fialogs right? Also, toplevel windows are not restored either > > Yup, the size is always correctly saved to the config files > > Martin Klapetek wrote: > I can also confirm that file dialogs do not have their size restored with > this patch (using tests/qfiledialogtest and also real dialogs around the > workspace), however testing the dir selection does give me properly restored > size dialog (./qfiledialogtest --staticFunction getExistingDirectory --modal > on). Qt 5.3.1 here. > > Lukáš Tinkl wrote: > Because KDirSelectDialog doesn't use KWindowConfig: > > > void KDirSelectDialog::Private::readConfig(const KSharedConfig::Ptr > &config, const QString &group) > { > > m_urlCombo->clear(); > > > > KConfigGroup conf(config, group); > > m_urlCombo->setHistoryItems(conf.readPathEntry("History Items", > QStringList())); > > > const QSize size = conf.readEntry("DirSelectDialog Size", QSize()); > > if (size.isValid()) { > > m_parent->resize(size); > > } > > } > > Martin Klapetek wrote: > Yup, didn't know that. Disabling this^ code breaks the resizing in dir > selection too.
There're actually more issues - nevertheless both steps are (theoretically) required. Creating the platform window *should* apply the widget size - I suspect a QWidget QPA bug here. Creating the window handle, then restoring the window handle and then explicitly copying the QWindow size should work, though. - Thomas ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/119594/#review63726 ----------------------------------------------------------- On Aug. 4, 2014, 11:57 vorm., Thomas Lübking wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/119594/ > ----------------------------------------------------------- > > (Updated Aug. 4, 2014, 11:57 vorm.) > > > Review request for KDE Frameworks, kdelibs, Aleix Pol Gonzalez, Lukáš Tinkl, > and Martin Klapetek. > > > Repository: frameworkintegration > > > Description > ------- > > - saving in the deconstrutor is insufficient, > the dialog might survive the runtime > -> needs to be saved when the dialog is finished or just closed > (the closeEvent is not invoked if at least a sync dialog is finished) > > - ensure a windowHandle and then restore the window size before calling > ::exec() > > - workaround an apparent QWidget QPA bug where even for a created platform > window > the QWindow geometry is not applied on the QWidget > > > Diffs > ----- > > src/platformtheme/kdeplatformfiledialogbase.cpp b823bc7 > src/platformtheme/kdeplatformfiledialogbase_p.h 8ef5b1e > src/platformtheme/kdeplatformfiledialoghelper.h 406a4f1 > src/platformtheme/kdeplatformfiledialoghelper.cpp 520b6f5 > > Diff: https://git.reviewboard.kde.org/r/119594/diff/ > > > Testing > ------- > > See > https://git.reviewboard.kde.org/r/119512/ > > > Thanks, > > Thomas Lübking > >