Commit Graph

3860 Commits

Author SHA1 Message Date
Laurent Montel
03fbd3318b Add override 2019-01-03 21:42:30 +01:00
Noah Davis
2f99869c10 Add preferences-system-bluetooth-battery to preferences.svgz
Summary: It's exactly the same as the regular 32px bluetooth icon in this file, but D17346 needs it.

Reviewers: #vdg, #plasma, broulik, ngraham

Reviewed By: #vdg, #plasma, broulik, ngraham

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D17505
2018-12-13 02:18:02 -05:00
Shubham Jangra
e3aa2cf840 Fix comparision between signed and unsigned integer warning 2018-12-12 00:07:21 +05:30
Shubham Jangra
1bba82535c Fix unused parameter warning 2018-12-11 23:47:39 +05:30
Laurent Montel
e7329b95ed Use isEmpty() 2018-11-30 07:58:34 +01:00
Laurent Montel
7931bdccdd Remove virtual keyword 2018-11-30 07:58:34 +01:00
Marco Martin
52ba5871b1 same behavior as qwidgets comboboxes
popup opens on press, moving the cursor over items and releasing
actually triggers it.
Same logic as in the desktop style
2018-11-29 13:57:35 +01:00
Marco Martin
e4c2f65c95 feature parity of Menu with the Desktop style 2018-11-28 16:35:43 +01:00
Marco Martin
2880333aab default values for tooltips
same policy as the tooltips in desktop style
2018-11-28 13:02:38 +01:00
Marco Martin
030159571c make sure flickables are pixelaligned 2018-11-26 14:54:36 +01:00
Aleix Pol
909364dfca Simplify reference counting of FrameData
Summary:
Leverages QSharedPointer for the reference counting.
Keeps the last value of the cacheId, as it can change sometimes and crash
the system.

Reviewers: #plasma, #frameworks, zzag

Reviewed By: #plasma, zzag

Subscribers: mart, zzag, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D17052
2018-11-22 19:09:13 +01:00
Marco Martin
3e76176bdd less spacing 2018-11-22 11:00:20 +01:00
Kevin Funk
421e1c0126 ASAN: Fix memory leak in CalendarPlugin
Trace:
Indirect leak of 24 byte(s) in 1 object(s) allocated from:
    #0 0x508a17 in __interceptor_malloc (/home/kfunk/devel/install/kf5/bin/plasmashell+0x508a17)
    #1 0x7fcf92aa6230 in QHashData::allocateNode(int) /home/kfunk/devel/src/qt5.11/qtbase/src/corelib/tools/qhash.cpp:479:79
    #2 0x7fcf7a851d10 in QHash<int, QByteArray>::detach() /home/kfunk/devel/build/qt5.11/qtbase/include/QtCore/../../../../../src/qt5.11/qtbase/src/corelib/tools/qhash.h:275:51
    #3 0x7fcf7a8519c9 in QHash<int, QByteArray>::insert(int const&, QByteArray const&) /home/kfunk/devel/build/qt5.11/qtbase/include/QtCore/../../../../../src/qt5.11/qtbase/src/corelib/tools/qhash.h:769:5
    #4 0x7fcf7a859736 in EventPluginsModel::EventPluginsModel(EventPluginsManager*) /home/kfunk/devel/src/kf5/plasma-framework/src/declarativeimports/calendar/eventpluginsmanager.cpp:42:17
    #5 0x7fcf7a854c55 in EventPluginsManager::EventPluginsManager(QObject*) /home/kfunk/devel/src/kf5/plasma-framework/src/declarativeimports/calendar/eventpluginsmanager.cpp:185:19
    ...

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D17031
2018-11-20 15:15:59 +01:00
Kevin Funk
fbfc9bdebb ASAN: Fix memory leak in DataSource
Trace:
Direct leak of 216 byte(s) in 27 object(s) allocated from:
    #0 0x544cc0 in operator new(unsigned long) (/home/kfunk/devel/install/kf5/bin/plasmashell+0x544cc0)
    #1 0x7fb2e9cd77d9 in Plasma::DataSource::setEngine(QString const&) /home/kfunk/devel/src/kf5/plasma-framework/src/declarativeimports/core/datasource.cpp:93:28
    #2 0x7fb2e9d5c8f1 in Plasma::DataSource::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) /home/kfunk/devel/build/kf5/plasma-framework/src/declarativeimports/core/corebindingsplugin_autogen/EWIEGA46WW/moc_datasource.cpp:330:21
2018-11-20 15:15:42 +01:00
Kevin Funk
d13f9e6f85 ASAN: Fix memory leak in Corona
KPackagePrivate::internalPackage already existed, the re-assignment to a
new value causes a memory leak.

Trace:
Indirect leak of 112 byte(s) in 1 object(s) allocated from:
    #0 0x544cc0 in operator new(unsigned long) (/home/kfunk/devel/install/kf5/bin/plasmashell+0x544cc0)
    #1 0x7f905829163f in KPackage::Package::Package(KPackage::PackageStructure*) /home/kfunk/devel/src/kf5/kpackage/src/kpackage/package.cpp:51:9
    #2 0x7f9058fad786 in Plasma::Package::Package(Plasma::PackageStructure*) /home/kfunk/devel/src/kf5/plasma-framework/src/plasma/package.cpp:66:34
    #3 0x7f9058f14dee in Plasma::Corona::package() const /home/kfunk/devel/src/kf5/plasma-framework/src/plasma/corona.cpp:78:13
    #4 0x5d9eb9 in ShellCorona::ShellCorona(QObject*) /home/kfunk/devel/src/kf5/plasma-workspace/shell/shellcorona.cpp:132:70
    #5 0x65c31d in ShellManager::loadHandlers() /home/kfunk/devel/src/kf5/plasma-workspace/shell/shellmanager.cpp:93:21
2018-11-20 15:15:42 +01:00
Kevin Funk
e3eafabd55 ASAN: Fix leak in AppletQuickItem
Direct leak of 3960 byte(s) in 15 object(s) allocated from:
    #0 0x544cc0 in operator new(unsigned long) (/home/kfunk/devel/install/kf5/bin/plasmashell+0x544cc0)
    #1 0x7f0dd8a3e2bd in PlasmaQuick::AppletQuickItem::AppletQuickItem(Plasma::Applet*, QQuickItem*) /home/kfunk/devel/src/kf5/plasma-framework/src/plasmaquick/appletquickitem.cpp:472:9
    #2 0x7f0dcb7b365b in AppletInterface::AppletInterface(DeclarativeAppletScript*, QList<QVariant> const&, QQuickItem*) /home/kfunk/devel/src/kf5/plasma-framework/src/scriptengines/qml/plasmoid/appletinterface.cpp:50:7
    #3 0x7f0dcb7aede1 in DeclarativeAppletScript::init() /home/kfunk/devel/src/kf5/plasma-framework/src/scriptengines/qml/plasmoid/declarativeappletscript.cpp:87:27
    ...
2018-11-20 15:15:42 +01:00
Kai Uwe Broulik
38098e96e3 Remove ComponentInstaller
When a dataengine failed to load it would ask PackageKit to install it but it's generally not how we want to distribute
plasmoid infrastructure these days and didn't work.

Differential Revision: https://phabricator.kde.org/D16301
2018-11-19 12:53:31 +01:00
Albert Astals Cid
e6f6bf9624 Qt 5.9 is now the minimum required version 2018-11-17 11:24:51 +01:00
Luca Beltrame
17c8927748
Add back (accidentally?) deleted line in CMakeLists.txt
Without this, ToolButton.qml (Plasma Components 3) is not installed and
applets like the mediacontroller do not load because they can't find it.

The line has been removed in 6126954816,
and it looks like an unrelated change.

Marco, feel free to revert if the proper solution is different.

CCMAIL: notmart@gmail.com
2018-11-14 23:41:59 +01:00
Marco Martin
02d5c8a19f 100% consistency with kirigami heading sizing
reviewed-by: VDG and Nate
2018-11-13 14:34:00 +01:00
Marco Martin
b34b92346f more homogeneous look with Kirigami headings
tries harder to make the text weight light
2018-11-13 13:14:24 +01:00
Marco Martin
6126954816 install the processed version of private imports 2018-11-13 12:37:26 +01:00
Marco Martin
513923f7b5 Mobile text selection controls
Summary:
in QQC2 the text selection controls depend upon the style, which has to
implement it by itself
this adds touch based draggable cursor and text selection handles,
alongside a tiny toolbar for cut/copy/paste

the desktop style will need the exact same thing
T10023

Test Plan:
works correctly when in tablet mode, none of this is visible
when in desktop mode where the text fields behave normally

Reviewers: #plasma, bshah

Reviewed By: #plasma, bshah

Subscribers: ngraham, abetts, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D16841
2018-11-12 17:45:10 +01:00
Noah Davis
2c0ba9826f Update breeze-light and breeze-dark colorschemes
Summary: The current colorschemes included in the breeze-light and breeze-dark Plasma themes do not match the Breeze and BreezeDark colorschemes in the breeze repo. For instance, the breeze-dark Plasma theme used an ugly yellow-green for ForegroundNeutral instead of Beware Orange like in the Breeze and BreezeDark colorschemes. It also used a much harsher red that looked inconsistent with BreezeDark. I've been using the new colorschemes for the past month and the most noticeable changes are just the new orange and red colors.

Test Plan:
Old:
{F6411526, size=full}
{F6411527, size=full}
{F6411875, size=full}
{F6411889, size=full}
New:
{F6411523, size=full}
{F6411525, size=full}
{F6411883, size=full}
{F6411898, size=full}

Reviewers: #vdg, #breeze, #plasma, mart, ngraham

Reviewed By: #vdg, #breeze, #plasma, mart, ngraham

Subscribers: ngraham, mart, broulik, #vdg, kde-frameworks-devel

Tags: #frameworks, #vdg, #breeze, #plasma

Differential Revision: https://phabricator.kde.org/D16810
2018-11-12 10:01:09 -05:00
Aleix Pol
069acf600c Make sure private header fields are initialized 2018-11-12 03:11:25 +01:00
José Manuel Santamaría Lema
ed1724c63e Summary:
After this commit
https://cgit.kde.org/plasma-framework.git/commit/?id=9f08668147d2e99f8b5069ff50d5c54e672a87af
the iconitemtest started to fail, the reason was just a typo in the initial
"if" so it does exactly the same in the "if" and the "else" part. So let's
correct it to do what it is suposed to do.

Test Plan: Ran test

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D16733
2018-11-08 16:23:20 +01:00
Aleix Pol
768b0882e9 remove unneeded include 2018-11-07 02:45:47 +01:00
Laurent Montel
cbd5abf787 Remove qt include prefixx 2018-11-06 07:23:52 +01:00
Albert Astals Cid
9b53406f23 Remove unused variables
Reviewers: apol

Reviewed By: apol

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D16575
2018-11-03 01:34:40 +01:00
l10n daemon script
3e4dbde6b0 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-24 05:58:03 +02:00
Marco Martin
a1269ad059 revert icons scaling on mobile
plasma mobile can't handle that
2018-10-23 12:18:26 +02:00
Yuri Chornoivan
72ca2f79e0 Fix minor EBN issues and typos 2018-10-22 21:05:29 +03:00
Marco Martin
9b6c2cddc7 upport mnemonic labels 2018-10-19 13:43:17 +02:00
Kai Uwe Broulik
e92ed94d9d Remove PLASMA_NO_KIO option
It is a remnant of the Plasma Active days and didn't even compile.
This patch only removes those ifdefs, it doesn't fix any issues I found during (e.g. double lookups or the fact
that KRun::autoDelete is the default now)

Differential Revision: https://phabricator.kde.org/D16295
2018-10-18 16:44:27 +02:00
Marco Martin
21cd448c38 proper color group for icons 2018-10-17 17:57:32 +02:00
Marco Martin
584f7709e1 center text when no icon 2018-10-17 17:54:41 +02:00
Marco Martin
828ab59eb1 smaller dots 2018-10-17 13:42:44 +02:00
l10n daemon script
a600ff9aa0 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-15 05:39:14 +02:00
Aleix Pol
d9b907e953 Reduce double and triple lookups to the frames hash
Test Plan: Everything runs, tests pass

Reviewers: #plasma, davidedmundson, broulik

Reviewed By: #plasma, davidedmundson, broulik

Subscribers: broulik, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D16060
2018-10-11 17:27:02 +02:00
l10n daemon script
4b7bac26cc SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-10 06:27:59 +02:00
Aleix Pol
0698c65a83 No point in including an empty foreach when NDEBUG isn't defined 2018-10-09 01:20:10 +02:00
Aleix Pol
8c18054a0d Properly look for fallback themes
Summary:
At the moment we always look at the first fallback and load the original
theme again, rendering moot the fallback look-up.

Reviewers: #plasma, davidedmundson, hein

Reviewed By: #plasma, davidedmundson, hein

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D15970
2018-10-09 01:19:55 +02:00
Nathaniel Graham
6f01e8d105 Bump theme version strings because there are new icons in 5.51 2018-10-03 08:30:12 -06:00
Marco Martin
64c5bfae65 add missing PageIndicator 2018-09-28 13:17:58 +02:00
Marco Martin
df6115193b better sizing for roundbutton
use tabletmode for hoverenabled
2018-09-28 13:05:43 +02:00
Kai Uwe Broulik
ea6cf10f42 Also raise configuration window when reusing it
It seems requestActivate only implies unminimizing but not raising if already visible

Differential Revision: https://phabricator.kde.org/D15705
2018-09-27 13:20:34 +02:00
Marco Martin
f6008dafc4 follow colorscope 2018-09-24 18:13:50 +02:00
Marco Martin
938b9cc1a1 no hover effects on mobile 2018-09-24 17:58:51 +02:00
Marco Martin
ff04bf0214 Revert "add a "preview" file definition for widgetexplorer"
This reverts commit 2c07878237.
2018-09-19 15:55:26 +02:00
Marco Martin
ba3e94aa7f slightly translucent when disabled 2018-09-19 15:54:20 +02:00
Marco Martin
9f08668147 Add missing component: RoundButton 2018-09-19 15:48:27 +02:00
Marco Martin
2c07878237 add a "preview" file definition for widgetexplorer 2018-09-18 17:51:59 +02:00
Friedrich W. H. Kossebau
53a2960353 Avoid potential detach on range-loops with non-const Qt containers
Seen by clazy range-loop
2018-09-18 01:11:28 +02:00
Phil Stefan
32e0f78677 Combine display OSD icon files and move to plasma icon theme
Summary:
Move the icons from D10937 to plasma-frameworks and combine all the sizes

BUG: 395714

Test Plan: "osd-shutd-screen.svg" does not display correctly for me. I can't find any difference between it and the rest of the icons. Help appreciated.

Reviewers: ngraham, #vdg, broulik

Reviewed By: ngraham, #vdg, broulik

Subscribers: broulik, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D14971
2018-09-12 08:04:49 -06:00
l10n daemon script
6e7239b3b1 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-08 06:12:26 +02:00
Marco Martin
57fc56acec same fixes as Slider 2018-09-07 15:21:09 +02:00
Marco Martin
86c1e87419 make use of hint-handle-size 2018-09-07 15:15:16 +02:00
Marco Martin
bc1253a918 align the groove in a better way 2018-09-07 14:56:49 +02:00
Marco Martin
764b6e4760 respect color group 2018-09-07 12:54:24 +02:00
Marco Martin
3c48aec7ac don't corrupt the active part
simplify the size hints
reviewed-by: kbroulik
2018-09-06 14:53:45 +02:00
Kai Uwe Broulik
a3e96eb17a [Plasma Components 3 Slider] Fix implicit size of handle
Fixes implicit size of the slider to include the handle
2018-09-06 14:43:38 +02:00
Kai Uwe Broulik
3d078c01ee [Plasma Components 3 ComboBox] Switch entries with mouse wheel 2018-09-06 14:41:55 +02:00
Marco Martin
85cab5772c Support button icons when present
Summary:
support button icons.
if there is no icon or is Qt 5.9, the iconItem will stay invisible

Test Plan: tested with ported mediacontroller to PlasmaComponents3

Reviewers: #plasma

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D15164
2018-09-06 14:06:44 +02:00
Marco Martin
bedd597560 stubs, warning-- 2018-09-06 14:05:14 +02:00
Kai Uwe Broulik
020d3e3ebe [Calendar] Wrap day name index around
Otherwise when the week starts on a day other than Sunday or Monday we access invalid day names.

CHANGELOG: Fixed week names not showing properly in calendar when week starts with a day other than Monday or Sunday

BUG: 390330

Differential Revision: https://phabricator.kde.org/D15309
2018-09-06 12:41:16 +02:00
Yuri Chornoivan
38431eebfa Fix minor typos 2018-09-05 22:22:38 +03:00
Vlad Zagorodniy
8497832a8b [DialogShadows] Use 0 offset for disabled borders on Wayland
Summary:
On Wayland, DialogShadows doesn't attach empty tiles for disabled
borders. Yet, it sets offset of 1 for them. This results in visual
artifacts like this

{F6206088, layout=center, size=full}

//KWin thinks that there is 1px tall shadow in the bottom.//

In general we don't need to pass empty shadow tiles for disabled
borders. Thus, that's fine to set 0 offset for them.

Test Plan:
* Started kwin_wayland:

    dbus-launch kwin_wayland --windowed --xwayland

* Launched latte-dock and kate:

    unset DISPLAY
    QT_QPA_PLATFORM=wayland latte-dock &
    QT_QPA_PLATFORM=wayland kate

* Opened calendar popup:

{F6206090, layout=center, size=full}

Reviewers: davidedmundson

Reviewed By: davidedmundson

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D14946
2018-09-03 19:45:32 +03:00
David Edmundson
2faa71a55a Workaround bug with native rendering and opacity in TextField text
Summary:
Problem is identified in https://bugreports.qt.io/browse/QTBUG-70138
with a potential patch for upstream.

With native rendering the alpha is pointlessly also set in the
glBlendFunc despite also being used in the uniform of the shader.
Resulting in a visual bug when used on a window with alpha (such as
Dialog)

It sucks, but we were starting to see people work round it by copying
more invasive workarounds everywhere else which I want to avoid.

BUG: 396813

Test Plan: Looked at a text field

Reviewers: #plasma, broulik

Reviewed By: #plasma, broulik

Subscribers: ngraham, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D15021
2018-08-28 10:26:58 +01:00
Kai Uwe Broulik
a0ab02c052 [Icon Item] Watch KIconLoader icon change when using QIcon
QIcon is rendered through KIconLoader instead of e.g. Plasma::Svg.
This means we need to recreate the pixmap when the icon theme changes.

CCBUG: 397109

Differential Revision: https://phabricator.kde.org/D14990
2018-08-23 11:31:15 +02:00
Kai Uwe Broulik
e143f7d457 [Icon Item] Use ItemEnabledHasChanged
Preferred over having a connect and it go through meta signal invocation when it's emitted

Differential Revision: https://phabricator.kde.org/D14531
2018-08-17 15:46:29 +02:00
Kai Uwe Broulik
938cef210c Get rid of deprecated QWeakPointer usage
Replace by QPointer

Differential Revision: https://phabricator.kde.org/D14819
2018-08-17 15:44:08 +02:00
Kai Uwe Broulik
4bda8ec0b7 Fix style sheet for 22-22-system-suspend
Turns out this icon had a hardcoded color in it which wasn't the case for the
full size icon used on my high dpi system.

Thanks Sandro Knauß for helping investigate this

BUG: 397441
2018-08-17 11:50:32 +02:00
Nathaniel Graham
2e640ce13a Improve Widgets' removal and configure text
Summary: This patch makes the text for removal and configuration actions consistent with one another.

Test Plan: {F6191533}

Reviewers: #plasma, #vdg, abetts

Reviewed By: #plasma, #vdg, abetts

Subscribers: abetts, broulik, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D14810
2018-08-14 00:00:04 +02:00
David Edmundson
0ae178016a Copy PlasmaCore binary qmldir file structure into bin for unit tests
This way tests pass before installation.

Test Plan:
Before patch

Created a broken env by unsetting QML2_IMPORT_PATH
Ran test. It failed

It passes.

Reviewers: #plasma, dfaure

Reviewed By: dfaure

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D14743
2018-08-13 22:42:31 +02:00
l10n daemon script
5663500132 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-01 05:51:51 +02:00
Marco Martin
56f0df4127 if an applet is invalid, it has immediately UiReadyConstraint
Summary:
mirroring the behavior when the applet is created by restorecontents,
invalid applets get immediately uireadyconstraint.
This solves the problem of panels not appearing when the setup js contains an non existent applet,
as the panel was waiting forever for applets to finish loading, which never happens

Test Plan: now js startup scripts with an invalid applet have panels loading correctly.

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: davidedmundson, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D14341
2018-07-26 13:10:34 +02:00
Kai Uwe Broulik
af01c2e953 [Plasma PluginLoader] Cache plugins during startup
Similar to KPackage's cache this speeds up startup where plugins are repeatedly looked up.
Especially the fallback path of looking in the plugin root directly causes quite some slowdown.

Differential Revision: https://phabricator.kde.org/D14009
2018-07-23 16:24:27 +02:00
David Edmundson
bd6d332fe7 Fix fading node when one textured is atlassed.
source and target were swapped in both the QSGNode::updateState/bind
and in the fragment shader.

When Atlas support was added, the texture position was put the right way
round; which made things backwards so source/target also got swapped
instead of fixed properly.

But this leads a glitch if one texture was in the atlas and one
wasn't (not common)

This puts everything the right way round again.

Reviewed-by: Kai Broulik
2018-07-23 12:17:20 +02:00
Kai Uwe Broulik
0351ea74b2 [Containment] Don't load containment actions with plasma/containment_actions KIOSK restriction
Allows disabling all containment actions, such as context menus, middle click paste, wheel desktop switch, etc.

Differential Revision: https://phabricator.kde.org/D14045
2018-07-17 15:52:55 +02:00
Friedrich W. H. Kossebau
30cbc2dc33 Use more nullptr 2018-07-02 00:16:21 +02:00
Vlad Zagorodniy
0c8dd9dc2b FrameSvg: Update mask frame if image path has been changed
Summary:
A FrameSvg can have wrong mask frame if image path has been changed after
the mask frame was generated. Take image path into account when deciding
whether the mask frame should be updated to address that problem.

Depends on D13384

Reviewers: #plasma, #frameworks, mart

Reviewed By: #plasma, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D13496
2018-06-27 15:37:05 +03:00
Vlad Zagorodniy
412a517576 FrameSvg: Do not wreck shared mask frames
Summary:
When trying to update the maskFrame, there is a chance that it is already
shared by several instances of FrameSvg. In that case, do not wreck maskFrame
and instead act as follows:

* deref it
* try to lookup a matching frame in the shared frames
* if there is the matching frame, use it
* otherwise create a new one

Reviewers: #plasma, #frameworks, mart

Reviewed By: #plasma, mart

Subscribers: mart, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D13384
2018-06-27 15:36:59 +03:00
Vlad Zagorodniy
acdaefa221 FrameSvg: Simplify updateSizes
Summary:
```lang=cpp
if (hintXXXMargin > -1) {
    // ...
} else {
    // ...
}
```

are redundant because fixedXXXMargin already hold correct margin values.

Test Plan: Manually

Reviewers: #plasma, #frameworks, mart

Reviewed By: #plasma, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D13402
2018-06-27 15:34:25 +03:00
Alexey Varfolomeev
5ff9756047 Icons for Keyboard Indicator T9050 2018-06-20 23:40:31 +04:00
l10n daemon script
099592d38c SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-06-18 05:29:43 +02:00
andreas kainz
e8697fada6 fix color for media icon 2018-06-16 23:31:12 +02:00
Vlad Zagorodniy
dce258bee3 FrameSvg: Recache maskFrame if enabledBorders has been changed
Summary:
In some cases, when rendering frame svg background, measures & margins
do not correspond to `enabledBorders`. I.e. `bottomHeight` may be equal to 5,
but the bottom border is disabled. This causes visual artifacts like this

{F5878318, layout=center, size=full}

//Pay close attention to the bottom of the Task switcher. It has a transparent strip at the bottom, which shouldn't be there.//

The cause of this problem is that FrameSVGPrivate::alphaMask doesn't take enabledBorders
into account when it's making decision whether it should update maskFrame.

Just for reference, this is "after"

{F5878319, layout=center, size=full}

BUG: 382324
BUG: 390632
BUG: 391659

Test Plan:
* Triggered the Breeze task switcher (with compositing on and off)
* Didn't see any transparent strips

---

* Tried running FrameSvgTest, still passes

Reviewers: #plasma, #frameworks, mart

Reviewed By: #plasma, mart

Subscribers: abetts, mart, aseigo, broulik, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D13215
2018-06-06 20:52:01 +03:00
Vlad Zagorodniy
a46cd14553 FrameSvg: Draw corners only if both borders in both directions are enabled
Summary:
FrameSVG documentation states

> ... topleft and topright will be ignored if top does not exist,
> and similarly for bottomleft and bottomright ...

Someone would assume that the same behaviour applies to the case
when left(or right) does not exist.

This change makes FrameSVG to comply with such expected behaviour.

### Before

{F5878439, layout=center, size=full}

The bottom border doesn't exist so the bottom-right corner should not
be drawn.

### After

{F5878440, layout=center, size=full}

Reviewers: #plasma, #frameworks, mart

Reviewed By: #plasma, mart

Subscribers: mart, kde-frameworks-devel

Tags: #frameworks, #plasma

Differential Revision: https://phabricator.kde.org/D13218
2018-06-06 20:51:40 +03:00
Eike Hein
e108d7e90e Teach ContainmentInterface::processMimeData how to handle Task Manager drops
Summary:
To explicitly confine Task Manager drops to Plasma and avoid accidental
drops on other apps, D13274 makes it store task launcher URLs in a special
internal MIME type instead of the generic text/url one. This change to
processMimeData() adds the necessary conversion back.

Reviewers: davidedmundson, Zren, mart

Subscribers: kde-frameworks-devel, plasma-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D13275
2018-06-06 08:12:28 +09:00
Vlad Zagorodniy
b169aa50f9 FrameSVG: Delete redundant checks
Summary:
There is no need to check whether `cachedBackground` is null, and if
it's null, return a null pixmap.

Reviewers: #plasma, #frameworks, apol

Reviewed By: apol

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D13287
2018-06-04 19:41:32 +03:00
Vlad Zagorodniy
a363815a79 FrameSVG: Fix QObject include
Summary: See Frameworks coding style: https://techbase.kde.org/Policies/Frameworks_Coding_Style#Qt_Includes_and_KDE_Frameworks_Includes

Reviewers: #plasma, #frameworks, apol

Reviewed By: apol

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D13286
2018-06-04 19:41:00 +03:00
Fabian Vogt
d15f0fa832 Use QDateTime for interfacing with QML
Summary:
QDate from/to JS Date has unexpected results, so use QDateTime to have a
timezone assigned to prevent conversions. That way the date values are
consistent.

The behaviour got changed with Qt 5.11 (see the linked bug report) which
lead to plasma showing the wrong dates in the calendar.

BUG: 394423

Test Plan:
Tested with and without this patch on Qt 5.10.1 and 5.11.0.
Now the correct date is displayed for -0004 and +0001 timezones.

Reviewers: #plasma, #frameworks, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: ngraham, Zren, sharvey, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D13222
2018-06-04 10:33:06 +02:00
Laurent Montel
70a274ad3a Use override 2018-05-23 08:05:40 +02:00
Friedrich W. H. Kossebau
b6a6e95afc [Breeze Plasma Theme] Fix kleopatra icon to use color stylesheet
Summary:
Had hardcoded colors before.

BUG: 394400

Test Plan:
Looks properly in cuttlefish in black/white mode, both inverted &
non-inverted.

Reviewers: #plasma, aheinecke

Reviewed By: aheinecke

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D12959
2018-05-18 20:57:59 +02:00
Kai Uwe Broulik
11f4e5b392 [Dialog] Handle dialog being minimized gracefully
Dialogs don't show up in task bar and also don't have window decoration so they're not meant to be minimized.
However, they might still be minimized by external means, such as "Minimize All" plasmoid.
In this case hide the dialog. Also, Qt restores a minimize state when showing again, rendering the dialog inaccessible.
Before showing, always unset the minimized state using new Qt 5.10 API

BUG: 381242

Differential Revision: https://phabricator.kde.org/D12876
2018-05-16 14:00:04 +02:00
David Edmundson
505295ce4b Revert "windowthumbnail: Use mipmap texture filtering"
This reverts commit 612494e2b2.

This caused a huge regression for some drivers breaking functionality
completely. Better to revert for now, and try again when we have it
fully working.

See 393241
2018-05-03 23:15:53 +01:00
David Edmundson
f7c1752ae1 Revert "windowthumbnail: Use gamma correct scaling"
This reverts commit 42d3fde1ee.
2018-05-03 23:15:53 +01:00
Friedrich W. H. Kossebau
af9a4680aa [Air & Oxygen themes] Bump version for calendar event marker fix 2018-05-03 16:24:42 +02:00
Friedrich W. H. Kossebau
f36905878b Fix not shown event marker in calendar with air & oxygen themes
Summary:
Remove outdated calendar.svgz from air & oxygen themes which
still contained only the Plasma4 area calendar elements, but not
the (for now single) Plasma5 one, "event".

Given none of the old elements can be reused for the new element "event",
the complete files are removed for now.

Test Plan:
Selecting Air or Oxygen themes the event markers are now shown on days in
the calendar grid widget.

Reviewers: #plasma, mart, broulik

Reviewed By: #plasma, broulik

Subscribers: #frameworks

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D12680
2018-05-03 16:11:33 +02:00
Friedrich W. H. Kossebau
67f5ad29e8 Fix PlasmaCalendar widget to not mark days with minor events
Summary:
CalendarEvents::EventData (in KDeclarative) has a property isMinor, which is
described as "If set to true, it won't be marked in the calendar grid".

This patch fulfils that promise, by introducing separate roles on the model
which explicitly report the existance of any major or any minor events at a
given day, so that the marker loader can concentrate on the major events.

Test Plan:
Using a plasmacalendar plugin which feeds events with isMinor=true the
widget now only marks days which have major events.

Reviewers: #plasma, broulik, davidedmundson

Reviewed By: #plasma, broulik, davidedmundson

Subscribers: davidedmundson, broulik, #frameworks

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D12438
2018-05-02 17:33:30 +02:00