Review Request 121265: Make modified flag work for KMainWindow::setCaption(QString, bool)
David Faure
faure at kde.org
Sat Dec 6 11:07:24 UTC 2014
> On Nov. 27, 2014, 8:18 a.m., Martin Gräßlin wrote:
> > weird suggestion: why not let the window manager handle it? Expose it as an X11 property which gets read by the window manager/desktop shell and applies a semantic way to highlight that it's modified.
This would require changes in Qt, a bit out of scope for this shorter-term making-it-work patch, no?
- David
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/121265/#review71000
-----------------------------------------------------------
On Nov. 27, 2014, 3:10 a.m., Friedrich W. H. Kossebau wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/121265/
> -----------------------------------------------------------
>
> (Updated Nov. 27, 2014, 3:10 a.m.)
>
>
> Review request for KDE Frameworks.
>
>
> Repository: kxmlgui
>
>
> Description
> -------
>
> The API dox of KMainWindow::setCaption(const QString &caption, bool modified) claims that the flag modified specifies "whether the document is modified. This displays an additional sign in the title bar, usually "*"."
> See http://api.kde.org/frameworks-api/frameworks5-apidocs/kxmlgui/html/classKMainWindow.html#aa78364d5eeb1c1f5bd333c733378741d
>
> Currently that is not true. Instead a warning is shown on the console:
> "QWidgetPrivate::setWindowModified_helper: QWidget::setWindowModified: The window title does not contain a '[*]' placeholder"
>
> When 'KDialog::setCaption(QString, bool)' was moved to 'KMainWindow::setCaption(QString, bool)' for kf5, it was dumped that the old code also called ' makeStandardCaption(...)' which would add a custom "[modified]" string if the 'modified' flag was set. See http://api.kde.org/4.x-api/kdelibs-apidocs/kdeui/html/kdialog_8cpp_source.html#l00475
>
> Now KMainWindow uses the 'windowModified' property of 'QWidget', and if doing so, the windowtitle needs a placeholder where to put the modified marker, by the form of "[*]". See https://qt-project.org/doc/qt-5/qwidget.html#windowTitle-prop
>
> This patch proposes to comply to the API and to add that placeholder, so the method behaves as expected. It does not use "[modified]" flag like the kde4libs variant of the code did, but by using the Qt placeholder perhaps can even integrate better into the platform (not sure if there is a hook yet).
>
>
> Diffs
> -----
>
> src/kmainwindow.cpp 9562318
>
> Diff: https://git.reviewboard.kde.org/r/121265/diff/
>
>
> Testing
> -------
>
> Modified is now properly marked to Off or On in the window title, when 'KMainWindow::setCaption(QString,bool)' is used. Tested with Okteta.
>
>
> Thanks,
>
> Friedrich W. H. Kossebau
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20141206/b55accf2/attachment-0001.html>
More information about the Kde-frameworks-devel
mailing list