Review Request 123276: Plasma-framework: Fix coding style, width should be renamed to height.
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123276/ --- Review request for Plasma. Repository: plasma-framework Description --- Fix coding style width - height. Diffs - src/plasmaquick/appletquickitem.cpp 1abedf0 Diff: https://git.reviewboard.kde.org/r/123276/diff/ Testing --- Thanks, Antonis Tsiapaliokas ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Review Request 123276: Plasma-framework: Fix coding style, width should be renamed to height.
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123276/#review78561 --- Ship it! Ship It! - David Edmundson On April 6, 2015, 2:07 p.m., Antonis Tsiapaliokas wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123276/ --- (Updated April 6, 2015, 2:07 p.m.) Review request for Plasma. Repository: plasma-framework Description --- Fix coding style width - height. Diffs - src/plasmaquick/appletquickitem.cpp 1abedf0 Diff: https://git.reviewboard.kde.org/r/123276/diff/ Testing --- Thanks, Antonis Tsiapaliokas ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Consider visualParent rotation in popupPosition
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/438 Change subject: Consider visualParent rotation in popupPosition .. Consider visualParent rotation in popupPosition if there are transforms in the scene, to correctly compute the position the transform is needed to be accounter for. QQuickITem::mapRectToScene does consider tranforms. this adresses bug 345787 where the toolbox may be rotated. BUG:345787 Change-Id: I13a5509d95a7498382155abf3c3d195708de56a6 --- M src/plasmaquick/dialog.cpp A tests/dialog_positioning_parentrotated.qml 2 files changed, 102 insertions(+), 5 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/38/438/1 diff --git a/src/plasmaquick/dialog.cpp b/src/plasmaquick/dialog.cpp index cdf78eb..2166880 100644 --- a/src/plasmaquick/dialog.cpp +++ b/src/plasmaquick/dialog.cpp @@ -829,19 +829,23 @@ if (outsideParentWindow) { parentGeometryBounds = item-window()-geometry(); } else { -parentGeometryBounds = QRect(pos.toPoint(), QSize(item-width(), item-height())); +parentGeometryBounds = item-mapRectToScene(item-boundingRect()).toRect(); +if (item-window()) { + parentGeometryBounds.moveTopLeft(item-window()-mapToGlobal(parentGeometryBounds.topLeft())); +pos = parentGeometryBounds.topLeft(); +} } -const QPoint topPoint(pos.x() + (item-boundingRect().width() - size.width()) / 2, +const QPoint topPoint(pos.x() + (item-mapRectToScene(item-boundingRect()).width() - size.width()) / 2, parentGeometryBounds.top() - size.height()); -const QPoint bottomPoint(pos.x() + (item-boundingRect().width() - size.width()) / 2, +const QPoint bottomPoint(pos.x() + (item-mapRectToScene(item-boundingRect()).width() - size.width()) / 2, parentGeometryBounds.bottom()); const QPoint leftPoint(parentGeometryBounds.left() - size.width(), - pos.y() + (item-boundingRect().height() - size.height()) / 2); + pos.y() + (item-mapRectToScene(item-boundingRect()).height() - size.height()) / 2); const QPoint rightPoint(parentGeometryBounds.right(), -pos.y() + (item-boundingRect().height() - size.height()) / 2); +pos.y() + (item-mapRectToScene(item-boundingRect()).height() - size.height()) / 2); QPoint dialogPos; if (d-location == Plasma::Types::TopEdge) { diff --git a/tests/dialog_positioning_parentrotated.qml b/tests/dialog_positioning_parentrotated.qml new file mode 100644 index 000..34e95c7 --- /dev/null +++ b/tests/dialog_positioning_parentrotated.qml @@ -0,0 +1,93 @@ +/* + * Copyright 2014 Vishesh Handa vha...@kde.org + * Copyright 2015 Marco Martin m...@kde.org + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2, + * or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details + * + * You should have received a copy of the GNU Library General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +import QtQuick 2.0 + +import QtQuick.Controls 1.1 as Controls +import QtQuick.Layouts 1.1 + +import org.kde.plasma.core 2.0 as PlasmaCore +import org.kde.plasma.components 2.0 as PlasmaComponents +import org.kde.plasma.extras 2.0 as PlasmaExtras + +ColumnLayout +{ +height: units.gridUnit * 20 +Controls.Label { +id: label +text: Press the buttom and make sure the popup is on the correct place +wrapMode: Text.WordWrap +} +PlasmaComponents.Button { +id: settingsButton +iconSource: configure +text: Press Me +Layout.alignment: Qt.AlignHCenter +rotation: 90 + +onClicked: { +contextMenu.visible = !contextMenu.visible; +} +} + +PlasmaCore.Dialog { +id: contextMenu +visualParent: settingsButton + +location: PlasmaCore.Types.BottomEdge +type: PlasmaCore.Dialog.PopupMenu +flags: Qt.Popup | Qt.FramelessWindowHint | Qt.WindowDoesNotAcceptFocus + +mainItem: ColumnLayout { +id: menuColumn +Layout.minimumWidth: menuColumn.implicitWidth +Layout.minimumHeight: menuColumn.implicitHeight +spacing: units.smallSpacing + +PlasmaExtras.Heading
Change in plasma-framework[master]: Simplify code flow
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/419 Change subject: Simplify code flow .. Simplify code flow return immediately rather than wrapping an entire function inside an if Change-Id: Ic5046875ad39795248496a0d71f77b1e476058c4 --- M src/plasmaquick/dialog.cpp 1 file changed, 59 insertions(+), 57 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/19/419/1 diff --git a/src/plasmaquick/dialog.cpp b/src/plasmaquick/dialog.cpp index 097cc31..34e5424 100644 --- a/src/plasmaquick/dialog.cpp +++ b/src/plasmaquick/dialog.cpp @@ -692,64 +692,66 @@ void Dialog::setMainItem(QQuickItem *mainItem) { -if (d-mainItem != mainItem) { -disconnect(d-mainItem, 0, this, 0); -disconnect(d-mainItemLayout, 0, this, 0); - -d-hintsCommitTimer.stop(); -if (d-mainItem) { -d-mainItem-setVisible(false); -} - -d-mainItem = mainItem; - -if (mainItem) { -d-mainItem-setVisible(isVisible()); -mainItem-setParentItem(contentItem()); - -connect(mainItem, SIGNAL(widthChanged()), this, SLOT(slotMainItemSizeChanged())); -connect(mainItem, SIGNAL(heightChanged()), this, SLOT(slotMainItemSizeChanged())); -d-slotMainItemSizeChanged(); - -//Extract the representation's Layout, if any -QObject *layout = 0; -setMinimumSize(QSize(0, 0)); -setMaximumSize(QSize(DIALOGSIZE_MAX, DIALOGSIZE_MAX)); - -//Search a child that has the needed Layout properties -//HACK: here we are not type safe, but is the only way to access to a pointer of Layout -foreach (QObject *child, mainItem-children()) { -//find for the needed property of Layout: minimum/maximum/preferred sizes and fillWidth/fillHeight -if (child-property(minimumWidth).isValid() child-property(minimumHeight).isValid() -child-property(preferredWidth).isValid() child-property(preferredHeight).isValid() -child-property(maximumWidth).isValid() child-property(maximumHeight).isValid() -child-property(fillWidth).isValid() child-property(fillHeight).isValid() - ) { -layout = child; -} -} -if (d-mainItemLayout) { -disconnect(d-mainItemLayout, 0, this, 0); -} -d-mainItemLayout = layout; - -if (layout) { -//Why queued connections? -//we need to be sure that the properties are -//already *all* updated when we call the management code -connect(layout, SIGNAL(minimumWidthChanged()), this, SLOT(updateMinimumWidth())); -connect(layout, SIGNAL(minimumHeightChanged()), this, SLOT(updateMinimumHeight())); -connect(layout, SIGNAL(maximumWidthChanged()), this, SLOT(updateMaximumWidth())); -connect(layout, SIGNAL(maximumHeightChanged()), this, SLOT(updateMaximumHeight())); - -d-updateLayoutParameters(); -} - -} - -//if this is called in Component.onCompleted we have to wait a loop the item is added to a scene -emit mainItemChanged(); +if (d-mainItem == mainItem) { +return; } + +disconnect(d-mainItem, 0, this, 0); +disconnect(d-mainItemLayout, 0, this, 0); + +d-hintsCommitTimer.stop(); +if (d-mainItem) { +d-mainItem-setVisible(false); +} + +d-mainItem = mainItem; + +if (mainItem) { +d-mainItem-setVisible(isVisible()); +mainItem-setParentItem(contentItem()); + +connect(mainItem, SIGNAL(widthChanged()), this, SLOT(slotMainItemSizeChanged())); +connect(mainItem, SIGNAL(heightChanged()), this, SLOT(slotMainItemSizeChanged())); +d-slotMainItemSizeChanged(); + +//Extract the representation's Layout, if any +QObject *layout = 0; +setMinimumSize(QSize(0, 0)); +setMaximumSize(QSize(DIALOGSIZE_MAX, DIALOGSIZE_MAX)); + +//Search a child that has the needed Layout properties +//HACK: here we are not type safe, but is the only way to access to a pointer of Layout +foreach (QObject *child, mainItem-children()) { +//find for the needed property of Layout: minimum/maximum/preferred sizes and fillWidth/fillHeight +if (child-property(minimumWidth).isValid() child-property(minimumHeight).isValid() +child-property(preferredWidth).isValid() child-property(preferredHeight).isValid() +child-property(maximumWidth).isValid() child-property(maximumHeight).isValid() +child-property(fillWidth).isValid() child-property
Change in plasma-framework[master]: Disconnect connections to d-mainItem when it has changed
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/418 Change subject: Disconnect connections to d-mainItem when it has changed .. Disconnect connections to d-mainItem when it has changed This is needed as otherwise we can have a situation where d-mainItem is null, yet we still have connections to an object that exists causing a crash if the old mainItem resizes. BUG: 343963 Change-Id: Ie398a591915fa02d4d97ce7ad5289e3b24038087 --- M src/plasmaquick/dialog.cpp 1 file changed, 3 insertions(+), 0 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/18/418/1 diff --git a/src/plasmaquick/dialog.cpp b/src/plasmaquick/dialog.cpp index 0d820a6..097cc31 100644 --- a/src/plasmaquick/dialog.cpp +++ b/src/plasmaquick/dialog.cpp @@ -693,6 +693,9 @@ void Dialog::setMainItem(QQuickItem *mainItem) { if (d-mainItem != mainItem) { +disconnect(d-mainItem, 0, this, 0); +disconnect(d-mainItemLayout, 0, this, 0); + d-hintsCommitTimer.stop(); if (d-mainItem) { d-mainItem-setVisible(false); -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/418 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ie398a591915fa02d4d97ce7ad5289e3b24038087 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Fix segfault in KWin when all screens disappear
Jan Kundrát has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/415 Change subject: Fix segfault in KWin when all screens disappear .. Fix segfault in KWin when all screens disappear This is due to changes in Qt 5.5; they now attempt to gracefully handle a situation where all screens disappear, e.g., when user disables all outputs via xrandr. Without this patch (and with [1] and [2] in place), here's how KWin ended up: #0 xcb_send_request (c=0x0, flags=flags@entry=0, vector=vector@entry=0x7ffce7a537d0, req=req@entry=0x7f3d1c55bb60 xcb_req) at /var/tmp/portage/x11-libs/libxcb-1.11-r1/work/libxcb-1.11/src/xcb_out.c:187 #1 0x7f3d1c54f29f in xcb_list_properties_unchecked (c=optimized out, window=optimized out) at xproto.c:2650 #2 0x7f3d1a18285d in Plasma::EffectWatcher::isEffectActive (this=this@entry=0x7f3d1f1be290) at /var/tmp/portage/kde-frameworks/plasma-5.7.0/work/plasma-framework-5.7.0/src/plasma/private/effectwatcher.cpp:91 #3 0x7f3d1a1829a9 in isEffectActive (this=0x7f3d1f1be290) at /var/tmp/portage/kde-frameworks/plasma-5.7.0/work/plasma-framework-5.7.0/src/plasma/private/effectwatcher.cpp:79 #4 Plasma::EffectWatcher::nativeEventFilter (this=0x7f3d1f1be290, eventType=..., message=0x7f3d04005160, result=optimized out) at /var/tmp/portage/kde-frameworks/plasma-5.7.0/work/plasma-framework-5.7.0/src/plasma/private/effectwatcher.cpp:76 #5 0x7f3d1ca3aa8a in QAbstractEventDispatcher::filterNativeEvent (this=optimized out, eventType=..., message=message@entry=0x7f3d04005160, result=result@entry=0x7ffce7a538e8) at /var/tmp/portage/dev-qt/qtcore-5.5./work/qtcore-5.5./src/corelib/kernel/qabstracteventdispatcher.cpp:460 #6 0x7f3d0c6d6951 in QXcbConnection::handleXcbEvent (this=this@entry=0x7f3d1f13c5a0, event=event@entry=0x7f3d04005160) at /var/tmp/portage/dev-qt/qtgui-5.5./work/qtgui-5.5./src/plugins/platforms/xcb/qxcbconnection.cpp:971 #7 0x7f3d0c6d89b3 in QXcbConnection::processXcbEvents (this=0x7f3d1f13c5a0) at /var/tmp/portage/dev-qt/qtgui-5.5./work/qtgui-5.5./src/plugins/platforms/xcb/qxcbconnection.cpp:1376 #8 0x7f3d1ca77c86 in QObject::event (this=0x7f3d1f13c5a0, e=optimized out) at /var/tmp/portage/dev-qt/qtcore-5.5./work/qtcore-5.5./src/corelib/kernel/qobject.cpp:1246 #9 0x7f3d1d391ddc in QApplicationPrivate::notify_helper (this=this@entry=0x7f3d1f135000, receiver=receiver@entry=0x7f3d1f13c5a0, e=e@entry=0x7f3d040051d0) at /var/tmp/portage/dev-qt/qtwidgets-5.5./work/qtwidgets-5.5./src/widgets/kernel/qapplication.cpp:3716 #10 0x7f3d1d3977ba in QApplication::notify (this=0x7ffce7a540b0, receiver=0x7f3d1f13c5a0, e=0x7f3d040051d0) at /var/tmp/portage/dev-qt/qtwidgets-5.5./work/qtwidgets-5.5./src/widgets/kernel/qapplication.cpp:3499 #11 0x7f3d1ca3e9cd in QCoreApplication::notifyInternal (this=0x7ffce7a540b0, receiver=0x7f3d1f13c5a0, event=event@entry=0x7f3d040051d0) at /var/tmp/portage/dev-qt/qtcore-5.5./work/qtcore-5.5./src/corelib/kernel/qcoreapplication.cpp:963 #12 0x7f3d1ca4142b in sendEvent (event=0x7f3d040051d0, receiver=optimized out) at /var/tmp/portage/dev-qt/qtcore-5.5./work/qtcore-5.5./src/corelib/kernel/qcoreapplication.h:228 #13 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x7f3d1f126340) at /var/tmp/portage/dev-qt/qtcore-5.5./work/qtcore-5.5./src/corelib/kernel/qcoreapplication.cpp:1580 #14 0x7f3d1caa343a in QEventDispatcherUNIX::processEvents (this=0x7f3d1f15ea90, flags=flags@entry=...) at /var/tmp/portage/dev-qt/qtcore-5.5./work/qtcore-5.5./src/corelib/kernel/qeventdispatcher_unix.cpp:579 #15 0x7f3d0c7160a0 in QUnixEventDispatcherQPA::processEvents (this=optimized out, flags=...) at /var/tmp/portage/dev-qt/qtgui-5.5./work/qtgui-5.5./src/platformsupport/eventdispatchers/qunixeventdispatcher.cpp:62 #16 0x7f3d1ca3be4b in QEventLoop::exec (this=this@entry=0x7ffce7a53fa0, flags=..., flags@entry=...) at /var/tmp/portage/dev-qt/qtcore-5.5./work/qtcore-5.5./src/corelib/kernel/qeventloop.cpp:204 #17 0x7f3d1ca4521e in QCoreApplication::exec () at /var/tmp/portage/dev-qt/qtcore-5.5./work/qtcore-5.5./src/corelib/kernel/qcoreapplication.cpp:1216 #18 0x7f3d1cd90a0a in QGuiApplication::exec () at /var/tmp/portage/dev-qt/qtgui-5.5./work/qtgui-5.5./src/gui/kernel/qguiapplication.cpp:1522 #19 0x7f3d1d38db8b in QApplication::exec () at /var/tmp/portage/dev-qt/qtwidgets-5.5./work/qtwidgets-5.5./src/widgets/kernel/qapplication.cpp:2976 #20 0x7f3d1e5c4bcf in kdemain (argc=2, argv=0x7ffce7a54208) at /var/tmp/portage/kde-plasma/kwin-5.2./work/kwin-5.2./main_x11.cpp:294 #21 0x7f3d1e23f9f5 in __libc_start_main (main=0x7f3d1e9eb9a0
[plasma-framework] src/declarativeimports/core: Shorter animations
Git commit 2cf49abb3e2c4e8ea8d5cb55e523dc1c3f57bddd by Sebastian Kügler. Committed on 21/02/2015 at 18:53. Pushed by sebas into branch 'master'. Shorter animations This patch cuts down animation time quite considerably. We've discussed this during the sprint. The default long animation is now 120ms instead of 250. We have played around with different values, and this seemed to hit sweet spot between the interface feeling really snappy, but the animations still visible, so no sudden transitions in the UI. We should consider doing something similar for kwin animations. Reviewed-by: Kai Uwe Marco CCMAIL:plasma-devel@kde.org CCMAIL:k...@kde.org M +1-1src/declarativeimports/core/units.cpp http://commits.kde.org/plasma-framework/2cf49abb3e2c4e8ea8d5cb55e523dc1c3f57bddd diff --git a/src/declarativeimports/core/units.cpp b/src/declarativeimports/core/units.cpp index a740145..148e08c 100644 --- a/src/declarativeimports/core/units.cpp +++ b/src/declarativeimports/core/units.cpp @@ -35,7 +35,7 @@ const QString plasmarc = QStringLiteral(plasmarc); const QString groupName = QStringLiteral(Units); -const int defaultLongDuration = 250; +const int defaultLongDuration = 120; Units::Units(QObject *parent) : QObject(parent), ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: support for C++ applets
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/374 Change subject: support for C++ applets .. support for C++ applets make possible for an applet to be implemented in c++ but still have the qml package with the usual api, this was supposed to be supported from the beginning. if a c++ applet has been loaded, make available the property plasmoid.nativeInterface to the qml part, exposing the subclasses Applet instance with all eventual extra propertiels/slots. if no c++ plugin is present, appletInterface will be dummy/not available this (besides limiting a bit the qml import rabbit procreation) makes available some things not available to normal private imports: * access to applet config() to save more complex things compared to what kconfigxt allows or save/load stuff from the c++ part * access to containment()/corona(), may be useful for containment implementations * easier port for old very big applets such as comics/weather Change-Id: I65117660043de3a60ad58c77b086f686683d4d8c --- M src/plasma/pluginloader.cpp M src/scriptengines/qml/plasmoid/appletinterface.cpp M src/scriptengines/qml/plasmoid/appletinterface.h 3 files changed, 26 insertions(+), 3 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/74/374/1 diff --git a/src/plasma/pluginloader.cpp b/src/plasma/pluginloader.cpp index 48cd46c..7ecdd15 100644 --- a/src/plasma/pluginloader.cpp +++ b/src/plasma/pluginloader.cpp @@ -201,8 +201,8 @@ QVariantList allArgs; allArgs offer-storageId() appletId args; - -if (!offer-property(X-Plasma-API).toString().isEmpty()) { +if (!offer-property(X-Plasma-API).toString().isEmpty() +offer-property(Library).toString().isEmpty()) { #ifndef NDEBUG // qDebug() we have a script using the // offer-property(X-Plasma-API).toString() API; diff --git a/src/scriptengines/qml/plasmoid/appletinterface.cpp b/src/scriptengines/qml/plasmoid/appletinterface.cpp index 0ec2c34..ab8056b 100644 --- a/src/scriptengines/qml/plasmoid/appletinterface.cpp +++ b/src/scriptengines/qml/plasmoid/appletinterface.cpp @@ -63,6 +63,7 @@ m_busy(false), m_hideOnDeactivate(true), m_oldKeyboardShortcut(0), + m_dummyNativeInterface(0), m_positionBeforeRemoval(QPointF(-1, -1)) { qmlRegisterTypeQAction(); @@ -118,7 +119,8 @@ m_appletScriptEngine(0), m_backgroundHints(Plasma::Types::StandardBackground), m_busy(false), - m_hideOnDeactivate(true) + m_hideOnDeactivate(true), + m_dummyNativeInterface(0) { qmlRegisterTypeQAction(); @@ -585,6 +587,19 @@ applet()-setGlobalShortcut(sequence); } +QObject *AppletInterface::nativeInterface() +{ +if (applet()-metaObject()-className() != Plasma::Applet) { +return applet(); +} else { +//This being CONSTANT is guaranteed to be called only once +if (!m_dummyNativeInterface) { +m_dummyNativeInterface = new QObject(this); +} +return m_dummyNativeInterface; +} +} + QString AppletInterface::downloadPath(const QString file) { const QString downloadDir = QStandardPaths::writableLocation(QStandardPaths::DownloadLocation) + /Plasma/ + applet()-pluginInfo().pluginName() + '/'; diff --git a/src/scriptengines/qml/plasmoid/appletinterface.h b/src/scriptengines/qml/plasmoid/appletinterface.h index 457f5df..32a72ee 100644 --- a/src/scriptengines/qml/plasmoid/appletinterface.h +++ b/src/scriptengines/qml/plasmoid/appletinterface.h @@ -192,6 +192,11 @@ */ Q_PROPERTY(QKeySequence globalShortcut READ globalShortcut WRITE setGlobalShortcut NOTIFY globalShortcutChanged) +/** + * An interface to the native C++ plasmoid, if implemented + */ +Q_PROPERTY(QObject *nativeInterface READ nativeInterface CONSTANT) + public: AppletInterface(DeclarativeAppletScript *script, const QVariantList args = QVariantList(), QQuickItem *parent = 0); AppletInterface(Plasma::Applet *applet, const QVariantList args = QVariantList(), QQuickItem *parent = 0); @@ -318,6 +323,8 @@ QKeySequence globalShortcut() const; void setGlobalShortcut(const QKeySequence keySequence); +QObject *nativeInterface(); + Q_SIGNALS: /** * somebody else, usually the containment sent some data to the applet @@ -390,6 +397,7 @@ bool m_hideOnDeactivate : 1; //this is used to build an emacs style shortcut int m_oldKeyboardShortcut; +QObject *m_dummyNativeInterface; friend class ContainmentInterface; //This is used by ContainmentInterface -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/374 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I65117660043de3a60ad58c77b086f686683d4d8c Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit
Change in plasma-framework[master]: Port to kpackage::package
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/367 Change subject: Port to kpackage::package .. Port to kpackage::package Change-Id: Id52b8d6bf76ab964c02cec9f0bba1dcdf3950d76 --- M src/plasma/svg.cpp 1 file changed, 2 insertions(+), 2 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/67/367/1 diff --git a/src/plasma/svg.cpp b/src/plasma/svg.cpp index 28393e5..0a0db5e 100644 --- a/src/plasma/svg.cpp +++ b/src/plasma/svg.cpp @@ -409,8 +409,8 @@ //FIXME: this maybe could be more efficient if we knew if the package was empty, e.g. for //C++; however, I'm not sure this has any real world runtime impact. something to measure //for. -if (applet applet-package().isValid()) { -const Package package = applet-package(); +if (applet applet-kPackage().isValid()) { +const KPackage::Package package = applet-kPackage(); path = package.filePath(images, themePath + .svg); if (path.isEmpty()) { -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/367 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Id52b8d6bf76ab964c02cec9f0bba1dcdf3950d76 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk Gerrit-Reviewer: Aaron J. Seigo ase...@kde.org ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Put all non tiled frame textures in the atlas
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/370 Change subject: Put all non tiled frame textures in the atlas .. Put all non tiled frame textures in the atlas Change-Id: I2525998ab3c1c76870fe8e395051127a673979af --- M src/declarativeimports/core/framesvgitem.cpp 1 file changed, 17 insertions(+), 3 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/70/370/1 diff --git a/src/declarativeimports/core/framesvgitem.cpp b/src/declarativeimports/core/framesvgitem.cpp index 589b103..fff1a89 100644 --- a/src/declarativeimports/core/framesvgitem.cpp +++ b/src/declarativeimports/core/framesvgitem.cpp @@ -121,7 +121,11 @@ void updateTexture(const QSize size, const QString elementId) { -setTexture(s_cache-loadTexture(m_frameSvg-window(), m_frameSvg-frameSvg()-image(size, elementId))); +QQuickWindow::CreateTextureOptions options; +if (m_fitMode != Tile) { +options = QQuickWindow::TextureCanUseAtlas; +} +setTexture(s_cache-loadTexture(m_frameSvg-window(), m_frameSvg-frameSvg()-image(size, elementId), options)); } void reposition(const QRect frameGeometry, QSize fullSize) @@ -132,11 +136,18 @@ if(!nodeRect.isValid() || nodeRect.isEmpty()) nodeRect = QRect(); -QRectF textureRect = QRectF(0,0,1,1); +//the position of the relevant texture within this texture ID. +//for atlas' this will only be a small part of the texture +QRectF textureRect; + if (m_fitMode == Tile) { +textureRect = QRectF(0,0,1,1); //we can never be in an atlas for tiled images. + +//if tiling horizontally if (m_border == FrameSvg::TopBorder || m_border == FrameSvg::BottomBorder || m_border == FrameSvg::NoBorder) { textureRect.setWidth(nodeRect.width() / m_elementNativeSize.width()); } +//if tiling vertically if (m_border == FrameSvg::LeftBorder || m_border == FrameSvg::RightBorder || m_border == FrameSvg::NoBorder) { textureRect.setHeight(nodeRect.height() / m_elementNativeSize.height()); } @@ -147,7 +158,10 @@ //re-render the SVG at new size updateTexture(nodeRect.size(), elementId); -} // for fast stretch, we don't have to do anything +textureRect = texture()-normalizedTextureSubRect(); +} else if (texture()) { // for fast stretch. +textureRect = texture()-normalizedTextureSubRect(); +} QSGGeometry::updateTexturedRectGeometry(geometry(), nodeRect, textureRect); markDirty(QSGNode::DirtyGeometry); -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/370 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I2525998ab3c1c76870fe8e395051127a673979af Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk Gerrit-Reviewer: Aleix Pol Gonzalez aleix...@kde.org ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Fix leak in ContainmentActions
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/366 Change subject: Fix leak in ContainmentActions .. Fix leak in ContainmentActions Change-Id: I41c9b9c224b36b045034755b07a92f2bdfe9f40e --- M src/plasma/containmentactions.cpp 1 file changed, 2 insertions(+), 0 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/66/366/1 diff --git a/src/plasma/containmentactions.cpp b/src/plasma/containmentactions.cpp index 3abb7fe..f24bdac 100644 --- a/src/plasma/containmentactions.cpp +++ b/src/plasma/containmentactions.cpp @@ -50,6 +50,8 @@ : d(new ContainmentActionsPrivate(KService::serviceByStorageId(args.count() 0 ? args[0].toString() : QString()), this)) { +setParent(parentObject); + // now remove first item since those are managed by Wallpaper and subclasses shouldn't // need to worry about them. yes, it violates the constness of this var, but it lets us add // or remove items later while applets can just pretend that their args always start at 0 -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/366 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I41c9b9c224b36b045034755b07a92f2bdfe9f40e Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Unify when tooltips are shown and kept alive.
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/365 Change subject: Unify when tooltips are shown and kept alive. .. Unify when tooltips are shown and kept alive. A new tooltip would only be shown if it had content to show. However in the old code if the tooltip was already visible we would keep the tooltip alive and sync with empty contents regardless of whether we had anything to show. This seems to clear up the system tray where we have nested tooltip areas for the tray applet and the icon itself and things would flicker Change-Id: I7d9ded9edb70672c572e008c8d6f1ffe2d76b773 Changelog: Avoid showing an empty tooltip --- M src/declarativeimports/core/tooltip.cpp 1 file changed, 4 insertions(+), 1 deletion(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/65/365/1 diff --git a/src/declarativeimports/core/tooltip.cpp b/src/declarativeimports/core/tooltip.cpp index 987dc96..76ae49f 100644 --- a/src/declarativeimports/core/tooltip.cpp +++ b/src/declarativeimports/core/tooltip.cpp @@ -304,6 +304,9 @@ return; } +if (!m_mainItem mainText().isEmpty() subText().isEmpty()) { +return; +} if (tooltipDialogInstance()-isVisible()) { // We signal the tooltipmanager that we're potentially interested, // and ask to keep it open for a bit, so other items get the chance @@ -312,7 +315,7 @@ tooltipDialogInstance()-keepalive(); //FIXME: showToolTip needs to be renamed in sync or something like that showToolTip(); -} else if (m_mainItem || !mainText().isEmpty() || !subText().isEmpty()) { +} else { m_showTimer-start(m_interval); } } -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/365 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I7d9ded9edb70672c572e008c8d6f1ffe2d76b773 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Moving plasmaengineexplorer to plasma-framework?
Hello, On 1/23/15 7:18 AM, Bhushan Shah wrote: So at moment plasmaengineexplorer is provided by plasmate which is not released at moment. yes unfortunately I haven't done a good job in that. I haven't abandoned plasmate, its just that I don't have the free time that I used to have. AFAIK nobody picked the task of releasing the plasmate repo, so I would like to help on this one. I believe that this thread is quite big enough, so I will make a new one in which we can discuss about the release. -- Giorgos Tsiapaliokas terietor.org ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: export textFormat for the tooltip
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/345 Change subject: export textFormat for the tooltip .. export textFormat for the tooltip in some cases richtext in the tooltip is not desired, like in the case of klipper. export a property to set the text format Change-Id: Ib4e8e913e060b868188b4f0b46db2162f33d8bb1 --- M src/declarativeimports/core/private/DefaultToolTip.qml M src/declarativeimports/core/tooltip.cpp M src/declarativeimports/core/tooltip.h M src/scriptengines/qml/plasmoid/appletinterface.cpp M src/scriptengines/qml/plasmoid/appletinterface.h 5 files changed, 62 insertions(+), 1 deletion(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/45/345/1 diff --git a/src/declarativeimports/core/private/DefaultToolTip.qml b/src/declarativeimports/core/private/DefaultToolTip.qml index 1e299c3..6010571 100644 --- a/src/declarativeimports/core/private/DefaultToolTip.qml +++ b/src/declarativeimports/core/private/DefaultToolTip.qml @@ -83,6 +83,7 @@ width: Math.min(tooltipSubtext.implicitWidth, preferredTextWidth) wrapMode: Text.WordWrap text: toolTip ? toolTip.subText : +textFormat: toolTip.textFormat opacity: 0.5 } } diff --git a/src/declarativeimports/core/tooltip.cpp b/src/declarativeimports/core/tooltip.cpp index eb58bca..987dc96 100644 --- a/src/declarativeimports/core/tooltip.cpp +++ b/src/declarativeimports/core/tooltip.cpp @@ -35,9 +35,10 @@ ToolTip::ToolTip(QQuickItem *parent) : QQuickItem(parent), + m_textFormat(0), m_tooltipsEnabledGlobally(false), - m_containsMouse(false), m_location(Plasma::Types::Floating), + m_containsMouse(false), m_active(true), m_interactive(false), m_usingDialog(false) @@ -182,6 +183,21 @@ emit subTextChanged(); } +int ToolTip::textFormat() const +{ +return m_textFormat; +} + +void ToolTip::setTextFormat(int format) +{ +if (m_textFormat == format) { +return; +} + +m_textFormat = format; +emit textFormatChanged(); +} + Plasma::Types::Location ToolTip::location() const { return m_location; diff --git a/src/declarativeimports/core/tooltip.h b/src/declarativeimports/core/tooltip.h index 2fc7942..4ab11e7 100644 --- a/src/declarativeimports/core/tooltip.h +++ b/src/declarativeimports/core/tooltip.h @@ -83,6 +83,15 @@ Q_PROPERTY(QString subText READ subText WRITE setSubText NOTIFY subTextChanged) /** + * how to handle the text format of the tooltip: + * * Text.AutoText (default) + * * Text.PlainText + * * Text.StyledText + * * Text.RichText + */ +Q_PROPERTY(int textFormat READ textFormat WRITE setTextFormat NOTIFY textFormatChanged) + +/** * An icon for this tooltip, accepted values are an icon name, a QIcon, QImage or QPixmap */ Q_PROPERTY(QVariant icon READ icon WRITE setIcon NOTIFY iconChanged) @@ -131,6 +140,9 @@ QString subText() const; void setSubText(const QString subText); +int textFormat() const; +void setTextFormat(int format); + QVariant icon() const; void setIcon(const QVariant icon); @@ -168,6 +180,7 @@ void visibleChanged(); void mainTextChanged(); void subTextChanged(); +void textFormatChanged(); void iconChanged(); void imageChanged(); void containsMouseChanged(); @@ -187,6 +200,7 @@ QTimer *m_showTimer; QString m_mainText; QString m_subText; +int m_textFormat; QVariant m_image; QVariant m_icon; bool m_active; diff --git a/src/scriptengines/qml/plasmoid/appletinterface.cpp b/src/scriptengines/qml/plasmoid/appletinterface.cpp index 7e0dd9f..0ec2c34 100644 --- a/src/scriptengines/qml/plasmoid/appletinterface.cpp +++ b/src/scriptengines/qml/plasmoid/appletinterface.cpp @@ -55,6 +55,7 @@ AppletInterface::AppletInterface(DeclarativeAppletScript *script, const QVariantList args, QQuickItem *parent) : AppletQuickItem(script-applet(), parent), + m_toolTipTextFormat(0), m_args(args), m_actionSignals(0), m_appletScriptEngine(script), @@ -333,6 +334,21 @@ emit toolTipSubTextChanged(); } +int AppletInterface::toolTipTextFormat() const +{ +return m_toolTipTextFormat; +} + +void AppletInterface::setToolTipTextFormat(int format) +{ +if (m_toolTipTextFormat == format) { +return; +} + +m_toolTipTextFormat = format; +emit toolTipTextFormatChanged(); +} + bool AppletInterface::isBusy() const { return m_busy; diff --git a/src/scriptengines/qml/plasmoid/appletinterface.h b/src/scriptengines/qml/plasmoid/appletinterface.h index be19a6c..824b3e2 100644 --- a/src/scriptengines/qml/plasmoid/appletinterface.h +++ b/src/scriptengines/qml/plasmoid/appletinterface.h @@ -91,6 +91,15 @@ Q_PROPERTY(QString toolTipSubText
Re: Moving plasmaengineexplorer to plasma-framework?
On Monday 26 January 2015, Bhushan Shah wrote: So I think in general moving plasmaengineexplorer to plasma-framework is no go? i would prefer not and we should think of releasing plasmate? yep.. -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Moving plasmaengineexplorer to plasma-framework?
On Mon, Jan 26, 2015 at 9:35 PM, Bhushan Shah bhus...@gmail.com wrote: Indeed that kdevplatform dep is already optional and there is cmake switch for that too So I think in general moving plasmaengineexplorer to plasma-framework is no go? and we should think of releasing plasmate? -- Bhushan Shah http://bhush9.github.io IRC Nick : bshah on Freenode ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Moving plasmaengineexplorer to plasma-framework?
On Friday, January 23, 2015 13:32:09 Luca Beltrame wrote: In data venerdì 23 gennaio 2015 13:25:51, David Edmundson ha scritto: The rationale seems to be there's no release of plasmate, which is something very easily fixable by releasing plasmate. Plasmate(5) depends on the KF5 version of kdevplatform, which hasn't seen a release yet. We can and should make that kdevplatform dependency optional, especially since it's in non-released code. I think, as David already suggested, that we should do a release of the plasmate repo, for now without plasmate (which brings in the kdevplatform dependency, which is also not yet released in the KF5 version. Cheers, -- sebas http://www.kde.org | http://vizZzion.org | GPG Key ID: 9119 0EF9 ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Moving plasmaengineexplorer to plasma-framework?
On Mon, Jan 26, 2015 at 9:33 PM, Sebastian Kügler se...@kde.org wrote: We can and should make that kdevplatform dependency optional, especially since it's in non-released code. I think, as David already suggested, that we should do a release of the plasmate repo, for now without plasmate (which brings in the kdevplatform dependency, which is also not yet released in the KF5 version. Indeed that kdevplatform dep is already optional and there is cmake switch for that too -- Bhushan Shah http://bhush9.github.io IRC Nick : bshah on Freenode ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Make keyboard shortcuts work
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/342 Change subject: Make keyboard shortcuts work .. Make keyboard shortcuts work QAction keyboard shortcuts cannot work with QML2 (and probably newver will since in Qt qtquick and qwidgets cannot depend from each other in any way) so do a simple keyboard shortcut matching here BUG:336203 Change-Id: I2d7ada7dfcb0e326e63ce7f1e39573709f6fe560 --- M src/scriptengines/qml/plasmoid/appletinterface.cpp M src/scriptengines/qml/plasmoid/appletinterface.h 2 files changed, 47 insertions(+), 0 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/42/342/1 diff --git a/src/scriptengines/qml/plasmoid/appletinterface.cpp b/src/scriptengines/qml/plasmoid/appletinterface.cpp index a27258b..0080b0d 100644 --- a/src/scriptengines/qml/plasmoid/appletinterface.cpp +++ b/src/scriptengines/qml/plasmoid/appletinterface.cpp @@ -60,6 +60,7 @@ m_backgroundHints(Plasma::Types::StandardBackground), m_busy(false), m_hideOnDeactivate(true), + m_oldKeyboardShortcut(0), m_positionBeforeRemoval(QPointF(-1, -1)) { qmlRegisterTypeQAction(); @@ -599,6 +600,49 @@ } } +bool AppletInterface::event(QEvent *event) +{ +// QAction keyboard shortcuts cannot work with QML2 (and probably newver will +// since in Qt qtquick and qwidgets cannot depend from each other in any way) +// so do a simple keyboard shortcut matching here +if (event-type() == QEvent::KeyPress) { +QKeyEvent *ke = static_castQKeyEvent *(event); +QKeySequence seq(ke-key()|ke-modifiers()); + +for (auto a : applet()-actions()-actions()) { + +if (a-shortcut().isEmpty()) { +continue; +} + +//this will happen on a normal, non emacs shortcut +if (seq.matches(a-shortcut()) == QKeySequence::ExactMatch) { +event-accept(); +a-trigger(); +m_oldKeyboardShortcut = 0; +return true; + +//first part of an emacs style shortcut? +} else if (seq.matches(a-shortcut()) == QKeySequence::PartialMatch) { +m_oldKeyboardShortcut = ke-key()|ke-modifiers(); + +//no match at all, but it can be the second part of an emacs style shortcut +} else { +QKeySequence seq(m_oldKeyboardShortcut, ke-key()|ke-modifiers()); + +if (seq.matches(a-shortcut()) == QKeySequence::ExactMatch) { +event-accept(); +a-trigger(); +m_oldKeyboardShortcut = 0; +return true; +} +} +} +} + +return AppletQuickItem::event(event); +} + bool AppletInterface::eventFilter(QObject *watched, QEvent *event) { if (event-type() == QEvent::MouseButtonPress) { diff --git a/src/scriptengines/qml/plasmoid/appletinterface.h b/src/scriptengines/qml/plasmoid/appletinterface.h index 281a3a0..be19a6c 100644 --- a/src/scriptengines/qml/plasmoid/appletinterface.h +++ b/src/scriptengines/qml/plasmoid/appletinterface.h @@ -351,6 +351,7 @@ virtual void init(); protected: +bool event(QEvent *event); bool eventFilter(QObject *watched, QEvent *event); private Q_SLOTS: @@ -372,6 +373,8 @@ Plasma::Types::BackgroundHints m_backgroundHints; bool m_busy : 1; bool m_hideOnDeactivate : 1; +//this is used to build an emacs style shortcut +int m_oldKeyboardShortcut; friend class ContainmentInterface; //This is used by ContainmentInterface -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/342 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I2d7ada7dfcb0e326e63ce7f1e39573709f6fe560 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Moving plasmaengineexplorer to plasma-framework?
I have doubts, I don't want to increase our install size for a developer aide. The rationale seems to be there's no release of plasmate, which is something very easily fixable by releasing plasmate. Equally importantly we have a licensing problem. All frameworks are currently LGPL. This is GPL. engineexplorer.cpp * it under the terms of the GNU General Public License as Probably solvable, but it's a deal breaker until then. David ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Moving plasmaengineexplorer to plasma-framework?
On Fri, Jan 23, 2015 at 6:18 AM, Bhushan Shah bhus...@gmail.com wrote: So at moment plasmaengineexplorer is provided by plasmate which is not released at moment. Also IMHO it makes sense to move plasmaengineexplorer to plasma-frameowork repo due to the fact that is important tool to debug dataengine. Big +1 from my side too. On Arch we have a package that only installs engineexplorer and plasmoidviewer. -- Andrea ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Moving plasmaengineexplorer to plasma-framework?
In data venerdì 23 gennaio 2015 13:25:51, David Edmundson ha scritto: The rationale seems to be there's no release of plasmate, which is something very easily fixable by releasing plasmate. Plasmate(5) depends on the KF5 version of kdevplatform, which hasn't seen a release yet. -- Luca Beltrame - KDE Forums team KDE Science supporter GPG key ID: 6E1A4E79 signature.asc Description: This is a digitally signed message part. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Moving plasmaengineexplorer to plasma-framework?
Hello! So at moment plasmaengineexplorer is provided by plasmate which is not released at moment. Also IMHO it makes sense to move plasmaengineexplorer to plasma-frameowork repo due to the fact that is important tool to debug dataengine. So I went ahead and I made the move locally and pushed the repo to plasma-framework clone [1], it includes total 66 commits from plasmate repo Everything seems to work fine.. compiles builds installs and works :) Thanks! PS: This is first time I have made any move between git repo, so if I am wrong somewhere sorry.. [1] http://quickgit.kde.org/?p=clones%2Fplasma-framework%2Fbshah%2Fplasma-framework-engineexplorer.gita=treehb=9898e1be4f4d6be7ec51be6d7fe4580a94faa6b4 -- Bhushan Shah http://bhush9.github.io IRC Nick : bshah on Freenode ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: never resize a dialog bigger than the screen
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/334 Change subject: never resize a dialog bigger than the screen .. never resize a dialog bigger than the screen in cases screen resolution is quite low, and font size is enormous, popups tend to become bigger than the screen BUG:337041 Change-Id: I840868dbd7db665a3953687977d30dd6c3b4a386 --- M src/plasmaquick/dialog.cpp 1 file changed, 19 insertions(+), 0 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/34/334/1 diff --git a/src/plasmaquick/dialog.cpp b/src/plasmaquick/dialog.cpp index 8c38f47..95d9497 100644 --- a/src/plasmaquick/dialog.cpp +++ b/src/plasmaquick/dialog.cpp @@ -331,6 +331,9 @@ //on the scene auto margin = frameSvgItem-fixedMargins(); int minimumWidth = mainItemLayout-property(minimumWidth).toInt() + margin-left() + margin-right(); +if (q-screen()) { +minimumWidth = qMin(q-screen()-availableGeometry().width(), minimumWidth); +} q-contentItem()-setWidth(qMax(q-width(), minimumWidth)); q-setWidth(qMax(q-width(), minimumWidth)); @@ -354,6 +357,10 @@ //on the scene auto margin = frameSvgItem-fixedMargins(); int minimumHeight = mainItemLayout-property(minimumHeight).toInt() + margin-top() + margin-bottom(); +if (q-screen()) { +minimumHeight = qMin(q-screen()-availableGeometry().height(), minimumHeight); + +} q-contentItem()-setHeight(qMax(q-height(), minimumHeight)); q-setHeight(qMax(q-height(), minimumHeight)); @@ -373,6 +380,9 @@ auto margin = frameSvgItem-fixedMargins(); int maximumWidth = mainItemLayout-property(maximumWidth).toInt() + margin-left() + margin-right(); +if (q-screen()) { +maximumWidth = qMin(q-screen()-availableGeometry().width(), maximumWidth); +} q-contentItem()-setWidth(qMax(q-width(), maximumWidth)); q-setWidth(qMax(q-width(), maximumWidth)); @@ -392,6 +402,9 @@ auto margin = frameSvgItem-fixedMargins(); int maximumHeight = mainItemLayout-property(maximumHeight).toInt() + margin-top() + margin-bottom(); +if (q-screen()) { +maximumHeight = qMin(q-screen()-availableGeometry().height(), maximumHeight); +} q-contentItem()-setHeight(qMax(q-height(), maximumHeight)); q-setHeight(qMin(q-height(), maximumHeight)); @@ -423,6 +436,12 @@ minimumWidth += margin-left() + margin-right(); maximumWidth += margin-left() + margin-right(); +if (q-screen()) { +minimumWidth = qMin(q-screen()-availableGeometry().width(), minimumWidth); +minimumHeight = qMin(q-screen()-availableGeometry().height(), minimumHeight); +maximumWidth = qMin(q-screen()-availableGeometry().width(), maximumWidth); +maximumHeight = qMin(q-screen()-availableGeometry().height(), maximumHeight); +} const QSize finalSize(qBound(minimumWidth, q-width(), maximumWidth), qBound(minimumHeight, q-height(), maximumHeight)); -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/334 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I840868dbd7db665a3953687977d30dd6c3b4a386 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: don't animate icons when they get resized
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/336 Change subject: don't animate icons when they get resized .. don't animate icons when they get resized simplify a bit logic ans make sure if m_sizeChanged is true, never to animate the change Change-Id: I552f79b13f7714749137fa90df1f9f30120e6a37 --- M src/declarativeimports/core/iconitem.cpp 1 file changed, 10 insertions(+), 16 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/36/336/1 diff --git a/src/declarativeimports/core/iconitem.cpp b/src/declarativeimports/core/iconitem.cpp index 08bb47d..005e339 100644 --- a/src/declarativeimports/core/iconitem.cpp +++ b/src/declarativeimports/core/iconitem.cpp @@ -251,20 +251,16 @@ QSGTexture *source = window()-createTextureFromImage(m_iconPixmap.toImage()); QSGTexture *target = window()-createTextureFromImage(m_oldIconPixmap.toImage()); animatingNode = new FadingNode(source, target); -m_sizeChanged = true; m_textureChanged = false; } animatingNode-setProgress(m_animValue); -if (m_sizeChanged) { -const int iconSize = Units::roundToIconSize(qMin(boundingRect().size().width(), boundingRect().size().height())); -const QRect destRect(QPointF(boundingRect().center() - QPointF(iconSize/2, iconSize/2)).toPoint(), - QSize(iconSize, iconSize)); +const int iconSize = Units::roundToIconSize(qMin(boundingRect().size().width(), boundingRect().size().height())); +const QRect destRect(QPointF(boundingRect().center() - QPointF(iconSize/2, iconSize/2)).toPoint(), +QSize(iconSize, iconSize)); -animatingNode-setRect(destRect); -m_sizeChanged = false; -} +animatingNode-setRect(destRect); return animatingNode; } else { @@ -274,18 +270,15 @@ delete oldNode; textureNode = new ManagedTextureNode; textureNode-setTexture(QSharedPointerQSGTexture(window()-createTextureFromImage(m_iconPixmap.toImage(; -m_sizeChanged = true; m_textureChanged = false; } -if (m_sizeChanged) { -const int iconSize = Units::roundToIconSize(qMin(boundingRect().size().width(), boundingRect().size().height())); -const QRect destRect(QPointF(boundingRect().center() - QPointF(iconSize/2, iconSize/2)).toPoint(), - QSize(iconSize, iconSize)); +const int iconSize = Units::roundToIconSize(qMin(boundingRect().size().width(), boundingRect().size().height())); +const QRect destRect(QPointF(boundingRect().center() - QPointF(iconSize/2, iconSize/2)).toPoint(), +QSize(iconSize, iconSize)); -textureNode-setRect(destRect); -m_sizeChanged = false; -} +textureNode-setRect(destRect); + return textureNode; } } @@ -354,6 +347,7 @@ m_animation-stop(); } update(); +m_sizeChanged = false; } void IconItem::geometryChanged(const QRectF newGeometry, -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/336 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I552f79b13f7714749137fa90df1f9f30120e6a37 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Marco Martin notm...@gmail.com Gerrit-Reviewer: David Edmundson da...@davidedmundson.co.uk ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Hack: silence failing test on Qt 5.2
Jan Kundrát has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/324 Change subject: Hack: silence failing test on Qt 5.2 .. Hack: silence failing test on Qt 5.2 I guess nobody cares enough to debug why this fails on Qt 5.2, so let's just silence this error blacklisting this particular test case on Qt prior to 5.3. I have no idea whether this is a good fix. BUG: 342676 Change-Id: Ib53b70f740157e1a06383a9f0a78c3fccf5b930c --- M autotests/dialognativetest.cpp 1 file changed, 2 insertions(+), 0 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/24/324/1 diff --git a/autotests/dialognativetest.cpp b/autotests/dialognativetest.cpp index 6811202..7ddc228 100644 --- a/autotests/dialognativetest.cpp +++ b/autotests/dialognativetest.cpp @@ -81,9 +81,11 @@ QCOMPARE(m_dialog-x(), 0); QCOMPARE(m_dialog-y(), 49); +#if QT_VERSION = QT_VERSION_CHECK(5, 3, 0) m_dialog-setVisualParent(m_panel2-contentItem()); QCOMPARE(m_dialog-x(), 71); QCOMPARE(m_dialog-y(), 49); +#endif } QTEST_MAIN(DialogNativeTest) -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/324 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ib53b70f740157e1a06383a9f0a78c3fccf5b930c Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Jan Kundrát j...@kde.org ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Change string from non-existing %2 to %1.
Xuetian Weng has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/318 Change subject: Change string from non-existing %2 to %1. .. Change string from non-existing %2 to %1. Change-Id: I52b69a7bd65118c5d0a8dc5bc1649ca0157769d4 CCMAIL:notm...@gmail.com --- M src/plasma/private/applet_p.cpp 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/18/318/1 diff --git a/src/plasma/private/applet_p.cpp b/src/plasma/private/applet_p.cpp index f4eb2c6..dac7eb9 100644 --- a/src/plasma/private/applet_p.cpp +++ b/src/plasma/private/applet_p.cpp @@ -135,7 +135,7 @@ QString api = appletDescription.property(X-Plasma-API).toString(); if (api.isEmpty()) { -q-setLaunchErrorMessage(i18n(The %2 widget did not define which ScriptEngine to use., appletDescription.name())); +q-setLaunchErrorMessage(i18n(The %1 widget did not define which ScriptEngine to use., appletDescription.name())); return; } -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/318 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I52b69a7bd65118c5d0a8dc5bc1649ca0157769d4 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Xuetian Weng wen...@gmail.com Gerrit-Reviewer: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Add HiddenAction in Plasma::Types::ActionType
Bhushan Shah has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/301 Change subject: Add HiddenAction in Plasma::Types::ActionType .. Add HiddenAction in Plasma::Types::ActionType This is to hide actions from menu or toolbox but still having action enabled. Setting visible property to false disables it and hence global shortcut to. This is clean solution to hide action and as well as keeping it up to date. CCBUG: 342186 Change-Id: Ib4e310ba0ebdfcef90e38be542b38f613a6188fa --- M src/plasma/plasma.h 1 file changed, 2 insertions(+), 1 deletion(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/01/301/1 diff --git a/src/plasma/plasma.h b/src/plasma/plasma.h index 15c346b..3ad6327 100644 --- a/src/plasma/plasma.h +++ b/src/plasma/plasma.h @@ -113,7 +113,8 @@ ControlAction = 200, /** Generic control, similar to ConfigureAction TODO: better doc */ MiscAction = 300, /** A type of action that doesn't fit in the oher categories */ DestructiveAction = 400, /** A dangerous action, such as deletion of objects, plasmoids and files. They are intended to be shown separed from other actions */ -UserAction = DestructiveAction + 1000 /** If new types are needed in a C++ implementation, define them as ids more than UserAction*/ +HiddenAction = 500, /** This can be used to have hidden from view but enabled action */ +UserAction = HiddenAction + 1000 /** If new types are needed in a C++ implementation, define them as ids more than UserAction*/ }; Q_ENUMS(ActionType) -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/301 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ib4e310ba0ebdfcef90e38be542b38f613a6188fa Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Bhushan Shah bhus...@gmail.com Gerrit-Reviewer: Kevin Ottens er...@kde.org ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Set visibility on mainItem to match Dialog
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/282 Change subject: Set visibility on mainItem to match Dialog .. Set visibility on mainItem to match Dialog Otherwise we can have an invisible dialog in which the items think they are visible. QtQuick is smart enough to not redraw anything if the window isn't visible, but a lot of bits of our code check the visibility flag to enable/disable animations. These animation timers do still trigger when the window isn't visible which wastes CPU cycles. We are already meddling with the visibility flag so this shouldn't have too much impact. Change-Id: I92b969e60b4fdbe4ff2c70f9cce6e3408482a862 --- M src/plasmaquick/dialog.cpp 1 file changed, 6 insertions(+), 1 deletion(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/82/282/1 diff --git a/src/plasmaquick/dialog.cpp b/src/plasmaquick/dialog.cpp index 1c07ab0..74c68a6 100644 --- a/src/plasmaquick/dialog.cpp +++ b/src/plasmaquick/dialog.cpp @@ -237,6 +237,10 @@ void DialogPrivate::updateVisibility(bool visible) { +if (mainItem) { +mainItem-setVisible(visible); +} + if (visible) { if (visualParent visualParent-window()) { q-setTransientParent(visualParent-window()); @@ -268,6 +272,7 @@ } } } + if (!(q-flags() Qt::ToolTip)) { KWindowEffects::SlideFromLocation slideLocation = KWindowEffects::NoEdge; @@ -675,7 +680,7 @@ d-mainItem = mainItem; if (mainItem) { -d-mainItem-setVisible(true); +d-mainItem-setVisible(isVisible()); mainItem-setParentItem(contentItem()); connect(mainItem, SIGNAL(widthChanged()), this, SLOT(slotMainItemSizeChanged())); -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/282 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I92b969e60b4fdbe4ff2c70f9cce6e3408482a862 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk Gerrit-Reviewer: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: migrate to KPackage
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/260 Change subject: migrate to KPackage .. migrate to KPackage Plasma::Package internally uses KPackage, being a pure wrapper. old client code and old packagestructures still work using the wrapper. old workspace code that is not directly using kpackage continues to work correctly Change-Id: I05f95e8d05e3b67759973c4009e3753c61b1dcce --- M CMakeLists.txt M src/plasma/CMakeLists.txt M src/plasma/applet.cpp M src/plasma/applet.h M src/plasma/corona.cpp M src/plasma/corona.h M src/plasma/package.cpp M src/plasma/package.h M src/plasma/packagestructure.cpp M src/plasma/packagestructure.h M src/plasma/pluginloader.cpp M src/plasma/private/applet_p.cpp M src/plasma/private/applet_p.h M src/plasma/private/corona_p.h M src/plasma/private/package_p.h D src/plasma/private/packagejob.cpp D src/plasma/private/packagejob_p.h D src/plasma/private/packagejobthread.cpp D src/plasma/private/packagejobthread_p.h M src/plasma/private/packages.cpp M src/plasma/private/packages_p.h A src/plasma/private/packagestructure_p.h M src/plasmaquick/packageurlinterceptor.cpp 23 files changed, 345 insertions(+), 1,455 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/60/260/1 diff --git a/CMakeLists.txt b/CMakeLists.txt index ccec0ed..891183c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -59,6 +59,7 @@ find_package(KF5WindowSystem ${KF5_DEP_VERSION} REQUIRED) find_package(KF5XmlGui ${KF5_DEP_VERSION} REQUIRED) find_package(KF5Notifications ${KF5_DEP_VERSION} REQUIRED) +find_package(KF5Package ${KF5_DEP_VERSION} REQUIRED) find_package(KF5DocTools ${KF5_DEP_VERSION}) set_package_properties(KF5DocTools PROPERTIES DESCRIPTION Tools to generate documentation diff --git a/src/plasma/CMakeLists.txt b/src/plasma/CMakeLists.txt index f7aa38b..423b3e7 100644 --- a/src/plasma/CMakeLists.txt +++ b/src/plasma/CMakeLists.txt @@ -66,8 +66,6 @@ #packages package.cpp packagestructure.cpp -private/packagejob.cpp -private/packagejobthread.cpp private/packages.cpp #graphics @@ -112,6 +110,7 @@ PUBLIC KF5::Service # For kplugininfo.h and kservice.h Qt5::Gui +KF5::Package PRIVATE Qt5::Sql Qt5::Svg diff --git a/src/plasma/applet.cpp b/src/plasma/applet.cpp index 5594bf8..1793a94 100644 --- a/src/plasma/applet.cpp +++ b/src/plasma/applet.cpp @@ -287,7 +287,12 @@ Package Applet::package() const { -return d-package ? *d-package : Package(); +return d-legacyPackage ? *d-legacyPackage : Package(); +} + +KPackage::Package Applet::kPackage() const +{ +return d-package ? *d-package : KPackage::Package(); } void Applet::updateConstraints(Plasma::Types::Constraints constraints) diff --git a/src/plasma/applet.h b/src/plasma/applet.h index a30a7ac..daff8df 100644 --- a/src/plasma/applet.h +++ b/src/plasma/applet.h @@ -33,6 +33,8 @@ #include plasma/version.h #include plasma/framesvg.h +#include KPackage/Package + class KActionCollection; class KConfigLoader; @@ -224,13 +226,26 @@ void setUserConfiguring(bool configuring); //UTILS +#ifndef PLASMA_NO_DEPRECATED +/** + * Accessor for the associated Package object if any. + * Generally, only Plasmoids come in a Package. + * Deprecated: please use kPackage() + * + * @deprecated use kPackage() instead + * @return the Package object, or an invalid one if none + **/ +PLASMA_DEPRECATED Package package() const; +#endif + /** * Accessor for the associated Package object if any. * Generally, only Plasmoids come in a Package. * * @return the Package object, or an invalid one if none + * @since 5.5 **/ -Package package() const; +KPackage::Package kPackage() const; /** * Called when any of the geometry constraints have been updated. diff --git a/src/plasma/corona.cpp b/src/plasma/corona.cpp index 038be7b..b04a510 100644 --- a/src/plasma/corona.cpp +++ b/src/plasma/corona.cpp @@ -38,8 +38,10 @@ #include containment.h #include pluginloader.h +#include packagestructure.h #include private/applet_p.h #include private/containment_p.h +#include private/package_p.h #include private/timetracker.h using namespace Plasma; @@ -71,15 +73,28 @@ Plasma::Package Corona::package() const { -return d-package; +return d-legacyPackage; } void Corona::setPackage(const Plasma::Package package) { -d-package = package; +d-legacyPackage = package; emit packageChanged(package); } +KPackage::Package Corona::kPackage() const +{ +return d-package; +} + +void Corona::setKPackage(const KPackage::Package package) +{ +d-package = package; +d-legacyPackage = Package(new PackageStructure()); +d-legacyPackage.d-internalPackage = new KPackage::Package(package); +emit kPackageChanged(package); +} + void Corona
Change in plasma-framework[master]: Add a plotter component
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/244 Change subject: Add a plotter component .. Add a plotter component a Plotter can draw a graph of values arriving from an arbitrary number of data sources to show their evoluton in time. an example can be a plot of the network transfer speed or CPU temperature over time. Multiple plots can be fitted in the same graph, either stacked or intersected. Change-Id: I4a29a25412b375dfbd7f0db618040bae19c9b39c --- M CMakeLists.txt A Findepoxy.cmake M src/declarativeimports/plasmaextracomponents/CMakeLists.txt M src/declarativeimports/plasmaextracomponents/plasmaextracomponentsplugin.cpp A src/declarativeimports/plasmaextracomponents/plotter.cpp A src/declarativeimports/plasmaextracomponents/plotter.h A tests/plotter.qml 7 files changed, 993 insertions(+), 3 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/44/244/1 diff --git a/CMakeLists.txt b/CMakeLists.txt index b19ab53..2a971a0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,7 +4,7 @@ # ECM setup find_package(ECM 1.4.0 REQUIRED NO_MODULE) -set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) +set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR} ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) include(FeatureSummary) include(GenerateExportHeader) @@ -109,6 +109,13 @@ set(HAVE_GLX 0) endif() +find_package(epoxy) +set_package_properties(epoxy PROPERTIES DESCRIPTION libepoxy + URL http://github.com/anholt/libepoxy; + TYPE REQUIRED + PURPOSE OpenGL dispatch library + ) + # add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0) @@ -164,6 +171,7 @@ # make plasma_version.h available include_directories(${CMAKE_CURRENT_BINARY_DIR}) +include_directories(${epoxy_INCLUDE_DIR}) # list the subdirectories # if (KF5DocTools_FOUND) diff --git a/Findepoxy.cmake b/Findepoxy.cmake new file mode 100644 index 000..c5500a0 --- /dev/null +++ b/Findepoxy.cmake @@ -0,0 +1,27 @@ +# - Try to find libepoxy +# Once done this will define +# +# epoxy_FOUND- System has libepoxy +# epoxy_LIBRARY - The libepoxy library +# epoxy_INCLUDE_DIR - The libepoxy include dir +# epoxy_DEFINITIONS - Compiler switches required for using libepoxy + +# Copyright (c) 2014 Fredrik Höglund fred...@kde.org +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (NOT WIN32) + find_package(PkgConfig) + pkg_check_modules(PKG_epoxy QUIET epoxy) + + set(epoxy_DEFINITIONS ${PKG_epoxy_CFLAGS}) + + find_path(epoxy_INCLUDE_DIR NAMES epoxy/gl.h HINTS ${PKG_epoxy_INCLUDEDIR} ${PKG_epoxy_INCLUDE_DIRS}) + find_library(epoxy_LIBRARY NAMES epoxy HINTS ${PKG_epoxy_LIBDIR} ${PKG_epoxy_LIBRARY_DIRS}) + + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(epoxy DEFAULT_MSG epoxy_LIBRARY epoxy_INCLUDE_DIR) + + mark_as_advanced(epoxy_INCLUDE_DIR epoxy_LIBRARY) +endif() diff --git a/src/declarativeimports/plasmaextracomponents/CMakeLists.txt b/src/declarativeimports/plasmaextracomponents/CMakeLists.txt index 8aec3c5..b13f345 100644 --- a/src/declarativeimports/plasmaextracomponents/CMakeLists.txt +++ b/src/declarativeimports/plasmaextracomponents/CMakeLists.txt @@ -10,6 +10,7 @@ #resourceinstance.cpp plasmaextracomponentsplugin.cpp fallbackcomponent.cpp +plotter.cpp ) add_library(plasmaextracomponentsplugin SHARED ${plasmaextracomponents_SRCS}) @@ -19,7 +20,8 @@ Qt5::Qml ${KACTIVITIES_LIBRARY} KF5::Service -KF5::Plasma) +KF5::Plasma +${epoxy_LIBRARY}) install(TARGETS plasmaextracomponentsplugin DESTINATION ${QML_INSTALL_DIR}/org/kde/plasma/extras) diff --git a/src/declarativeimports/plasmaextracomponents/plasmaextracomponentsplugin.cpp b/src/declarativeimports/plasmaextracomponents/plasmaextracomponentsplugin.cpp index 448e13a..2506902 100644 --- a/src/declarativeimports/plasmaextracomponents/plasmaextracomponentsplugin.cpp +++ b/src/declarativeimports/plasmaextracomponents/plasmaextracomponentsplugin.cpp @@ -20,7 +20,7 @@ #include plasmaextracomponentsplugin.h #include appbackgroundprovider_p.h -//#include resourceinstance.h +#include plotter.h #include fallbackcomponent.h #include QtQml @@ -40,6 +40,8 @@ Q_ASSERT(uri == QLatin1String(org.kde.plasma.extras)); //qmlRegisterTypeResourceInstance(uri, 2, 0, ResourceInstance); qmlRegisterTypeFallbackComponent(uri, 2, 0, FallbackComponent); +qmlRegisterTypePlotData(uri, 2, 0, PlotData); +qmlRegisterTypePlotter(uri, 2, 0, Plotter); } #include plasmaextracomponentsplugin.moc diff
Change in plasma-framework[master]: save some CPU cycle when busy indicator is not visible.
Xuetian Weng has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/240 Change subject: save some CPU cycle when busy indicator is not visible. .. save some CPU cycle when busy indicator is not visible. Change-Id: Ia5c296cdbc6c0ccd2ca45444d4f3171723b50d23 --- M src/declarativeimports/plasmastyle/BusyIndicatorStyle.qml 1 file changed, 2 insertions(+), 1 deletion(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/40/240/1 diff --git a/src/declarativeimports/plasmastyle/BusyIndicatorStyle.qml b/src/declarativeimports/plasmastyle/BusyIndicatorStyle.qml index 49021de..44abe4b 100644 --- a/src/declarativeimports/plasmastyle/BusyIndicatorStyle.qml +++ b/src/declarativeimports/plasmastyle/BusyIndicatorStyle.qml @@ -24,6 +24,7 @@ BusyIndicatorStyle { indicator: PlasmaCore.SvgItem { +id: indicatorItem svg: PlasmaCore.Svg { imagePath: widgets/busywidget } elementId: busywidget @@ -45,7 +46,7 @@ from: 0 to: 360 duration: 1500 -running: control.running +running: control.running indicatorItem.visible indicatorItem.opacity 0; loops: Animation.Infinite } } -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/240 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia5c296cdbc6c0ccd2ca45444d4f3171723b50d23 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Xuetian Weng wen...@gmail.com Gerrit-Reviewer: Kai Uwe Broulik k...@privat.broulik.de ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Different themes between desktop and dialogs
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/218 Change subject: Different themes between desktop and dialogs .. Different themes between desktop and dialogs different themes between QtControl themes in applets and in config dialogs: this allows QtQuickControls to be freely usable in applets without worrying how they will integrate Change-Id: I696bdcbd78eb2e4df708367ac0d70d13c5d6cf12 --- M src/plasmaquick/appletquickitem.cpp M src/plasmaquick/view.cpp 2 files changed, 24 insertions(+), 0 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/18/218/1 diff --git a/src/plasmaquick/appletquickitem.cpp b/src/plasmaquick/appletquickitem.cpp index 6ec12b9..06406a4 100644 --- a/src/plasmaquick/appletquickitem.cpp +++ b/src/plasmaquick/appletquickitem.cpp @@ -435,6 +435,18 @@ engine-setUrlInterceptor(interceptor); } +QQmlComponent c(engine); +c.setData(import QtQuick 2.1\n\ +import QtQuick.Controls 1.0\n\ +import QtQuick.Controls.Private 1.0\n \ +Item {\ + Component.onCompleted: {\ +Settings.styleName = \Base\;\ + }\ +}, QUrl()); +QObject *o = c.create(); +o-deleteLater(); + d-qmlObject-setSource(QUrl::fromLocalFile(d-applet-package().filePath(mainscript))); if (!engine || !engine-rootContext() || !engine-rootContext()-isValid() || !d-qmlObject-mainComponent() || d-qmlObject-mainComponent()-isError()) { diff --git a/src/plasmaquick/view.cpp b/src/plasmaquick/view.cpp index 1d1b506..1c981ae 100644 --- a/src/plasmaquick/view.cpp +++ b/src/plasmaquick/view.cpp @@ -196,6 +196,18 @@ qWarning() Invalid home screen package; } +QQmlComponent c(engine()); +c.setData(import QtQuick 2.1\n\ +import QtQuick.Controls 1.0\n\ +import QtQuick.Controls.Private 1.0\n \ +Item {\ + Component.onCompleted: {\ +Settings.styleName = \Base\;\ + }\ +}, QUrl()); +QObject *o = c.create(); +o-deleteLater(); + setResizeMode(View::SizeRootObjectToView); } -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/218 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I696bdcbd78eb2e4df708367ac0d70d13c5d6cf12 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Use the same text colour for comboboxes as buttons
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/219 Change subject: Use the same text colour for comboboxes as buttons .. Use the same text colour for comboboxes as buttons Given comboboxes use the same background as buttons they should use the same text colour too. This prevents a situation in Breeze where a ComboBox could get white text on a white background when using a colourscope with complementary colours. Change-Id: I21502186178a32ce480cd3e838335451bf644c3e --- M src/declarativeimports/plasmastyle/ComboBoxStyle.qml A tests/components/combobox.qml 2 files changed, 42 insertions(+), 0 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/19/219/1 diff --git a/src/declarativeimports/plasmastyle/ComboBoxStyle.qml b/src/declarativeimports/plasmastyle/ComboBoxStyle.qml index e73d0da..501efed 100644 --- a/src/declarativeimports/plasmastyle/ComboBoxStyle.qml +++ b/src/declarativeimports/plasmastyle/ComboBoxStyle.qml @@ -31,6 +31,7 @@ label: PlasmaComponents.Label { text: control.currentText elide: Text.ElideRight +color: theme.buttonTextColor verticalAlignment: Text.AlignTop } diff --git a/tests/components/combobox.qml b/tests/components/combobox.qml new file mode 100644 index 000..76510f3 --- /dev/null +++ b/tests/components/combobox.qml @@ -0,0 +1,41 @@ +import QtQuick 2.0 + +import org.kde.plasma.components 2.0 +import org.kde.plasma.core 2.0 as PlasmaCore + +Rectangle { +id: root +color: white +width: 800 +height: 300 + +ListModel { +id: demoModel +ListElement { text: Banana; color: Yellow } +ListElement { text: Apple; color: Green } +ListElement { text: Coconut; color: Brown } +} + +Flow { +anchors.fill: parent +anchors.margins: 20 +spacing: 20 + +ComboBox { +model:demoModel +} +ComboBox { +editable: true +model: demoModel +} +PlasmaCore.ColorScope { +implicitWidth: childrenRect.width +implicitHeight: childrenRect.width + +colorGroup: PlasmaCore.Theme.ComplementaryColorGroup +ComboBox { +model:demoModel +} +} +} +} \ No newline at end of file -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/219 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I21502186178a32ce480cd3e838335451bf644c3e Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: roundToIconSize(0) should return 0
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/213 Change subject: roundToIconSize(0) should return 0 .. roundToIconSize(0) should return 0 If an invalid icon size is passed to roundToIconSize we should return an invalid icon size. This can cause IconItem to load a small pixmap which will never be shown. Change-Id: Ia678f2e879b83317e2971069acf8f00d9ce2e052 --- M src/declarativeimports/core/units.cpp 1 file changed, 3 insertions(+), 2 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/13/213/1 diff --git a/src/declarativeimports/core/units.cpp b/src/declarativeimports/core/units.cpp index dfc817a..ba06553 100644 --- a/src/declarativeimports/core/units.cpp +++ b/src/declarativeimports/core/units.cpp @@ -107,9 +107,10 @@ int Units::roundToIconSize(int size) { /*Do *not* use devicePixelIconSize here, we want to use the sizes of the pixmaps of the smallest icons on the disk. And those are unaffected by dpi*/ -if (size KIconLoader::SizeSmall) { +if (size = 0) { +return 0; +} else if (size KIconLoader::SizeSmall) { return KIconLoader::SizeSmall/2; - } else if (size KIconLoader::SizeSmallMedium) { return KIconLoader::SizeSmall; -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/213 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia678f2e879b83317e2971069acf8f00d9ce2e052 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk Gerrit-Reviewer: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Do not keep reparsing plasmarc configuration
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/214 Change subject: Do not keep reparsing plasmarc configuration .. Do not keep reparsing plasmarc configuration KConfig-reparseConfiguration is expensive. It throws away our cached values. The Units constructor was calling this every single time. Units is created a _lot_; once per applet and once per FrameSVGItem. This meant we were reloading the same config ~100 times on startup for no reason. Perf showed this as being ~5% of the total startup time. -7.47% 0.00% plasmashell libKF5ConfigCore.so.5.5.0 [.] KConfig::reparseConfiguration() - KConfig::reparseConfiguration() + 66.51% Units::settingsFileChanged(QString const) + 25.95% KConfig::KConfig(QString const, QFlagsKConfig::OpenFlag, QStandardPaths::StandardLocation) + 3.93% KDesktopFile::KDesktopFile(QString const) + 3.61% Units::settingsFileChanged(QString const) Change-Id: Ia70b7001ba473c8063e6c999b8e4233ea5b206f5 --- M src/declarativeimports/core/units.cpp M src/declarativeimports/core/units.h 2 files changed, 20 insertions(+), 12 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/14/214/1 diff --git a/src/declarativeimports/core/units.cpp b/src/declarativeimports/core/units.cpp index ba06553..43533df 100644 --- a/src/declarativeimports/core/units.cpp +++ b/src/declarativeimports/core/units.cpp @@ -1,6 +1,7 @@ /*** * Copyright 2013 Marco Martin m...@kde.org* * Copyright 2014 Sebastian Kügler se...@kde.org * + * Copyright 2014 David Edmundson davidedmuns...@kde.org * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * @@ -59,8 +60,8 @@ connect(KDirWatch::self(), KDirWatch::dirty, this, Units::settingsFileChanged); // ... but also remove/recreate cycles, like KConfig does it connect(KDirWatch::self(), KDirWatch::created, this, Units::settingsFileChanged); -// Trigger configuration read -settingsFileChanged(plasmarc); +// read configuration +updatePlasmaRCSettings(); } Units::~Units() @@ -70,18 +71,24 @@ void Units::settingsFileChanged(const QString file) { if (file.endsWith(plasmarc)) { - -KConfigGroup cfg = KConfigGroup(KSharedConfig::openConfig(plasmarc), groupName); -cfg.config()-reparseConfiguration(); -const int longDuration = cfg.readEntry(longDuration, defaultLongDuration); - -if (longDuration != m_longDuration) { -m_longDuration = longDuration; -emit durationChanged(); -} +KSharedConfigPtr cfg = KSharedConfig::openConfig(plasmarc); +cfg-reparseConfiguration(); +updatePlasmaRCSettings(); } } +void Units::updatePlasmaRCSettings() +{ +KConfigGroup cfg = KConfigGroup(KSharedConfig::openConfig(plasmarc), groupName); +const int longDuration = cfg.readEntry(longDuration, defaultLongDuration); + +if (longDuration != m_longDuration) { +m_longDuration = longDuration; +emit durationChanged(); +} +} + + void Units::iconLoaderSettingsChanged() { // These are not scaled, we respect the user's setting over dpi scaling diff --git a/src/declarativeimports/core/units.h b/src/declarativeimports/core/units.h index e1d9bde..a469423 100644 --- a/src/declarativeimports/core/units.h +++ b/src/declarativeimports/core/units.h @@ -164,11 +164,12 @@ private Q_SLOTS: void iconLoaderSettingsChanged(); -void settingsFileChanged(const QString settings); +void settingsFileChanged(const QString file); private: void updateDevicePixelRatio(); void updateSpacing(); +void updatePlasmaRCSettings(); /** * @return The dpi-adjusted size for a given icon size */ -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/214 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia70b7001ba473c8063e6c999b8e4233ea5b206f5 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk Gerrit-Reviewer: Sebastian Kügler se...@kde.org ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Save SVGs only when a theme is unloaded, not on each theme p...
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/215 Change subject: Save SVGs only when a theme is unloaded, not on each theme proxy .. Save SVGs only when a theme is unloaded, not on each theme proxy A single Plasma theme will be represented by one ThemePrivate object, which is exported in multiple Theme objects. We want to save the cache when that theme stops being used, not each time an item stops using the theme. saveSvgElementsCache calls sync() which involves a lot of parsing and IO. This makes everything a lot faster at no cost. Change-Id: Ica6ba0273bc99fb8ad8733a1c90db8f1e87c49ea --- M src/plasma/private/theme_p.cpp M src/plasma/theme.cpp 2 files changed, 3 insertions(+), 4 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/15/215/1 diff --git a/src/plasma/private/theme_p.cpp b/src/plasma/private/theme_p.cpp index b9c2a55..1963f74 100644 --- a/src/plasma/private/theme_p.cpp +++ b/src/plasma/private/theme_p.cpp @@ -115,7 +115,8 @@ ThemePrivate::~ThemePrivate() { -if (FrameSvgPrivate::s_sharedFrames.contains(this)) { +saveSvgElementsCache(); +if (FrameSvgPrivate::s_sharedFrames.contains(this)) { foreach (FrameData *data, FrameSvgPrivate::s_sharedFrames[this].values()) { delete data; } @@ -633,7 +634,7 @@ break; } } - + switch (role) { diff --git a/src/plasma/theme.cpp b/src/plasma/theme.cpp index ba4e9e8..18d4ed6 100644 --- a/src/plasma/theme.cpp +++ b/src/plasma/theme.cpp @@ -91,8 +91,6 @@ Theme::~Theme() { -d-saveSvgElementsCache(); - if (d == ThemePrivate::globalTheme) { if (!ThemePrivate::globalThemeRefCount.deref()) { disconnect(ThemePrivate::globalTheme, 0, this, 0); -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/215 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ica6ba0273bc99fb8ad8733a1c90db8f1e87c49ea Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk Gerrit-Reviewer: Aaron J. Seigo ase...@kde.org Gerrit-Reviewer: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Use a shared config in tooltip
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/216 Change subject: Use a shared config in tooltip .. Use a shared config in tooltip Change-Id: I68521f9066114a265c3f3444332e5e67016207f7 --- M src/declarativeimports/core/tooltip.cpp 1 file changed, 2 insertions(+), 4 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/16/216/1 diff --git a/src/declarativeimports/core/tooltip.cpp b/src/declarativeimports/core/tooltip.cpp index 839b8b7..dc0b457 100644 --- a/src/declarativeimports/core/tooltip.cpp +++ b/src/declarativeimports/core/tooltip.cpp @@ -71,10 +71,8 @@ void ToolTip::settingsChanged() { -KConfig config(plasmarc); -KConfigGroup cg(config, PlasmaToolTips); - -m_interval = cg.readEntry(Delay, 700); +KConfigGroup cfg = KConfigGroup(KSharedConfig::openConfig(plasmarc), PlasmaToolTips); +m_interval = cfg.readEntry(Delay, 700); m_tooltipsEnabledGlobally = (m_interval 0); } -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/216 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I68521f9066114a265c3f3444332e5e67016207f7 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk Gerrit-Reviewer: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Reparse settings when they change
David Edmundson has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/217 Change subject: Reparse settings when they change .. Reparse settings when they change Change-Id: Ibb13077943330417fa08d23ce1ea60f2aff5defc --- M src/declarativeimports/core/tooltip.cpp M src/declarativeimports/core/tooltip.h 2 files changed, 7 insertions(+), 1 deletion(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/17/217/1 diff --git a/src/declarativeimports/core/tooltip.cpp b/src/declarativeimports/core/tooltip.cpp index dc0b457..2e19f0d 100644 --- a/src/declarativeimports/core/tooltip.cpp +++ b/src/declarativeimports/core/tooltip.cpp @@ -49,7 +49,7 @@ m_showTimer-setSingleShot(true); connect(m_showTimer, QTimer::timeout, this, ToolTip::showToolTip); -settingsChanged(); +loadSettings(); const QString configFile = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QLatin1Char('/') + plasmarc; KDirWatch::self()-addFile(configFile); @@ -71,6 +71,11 @@ void ToolTip::settingsChanged() { +KSharedConfig::openConfig(plasmarc)-reparseConfiguration(); +} + +void ToolTip::loadSettings() +{ KConfigGroup cfg = KConfigGroup(KSharedConfig::openConfig(plasmarc), PlasmaToolTips); m_interval = cfg.readEntry(Delay, 700); m_tooltipsEnabledGlobally = (m_interval 0); diff --git a/src/declarativeimports/core/tooltip.h b/src/declarativeimports/core/tooltip.h index 105bf38..f71bdd1 100644 --- a/src/declarativeimports/core/tooltip.h +++ b/src/declarativeimports/core/tooltip.h @@ -180,6 +180,7 @@ void settingsChanged(); private: +void loadSettings(); bool m_tooltipsEnabledGlobally; bool m_containsMouse; Plasma::Types::Location m_location; -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/217 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ibb13077943330417fa08d23ce1ea60f2aff5defc Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: David Edmundson da...@davidedmundson.co.uk Gerrit-Reviewer: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: plasma_containmentactions_test: Link to KI18n
Heiko Becker has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/210 Change subject: plasma_containmentactions_test: Link to KI18n .. plasma_containmentactions_test: Link to KI18n I get CMakeFiles/plasma_containmentactions_test.dir/test.cpp.o: test.cpp:function ContextTest::createConfigurationInterface(QWidget*): error: undefined reference to 'ki18n(char const*)' errors otherwise when building with -DBUILD_EXAMPLES:BOOL=TRUE. Change-Id: I9af913bf182fee20c1e59cd76c840b1e6350c269 --- M examples/testcontainmentactionsplugin/CMakeLists.txt 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/10/210/1 diff --git a/examples/testcontainmentactionsplugin/CMakeLists.txt b/examples/testcontainmentactionsplugin/CMakeLists.txt index 2b267dc..fb0021f 100644 --- a/examples/testcontainmentactionsplugin/CMakeLists.txt +++ b/examples/testcontainmentactionsplugin/CMakeLists.txt @@ -4,7 +4,7 @@ ki18n_wrap_ui(test_SRCS config.ui) add_library(plasma_containmentactions_test MODULE ${test_SRCS}) -target_link_libraries(plasma_containmentactions_test KF5::Plasma KF5::KIOWidgets KF5::XmlGui) +target_link_libraries(plasma_containmentactions_test KF5::Plasma KF5::I18n KF5::KIOWidgets KF5::XmlGui) install(TARGETS plasma_containmentactions_test DESTINATION ${PLUGIN_INSTALL_DIR}) install(FILES plasma-containmentactions-test.desktop DESTINATION ${SERVICES_INSTALL_DIR}) -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/210 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I9af913bf182fee20c1e59cd76c840b1e6350c269 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Heiko Becker heire...@exherbo.org Gerrit-Reviewer: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Make tooltipEnabledGlobally public property
Bhushan Shah has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/207 Change subject: Make tooltipEnabledGlobally public property .. Make tooltipEnabledGlobally public property This is case when some users of TooltipArea wants to show some information when tooltips are disabled globally Change-Id: I88b9f80d779177479730af3f533aabd629654bc0 --- M src/declarativeimports/core/tooltip.cpp M src/declarativeimports/core/tooltip.h 2 files changed, 12 insertions(+), 1 deletion(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/07/207/1 diff --git a/src/declarativeimports/core/tooltip.cpp b/src/declarativeimports/core/tooltip.cpp index 839b8b7..dec3adc 100644 --- a/src/declarativeimports/core/tooltip.cpp +++ b/src/declarativeimports/core/tooltip.cpp @@ -75,7 +75,12 @@ KConfigGroup cg(config, PlasmaToolTips); m_interval = cg.readEntry(Delay, 700); -m_tooltipsEnabledGlobally = (m_interval 0); +bool enabled = (m_interval 0); + +if (m_tooltipsEnabledGlobally != enabled) { +m_tooltipsEnabledGlobally == enabled; +emit tooltipsEnabledGloballyChanged(); +} } QQuickItem *ToolTip::mainItem() const diff --git a/src/declarativeimports/core/tooltip.h b/src/declarativeimports/core/tooltip.h index 105bf38..b494489 100644 --- a/src/declarativeimports/core/tooltip.h +++ b/src/declarativeimports/core/tooltip.h @@ -116,6 +116,11 @@ */ Q_PROPERTY(bool interactive MEMBER m_interactive WRITE setInteractive NOTIFY interactiveChanged) +/** + * this property contains if tooltip is globally enabled or not + */ +Q_PROPERTY(bool tooltipsEnabledGlobally MEMBER m_tooltipsEnabledGlobally NOTIFY tooltipsEnabledGloballyChanged) + public: /// @cond INTERNAL_DOCS ToolTip(QQuickItem *parent = 0); @@ -175,6 +180,7 @@ void locationChanged(); void activeChanged(); void interactiveChanged(); +void tooltipsEnabledGloballyChanged(); private Q_SLOTS: void settingsChanged(); -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/207 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I88b9f80d779177479730af3f533aabd629654bc0 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Bhushan Shah bhus...@gmail.com Gerrit-Reviewer: Eike Hein h...@kde.org ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: export a plasma version number in themes
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/195 Change subject: export a plasma version number in themes .. export a plasma version number in themes some of the behavior of the theme has changed. this makes some of the old themes to not work correctly (like black text on black) read a version number of the plasma version this theme has been intended for and use it to change the behavior for retrocompatibility (all themes that don't export this are assumed to be from KDE4) Change-Id: I4bc20a0c10de9f9a6c3facd63b6c5b6da210039a --- M src/desktoptheme/air/metadata.desktop M src/desktoptheme/breeze-dark/metadata.desktop M src/desktoptheme/breeze/metadata.desktop M src/desktoptheme/oxygen/metadata.desktop M src/plasma/private/theme_p.cpp M src/plasma/private/theme_p.h 6 files changed, 30 insertions(+), 1 deletion(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/95/195/1 diff --git a/src/desktoptheme/air/metadata.desktop b/src/desktoptheme/air/metadata.desktop index a297bb9..c12fde3 100644 --- a/src/desktoptheme/air/metadata.desktop +++ b/src/desktoptheme/air/metadata.desktop @@ -86,6 +86,7 @@ X-KDE-PluginInfo-Depends= X-KDE-PluginInfo-License=GPL X-KDE-PluginInfo-EnabledByDefault=true +X-Plasma-API=5.0 [Wallpaper] defaultWallpaperTheme=Elarun diff --git a/src/desktoptheme/breeze-dark/metadata.desktop b/src/desktoptheme/breeze-dark/metadata.desktop index 9b4d611..52c0041 100644 --- a/src/desktoptheme/breeze-dark/metadata.desktop +++ b/src/desktoptheme/breeze-dark/metadata.desktop @@ -41,6 +41,7 @@ X-KDE-PluginInfo-Depends= X-KDE-PluginInfo-License=LGPL X-KDE-PluginInfo-EnabledByDefault=true +X-Plasma-API=5.0 [Wallpaper] defaultWallpaperTheme=Next diff --git a/src/desktoptheme/breeze/metadata.desktop b/src/desktoptheme/breeze/metadata.desktop index ddff6a5..cb15ee8 100644 --- a/src/desktoptheme/breeze/metadata.desktop +++ b/src/desktoptheme/breeze/metadata.desktop @@ -43,6 +43,7 @@ X-KDE-PluginInfo-Depends= X-KDE-PluginInfo-License=LGPL X-KDE-PluginInfo-EnabledByDefault=true +X-Plasma-API=5.0 [Wallpaper] defaultWallpaperTheme=Next diff --git a/src/desktoptheme/oxygen/metadata.desktop b/src/desktoptheme/oxygen/metadata.desktop index a1a0c51..96592c1 100644 --- a/src/desktoptheme/oxygen/metadata.desktop +++ b/src/desktoptheme/oxygen/metadata.desktop @@ -82,6 +82,7 @@ X-KDE-PluginInfo-Depends= X-KDE-PluginInfo-License=GPL X-KDE-PluginInfo-EnabledByDefault=true +X-Plasma-API=5.0 [Wallpaper] defaultWallpaperTheme=Elarun diff --git a/src/plasma/private/theme_p.cpp b/src/plasma/private/theme_p.cpp index ccd9f91..61cf797 100644 --- a/src/plasma/private/theme_p.cpp +++ b/src/plasma/private/theme_p.cpp @@ -66,7 +66,10 @@ useGlobal(true), hasWallpapers(false), fixedName(false), - backgroundContrastEnabled(true) + backgroundContrastEnabled(true), + apiMajor(1), + apiMinor(0), + apiRevision(0) { ThemeConfig config; cacheTheme = config.cacheTheme(); @@ -532,6 +535,13 @@ { const KColorScheme *scheme = 0; +//Before 5.0 Plasma theme really only used Normal and Button +//many old themes are built on this assumption and will break +//otherwise +if (apiMajor 5 group != Theme::NormalColorGroup) { +group = Theme::ButtonColorGroup; +} + switch (group) { case Theme::ButtonColorGroup: { scheme = buttonColorScheme; @@ -796,6 +806,16 @@ KConfig metadata(metadataPath); processWallpaperSettings(metadata); } + +//Check for what Plasma version the theme has been done +//There are some behavioral differences between KDE4 Plasma and Plasma 5 +cg = KConfigGroup(metadata, Desktop Entry); +const QString apiVersion = cg.readEntry(X-Plasma-API, 1.0); +QRegExp exp((\\d+)\\.{0,1}(\\d*)\\.{0,1}(\\d*)); +exp.indexIn(apiVersion); +apiMajor = exp.cap(1).toInt(); +apiMinor = exp.cap(2).toInt(); +apiRevision = exp.cap(3).toInt(); } if (realTheme isDefault writeSettings) { diff --git a/src/plasma/private/theme_p.h b/src/plasma/private/theme_p.h index 309b555..96e98ed 100644 --- a/src/plasma/private/theme_p.h +++ b/src/plasma/private/theme_p.h @@ -153,6 +153,11 @@ qreal backgroundIntensity; qreal backgroundSaturation; bool backgroundContrastEnabled; + +//Version number of Plasma the Theme has been designed for +int apiMajor; +int apiMinor; +int apiRevision; }; } -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/195 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I4bc20a0c10de9f9a6c3facd63b6c5b6da210039a Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Marco Martin notm...@gmail.com Gerrit-Reviewer
Change in plasma-framework[master]: fix typo height - width
Xuetian Weng has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/196 Change subject: fix typo height - width .. fix typo height - width updateMinimumWidth and updateMaximumWidth wrongly set the updated value to height instead of width. Change-Id: Ie24ef194d9bf02e53b92aa6802b0fbded68b896d --- M src/plasmaquick/dialog.cpp 1 file changed, 4 insertions(+), 4 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/96/196/1 diff --git a/src/plasmaquick/dialog.cpp b/src/plasmaquick/dialog.cpp index 931068a..1c07ab0 100644 --- a/src/plasmaquick/dialog.cpp +++ b/src/plasmaquick/dialog.cpp @@ -326,8 +326,8 @@ //on the scene auto margin = frameSvgItem-fixedMargins(); int minimumWidth = mainItemLayout-property(minimumWidth).toInt() + margin-left() + margin-right(); -q-contentItem()-setHeight(qMax(q-width(), minimumWidth)); -q-setHeight(qMax(q-width(), minimumWidth)); +q-contentItem()-setWidth(qMax(q-width(), minimumWidth)); +q-setWidth(qMax(q-width(), minimumWidth)); hintsCommitTimer.start(); } @@ -368,8 +368,8 @@ auto margin = frameSvgItem-fixedMargins(); int maximumWidth = mainItemLayout-property(maximumWidth).toInt() + margin-left() + margin-right(); -q-contentItem()-setHeight(qMax(q-width(), maximumWidth)); -q-setHeight(qMax(q-width(), maximumWidth)); +q-contentItem()-setWidth(qMax(q-width(), maximumWidth)); +q-setWidth(qMax(q-width(), maximumWidth)); hintsCommitTimer.start(); } -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/196 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ie24ef194d9bf02e53b92aa6802b0fbded68b896d Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Xuetian Weng wen...@gmail.com Gerrit-Reviewer: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: Fix the platformstatus kded module
Martin Klapetek has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/197 Change subject: Fix the platformstatus kded module .. Fix the platformstatus kded module The module .desktop file has a typo in the X-KDE-DBus-ModuleName which results in the KCM not being able to see the status of the module. Plus it renames the .desktop file to not contain the kded_ prefix, now it matches every other kded .desktop file we ship (and also matches the library and dbus module names). Change-Id: I5006672ca041d9820b4388ba4e99b7899f36be18 --- M src/platformstatus/CMakeLists.txt R src/platformstatus/platformstatus.desktop 2 files changed, 2 insertions(+), 2 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/97/197/1 diff --git a/src/platformstatus/CMakeLists.txt b/src/platformstatus/CMakeLists.txt index 6ff2375..43baa3c 100644 --- a/src/platformstatus/CMakeLists.txt +++ b/src/platformstatus/CMakeLists.txt @@ -26,6 +26,6 @@ ) install( TARGETS kded_platformstatusDESTINATION ${PLUGIN_INSTALL_DIR}/kf5/kded ) -install( FILES kded_platformstatus.desktop DESTINATION ${SERVICES_INSTALL_DIR}/kded ) +install( FILES platformstatus.desktop DESTINATION ${SERVICES_INSTALL_DIR}/kded ) install( FILES org.kde.platformstatus.xml DESTINATION ${DBUS_INTERFACES_INSTALL_DIR} ) diff --git a/src/platformstatus/kded_platformstatus.desktop b/src/platformstatus/platformstatus.desktop similarity index 98% rename from src/platformstatus/kded_platformstatus.desktop rename to src/platformstatus/platformstatus.desktop index ddb9f0b..09e9153 100644 --- a/src/platformstatus/kded_platformstatus.desktop +++ b/src/platformstatus/platformstatus.desktop @@ -2,7 +2,7 @@ Type=Service X-KDE-ServiceTypes=KDEDModule X-KDE-Library=kf5/kded/platformstatus -X-KDE-DBus-ModuleName=plaformstatus +X-KDE-DBus-ModuleName=platformstatus X-KDE-Kded-autoload=true X-KDE-Kded-load-on-demand=false Name=Platform Status -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/197 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I5006672ca041d9820b4388ba4e99b7899f36be18 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Martin Klapetek mklape...@kde.org Gerrit-Reviewer: Ivan Čukić ivan.cu...@kde.org ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: use PlasmaCore.ColorScope when suitable
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/177 Change subject: use PlasmaCore.ColorScope when suitable .. use PlasmaCore.ColorScope when suitable It is possible to put a PlasmaCore.ColorScope element, to automatically change the colors: if for instance the complementary scope will be set, all labels descendent of such element would flip their color Change-Id: I2214aca522eb094cf067d8726c5bf2a7ecbf36b3 --- M src/declarativeimports/plasmacomponents/qml/Label.qml M src/declarativeimports/plasmacomponents/qml/styles/TextAreaStyle.qml M src/declarativeimports/plasmacomponents/qml/styles/ToolButtonStyle.qml 3 files changed, 5 insertions(+), 5 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/77/177/1 diff --git a/src/declarativeimports/plasmacomponents/qml/Label.qml b/src/declarativeimports/plasmacomponents/qml/Label.qml index 1243ca6..a22efb6 100644 --- a/src/declarativeimports/plasmacomponents/qml/Label.qml +++ b/src/declarativeimports/plasmacomponents/qml/Label.qml @@ -50,7 +50,7 @@ font.underline: theme.defaultFont.underline font.weight: theme.defaultFont.weight font.wordSpacing: theme.defaultFont.wordSpacing -color: theme.textColor +color: PlasmaCore.ColorScope.textColor opacity: enabled? 1 : 0.6 diff --git a/src/declarativeimports/plasmacomponents/qml/styles/TextAreaStyle.qml b/src/declarativeimports/plasmacomponents/qml/styles/TextAreaStyle.qml index 68f1a8b..90af0c5 100644 --- a/src/declarativeimports/plasmacomponents/qml/styles/TextAreaStyle.qml +++ b/src/declarativeimports/plasmacomponents/qml/styles/TextAreaStyle.qml @@ -36,9 +36,9 @@ font: theme.defaultFont backgroundColor: transparent -textColor: theme.viewTextColor -selectionColor: theme.viewFocusColor -selectedTextColor: theme.viewBackgroundColor +textColor: control.backgroundVisible ? theme.viewTextColor : PlasmaCore.ColorScope.textColor +selectionColor: control.backgroundVisible ? theme.viewFocusColor : PlasmaCore.ColorScope.highlightColor +selectedTextColor: control.backgroundVisible ? theme.viewBackgroundColor : PlasmaCore.ColorScope.backgroundColor renderType: Text.NativeRendering diff --git a/src/declarativeimports/plasmacomponents/qml/styles/ToolButtonStyle.qml b/src/declarativeimports/plasmacomponents/qml/styles/ToolButtonStyle.qml index af04469..cf19524 100644 --- a/src/declarativeimports/plasmacomponents/qml/styles/ToolButtonStyle.qml +++ b/src/declarativeimports/plasmacomponents/qml/styles/ToolButtonStyle.qml @@ -87,7 +87,7 @@ visible: control.text != Layout.fillWidth: true height: parent.height -color: control.hovered || !control.flat ? theme.buttonTextColor : theme.textColor +color: control.hovered || !control.flat ? theme.buttonTextColor : PlasmaCore.ColorScope.textColor horizontalAlignment: icon.valid ? Text.AlignLeft : Text.AlignHCenter verticalAlignment: Text.AlignVCenter elide: Text.ElideRight -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/177 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I2214aca522eb094cf067d8726c5bf2a7ecbf36b3 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Marco Martin notm...@gmail.com Gerrit-Reviewer: David Edmundson da...@davidedmundson.co.uk ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Change in plasma-framework[master]: workaround on textarea input breaking
Marco Martin has uploaded a new change for review. https://gerrit.vesnicky.cesnet.cz/r/145 Change subject: workaround on textarea input breaking .. workaround on textarea input breaking this makes sure if there is an item with focus in the applet, it and all its parent are removed the focus when the applet is deleted. otherwise when there is an item with focus that loses its qquickwindow, it will never be able to gain it again it's a workaround but i'm not sure how should be fixed in qquickitem, or if is even appropriate Change-Id: I72c8f01d4557003604c4261ca5a9ab49dd136b02 --- M src/scriptengines/qml/plasmoid/appletinterface.cpp M src/scriptengines/qml/plasmoid/appletinterface.h 2 files changed, 35 insertions(+), 6 deletions(-) git pull ssh://gerrit.vesnicky.cesnet.cz:29418/plasma-framework refs/changes/45/145/1 -- To view, visit https://gerrit.vesnicky.cesnet.cz/r/145 To unsubscribe, visit https://gerrit.vesnicky.cesnet.cz/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I72c8f01d4557003604c4261ca5a9ab49dd136b02 Gerrit-PatchSet: 1 Gerrit-Project: plasma-framework Gerrit-Branch: master Gerrit-Owner: Marco Martin notm...@gmail.com ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Fwd: Plasma Framework problems
On Monday 20 October 2014 02:52:58 David Edmundson wrote: Give me the sha1 to cherry-pick and I'll make a 5.3.1 with it. a3932843386a29faa3c62bf2934a173a3781d56c That doesn't make sense, that commit is from September 15 and is already in 5.3.0. PS: please CC me for urgent requests... -- David Faure, fa...@kde.org, http://www.davidfaure.fr Working on KDE Frameworks 5 ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Fwd: Plasma Framework problems
On Thu, Oct 23, 2014 at 9:33 AM, David Faure fa...@kde.org wrote: On Monday 20 October 2014 02:52:58 David Edmundson wrote: Give me the sha1 to cherry-pick and I'll make a 5.3.1 with it. a3932843386a29faa3c62bf2934a173a3781d56c That doesn't make sense, that commit is from September 15 and is already in 5.3.0. Sorry, that was a hash to revert. David ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Fwd: Plasma Framework problems
On Thursday 23 October 2014 13:20:06 David Edmundson wrote: On Thu, Oct 23, 2014 at 9:33 AM, David Faure fa...@kde.org wrote: On Monday 20 October 2014 02:52:58 David Edmundson wrote: Give me the sha1 to cherry-pick and I'll make a 5.3.1 with it. a3932843386a29faa3c62bf2934a173a3781d56c That doesn't make sense, that commit is from September 15 and is already in 5.3.0. Sorry, that was a hash to revert. Oh, I see, I thought the revert had happened in git... OK, done and packaged. Packagers: it's up. plasma-framework v5.3.1 9811b13f24d05211facc17eeb0566a3c997a4fb7 0ded7edd62471347b10796ed3d9ba4b47e7f71ab881fd3de5261171fa3976ffd sources/plasma-framework-5.3.1.tar.xz -- David Faure, fa...@kde.org, http://www.davidfaure.fr Working on KDE Frameworks 5 ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Fwd: Plasma Framework problems
On Tuesday 14 October 2014 22:17:38 Marco Martin wrote: On Monday 13 October 2014, Marco Martin wrote: I need approval from Marco and other David. after a quick chat with David E this morning, I would revert that patch (and then remove the plugin in plasma-workspace master) *but* this only if there will be a 5.3.1 (there should be a fix in kwindowsystem as well as far i understood, so would be good a 5.3.1 release with both fixes) Updates on this? how to proceed? it would be released from the current master, 5.3 status plus one comit, or..? Give me the sha1 to cherry-pick and I'll make a 5.3.1 with it. Sorry for the delay. -- David Faure, fa...@kde.org, http://www.davidfaure.fr Working on KDE Frameworks 5 ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Fwd: Plasma Framework problems
Give me the sha1 to cherry-pick and I'll make a 5.3.1 with it. a3932843386a29faa3c62bf2934a173a3781d56c ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Review Request 120596: Adopt QuickAddons in plasma-framework
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/120596/ --- Review request for KDE Frameworks and Plasma. Repository: plasma-framework Description --- Removes the code that was moved to QuickAddons Diffs - src/declarativeimports/core/framesvgitem.cpp bb4dc69 src/declarativeimports/core/iconitem.cpp 4f3d5d6 src/declarativeimports/core/svgitem.cpp 50807d4 src/declarativeimports/core/svgtexturenode.h 8cc7bb3 src/plasmaquick/CMakeLists.txt a10beab src/declarativeimports/core/CMakeLists.txt 9aba919 src/declarativeimports/core/framesvgitem.h 73494d4 Diff: https://git.reviewboard.kde.org/r/120596/diff/ Testing --- Thanks, Aleix Pol Gonzalez ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Review Request 120596: Adopt QuickAddons in plasma-framework
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/120596/#review68445 --- Ship it! Inviala! - Marco Martin On Ott. 15, 2014, 10:50 a.m., Aleix Pol Gonzalez wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/120596/ --- (Updated Ott. 15, 2014, 10:50 a.m.) Review request for KDE Frameworks and Plasma. Repository: plasma-framework Description --- Removes the code that was moved to QuickAddons Diffs - src/declarativeimports/core/framesvgitem.cpp bb4dc69 src/declarativeimports/core/iconitem.cpp 4f3d5d6 src/declarativeimports/core/svgitem.cpp 50807d4 src/declarativeimports/core/svgtexturenode.h 8cc7bb3 src/plasmaquick/CMakeLists.txt a10beab src/declarativeimports/core/CMakeLists.txt 9aba919 src/declarativeimports/core/framesvgitem.h 73494d4 Diff: https://git.reviewboard.kde.org/r/120596/diff/ Testing --- Thanks, Aleix Pol Gonzalez ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Review Request 120596: Adopt QuickAddons in plasma-framework
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/120596/ --- (Updated Oct. 15, 2014, 11:24 a.m.) Status -- This change has been marked as submitted. Review request for KDE Frameworks and Plasma. Repository: plasma-framework Description --- Removes the code that was moved to QuickAddons Diffs - src/declarativeimports/core/framesvgitem.cpp bb4dc69 src/declarativeimports/core/iconitem.cpp 4f3d5d6 src/declarativeimports/core/svgitem.cpp 50807d4 src/declarativeimports/core/svgtexturenode.h 8cc7bb3 src/plasmaquick/CMakeLists.txt a10beab src/declarativeimports/core/CMakeLists.txt 9aba919 src/declarativeimports/core/framesvgitem.h 73494d4 Diff: https://git.reviewboard.kde.org/r/120596/diff/ Testing --- Thanks, Aleix Pol Gonzalez ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Fwd: Plasma Framework problems
On Monday 13 October 2014, Marco Martin wrote: I need approval from Marco and other David. after a quick chat with David E this morning, I would revert that patch (and then remove the plugin in plasma-workspace master) *but* this only if there will be a 5.3.1 (there should be a fix in kwindowsystem as well as far i understood, so would be good a 5.3.1 release with both fixes) Updates on this? how to proceed? it would be released from the current master, 5.3 status plus one comit, or..? -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Fwd: Plasma Framework problems
On Sunday 12 October 2014, David Edmundson wrote: Assuming we don't have a time machine our options are: - revert this commit and release plasma-framework 5.3.1 really quickly Please go with this option... I need approval from Marco and other David. David eh no, that commit was correct. that code was moved in a plugin, so it must not be in two places. either it stays as is , or the plugin is removed from plasma-workspace, causing other similar problems of synchronization between p-f and p-w -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Fwd: Plasma Framework problems
On Monday 13 of October 2014 13:07:35 Marco Martin wrote: On Sunday 12 October 2014, David Edmundson wrote: On 12 Oct 2014 18:04, šumski hrvoje.sen...@gmail.com wrote: On Sunday 12 of October 2014 11:58:44 David Edmundson wrote: I'll report back when I've confirmed this and then we can work out how we proceed. Reverting a3932843386a29faa3c62bf2934a173a3781d56c does indeed make everything work. Assuming we don't have a time machine our options are: - revert this commit and release plasma-framework 5.3.1 really quickly Please go with this option... I need approval from Marco and other David. after a quick chat with David E this morning, I would revert that patch (and then remove the plugin in plasma-workspace master) *but* this only if there will be a 5.3.1 (there should be a fix in kwindowsystem as well as far i understood, so would be good a 5.3.1 release with both fixes) this sounds like a good plan (though i don't know if reverting in plasma- workspace is needed, and why only master, 5.1.0 is not out yet) though kwindowsystem is uploaded 2 days ago to 5.3.0 dir Cheers, Hrvoje signature.asc Description: This is a digitally signed message part. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Fwd: Plasma Framework problems
I'll report back when I've confirmed this and then we can work out how we proceed. Reverting a3932843386a29faa3c62bf2934a173a3781d56c does indeed make everything work. Assuming we don't have a time machine our options are: - revert this commit and release plasma-framework 5.3.1 really quickly - communicate the breakage. Plasma 5.1 is out soon anyway ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Fwd: Plasma Framework problems
On 12 Oct 2014 18:04, šumski hrvoje.sen...@gmail.com wrote: On Sunday 12 of October 2014 11:58:44 David Edmundson wrote: I'll report back when I've confirmed this and then we can work out how we proceed. Reverting a3932843386a29faa3c62bf2934a173a3781d56c does indeed make everything work. Assuming we don't have a time machine our options are: - revert this commit and release plasma-framework 5.3.1 really quickly Please go with this option... I need approval from Marco and other David. David ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Re: Fwd: Plasma Framework problems
On Sunday 12 October 2014 20:48:36 David Edmundson wrote: On 12 Oct 2014 18:04, šumski hrvoje.sen...@gmail.com wrote: On Sunday 12 of October 2014 11:58:44 David Edmundson wrote: I'll report back when I've confirmed this and then we can work out how we proceed. Reverting a3932843386a29faa3c62bf2934a173a3781d56c does indeed make everything work. Assuming we don't have a time machine our options are: - revert this commit and release plasma-framework 5.3.1 really quickly Please go with this option... How will this affect Plasma 5.1? Given the review it looks like it was moved into workspace - is it a problem to have the code twice? Anyway if you revert, please deprecate the code, add a TODO KF6 and a comment on why it cannot be removed. I find it kind of scary that a change in the private implementation detail breaks the released software. Cheers Martin signature.asc Description: This is a digitally signed message part. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Fwd: Plasma Framework problems
On Sat, Oct 11, 2014 at 8:10 PM, David Faure fa...@kde.org wrote: On Friday 10 October 2014 16:24:52 David Edmundson wrote: Packagers, It seems Plasma 5.0 does NOT run smoothly against Plasma Framework 5.3. It would be easiest if distros hold off shipping frameworks 5.3 until Plasma 5.1 when Plasma5.1 is released. Clearly this is a screw-up and we need to come up with some better policies when we plan Plasma 5.2 Sorry about this. Verbose++ ? What's the actual problem? This mail is as informative as a bug report that says it doesn't work !!! :-) It doesn't work!!! was pretty much all I have. A G+ post [1] and a flurry of incoming people on IRC complaining of a black screen on login. Why it was broken didn't really matter as I just wanted to stop distros rolling 5.3 into their stable repos ASAP. Apparently users get: Warning: corona package invalid Invalid home screen package I /believe/ it's a3932843386a29faa3c62bf2934a173a3781d56c [2] in plasma-framework that's causing the issue. There was a plasma package structure that was hardcoded, this was moved into a plugin in Plasma Workspaces 5.1. I'm currently rebuilding this combo of packages into a clean prefix so I can prove it is this. I'll report back when I've confirmed this and then we can work out how we proceed. David [1] https://plus.google.com/u/0/+PaulHinchbergerIII/posts/PCtMbdJAkag [2] https://gerrit.vesnicky.cesnet.cz/r/#/c/37/ ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Plasma Framework problems
Packagers, It seems Plasma 5.0 does NOT run smoothly against Plasma Framework 5.3. It would be easiest if distros hold off shipping frameworks 5.3 until Plasma 5.1 when Plasma5.1 is released. Clearly this is a screw-up and we need to come up with some better policies when we plan Plasma 5.2 Sorry about this. David ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Plasma Framework problems
On Friday 10 of October 2014 16:23:41 David Edmundson wrote: Packagers, It seems Plasma 5.0 does NOT run smoothly against Plasma Framework 5.3. It would be easiest if distros hold off shipping frameworks 5.3 until Plasma 5.1 when Plasma5.1 is released. Clearly this is a screw-up and we need to come up with some better policies when we plan Plasma 5.2 Sorry about this. Maybe best would be to move the component to Workspace instead of Frameworks? This would prevent this from happening in the future, and give more freedom to change private, public and runtime API/ABI. There was a lot of convincing to packagers that this won't happen with KF5 'feature', monthly releases, now on 4th release we see this already doesn't work 100% Cheers, Hrvoje David signature.asc Description: This is a digitally signed message part. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
trying test-driven bugfixes in plasma-framework
Hi all, Since we are trying gerrit, let's try to push it even further: Right now, we are freezed, so that means in plasma-framework, plasma-workspace et al will happen only bugfixes for a month or so. Having Gerrit on plasma-framework, I hope that makes easier for me keeping track of changes in plasma-framework: this is an experimental period, so is still not sure if it will make things easier or harder for everybody, let's try. For that would need reviews not to stay hanged there for more than one day or so, but on the other hand to be actually reviewed before being pushed. here is the list of open things, let's see if it can perform better than the reviewboard one https://gerrit.vesnicky.cesnet.cz/r/#/q/project:plasma-framework It's a good moment now, since being mostly bugfixes, it should be mostly atomic commits without big changes (I still have to decide if the Dialog refactor can fully be considered bugfix or if is better to wait next frameworks release, usual problem it's hard to autotest x11-related, windowmanager-related stuff). One thing I would love for bugfixes at least in plasma-framework it to have them accompained by a test, that reproduces the bug. I know it will not be possible for all kinds of bugs: not for crashers, not for most pure aestetical problems. But at least some of the behavior-related bugs that are caused by some piece of API not working as advertised under some particular conditions, that can have and should have a new autotest. It was relatively easy to add those kinds of tests for the startup related bug Alex reported on friday, so I'm moderately optimist about this (even bugs of qml components stuff, there's a test framework for that(tm)). If we get coverage enabled, that would be even better. -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: trying test-driven bugfixes in plasma-framework
On Monday 15 September 2014, Marco Martin wrote: It's a good moment now, since being mostly bugfixes, it should be mostly atomic commits without big changes (I still have to decide if the Dialog refactor can fully be considered bugfix or if is better to wait next frameworks release, usual problem it's hard to autotest x11-related, windowmanager-related stuff). uh, thanks to the confusion of what-gets-released-when, that should be in frameworks 5.3, 5.4 at latest -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: trying test-driven bugfixes in plasma-framework
Right now, we are freezed, so that means in plasma-framework, plasma-workspace et al will happen only bugfixes for a month or so. Only frameworks is frozen. For workspace, desktop etc. we have till Thursday for feature freeze. https://techbase.kde.org/Schedules/Plasma_5 as it's released a week behind. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
[plasma-framework] src/desktoptheme/breeze: Optimize breeze theme
Git commit 0b1bb7edd84b77c4cf5baae8f9e59473c9265f26 by Aleix Pol. Committed on 22/07/2014 at 10:59. Pushed by apol into branch 'master'. Optimize breeze theme Breeze theme usually has borders and center that can be tiled, which ends up in more performant rendering, as we don't need to re-render anything from the svg every time we resize an element. Basically what we did was s/hint-stretch-borders/hint-tile-center/g. The only exceptions we found for this were: picker, dragger and monitor. Reviewed by David Edmundson CCMAIL: plasma-devel@kde.org M +---src/desktoptheme/breeze/dialogs/background.svgz M +---src/desktoptheme/breeze/opaque/dialogs/background.svgz M +---src/desktoptheme/breeze/opaque/widgets/panel-background.svgz M +---src/desktoptheme/breeze/opaque/widgets/tooltip.svgz M +---src/desktoptheme/breeze/translucent/dialogs/background.svgz M +---src/desktoptheme/breeze/translucent/widgets/panel-background.svgz M +---src/desktoptheme/breeze/translucent/widgets/tooltip.svgz M +---src/desktoptheme/breeze/widgets/action-overlays.svgz M +---src/desktoptheme/breeze/widgets/actionbutton.svgz M +---src/desktoptheme/breeze/widgets/analog_meter.svgz M +---src/desktoptheme/breeze/widgets/arrows.svgz M +---src/desktoptheme/breeze/widgets/background.svgz M +---src/desktoptheme/breeze/widgets/bar_meter_horizontal.svgz M +---src/desktoptheme/breeze/widgets/bar_meter_vertical.svgz M +---src/desktoptheme/breeze/widgets/branding.svgz M +---src/desktoptheme/breeze/widgets/busywidget.svgz M +---src/desktoptheme/breeze/widgets/button.svgz M +---src/desktoptheme/breeze/widgets/calendar.svgz M +---src/desktoptheme/breeze/widgets/checkmarks.svgz M +---src/desktoptheme/breeze/widgets/clock.svgz M +---src/desktoptheme/breeze/widgets/configuration-icons.svgz M +---src/desktoptheme/breeze/widgets/containment-controls.svgz M +---src/desktoptheme/breeze/widgets/frame.svgz M +---src/desktoptheme/breeze/widgets/glowbar.svgz M +---src/desktoptheme/breeze/widgets/line.svgz M +---src/desktoptheme/breeze/widgets/lineedit.svgz M +---src/desktoptheme/breeze/widgets/listitem.svgz M +---src/desktoptheme/breeze/widgets/media-delegate.svgz M +---src/desktoptheme/breeze/widgets/pager.svgz M +---src/desktoptheme/breeze/widgets/panel-background.svgz M +---src/desktoptheme/breeze/widgets/plot-background.svgz M +---src/desktoptheme/breeze/widgets/scrollbar.svgz M +---src/desktoptheme/breeze/widgets/scrollwidget.svgz M +---src/desktoptheme/breeze/widgets/slider.svgz M +---src/desktoptheme/breeze/widgets/tabbar.svgz M +---src/desktoptheme/breeze/widgets/tasks.svgz M +---src/desktoptheme/breeze/widgets/toolbar.svgz M +---src/desktoptheme/breeze/widgets/tooltip.svgz M +---src/desktoptheme/breeze/widgets/translucentbackground.svgz M +---src/desktoptheme/breeze/widgets/viewitem.svgz http://commits.kde.org/plasma-framework/0b1bb7edd84b77c4cf5baae8f9e59473c9265f26 diff --git a/src/desktoptheme/breeze/dialogs/background.svgz b/src/desktoptheme/breeze/dialogs/background.svgz index 66af710..0053d47 100644 Binary files a/src/desktoptheme/breeze/dialogs/background.svgz and b/src/desktoptheme/breeze/dialogs/background.svgz differ diff --git a/src/desktoptheme/breeze/opaque/dialogs/background.svgz b/src/desktoptheme/breeze/opaque/dialogs/background.svgz index d3b263a..1501447 100644 Binary files a/src/desktoptheme/breeze/opaque/dialogs/background.svgz and b/src/desktoptheme/breeze/opaque/dialogs/background.svgz differ diff --git a/src/desktoptheme/breeze/opaque/widgets/panel-background.svgz b/src/desktoptheme/breeze/opaque/widgets/panel-background.svgz index d7dcae2..8ac1c5b 100644 Binary files a/src/desktoptheme/breeze/opaque/widgets/panel-background.svgz and b/src/desktoptheme/breeze/opaque/widgets/panel-background.svgz differ diff --git a/src/desktoptheme/breeze/opaque/widgets/tooltip.svgz b/src/desktoptheme/breeze/opaque/widgets/tooltip.svgz index d7dcae2..8ac1c5b 100644 Binary files a/src/desktoptheme/breeze/opaque/widgets/tooltip.svgz and b/src/desktoptheme/breeze/opaque/widgets/tooltip.svgz differ diff --git a/src/desktoptheme/breeze/translucent/dialogs/background.svgz b/src/desktoptheme/breeze/translucent/dialogs/background.svgz index c1fbf0d..c0a625f 100644 Binary files a/src/desktoptheme/breeze/translucent/dialogs/background.svgz and b/src/desktoptheme/breeze/translucent/dialogs/background.svgz differ diff --git a/src/desktoptheme/breeze/translucent/widgets/panel-background.svgz b/src/desktoptheme/breeze/translucent/widgets/panel-background.svgz index dce0440..760ec15 100644 Binary files a/src/desktoptheme/breeze/translucent/widgets/panel-background.svgz and b/src/desktoptheme
Re: Review Request 118254: Plasma-Framework: Add new a shell intrerceptor
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/118254/ --- (Updated May 27, 2014, 11:27 a.m.) Status -- This change has been discarded. Review request for Plasma. Repository: plasma-framework Description --- hello, This patch adds a new interceptor for our shell packages. Right now we cannot load an svg if the image is inside the /contents/images of the shell package. So this patch solves that issue. Diffs - src/plasma/private/packages.cpp fa0fc6a src/plasmaquick/CMakeLists.txt cc5554a src/plasmaquick/shellurlinterceptor.h PRE-CREATION src/plasmaquick/shellurlinterceptor.cpp PRE-CREATION src/plasmaquick/view.cpp 5aa1102 Diff: https://git.reviewboard.kde.org/r/118254/diff/ Testing --- *Testing* org.kde.desktop shell package works without any issue. *Issues* The interceptor doesn't return a scheme for the svg component. PlasmaCore.SvgItem { svg: PlasmaCore.Svg { imagePath: shellpackage:/images/bar.svgz } } On the above code, the path.scheme() from the interceptor never returns shellpackage, so it is completely ignored. But the following one it works Image { source: shellpackage:/images/foo.png } Thanks, Antonis Tsiapaliokas ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Review Request 118254: Plasma-Framework: Add new a shell intrerceptor
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/118254/#review58413 --- This interceptor will fight the KIO interceptor in KDeclarative. We probably only want one of them. - Aleix Pol Gonzalez On May 22, 2014, 10:11 a.m., Antonis Tsiapaliokas wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/118254/ --- (Updated May 22, 2014, 10:11 a.m.) Review request for Plasma. Repository: plasma-framework Description --- hello, This patch adds a new interceptor for our shell packages. Right now we cannot load an svg if the image is inside the /contents/images of the shell package. So this patch solves that issue. Diffs - src/plasma/private/packages.cpp fa0fc6a src/plasmaquick/CMakeLists.txt cc5554a src/plasmaquick/shellurlinterceptor.h PRE-CREATION src/plasmaquick/shellurlinterceptor.cpp PRE-CREATION src/plasmaquick/view.cpp 5aa1102 Diff: https://git.reviewboard.kde.org/r/118254/diff/ Testing --- *Testing* org.kde.desktop shell package works without any issue. *Issues* The interceptor doesn't return a scheme for the svg component. PlasmaCore.SvgItem { svg: PlasmaCore.Svg { imagePath: shellpackage:/images/bar.svgz } } On the above code, the path.scheme() from the interceptor never returns shellpackage, so it is completely ignored. But the following one it works Image { source: shellpackage:/images/foo.png } Thanks, Antonis Tsiapaliokas ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
[plasma-framework] src/plasma: Make QtGui a public dependency of KF5::Plasma
Git commit efdf1ca9176528cd1a16773e887df7740f42ee54 by Aleix Pol. Committed on 26/05/2014 at 02:16. Pushed by apol into branch 'master'. Make QtGui a public dependency of KF5::Plasma Many classes from QtGui are specified in the header files, this alone is enough reason to make it a public dependency. (QGuiApplication, QFont, QPixmap are some examples). This also pulls QtCore (e.g. QString, QRect, QUrl), which also is, of course. CCMAIL: plasma-devel@kde.org M +1-1src/plasma/CMakeLists.txt http://commits.kde.org/plasma-framework/efdf1ca9176528cd1a16773e887df7740f42ee54 diff --git a/src/plasma/CMakeLists.txt b/src/plasma/CMakeLists.txt index 71742f6..3801857 100644 --- a/src/plasma/CMakeLists.txt +++ b/src/plasma/CMakeLists.txt @@ -110,8 +110,8 @@ endif() target_link_libraries(KF5Plasma PUBLIC KF5::Service # For kplugininfo.h and kservice.h -PRIVATE Qt5::Gui +PRIVATE Qt5::Sql Qt5::Svg Qt5::DBus ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: [plasma-framework] examples/dataengines: Fix build with examples
On Fri, May 23, 2014 at 12:22 PM, Sebastian Kügler se...@kde.org wrote: On Friday, May 23, 2014 12:18:55 Marco Martin wrote: I think it's a counter-effect of when i removed KConfigWidgets from libplasma. there is definitely a problem in the cmake there, qt5::gui should be in public in libplasma, right? That's how I understand Aleix. -- sebas http://www.kde.org | http://vizZzion.org | GPG Key ID: 9119 0EF9 Just pushed a change to make QtGui public. This change (and similars) can be reverted now. Aleix ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: [plasma-framework] examples/dataengines: Fix build with examples
CC:ing plasma-devel. Any input on this? (I just fixed the build in the most obvious way, perhaps someone knows why Qt5::Gui had been removed from the implicit public targets in the first place? On Friday, May 23, 2014 00:54:17 Aleix Pol wrote: KF5::Plasma should have Qt5::Gui as public dependency, this shouldn't be needed. On Mon, May 19, 2014 at 11:53 PM, Sebastian Kügler se...@kde.org wrote: Git commit 1f80c23bd514247d60b831de7671eff1e664d95d by Sebastian Kügler. Committed on 19/05/2014 at 21:53. Pushed by sebas into branch 'master'. Fix build with examples M +1-0examples/dataengines/simpleEngine/CMakeLists.txt M +1-0examples/dataengines/sourcesOnRequest/CMakeLists.txt http://commits.kde.org/plasma-framework/1f80c23bd514247d60b831de7671eff1e6 64d95d diff --git a/examples/dataengines/simpleEngine/CMakeLists.txt b/examples/dataengines/simpleEngine/CMakeLists.txt index 07d622d..aa8ce47 100644 --- a/examples/dataengines/simpleEngine/CMakeLists.txt +++ b/examples/dataengines/simpleEngine/CMakeLists.txt @@ -7,6 +7,7 @@ add_library(plasma_dataengine_example_simpleEngine MODULE ${simpleEngine_SRCS}) kservice_desktop_to_json(plasma_dataengine_example_simpleEngine plasma-dataengine-example-simpleEngine.desktop) target_link_libraries(plasma_dataengine_example_simpleEngine + Qt5::Gui KF5::Plasma KF5::Service KF5::I18n diff --git a/examples/dataengines/sourcesOnRequest/CMakeLists.txt b/examples/dataengines/sourcesOnRequest/CMakeLists.txt index c317faf..d60a8fb 100644 --- a/examples/dataengines/sourcesOnRequest/CMakeLists.txt +++ b/examples/dataengines/sourcesOnRequest/CMakeLists.txt @@ -7,6 +7,7 @@ add_library(plasma_dataengine_example_sourcesOnRequest MODULE ${sourcesOnRequest kservice_desktop_to_json(plasma_dataengine_example_sourcesOnRequest plasma-dataengine-example-sourcesOnRequest.desktop) target_link_libraries(plasma_dataengine_example_sourcesOnRequest + Qt5::Gui KF5::Plasma KF5::Service ) -- sebas http://www.kde.org | http://vizZzion.org | GPG Key ID: 9119 0EF9 ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: [plasma-framework] examples/dataengines: Fix build with examples
I think it's a counter-effect of when i removed KConfigWidgets from libplasma. there is definitely a problem in the cmake there, qt5::gui should be in public in libplasma, right? On Friday 23 May 2014, Sebastian Kügler wrote: CC:ing plasma-devel. Any input on this? (I just fixed the build in the most obvious way, perhaps someone knows why Qt5::Gui had been removed from the implicit public targets in the first place? On Friday, May 23, 2014 00:54:17 Aleix Pol wrote: KF5::Plasma should have Qt5::Gui as public dependency, this shouldn't be needed. On Mon, May 19, 2014 at 11:53 PM, Sebastian Kügler se...@kde.org wrote: Git commit 1f80c23bd514247d60b831de7671eff1e664d95d by Sebastian Kügler. Committed on 19/05/2014 at 21:53. Pushed by sebas into branch 'master'. Fix build with examples M +1-0examples/dataengines/simpleEngine/CMakeLists.txt M +1-0examples/dataengines/sourcesOnRequest/CMakeLists.txt http://commits.kde.org/plasma-framework/1f80c23bd514247d60b831de7671eff 1e6 64d95d diff --git a/examples/dataengines/simpleEngine/CMakeLists.txt b/examples/dataengines/simpleEngine/CMakeLists.txt index 07d622d..aa8ce47 100644 --- a/examples/dataengines/simpleEngine/CMakeLists.txt +++ b/examples/dataengines/simpleEngine/CMakeLists.txt @@ -7,6 +7,7 @@ add_library(plasma_dataengine_example_simpleEngine MODULE ${simpleEngine_SRCS}) kservice_desktop_to_json(plasma_dataengine_example_simpleEngine plasma-dataengine-example-simpleEngine.desktop) target_link_libraries(plasma_dataengine_example_simpleEngine + Qt5::Gui KF5::Plasma KF5::Service KF5::I18n diff --git a/examples/dataengines/sourcesOnRequest/CMakeLists.txt b/examples/dataengines/sourcesOnRequest/CMakeLists.txt index c317faf..d60a8fb 100644 --- a/examples/dataengines/sourcesOnRequest/CMakeLists.txt +++ b/examples/dataengines/sourcesOnRequest/CMakeLists.txt @@ -7,6 +7,7 @@ add_library(plasma_dataengine_example_sourcesOnRequest MODULE ${sourcesOnRequest kservice_desktop_to_json(plasma_dataengine_example_sourcesOnRequest plasma-dataengine-example-sourcesOnRequest.desktop) target_link_libraries(plasma_dataengine_example_sourcesOnRequest + Qt5::Gui KF5::Plasma KF5::Service ) -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: [plasma-framework] examples/dataengines: Fix build with examples
On Friday, May 23, 2014 12:18:55 Marco Martin wrote: I think it's a counter-effect of when i removed KConfigWidgets from libplasma. there is definitely a problem in the cmake there, qt5::gui should be in public in libplasma, right? That's how I understand Aleix. -- sebas http://www.kde.org | http://vizZzion.org | GPG Key ID: 9119 0EF9 ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Review Request 118254: Plasma-Framework: Add new a shell intrerceptor
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/118254/ --- Review request for Plasma. Repository: plasma-framework Description --- hello, This patch adds a new interceptor for our shell packages. Right now we cannot load an svg if the image is inside the /contents/images of the shell package. So this patch solves that issue. Diffs - src/plasma/private/packages.cpp fa0fc6a src/plasmaquick/CMakeLists.txt cc5554a src/plasmaquick/shellurlinterceptor.h PRE-CREATION src/plasmaquick/shellurlinterceptor.cpp PRE-CREATION src/plasmaquick/view.cpp 5aa1102 Diff: https://git.reviewboard.kde.org/r/118254/diff/ Testing --- *Testing* org.kde.desktop shell package works without any issue. *Issues* The interceptor doesn't return a scheme for the svg component. PlasmaCore.SvgItem { svg: PlasmaCore.Svg { imagePath: shellpackage:/images/bar.svgz } } On the above code, the path.scheme() from the interceptor never returns shellpackage, so it is completely ignored. But the following one it works Image { source: shellpackage:/images/foo.png } Thanks, Antonis Tsiapaliokas ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
plasma-framework bugs
Hi all, now that plasma-framework is in frameworks, it has its own product in bugzilla, the search is this: https://bugs.kde.org/buglist.cgi?cmdtype=runnamednamedcmd=framework-plasmalist_id=1007509 (unsurprisingly enough are all Dialog bugs :p) there should go bugs that are oviously from one of those things (one component each): * libplasma related (stuff related to Applet, Containment, svgs, dataengines, like backtraces ending up in those classes) * libplasmaquick related (problems in classes here, all Dialog misbehaviors) * components all components related stuff, for components that are in the plasma-framework repo * qml scriptengine stuff (component still not there) -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework bugs
On Tuesday, April 29, 2014 13:37:24 Marco Martin wrote: now that plasma-framework is in frameworks, it has its own product in bugzilla, the search is this: https://bugs.kde.org/buglist.cgi?cmdtype=runnamednamedcmd=framework-plasma; list_id=1007509 The search doesn't exist, you'll need to share it (I guess). -- sebas http://www.kde.org | http://vizZzion.org | GPG Key ID: 9119 0EF9 ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework bugs
On Tuesday 29 April 2014 13:39:58 Sebastian Kügler wrote: On Tuesday, April 29, 2014 13:37:24 Marco Martin wrote: now that plasma-framework is in frameworks, it has its own product in bugzilla, the search is this: https://bugs.kde.org/buglist.cgi?cmdtype=runnamednamedcmd=framework-plasm a list_id=1007509 The search doesn't exist, you'll need to share it (I guess). try it again? -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework bugs
On Tue, Apr 29, 2014 at 5:15 PM, Marco Martin notm...@gmail.com wrote: try it again? here is correct link https://bugs.kde.org/buglist.cgi?cmdtype=doremremaction=runnamedcmd=framework-plasmasharer_id=69245list_id=1007520 -- Bhushan Shah http://bhush9.github.io IRC Nick : bshah on Freenode ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework bugs
I have just removed components component from the plasma-shell product and reassigned all the (closed) bugs to plasma-framework. You may have received some email spam from this, if so I apologise. David ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Friday 25 of April 2014 15:43:39 Marco Martin wrote: On Friday 25 April 2014 15:24:50 Luigi Toscano wrote: On Friday 25 of April 2014 15:14:46 Àlex Fiestas wrote: Moving plasma-framework to frameworks means that we will loose flexibility since we won't be able to break api/abi. So, do we really have to move it there? Imho would be prudent to keep it somewhere else where api/abi stability is not mandatory. Also, right now there is only one user of this framework (plasma-desktop), I would wait until at least we have 2 more shells based on it to commit to any stability. Wasn't/isn't libplasma supposed to be used also by other applications (amarok was the main user I guess)? It always was. wether they want to use it or not it's their problem and this attitude of pest dependency deeply bothers me and makes me not much really motivated to keep working on it. yes, it has a lot of dependencies and is not optimal. f i would have it primarly as ligthtweight libraries i would split it at lest in 3-4 parts, but i think it's better preventing the fragmentation of little libraries in this case No, no, I was not talking against 3rd-party usage - it's just another point for API and ABI stability :) Ciao -- Luigi ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
[plasma-framework] /: Install all plasma files in a prefix/share/plasma directory
Git commit e6f1fec0c77ef2bf692fbc382001a9d90971a4d6 by Aleix Pol. Committed on 27/04/2014 at 15:14. Pushed by apol into branch 'master'. Install all plasma files in a prefix/share/plasma directory At the moment, we could say that plasma is co-installable by chance, it's only working because KF5 dropped the apps relative directory. This change introduces a PLASMA_RELATIVE_DATA_INSTALL_DIR that will be available to know where in share the components are and PLASMA_DATA_INSTALL_DIR to know where data has to be installed to. Reviewed by David Edmundson CCMAIL: plasma-devel@kde.org M +6-5KF5PlasmaMacros.cmake M +1-1examples/containments/CMakeLists.txt M +1-1examples/kpart/CMakeLists.txt M +1-1examples/wallpapers/CMakeLists.txt M +1-3 src/declarativeimports/plasmaextracomponents/appbackgroundprovider.cpp M +8-8src/desktoptheme/air/CMakeLists.txt M +1-1src/desktoptheme/breeze-dark/CMakeLists.txt M +8-8src/desktoptheme/breeze/CMakeLists.txt M +6-6src/desktoptheme/oxygen/CMakeLists.txt M +3-3src/plasma/CMakeLists.txt M +2-0src/plasma/config-plasma.h.cmake M +2-1src/plasma/dataengine.cpp M +5-5src/plasma/private/packages.cpp M +23 -20 src/plasma/private/theme_p.cpp M +1-0src/plasma/private/theme_p.h M +1-1src/plasma/service.cpp M +5-0src/plasma/theme.cpp M +2-0src/plasma/theme.h M +23 -21 src/plasmapkg/plasmapkg.cpp M +4-3src/plasmaquick/private/packages.cpp M +2-1src/platformstatus/platformstatus.cpp M +2-2src/scriptengines/python/CMakeLists.txt M +1-1src/scriptengines/ruby/CMakeLists.txt http://commits.kde.org/plasma-framework/e6f1fec0c77ef2bf692fbc382001a9d90971a4d6 diff --git a/KF5PlasmaMacros.cmake b/KF5PlasmaMacros.cmake index 8a2c36a..fddd8d6 100644 --- a/KF5PlasmaMacros.cmake +++ b/KF5PlasmaMacros.cmake @@ -2,6 +2,8 @@ find_package(ECM 0.0.9 CONFIG REQUIRED) include(KDEInstallDirs) +set(PLASMA_RELATIVE_DATA_INSTALL_DIR plasma) +set(PLASMA_DATA_INSTALL_DIR ${DATA_INSTALL_DIR}/${PLASMA_RELATIVE_DATA_INSTALL_DIR}) # plasma_install_package(path componentname [root] [type]) # @@ -9,26 +11,25 @@ include(KDEInstallDirs) # @arg path The source path to install from, location of metadata.desktop # @arg componentname The plugin name of the component, corresponding to the # X-KDE-PluginInfo-Name key in metadata.desktop -# @arg root The subdirectory to install to, default: plasma/plasmoids -# @arg root The subdirectory to install to, default: plasma/plasmoids +# @arg root The subdirectory to install to, default: plasmoids # @arg type The type, default to applet, or applet, package, containment, # wallpaper, shell, lookandfeel, etc. # @see Types column in plasmapkg --list-types # # Examples: # plasma_install_package(mywidget org.kde.plasma.mywidget) # installs an applet -# plasma_install_package(declarativetoolbox org.kde.toolbox plasma/packages package) # installs a generic package +# plasma_install_package(declarativetoolbox org.kde.toolbox packages package) # installs a generic package # macro(plasma_install_package dir component) set(root ${ARGV2}) set(type ${ARGV3}) if(NOT root) - set(root plasma/plasmoids) + set(root plasmoids) endif() if(NOT type) set(type applet) endif() - install(DIRECTORY ${dir}/ DESTINATION ${DATA_INSTALL_DIR}/${root}/${component} PATTERN .svn EXCLUDE PATTERN CMakeLists.txt EXCLUDE PATTERN Messages.sh EXCLUDE) + install(DIRECTORY ${dir}/ DESTINATION ${PLASMA_DATA_INSTALL_DIR}/${root}/${component} PATTERN .svn EXCLUDE PATTERN CMakeLists.txt EXCLUDE PATTERN Messages.sh EXCLUDE) install(FILES ${dir}/metadata.desktop DESTINATION ${SERVICES_INSTALL_DIR} RENAME plasma-${type}-${component}.desktop) endmacro() diff --git a/examples/containments/CMakeLists.txt b/examples/containments/CMakeLists.txt index c456fcc..aa52568 100644 --- a/examples/containments/CMakeLists.txt +++ b/examples/containments/CMakeLists.txt @@ -1,2 +1,2 @@ -plasma_install_package(testcontainment org.kde.example.testcontainment plasma/plasmoids containment) \ No newline at end of file +plasma_install_package(testcontainment org.kde.example.testcontainment plasmoids containment) diff --git a/examples/kpart/CMakeLists.txt b/examples/kpart/CMakeLists.txt index eb01a94..ff62817 100644 --- a/examples/kpart/CMakeLists.txt +++ b/examples/kpart/CMakeLists.txt @@ -12,6 +12,6 @@ target_link_libraries(plasma-example-kpart-shell KF5::Plasma KF5::Parts) ### install files ### install(TARGETS plasma-example-kpart-shell ${KF5_INSTALL_TARGETS_DEFAULT_ARGS} ) -install( PROGRAMS plasma-example-kpart-shell.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} ) +install( PROGRAMS plasma-example-kpart-shell.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} ) install(FILES plasma-default-layoutrc DESTINATION ${DATA_INSTALL_DIR}/plasma
Re: plasma-framework in kdereview
Hello, On Saturday 26 April 2014 02:33:07 Kevin Ottens wrote: On Saturday 26 April 2014 01:57:09 Albert Astals Cid wrote: El Divendres, 25 d'abril de 2014, a les 12:34:32, Marco Martin va escriure: since it was done earlier this week, better announce it formally, so everybody can actually do the -review part ;) Had a look and i18n wise it looks ok-ish (i.e it's kind of as broken as the rest of frameworks ;-)) Thanks for looking into it. I checked with Burkhard Lück too and he said it was fine on the doc side as well. We just ended a clean up pass with Aurélien to make sure it was compliant with all the active policies, so it's now OK on our side as well. As far as I'm concerned it's ready to move in frameworks now. So you know, I got the OK from Ben for an early move as the main stakeholders did their duty of reviewing and we got a sprint going on. David is acting on the move as I'm typing that email. Stay tuned! :-) Cheers. -- Kévin Ottens, http://ervin.ipsquad.net KDAB - proud supporter of KDE, http://www.kdab.com signature.asc Description: This is a digitally signed message part. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On 4/26/14, David Edmundson da...@davidedmundson.co.uk wrote: foreach (KConfigSkeletonItem *item, loader.items()) { d-operationsMap[item-group()][item-key()] = item-property(); } I ran plasmaengineexplorer and the UI for the activities service appeared properly. ok, if it works, good for me. if you do a rr with the diff, i'll try it as well with a bunch of services, then we are good to go -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Saturday, April 26, 2014, David Faure fa...@kde.org wrote: David is acting on the move as I'm typing that email. Stay tuned! :-) plasma-framework is now under frameworks/. kdesrc-build users, remember to do rm -rf kdereview/plasma-framework playground/libs/plasma-framework to avoid hacking in an outdated checkout :) Awesome, thanks :) ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Friday 25 April 2014 12:34:32 Marco Martin wrote: Hi all, since it was done earlier this week, better announce it formally, so everybody can actually do the -review part ;) the plasma-framework repository has been moved in kdereview, headed hopefully in frameworks. what it contains: * libplasma: it's the old plasma library that used to be in kdelibs * QML plugins that depend from libplasma, they are old too, and come from kde- runtime * libplasmaquick: a library that depends from libplasma and QtQuick: it's completely for internal use right now (just like the majority of the qtquick library) eventually it may become public in the future, so it doesn't install any header, not part of the public api. * at least one plasma theme: the shipped QML components don't really work without it, so one is core * there was the plasma shell: has been removed and moved to plasma-workspace, decreasing dependencies Moving plasma-framework to frameworks means that we will loose flexibility since we won't be able to break api/abi. So, do we really have to move it there? Imho would be prudent to keep it somewhere else where api/abi stability is not mandatory. Also, right now there is only one user of this framework (plasma-desktop), I would wait until at least we have 2 more shells based on it to commit to any stability. Cheers. signature.asc Description: This is a digitally signed message part. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Friday 25 April 2014 15:14:46 you wrote: * there was the plasma shell: has been removed and moved to plasma-workspace, decreasing dependencies Moving plasma-framework to frameworks means that we will loose flexibility since we won't be able to break api/abi. that's exactly why i want it there, and the fact that is a framework has been decided like, 3 years ago? So, do we really have to move it there? Imho would be prudent to keep it yes somewhere else where api/abi stability is not mandatory. that's exactly the reason why libplasmaquick doesn't install any header, that doesn't have committed compatibility, for sure I don't want any api/abi change whatsoever in libplasma, and for sure not in any qml component. Also, right now there is only one user of this framework (plasma-desktop), I would wait until at least we have 2 more shells based on it to commit to any stability. the user of libplasma doesn't have anything to do being a shell the user of any of its qml components doesn't have anything in being a shell. I want us to be mature enough to commit to some stability. If we can't commit to this minimum level of discipline, I wouldn't expect anybobody else to take it seriously in any way. I wouldn't even manage to encourage with a straight face anyone to ever write a 3rd party plasmoid. -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Friday 25 of April 2014 15:14:46 Àlex Fiestas wrote: Moving plasma-framework to frameworks means that we will loose flexibility since we won't be able to break api/abi. So, do we really have to move it there? Imho would be prudent to keep it somewhere else where api/abi stability is not mandatory. Also, right now there is only one user of this framework (plasma-desktop), I would wait until at least we have 2 more shells based on it to commit to any stability. Wasn't/isn't libplasma supposed to be used also by other applications (amarok was the main user I guess)? Ciao -- Luigi ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Friday 25 April 2014 15:24:50 Luigi Toscano wrote: On Friday 25 of April 2014 15:14:46 Àlex Fiestas wrote: Moving plasma-framework to frameworks means that we will loose flexibility since we won't be able to break api/abi. So, do we really have to move it there? Imho would be prudent to keep it somewhere else where api/abi stability is not mandatory. Also, right now there is only one user of this framework (plasma-desktop), I would wait until at least we have 2 more shells based on it to commit to any stability. Wasn't/isn't libplasma supposed to be used also by other applications (amarok was the main user I guess)? It always was. wether they want to use it or not it's their problem and this attitude of pest dependency deeply bothers me and makes me not much really motivated to keep working on it. yes, it has a lot of dependencies and is not optimal. f i would have it primarly as ligthtweight libraries i would split it at lest in 3-4 parts, but i think it's better preventing the fragmentation of little libraries in this case -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Friday 25 April 2014 15:14:46 Àlex Fiestas wrote: On Friday 25 April 2014 12:34:32 Marco Martin wrote: Hi all, since it was done earlier this week, better announce it formally, so everybody can actually do the -review part ;) the plasma-framework repository has been moved in kdereview, headed hopefully in frameworks. what it contains: * libplasma: it's the old plasma library that used to be in kdelibs * QML plugins that depend from libplasma, they are old too, and come from kde- runtime * libplasmaquick: a library that depends from libplasma and QtQuick: it's completely for internal use right now (just like the majority of the qtquick library) eventually it may become public in the future, so it doesn't install any header, not part of the public api. * at least one plasma theme: the shipped QML components don't really work without it, so one is core * there was the plasma shell: has been removed and moved to plasma-workspace, decreasing dependencies Moving plasma-framework to frameworks means that we will loose flexibility since we won't be able to break api/abi. Huh? So, do we really have to move it there? Imho would be prudent to keep it somewhere else where api/abi stability is not mandatory. Well... it's been planned this way for three years if not more. Before that it was in kdelibs. Also, right now there is only one user of this framework (plasma-desktop), That's because the other users weren't ported to KF5 yet. But there's definitely more plasma users (amarok comes to mind, skrooge too iirc), not really shells. Regards. -- Kévin Ottens, http://ervin.ipsquad.net KDAB - proud supporter of KDE, http://www.kdab.com signature.asc Description: This is a digitally signed message part. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
Well... it's been planned this way for three years if not more. Before that it was in kdelibs. Also, right now there is only one user of this framework (plasma-desktop), That's because the other users weren't ported to KF5 yet. But there's definitely more plasma users (amarok comes to mind, skrooge too iirc), not really shells. That was before QtQuickControls and KDeclarative's imports. Back then Plasma was the convenient way to get some sort of button If Amarok or Skrooge wants to use anything from Plasma we are doing something wrong. David ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Friday 25 April 2014 17:46:23 David Edmundson wrote: Well... it's been planned this way for three years if not more. Before that it was in kdelibs. Also, right now there is only one user of this framework (plasma-desktop), That's because the other users weren't ported to KF5 yet. But there's definitely more plasma users (amarok comes to mind, skrooge too iirc), not really shells. That was before QtQuickControls and KDeclarative's imports. Back then Plasma was the convenient way to get some sort of button If Amarok or Skrooge wants to use anything from Plasma we are doing something wrong. I think these statements show you totally ignore the history behind libplasma or how applications can use it... They (at least Amarok, not 100% sure for Skrooge) benefit from the component model used in libplasma: packages, dataengines, plugins. Regards. -- Kévin Ottens, http://ervin.ipsquad.net KDAB - proud supporter of KDE, http://www.kdab.com signature.asc Description: This is a digitally signed message part. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Friday 25 April 2014 17:46:23 David Edmundson wrote: Well... it's been planned this way for three years if not more. Before that it was in kdelibs. Also, right now there is only one user of this framework (plasma-desktop), That's because the other users weren't ported to KF5 yet. But there's definitely more plasma users (amarok comes to mind, skrooge too iirc), not really shells. That was before QtQuickControls and KDeclarative's imports. Back then Plasma was the convenient way to get some sort of button /me notes that the widgets were just a later aftertought in that library and not even remotely the point of that library ever. that decision had exactly zero to do with plasma being the way to do buttons, in fact, even tough it still depends from too much for my taste, one thing it does *not* depends from is what? ah, QML. as now maintainer of that library and components i call that library has framework quality and is very general purpose. one may want to use it or not (to do applets made with qwidgets, or only to parse kconfigskeletons at runtime for what i'm concerned), that's the call of the application developer, as any workspace. It just comes as an huge (disappointing) surprise that just today * after the move has been started * after years the decision has been made * ignoring the fact that such decision was made after, and in part because of, was possible to remove all the widget stuff, making it finally a small library. If Amarok or Skrooge wants to use anything from Plasma we are doing something wrong. yes, I think this team is seriously doing something really wrong. Let's see what we have that has zero to do with qml controls: * packages * configloader * dataengines * services * qpainter based (and going to stay qpainter based) svg stuff * plugin based (the whole point of having anything) you can hate every single one of those things, and believe till the end of the days that can be solved with $magicbullet in qml, for some things, are complex problems, everywhere that there is a similar problem, you'll end up reimplementing a non negligible proportion of it, almost identical. now i have no idea if that is needed or not by amarok or skrooge, again, if for instance the user interaction paradigm they would choose would be a page in which you can add widgets that say things one starts to say how hard can it be, will end up with a quite near reimplementation of corona, containments and packages (replicating in the meantime many of the bugs we had and solved). For instance the mediacenter wanted to be a shell again to support widgets again, I'm sure you would advise them against and reimplement the whole mechanism instead, i'm wondering why the project is in such state tough. what i'm seeing, (and it's not new of this, it's going on since a while) is that the history of things, and why thay are in a certain thing and not another is being ignored, and that's excusable (and somewhat comprehensible, I know I'm not that good in neither explanation or documentation, sorry) But what is less is the systematically not caring of the why. Ending up having to defend the project against the project itself, I am seriously starting to wonder what the hell I'm doing here. -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Fri, Apr 25, 2014 at 6:56 PM, Marco Martin notm...@gmail.com wrote: On Friday 25 April 2014 17:46:23 David Edmundson wrote: Well... it's been planned this way for three years if not more. Before that it was in kdelibs. Also, right now there is only one user of this framework (plasma-desktop), That's because the other users weren't ported to KF5 yet. But there's definitely more plasma users (amarok comes to mind, skrooge too iirc), not really shells. That was before QtQuickControls and KDeclarative's imports. Back then Plasma was the convenient way to get some sort of button /me notes that the widgets were just a later aftertought in that library and not even remotely the point of that library ever. that decision had exactly zero to do with plasma being the way to do buttons, in fact, even tough it still depends from too much for my taste, one thing it does *not* depends from is what? ah, QML. as now maintainer of that library and components i call that library has framework quality and is very general purpose. one may want to use it or not (to do applets made with qwidgets, or only to parse kconfigskeletons at runtime for what i'm concerned), that's the call of the application developer, as any workspace. That KConfigLoader already moved to KConfigGui. (and I agree that class is really really useful) It just comes as an huge (disappointing) surprise that just today * after the move has been started * after years the decision has been made * ignoring the fact that such decision was made after, and in part because of, was possible to remove all the widget stuff, making it finally a small library. If Amarok or Skrooge wants to use anything from Plasma we are doing something wrong. yes, I think this team is seriously doing something really wrong. Let's see what we have that has zero to do with qml controls: * packages * configloader * dataengines * services * qpainter based (and going to stay qpainter based) svg stuff * plugin based (the whole point of having anything) you can hate every single one of those things, and believe till the end of the days that can be solved with $magicbullet in qml, for some things, are complex problems, everywhere that there is a similar problem, you'll end up reimplementing a non negligible proportion of it, almost identical. now i have no idea if that is needed or not by amarok or skrooge, again, if for instance the user interaction paradigm they would choose would be a page in which you can add widgets that say things one starts to say how hard can it be, will end up with a quite near reimplementation of corona, containments and packages (replicating in the meantime many of the bugs we had and solved). For instance the mediacenter wanted to be a shell again to support widgets again, I'm sure you would advise them against and reimplement the whole mechanism instead, i'm wondering why the project is in such state tough. what i'm seeing, (and it's not new of this, it's going on since a while) is that the history of things, and why thay are in a certain thing and not another is being ignored, and that's excusable (and somewhat comprehensible, I know I'm not that good in neither explanation or documentation, sorry) But what is less is the systematically not caring of the why. Not aware of rather than ignoring. Ending up having to defend the project against the project itself, I am seriously starting to wonder what the hell I'm doing here. That was not my intention. Sorry. *hugs* What I understood of Alex's email was to say; do we want to commit to ABI compatibility given it has gone through more changes than the others. On reflection we did have that thread in Plasma recently not that long ago and I remember there was a discussion about the plasmaquick lib not being released as ABI stable. As long as that statement still holds I withdraw my comments. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Friday 25 April 2014 19:28:59 David Edmundson wrote: parse kconfigskeletons at runtime for what i'm concerned), that's the call of the application developer, as any workspace. That KConfigLoader already moved to KConfigGui. (and I agree that class is really really useful) argh :/, I wasn't aware at all about that :/ I would have ported the users of it removing it from libplasma. when was this done? why wasn't notified/things weren't ported to it? That was not my intention. Sorry. *hugs* hugs What I understood of Alex's email was to say; do we want to commit to ABI compatibility given it has gone through more changes than the others. On reflection we did have that thread in Plasma recently not that long ago and I remember there was a discussion about the plasmaquick lib not being released as ABI stable. As long as that statement still holds I withdraw my comments. yes, it doesn't install headers -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Friday 25 April 2014 19:16:43 Kevin Ottens wrote: I think these statements show you totally ignore the history behind libplasma or how applications can use it... They (at least Amarok, not 100% sure for Skrooge) benefit from the component model used in libplasma: packages, dataengines, plugins. Skrooge used a kpart (that i want to get eventually ported) that basically loaded a corona, so having an area with widgets is pretty easy -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Re: plasma-framework in kdereview
On Friday 25 April 2014 10:39:32 Marco Martin wrote: On Friday 25 April 2014 19:28:59 David Edmundson wrote: parse kconfigskeletons at runtime for what i'm concerned), that's the call of the application developer, as any workspace. That KConfigLoader already moved to KConfigGui. (and I agree that class is really really useful) argh :/, I wasn't aware at all about that :/ I would have ported the users of it removing it from libplasma. when was this done? why wasn't notified/things weren't ported to it? sorry about that, would be me to blame. I did the integration into KConfig. No idea how it could happen that you weren't aware of it. And I also don't remember why I didn't adjust plasma-framework, but I assume that it was too much in flux at that time to do such a change. Cheers Martin signature.asc Description: This is a digitally signed message part. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: Re: plasma-framework in kdereview
argh :/, I wasn't aware at all about that :/ I would have ported the users of it removing it from libplasma. when was this done? why wasn't notified/things weren't ported to it? sorry about that, would be me to blame. I did the integration into KConfig. No idea how it could happen that you weren't aware of it. And I also don't remember why I didn't adjust plasma-framework, but I assume that it was too much in flux at that time to do such a change. FYI I'm on it now. ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
On Friday 25 April 2014 20:10:31 Martin Gräßlin wrote: argh :/, I wasn't aware at all about that :/ I would have ported the users of it removing it from libplasma. when was this done? why wasn't notified/things weren't ported to it? sorry about that, would be me to blame. I did the integration into KConfig. No idea how it could happen that you weren't aware of it. And I also don't remember why I didn't adjust plasma-framework, but I assume that it was too much in flux at that time to do such a change. Seems the problem is that Service is using a subclass to support multiple groups (each operation is a different group, plasmoids support one group) the problem is that it subclasses the parser, ConfigLoaderHandler that is private. so, on one hand exposing ConfigLoaderHandler in kconfig doesn't seem too clean, on the other hand, not being able to tap in the parsing in subclasses may be a limitation as well tough -- Marco Martin ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel
Re: plasma-framework in kdereview
Hi Everyone, Indeed, there was an intention to use some plasma components in Skrooge, but it never materialized in any official release. Today, this is mostly abandoned code, to my disappointment, but I never committed myself enough on finishing this part... As far as Skrooge is concerned, you may change anything you want in libplasma for kf5, we will either adapt, or consider a totally different approach, using QML. Guillaume Le vendredi 25 avril 2014, 19:49:05 Marco Martin a écrit : On Friday 25 April 2014 19:16:43 Kevin Ottens wrote: I think these statements show you totally ignore the history behind libplasma or how applications can use it... They (at least Amarok, not 100% sure for Skrooge) benefit from the component model used in libplasma: packages, dataengines, plugins. Skrooge used a kpart (that i want to get eventually ported) that basically loaded a corona, so having an area with widgets is pretty easy ___ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel