Frameworks/Epics/Contributions to Qt5: Difference between revisions

From KDE Community Wiki
No edit summary
m (Fix some glich in table layout)
 
(95 intermediate revisions by 18 users not shown)
Line 20: Line 20:
{{FeatureDone|QMimeData: export URLs as plain text too|David Faure, in Qt 5.0}}
{{FeatureDone|QMimeData: export URLs as plain text too|David Faure, in Qt 5.0}}
{{FeatureDone|QCryptographicHash: QIODevice support, to replace KMD5| Sune, in Qt 5.0}}
{{FeatureDone|QCryptographicHash: QIODevice support, to replace KMD5| Sune, in Qt 5.0}}
{{FeatureDone|Contact John Layt to get an [http://mail.kde.org/pipermail/kde-frameworks-devel/2012-January/000174.html update] on locales/datetime|Mario Fux}}
{{FeatureDone|Refcounted quit|Stephen Kelly, change 10408, in Qt 5.0}}
{{FeatureDone|Refcounted quit|Stephen Kelly, change 10408, in Qt 5.0}}
{{FeatureDone|QMimeType|David Faure, change 15585, in Qt 5.0}}
{{FeatureDone|QMimeType|David Faure, change 15585, in Qt 5.0}}
Line 28: Line 27:
{{FeatureDone|QSignalSpy::wait (replaces kWaitForSignal)|David Faure, change 30799, in Qt 5.0}}
{{FeatureDone|QSignalSpy::wait (replaces kWaitForSignal)|David Faure, change 30799, in Qt 5.0}}
{{FeatureDone|Add app display name to window titles|David Faure, change 42627, in Qt 5.0}}
{{FeatureDone|Add app display name to window titles|David Faure, change 42627, in Qt 5.0}}
{{FeatureDone|QMainWindow should follow the KDE HIG when changing the window title in a Plasma Workspace session (see KMainWindow::setCaption)|David Faure, commit 92bd9ae in Qt 5.0}}
{{FeatureDone|QSaveFile|David Faure (https://codereview.qt-project.org/41790), in Qt 5.1}}
{{FeatureDone|QSaveFile|David Faure (https://codereview.qt-project.org/41790), in Qt 5.1}}
{{FeatureDone|Add a Q_COREAPP_STARTUP_FUNCTION macro which allows to have code called just at the end of QCoreApplicationPrivate::init()|David Faure (https://codereview.qt-project.org/42002), in Qt 5.1}}
{{FeatureDone|Add a Q_COREAPP_STARTUP_FUNCTION macro which allows to have code called just at the end of QCoreApplicationPrivate::init()|David Faure (https://codereview.qt-project.org/42002), in Qt 5.1}}
Line 36: Line 36:
{{FeatureDone|QLockFile|David Faure (https://codereview.qt-project.org/46583), in Qt 5.1}}
{{FeatureDone|QLockFile|David Faure (https://codereview.qt-project.org/46583), in Qt 5.1}}
{{FeatureDone|QDebug: coloring the method name (blue for debugs, red for warnings)|Olivier Goffart (https://codereview.qt-project.org/47358), in Qt 5.1}}
{{FeatureDone|QDebug: coloring the method name (blue for debugs, red for warnings)|Olivier Goffart (https://codereview.qt-project.org/47358), in Qt 5.1}}
{{FeatureDone|QKeySequence to/from string|Kévin Ottens}}
{{FeatureDone|QKeySequence to/from string|Kévin Ottens, in Qt 5.1}}
{{FeatureDone|QMenu: title feature|Kévin Ottens (https://codereview.qt-project.org/49242)}}
{{FeatureDone|QMenu: title feature (sections)|Kévin Ottens (https://codereview.qt-project.org/49242), in Qt 5.1}}
{{FeatureDone|QMenu: keyboard navigation (from KMenu)|Kevin Ottens}}
{{FeatureDone|Create QPA theme plugin for setting KDE palette, font, widget style, etc. (in KDE), will require extensions on the Qt side, look at KGlobalSettings, some of it is there|Kevin Ottens}}
{{FeatureDone|Create QPA theme plugin for setting KDE palette, font, widget style, etc. (in KDE), will require extensions on the Qt side, look at KGlobalSettings, some of it is there|Kevin Ottens}}
{{FeatureDone|Extend QPA theme plugin to use KIconLoader within QIcon::fromTheme()|Kevin Ottens}}
{{FeatureDone|Extend QPA theme plugin to use KIconLoader within QIcon::fromTheme()|Kevin Ottens}}
{{FeatureDone|QUrl methods to replace the QUrlPathInfo attempt|David Faure (https://codereview.qt-project.org/44960)}}
{{FeatureDone|QCommandLineParser|Laszlo Papp (initially) / David Faure (now), in Qt 5.2}}
{{FeatureDone|contribute natural-comparison to Qt5 (see KStringHandler).  In Qt there is naturalCompare function but private and not as good as from KStringHandler. Thiago says: add the feature to QCollator.
apol: Figuring out how to use it without ICU. https://qt-project.org/wiki/QCollator
https://codereview.qt-project.org/#change,63545|Aleix Pol}}
{{FeatureDone|QLineEdit: support for clear button|Kevin Ottens https://codereview.qt-project.org/53155 + https://codereview.qt-project.org/53073}}
{{FeatureDone|QTextEdit: support for place holder text like place holder text in QLineEdit|Benjamin Port  (https://codereview.qt-project.org/53423)}}
{{FeatureDone|Rewrite QKeySequence::StandardKey to get the default keys from QPA, not just an enum. In KDE we can make the shortcuts configurable this way.|David Edmundson}}
{{FeatureDone|QTabBar: port signals from KTabBar|Ivan Komissarov (https://codereview.qt-project.org/#change,62415)}}
{{FeatureDone|Add the web color line edit to QColorDialog (KColorDialog has it)|David Gil (https://codereview.qt-project.org/53239) in Qt 5.2}}
{{FeatureDone|Add the color picker button to QColorDialog (KColorDialog has it)|David Gil (https://codereview.qt-project.org/53242) in Qt 5.2}}
{{FeatureDone|QToolBar should take its default settings from the global settings when running in a Plasma Workspace session (see loadKDESettings from KToolBar) https://codereview.qt-project.org/#change,63151
https://git.reviewboard.kde.org/r/112363/|Àlex Fiestas}}
{{FeatureDone|QInputDialog should have an equivalent of KInputDialog::getMultiLineText|David Gil (https://codereview.qt-project.org/55905) in Qt 5.2}}
{{FeatureDone|QInputDialog should have an equivalent of KInputDialog::getDouble with configurable step. RESULT: it's not really used and adding a step parameter or a new method makes the API ugly. Therefore, I abandon the patch.|David Gil (https://codereview.qt-project.org/54378)}}
{{FeatureDone|For better usability, QInputDialog::getItem should use a QListView instead of a QComboBox, like KInputDialog::getItemList. RESULT: Abandoned. Adding another static method to QInputDialog is not needed, since the same result can be achieved with QInputDialog::setOption(QInputDialog::UseListViewForComboBoxItems)|David Gil}}
{{FeatureDone|QFileDialog: add the QUrl equivalents of KFileDialog static methods to QFileDialog, should be possible to specify a optional list of protocols supported by the user code|Kevin Ottens (https://codereview.qt-project.org/51031)}}
{{FeatureDone|QFileDialog: add QUrl based API for the non-static use of QFileDialog (as mentionned on (https://codereview.qt-project.org/51031)|Kevin Ottens}}
{{FeatureDone|Make sure QNetworkAccessManager can list the protocols it supports|Kevin Ottens (https://codereview.qt-project.org/51088)}}
{{FeatureDone|Add icons to QLineEdit context menu (via qstyle?)|Aurélien Gâteau (https://codereview.qt-project.org/61221)}}
{{FeatureDone|Add icons to QTextBrowser context menu (via qstyle?)|Aurélien Gâteau (https://codereview.qt-project.org/61229)}}
{{FeatureDone|Allow to register a default syntax highlighter type for QTextEdit, the KDE backend would register the spell checking one coming from sonnet as default. Change dropped, added a TextEditDecorator class to Sonnet instead|Aurélien Gâteau (https://codereview.qt-project.org/62119)}}
{{FeatureDone|Make sure the QPA plugin can properly react to setting changes|Àlex Fiestas}}
{{FeatureDone|Restore the getenv+unsetenv _NET_STARTUP_INFO from Qt4 that got lost (work for the xcb backend, next step is using it kdbusservice.cpp)|David Faure (https://codereview.qt-project.org/54499)}}
{{FeatureDone|Restore QSessionManager from Qt4 that got broken. David Faure has started some work on this (https://codereview.qt-project.org/61662) https://codereview.qt-project.org/#change,64767|Teo Mrnjavac <[email protected]>}}
{{FeatureDone|Extend the QStyle API so that the styleHint() can control the default value for animated widgets (should animate or not by default?)|Àlex Fiestas}}
{{FeatureDone|Extend the QStyle API so that the styleHint() can control the default value QSplitter::opaqueResize|Rohan Garg <[email protected]> (https://codereview.qt-project.org/62207) }}
{{FeatureDone|Make sure QDialogButtonBox Ok button has Ctrl+Return as shortcut. https://codereview.qt-project.org/59140|[email protected]}}
{{FeatureDone|Port features of KPrintDialog to QPrintDialog|Martin Klapetek (in coordination with John Layt and help from Rohan Garg)}}
{{FeatureDone|Add a "base" property to QSpinBox|Kevin Ottens, commit 48e3cc30ed in Qt 5.2}}
{{FeatureDone|Add MIME Type filtering in QFileDialog|David Faure, commit ee9b9d9fd9 in Qt 5.2}}
{{FeatureDone|QLineEdit should control what shortcuts are overriden, such as Ctrl+U and Ctrl+E. See KLineEdit::overrideShortcut|David Edmundson, commit 0b1e30aee in Qt 5.2}}
{{FeatureDone|Add Banner Page support to the Job tabs|Martin Klapetek, in Qt 5.2}}
{{FeatureDone|Add Page Range support for apps that can't do it themselves (details: http://mail.kde.org/pipermail/kde-frameworks-devel/2013-September/005180.html)|Martin Klapetek, in Qt 5.2}}
{{FeatureDone|Add Page Set support (details: http://mail.kde.org/pipermail/kde-frameworks-devel/2013-September/005180.html)|Martin Klapetek, in Qt 5.2}}
{{FeatureDone|Make PagesPerSheet and PageSet/PageRange mutually exclusive (details: http://mail.kde.org/pipermail/kde-frameworks-devel/2013-September/005180.html)|Martin Klapetek, in Qt 5.2}}
{{FeatureDone|QTimeZone|John Layt, in Qt 5.2}}
|}
Below are the features which we considered adding to Qt, and ended up solving another way:
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"
|- style="background: #ececec; white-space:nowrap;"
! Status
! Description
!  width=120 | Contact
|-
{{FeatureDone|QLineEdit and QComboBox: support for URL drops (replace existing text, rather than append)|[email protected] (added in a separate class in kwidgetsaddons: LineEditUrlDropEventFilter)}}
{{FeatureDone|QTabWidget: give the possibility to hide the tabbar (used in many places if count is 0). Preferably called setTabBarHidden(bool) / isTabBarHidden() (then deprecate ktabwidget). RESULT: Since the exact same functionality can be achieved with tabBar()->hide(bool) and tabBar()->isHidden(), no methods have been added to QTabWidget and both KTabWidget methods have been deprecated.|David Gil}}
{{FeatureDone|QTabWidget: give the possibility to hide the tabbar (used in many places if count is 0). Preferably called setTabBarHidden(bool) / isTabBarHidden() (then deprecate ktabwidget). RESULT: Since the exact same functionality can be achieved with tabBar()->hide(bool) and tabBar()->isHidden(), no methods have been added to QTabWidget and both KTabWidget methods have been deprecated.|David Gil}}
{{FeatureDone|Make sure QDesktopServices can list the protocols it supports|Kevin Ottens (Turns out it's not even possible to know before hand with xdg-open for a start... It's not really essential anyway: cancelled)}}
{{FeatureDone|Make sure QDesktopServices can list the protocols it supports|Kevin Ottens (Turns out it's not even possible to know before hand with xdg-open for a start... It's not really essential anyway: cancelled)}}
{{FeatureDone|Add support for default vs active shortcuts to QAction (implemented in KActionCollection instead)|Kevin Ottens}}
{{FeatureDone|Add support for default vs active shortcuts to QAction (implemented in KActionCollection instead)|Kevin Ottens}}
{{FeatureInProgress|QUrl methods to replace the QUrlPathInfo attempt|David Faure (https://codereview.qt-project.org/44960)}}
{{FeatureInProgress|QCommandLineArguments|Laszlo Papp / David Faure; see qt5-feedback discussions; will be for Qt-5.2}}
{{FeatureTodo|QSqueezedTextLabel, or squeezing in QLabel|?}}
{{FeatureTodo|QFileSystemWatcher: support for watching non-existing files|David Faure}}
{{FeatureTodo|QCompleter: many missing features compared to KCompletion. Look at the completion model in http://qt-project.org/wiki/Qt-5-Ui-Helpers as a possible replacement which would also work for QML.|?}}
{{FeatureTodo|QLocalSocket/QLocalServer: support for abstract unix sockets|Thiago?}}
{{FeatureTodo|KProcess/KShell features in Qt?|Ossi}}
{{FeatureTodo|KProcess ForwardOnlyStdErr/ForwardOnlyStdOut features in Qt?|?}}
{{FeatureTodo|QCursor: auto-hide support (see KCursor API), plus styleHint to enable this in QLineEdit/QTextEdit (and let users turn this on/off in KConfig)|?}}
{{FeatureTodo|QCursor: theme support|?}}
{{FeatureTodo|QIcon: support for overlays|?}}
{{FeatureTodo|QPushButton: support for delayed menu|?}}
{{FeatureTodo|QSystemTray: support for the new dbus protocol (see KStatusNotifierItem)|?}}
{{FeatureTodo|QRecursiveFilterProxyModel|Stephen Kelly?}}
{{FeatureTodo|QPoTranslator (support for .po files, and locating them with QStandardPaths, so that libs can load them?)|??}}
{{FeatureInProgress|QLineEdit: support for clear button|Kevin Ottens}}
{{FeatureDone|QLineEdit: support for text squeezing|Kevin Ottens (only one user and half-broken feature anyway, cancelled)}}
{{FeatureDone|QLineEdit: support for text squeezing|Kevin Ottens (only one user and half-broken feature anyway, cancelled)}}
{{FeatureTodo|QLineEdit: support for URL drops (replace existing text, rather than append)|??}}
{{FeatureDone|QIcon: support for overlays (Unacceptable for Qt, ended up in kf5/kguiaddons - https://git.reviewboard.kde.org/r/112079/) |Martin Klapetek}}
{{FeatureTodo|QComboBox: support for URL drops (replace existing text, rather than append)|??}}
{{FeatureDone|Implement an equivalent of KPluginFactory for the new plugin system so that one module can contain more than one plugin type and create several instance (done in the kservice framework)|[email protected]}}
{{FeatureInProgress|QTextEdit: support for place holder text like place holder text in QLineEdit|Benjamin Port}}
{{FeatureDone|Use Q_PLUGIN_METADATA instead of KPluginInfo|[email protected]}}
{{FeatureInProgress|QTimeZone|John Layt}}
{{FeatureTodo|QLocale|John Layt}}
{{FeatureTodo|Printing|John Layt}}
{{FeatureTodo|Geolocation|??}}
{{FeatureInProgress|qDebug with categories, currently in an addon (playground/qlogger.git), plan is to have it in 5.1 |Wolfgang Beck, QTBUG-19536}}
{{FeatureTodo|Merge KStandardShortcut and QKeySequence::StandardKey|??}}
{{FeatureTodo|Rewrite QKeySequence::StandardKey to get the default keys from QPA, not just an enum. In KDE we can make the shortcuts configurable this way.|??}}
{{FeatureInProgress|QTabBar: port signals from KTabBar|Ivan Komissarov (https://codereview.qt-project.org/#change,29650)}}
{{FeatureInProgress|Add the web color line edit to QColorDialog (KColorDialog has it)|David Gil (https://codereview.qt-project.org/53239)}}
{{FeatureInProgress|Add the color picker button to QColorDialog (KColorDialog has it)|David Gil (https://codereview.qt-project.org/53242)}}
{{FeatureTodo|Make sure we have a QAction independent of QtWidgets in QtGui|??}}
{{FeatureTodo|QToolBar should take its default settings from the global settings when running in a Plasma Workspace session (see loadKDESettings from KToolBar)|??}}
{{FeatureTodo|QMainWindow should follow the KDE HIG when changing the window title in a Plasma Workspace session (see KMainWindow::setCaption)|??}}
{{FeatureTodo|Support for timer-based auto-selection in QAbstractItemView (triggered by styleHint, like QStyle::SH_ItemView_ActivateItemOnSingleClick triggers single-click mode)|??}}
{{FeatureInProgress|QInputDialog should have an equivalent of KInputDialog::getMultiLineText|David Gil}}
{{FeatureInProgress|QInputDialog should have an equivalent of KInputDialog::getDouble with configurable step|David Gil (https://codereview.qt-project.org/54378)}}
{{FeatureInProgress|QInputDialog should have an equivalent of KInputDialog::getItemList (multi-choice, not single choice like getItem)|David Gil}}
{{FeatureInProgress|QFileDialog: add the QUrl equivalents of KFileDialog static methods to QFileDialog, should be possible to specify a optional list of protocols supported by the user code|Kevin Ottens (https://codereview.qt-project.org/51031)}}
{{FeatureInProgress|Make sure QNetworkAccessManager can list the protocols it supports|Kevin Ottens (https://codereview.qt-project.org/51088)}}
{{FeatureTodo|Add icons to QTextBrowser context menu|??}}
{{FeatureTodo|Add support for "whatsthis:/text" urls to QTextBrowser|??}}
{{FeatureTodo|Make sure QTextBrowser automatically follows KDE settings for the wheel button behavior (scroll vs zoom) via backend|??}}
{{FeatureTodo|Allow to register a default syntax highlighter type for QTextEdit, the KDE backend would register the spell checking one coming from sonnet as default|??}}
{{FeatureTodo|KSsl*/QSsl* merge|Richard Moore}}
{{FeatureTodo|Make sure the QPA plugin can properly react to setting changes|?}}
{{FeatureTodo|Restore the getenv+unsetenv _NET_STARTUP_INFO from Qt4 that got lost (work for the xcb backend, also needs API in QGuiApplication, see comments in kdbusservice.cpp)|David Faure (https://codereview.qt-project.org/#change,53865)}}
{{FeatureTodo|Restore QSessionManager from Qt4 that got broken|?}}
{{FeatureInProgress|Extend the QStyle API so that the styleHint() can control the default value for animated widgets (should animate or not by default?)|Àlex Fiestas}}
{{FeatureTodo|Extend the QStyle API so that the styleHint() can control the default value QSplitter::opaqueResize|?}}
{{FeatureTodo|Make sure QDialogButtonBox Ok button has Ctrl+Return as shortcut|?}}
{{FeatureTodo|Implement an equivalent of KPluginFactory for the new plugin system so that one module can contain more than one plugin type and create several instance|?}}
|}
|}
Note: The qpa is withing staging/frameworkintegration/src/platformtheme

Latest revision as of 10:58, 15 July 2014

Contributing to Qt 5 epic

Quite some effort goes into Qt 5 in order to push into Qt some of the features which should be in Qt and not in KDE Frameworks. Usually because all Qt apps would benefit from them even outside the KDE world, and because this cuts dependencies between the KDE frameworks.

Once a class is ready to be contributed into Qt, it can also be added to KDE frameworks in libkdeqt5staging/src, for immediate use in kdelibs-frameworks. When we can depend on the Qt5 version that has the class, we can remove it from libkdeqt5staging.

If the addition to Qt is a new method rather than a new class, then an intermediate solution has to be found (possibly with a different API).

Status Description Contact
DONE QStandardPaths David Faure, in Qt 5.0
DONE QTemporaryFile (better defaults) David Faure, in Qt 5.0
DONE QObject::findChildren(Qt::FindDirectChildrenOnly) David Faure, in Qt 5.0
DONE QTemporaryDir David Faure, in Qt 5.0
DONE QMimeData: export URLs as plain text too David Faure, in Qt 5.0
DONE QCryptographicHash: QIODevice support, to replace KMD5 Sune, in Qt 5.0
DONE Refcounted quit Stephen Kelly, change 10408, in Qt 5.0
DONE QMimeType David Faure, change 15585, in Qt 5.0
DONE KUrl/QUrl merge David Faure and Thiago Macieira (QUrl), in Qt 5.0
DONE KDebug features into QDebug Started by Kai Koehne (Nokia) in change 13433, then Wolfgang Beck implemented category logging (13226), and an addon for the API (see QTBUG-19536). Missing API in Qt itself -> 5.1
DONE Native event filtering in QCoreApplication David Faure, change 29260, in Qt 5.0
DONE QSignalSpy::wait (replaces kWaitForSignal) David Faure, change 30799, in Qt 5.0
DONE Add app display name to window titles David Faure, change 42627, in Qt 5.0
DONE QMainWindow should follow the KDE HIG when changing the window title in a Plasma Workspace session (see KMainWindow::setCaption) David Faure, commit 92bd9ae in Qt 5.0
DONE QSaveFile David Faure (https://codereview.qt-project.org/41790), in Qt 5.1
DONE Add a Q_COREAPP_STARTUP_FUNCTION macro which allows to have code called just at the end of QCoreApplicationPrivate::init() David Faure (https://codereview.qt-project.org/42002), in Qt 5.1
DONE QDebugStateSaver David Faure (https://codereview.qt-project.org/41793), in Qt 5.1
DONE K/Q_GLOBAL_STATIC merge Thiago Macieira (https://codereview.qt-project.org/43297), in Qt 5.1
DONE qunsetenv David Faure (https://codereview.qt-project.org/44599), in Qt 5.1
DONE Restore QX11Info, in qtx11extras.git Richard Moore and David Faure (https://codereview.qt-project.org/45266), in Qt 5.1
DONE QLockFile David Faure (https://codereview.qt-project.org/46583), in Qt 5.1
DONE QDebug: coloring the method name (blue for debugs, red for warnings) Olivier Goffart (https://codereview.qt-project.org/47358), in Qt 5.1
DONE QKeySequence to/from string Kévin Ottens, in Qt 5.1
DONE QMenu: title feature (sections) Kévin Ottens (https://codereview.qt-project.org/49242), in Qt 5.1
DONE Create QPA theme plugin for setting KDE palette, font, widget style, etc. (in KDE), will require extensions on the Qt side, look at KGlobalSettings, some of it is there Kevin Ottens
DONE Extend QPA theme plugin to use KIconLoader within QIcon::fromTheme() Kevin Ottens


DONE QUrl methods to replace the QUrlPathInfo attempt David Faure (https://codereview.qt-project.org/44960)
DONE QCommandLineParser Laszlo Papp (initially) / David Faure (now), in Qt 5.2
DONE contribute natural-comparison to Qt5 (see KStringHandler). In Qt there is naturalCompare function but private and not as good as from KStringHandler. Thiago says: add the feature to QCollator.

apol: Figuring out how to use it without ICU. https://qt-project.org/wiki/QCollator https://codereview.qt-project.org/#change,63545

Aleix Pol
DONE QLineEdit: support for clear button Kevin Ottens https://codereview.qt-project.org/53155 + https://codereview.qt-project.org/53073
DONE QTextEdit: support for place holder text like place holder text in QLineEdit Benjamin Port (https://codereview.qt-project.org/53423)
DONE Rewrite QKeySequence::StandardKey to get the default keys from QPA, not just an enum. In KDE we can make the shortcuts configurable this way. David Edmundson
DONE QTabBar: port signals from KTabBar Ivan Komissarov (https://codereview.qt-project.org/#change,62415)
DONE Add the web color line edit to QColorDialog (KColorDialog has it) David Gil (https://codereview.qt-project.org/53239) in Qt 5.2
DONE Add the color picker button to QColorDialog (KColorDialog has it) David Gil (https://codereview.qt-project.org/53242) in Qt 5.2
DONE QToolBar should take its default settings from the global settings when running in a Plasma Workspace session (see loadKDESettings from KToolBar) https://codereview.qt-project.org/#change,63151

https://git.reviewboard.kde.org/r/112363/

Àlex Fiestas
DONE QInputDialog should have an equivalent of KInputDialog::getMultiLineText David Gil (https://codereview.qt-project.org/55905) in Qt 5.2
DONE QInputDialog should have an equivalent of KInputDialog::getDouble with configurable step. RESULT: it's not really used and adding a step parameter or a new method makes the API ugly. Therefore, I abandon the patch. David Gil (https://codereview.qt-project.org/54378)
DONE For better usability, QInputDialog::getItem should use a QListView instead of a QComboBox, like KInputDialog::getItemList. RESULT: Abandoned. Adding another static method to QInputDialog is not needed, since the same result can be achieved with QInputDialog::setOption(QInputDialog::UseListViewForComboBoxItems) David Gil
DONE QFileDialog: add the QUrl equivalents of KFileDialog static methods to QFileDialog, should be possible to specify a optional list of protocols supported by the user code Kevin Ottens (https://codereview.qt-project.org/51031)
DONE QFileDialog: add QUrl based API for the non-static use of QFileDialog (as mentionned on (https://codereview.qt-project.org/51031) Kevin Ottens
DONE Make sure QNetworkAccessManager can list the protocols it supports Kevin Ottens (https://codereview.qt-project.org/51088)
DONE Add icons to QLineEdit context menu (via qstyle?) Aurélien Gâteau (https://codereview.qt-project.org/61221)
DONE Add icons to QTextBrowser context menu (via qstyle?) Aurélien Gâteau (https://codereview.qt-project.org/61229)
DONE Allow to register a default syntax highlighter type for QTextEdit, the KDE backend would register the spell checking one coming from sonnet as default. Change dropped, added a TextEditDecorator class to Sonnet instead Aurélien Gâteau (https://codereview.qt-project.org/62119)
DONE Make sure the QPA plugin can properly react to setting changes Àlex Fiestas
DONE Restore the getenv+unsetenv _NET_STARTUP_INFO from Qt4 that got lost (work for the xcb backend, next step is using it kdbusservice.cpp) David Faure (https://codereview.qt-project.org/54499)
DONE Restore QSessionManager from Qt4 that got broken. David Faure has started some work on this (https://codereview.qt-project.org/61662) https://codereview.qt-project.org/#change,64767 Teo Mrnjavac <[email protected]>
DONE Extend the QStyle API so that the styleHint() can control the default value for animated widgets (should animate or not by default?) Àlex Fiestas
DONE Extend the QStyle API so that the styleHint() can control the default value QSplitter::opaqueResize Rohan Garg <[email protected]> (https://codereview.qt-project.org/62207)
DONE Make sure QDialogButtonBox Ok button has Ctrl+Return as shortcut. https://codereview.qt-project.org/59140 [email protected]
DONE Port features of KPrintDialog to QPrintDialog Martin Klapetek (in coordination with John Layt and help from Rohan Garg)
DONE Add a "base" property to QSpinBox Kevin Ottens, commit 48e3cc30ed in Qt 5.2
DONE Add MIME Type filtering in QFileDialog David Faure, commit ee9b9d9fd9 in Qt 5.2
DONE QLineEdit should control what shortcuts are overriden, such as Ctrl+U and Ctrl+E. See KLineEdit::overrideShortcut David Edmundson, commit 0b1e30aee in Qt 5.2
DONE Add Banner Page support to the Job tabs Martin Klapetek, in Qt 5.2
DONE Add Page Range support for apps that can't do it themselves (details: http://mail.kde.org/pipermail/kde-frameworks-devel/2013-September/005180.html) Martin Klapetek, in Qt 5.2
DONE Add Page Set support (details: http://mail.kde.org/pipermail/kde-frameworks-devel/2013-September/005180.html) Martin Klapetek, in Qt 5.2
DONE Make PagesPerSheet and PageSet/PageRange mutually exclusive (details: http://mail.kde.org/pipermail/kde-frameworks-devel/2013-September/005180.html) Martin Klapetek, in Qt 5.2
DONE QTimeZone John Layt, in Qt 5.2


Below are the features which we considered adding to Qt, and ended up solving another way:

Status Description Contact
DONE QLineEdit and QComboBox: support for URL drops (replace existing text, rather than append) [email protected] (added in a separate class in kwidgetsaddons: LineEditUrlDropEventFilter)
DONE QTabWidget: give the possibility to hide the tabbar (used in many places if count is 0). Preferably called setTabBarHidden(bool) / isTabBarHidden() (then deprecate ktabwidget). RESULT: Since the exact same functionality can be achieved with tabBar()->hide(bool) and tabBar()->isHidden(), no methods have been added to QTabWidget and both KTabWidget methods have been deprecated. David Gil
DONE Make sure QDesktopServices can list the protocols it supports Kevin Ottens (Turns out it's not even possible to know before hand with xdg-open for a start... It's not really essential anyway: cancelled)
DONE Add support for default vs active shortcuts to QAction (implemented in KActionCollection instead) Kevin Ottens
DONE QLineEdit: support for text squeezing Kevin Ottens (only one user and half-broken feature anyway, cancelled)
DONE QIcon: support for overlays (Unacceptable for Qt, ended up in kf5/kguiaddons - https://git.reviewboard.kde.org/r/112079/) Martin Klapetek
DONE Implement an equivalent of KPluginFactory for the new plugin system so that one module can contain more than one plugin type and create several instance (done in the kservice framework) [email protected]
DONE Use Q_PLUGIN_METADATA instead of KPluginInfo [email protected]

Note: The qpa is withing staging/frameworkintegration/src/platformtheme