Commit Graph

3987 Commits

Author SHA1 Message Date
Aleix Pol
04c0ff5cd7 Make sure we compare paths properly 2019-07-23 19:41:05 +02:00
Marco Martin
0e859870a9 Search for the plugin of the other plasmoid
Summary:
Some applets use completely the code of another one with the key
X-Plasma-RootPath.
At the moment it doesn't work on applets that have a binary plugin portion
This makes pluginloader load the plugin of the original applet we're using

Test Plan:
an applet that falls back to one that has a binary plugin now works.
ones that fall back to applets without binary plugin still work
normal applets as well

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D22675
2019-07-23 11:13:13 +02:00
Nate Graham
28bc0f3ea1 [Busy Indicator] Match duration of QQC2-desktop-style version
Summary: Match the duration (2 seconds) that was set in D22630.

Reviewers: broulik, #vdg

Reviewed By: broulik

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D22646
2019-07-22 07:58:17 -06:00
Harald Sitter
a965fa4cb8 remove dangling remote widgets code
Summary:
can't be enabled anywhere + not actually doing anything as there is no
backing for it in the cpp + qca isn't even looked for by cmake

Test Plan: none

Reviewers: #plasma, broulik

Reviewed By: #plasma, broulik

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D22618
2019-07-22 10:02:03 +02:00
Noah Davis
249365e327 Remove hardcoded colors (view.svg, system.svg) 2019-07-21 04:09:26 -04:00
Aleix Pol
f04584d423 Add missing components in org.kde.plasma.components 3.0
Summary:
These were created but never installed. Was looking into porting krunner
to 3.0 and they were missing.

Test Plan: Used them in the WIP port of KRunner

Reviewers: #plasma, mart

Reviewed By: #plasma, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D22546
2019-07-19 16:16:19 +02:00
Nate Graham
4e35b61a83 Update refresh and restart icons to reflect new breeze-icons versions
Summary:
Like D22534, but for the Plasma theme.

CCBUG: 409914

Reviewers: #vdg, ndavis

Reviewed By: #vdg, ndavis

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D22541
2019-07-18 20:40:36 -06:00
Aleix Pol
d721555929 itemMouse isn't defined in plasma.components 3.0 2019-07-19 02:48:00 +02:00
Marco Martin
ccceb83b10 use clearItems when an applet gets deleted
back when this was written KConfigSkeleton didn't have clearItems
and setDefaults can still leave some cruft behind
this ensures all is gone
2019-07-18 17:44:15 +02:00
David Edmundson
03d406770f Fix crash if swtichSize is adjusted during initial setup
This causes us to create components and items during the initial binding
evaluation of the root.

Reviewed-by: Marco Martin
2019-07-17 11:57:40 +02:00
Marco Martin
05daa3e206 react when switchWidth/Height changes
if switchWidth or height changes dinamically,
compactRepresentationCheck has to be ran again, otherwise
it can happen the situation where applets have both rapresentations in
the same view
2019-07-15 13:57:48 +02:00
Aleix Pol
e6cbea39ff Remove unused bits in ContainmentAction 2019-07-10 19:26:50 +02:00
Aleix Pol
21227e0f98 Improve plugin caching
Summary:
Extend the plasmoid startup cache to DataEngines and ContaimentActions.
Include a cache for script engines. In practice it's always the same, we don't
need to check the file system every time.

Reviewers: #plasma, davidedmundson, mart

Reviewed By: #plasma, davidedmundson, mart

Subscribers: davidedmundson, mart, broulik, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D22258
2019-07-08 13:48:05 +02:00
l10n daemon script
875dbab70c 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"
2019-07-06 05:15:02 +02:00
Kai Uwe Broulik
214838313d [Svg] Fix porting error from QRegExp::exactMatch
The CACHE_ID_NATURAL_SIZE adds stuff around the argument string, so explicitly move the ^ and $ outside.

Differential Revision: https://phabricator.kde.org/D22275
2019-07-05 08:56:38 +02:00
Aleix Pol
46f0da45c6 ContainmentAction: Fix loading from KPlugin
Summary: At the moment it was enabled in the PluginLoader but we were not using it anywhere.

Test Plan: See patch in plasma-workspace.

Reviewers: #plasma, #frameworks, mart

Reviewed By: #plasma, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D22267
2019-07-05 01:04:07 +02:00
Aleix Pol
e3c6c2731e regular expression shouldn't be static 2019-07-04 12:20:42 +02:00
Aleix Pol
6c692309ed Better use of Qt APIs in Plasma::Theme
Summary:
Try not to access hashes repeatedly.
QRegExp -> QRegularExpression.

Reviewers: #plasma, #frameworks, fvogt, mart

Reviewed By: #plasma, mart

Subscribers: bruns, tcanabrava, fvogt, broulik, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D22147
2019-07-02 16:46:53 +02:00
Filip Fila
97272465a8 [TabBar] Remove exterior margins
Summary: This allows us to glide active tabbar indicators on lines, which we cannot do now in Kickoff due to this limitation in the control.

Test Plan:
Before:
{F6936102}

After:
{F6936103}

Reviewers: #vdg, #plasma, ngraham, ndavis

Reviewed By: #vdg, ngraham, ndavis

Subscribers: ndavis, apol, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D22108
2019-07-01 00:06:17 +02:00
Bhushan Shah
7ae271987c pluginloader: Change behavior of X-KDE-ParentApp
Summary:
X-KDE-ParentApp is the key in desktop file to display that given service
or application is part of the another application or extension of other
application. In KDE4 this key was used to mark applets to be used in the
specific application like plasma-desktop, kdevelop, amarok etc.

In KF5 world, none of this applications have applet loading mechanism
apart from plasma*, and there are likely only Plasma applet, containment
or dataengines.

Previous API, when no/empty parentApp was passed would filter out every
application which had something as parentApp. This was to ensure only
compatible plugins are loaded in Plasma. This resulted in applets
getting excluded if they suggested that org.kde.plasmashell is their
parent application. Refine this API to,

- If no/empty parentApp is provided, provide all applets
- If parentApp is provided, filter by applet

This behavior is more filter like instead of other way around.

CHANGELOG: Applet, DataEngine and containment listing methods in
Plasma::PluginLoader no longer filters the plugins with X-KDE-ParentApp
provided when empty string is passed.

Test Plan:
tested that plasma loads properly, plasmaengineexplorer lists
all engines and plasmawindowed works fine. Neverthless requires more testing

Reviewers: mart, apol

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D22049
2019-06-23 20:39:41 +05:30
Marco Martin
9f04ae48e2 make pinch in calendar work again
work around https://bugreports.qt.io/browse/QTBUG-76569
with an empty mousearea on top
2019-06-21 17:20:06 +02:00
Nicolas Fella
eddc6dec69 Add disk-quota icons
Summary:
Add disk-quota icons to Plasma theme

BUG: 403506

Reviewers: #plasma, #breeze, ngraham, ndavis

Reviewed By: #breeze, ndavis

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21966
2019-06-21 16:28:45 +02:00
Aleix Pol
097f0e83e7 Make Plasma::Svg::elementRect a bit leaner
Summary:
Don't double-access maps
Don't construct ids more times than necessary.
Make regular expression static so it's not compiled on every run.
Remove unused code.

Reviewers: #plasma, #frameworks, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: bruns, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21788
2019-06-21 15:25:42 +02:00
Friedrich W. H. Kossebau
eff37abdcb Automatically set version of desktopthemes packages to KF5_VERSION
Summary:
Should ensure that on a new release any existing theme caches are updated
automatically.

Reviewers: #plasma, ltoscano, apol

Reviewed By: apol

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21767
2019-06-13 15:38:23 +02:00
Aleix Pol
52124c663e Don't notify about changing to the same state it was at
Summary:
The object tracker was telling me it's notifying the same value it
already got, and reading the code it seems to be already notifying when it
actually changes.

Test Plan: tests pass, plasma runs fine.

Reviewers: #plasma

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21481
2019-06-13 01:04:53 +02:00
Dimitris Kardarakos
cd8b6b71ce Fix the alignment of the label of the toolbutton
When only a label exists in a toolbutton, without filling the width of the rowlayout, the label is not properly aligned in the center.

Differential Revision: https://phabricator.kde.org/D21415
2019-06-04 20:45:27 +03:00
Nate Graham
adb9998988 [PlasmaComponents3] Vertically center button text as well
Summary:
The PC3 Button's Label didn't have `Layout.FillHeight: true` set, so button text was not actually
getting vertically centered in certain circumstances. This patch fixes that.

Found while working on D21503.

Test Plan:
Before: {F6860487, size=full}

After: {F6860486, size=full}

Reviewers: #plasma, broulik

Reviewed By: #plasma, broulik

Subscribers: broulik, apol, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21502
2019-06-03 10:06:47 -06:00
Aleix Pol
09fa87a7b7 Revert "Pass fully-qualified arguments and return values to moc"
This could break old-style connects. Let's keep it as it was until KF6
as discussed in the channel. Thanks frinring for pointing it out.

This reverts commit f631aec33f.
2019-05-30 16:05:36 +02:00
Aleix Pol
0b18d4f0b3 Don't modify a temporary object
Summary: Instead copy the object, operate it and update it into the object.

Test Plan:
just used plasma shell and ran the tests. I'm not sure who uses this.
Issue found with clazy.

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21483
2019-05-30 15:38:35 +02:00
Aleix Pol
f631aec33f Pass fully-qualified arguments and return values to moc
Summary: Otherwise it thinks it's different types.

Test Plan: tests pass, plasmashell works

Reviewers: #plasma, #frameworks, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21480
2019-05-30 15:38:09 +02:00
Noah Davis
fb8f02de76 Make Breeze Light/Dark use more system colors
Summary: Closes T8755

Reviewers: #vdg, #plasma, mart, filipf

Reviewed By: #vdg, filipf

Subscribers: filipf, lavender, kde-frameworks-devel

Tags: #frameworks

Maniphest Tasks: T8755

Differential Revision: https://phabricator.kde.org/D21378
2019-05-29 20:46:08 -04:00
Aleix Pol
756a21a6ff Fix warnings
Don't pass objects to lambdas that get unused.
Don't connect to lambdas without specifying the target object, if an object
reference is passed to the lambda.
2019-05-29 16:23:29 +02:00
David Edmundson
39d1db6e49 Export SortFilterModel sort column to QML
Test Plan: Used in model

Reviewers: #plasma, broulik

Reviewed By: #plasma, broulik

Subscribers: broulik, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21419
2019-05-27 08:03:28 +01:00
Friedrich W. H. Kossebau
e99f653113 plasmacore: fix qmldir, ToolTip.qml no longer part of module
Reviewers: #plasma, mart

Reviewed By: #plasma, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21350
2019-05-24 15:08:48 +02:00
Marco Martin
cb8bdb8edd signal availableScreenRectChanged for all applets
if the connect is done in containmentinterface only contaiments
will be able to see the rect changing, while applet would access it but
not be able to detect changes
2019-05-23 13:18:00 +02:00
Friedrich W. H. Kossebau
b0850b1f6f Use simply configure_file to generate the plasmacomponents3 files
Reviewers: #plasma, mart, apol

Reviewed By: apol

Subscribers: apol, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21349
2019-05-23 00:17:52 +02:00
Friedrich W. H. Kossebau
3b950f38cc Update *.qmltypes to current API of QML modules
Reviewers: #plasma, apol, mart

Reviewed By: #plasma, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21001
2019-05-17 18:38:10 +02:00
Friedrich W. H. Kossebau
f008615e37 FrameSvg: also clear mask cache on clearCache()
Summary:
It can be unexpected that those are not reset when clearCache() was called.

With the current logic when a theme changes the mask cache not reset also
results in wrong lookups, as the cacheid used as key does not include the
theme name.

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21172
2019-05-14 17:08:29 +02:00
Friedrich W. H. Kossebau
8899389c9f FrameSvg: make hasElementPrefix() also handle prefix with trailing -
Summary:
there are a few places which potentially pass a prefix with a trailing -,
e.g. if using directly the value of FrameSvg::prefix() or
FrameSvg::actualPrefix(). Support the assumption in such code, unbreaking
its currently not working behaviour.

Reviewers: #plasma, mart

Reviewed By: #plasma, mart

Subscribers: apol, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21174
2019-05-14 17:08:00 +02:00
Friedrich W. H. Kossebau
6af447a848 FrameSvgPrivate::generateBackground: generate background also if reqp != p
Summary:
d8a1a9eb08 changed the condition from
hasElementPrefix(q->prefix()) to hasElementPrefix(frame->requestedPrefix)
but it is not clear why, as the background is generated from the prefix
data & the requestedPrefix is no-where in effect.
As a result sometimes the background is not rendered for a given
not-existing requestedPrefix which was mapped to an empty prefix instead.

Reviewers: #plasma, mart

Reviewed By: #plasma, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21175
2019-05-14 17:07:24 +02:00
Friedrich W. H. Kossebau
1bc1994dfe FrameSvgItem: emit maskChanged also from geometryChanged()
Summary:
Needed e.g. to fix the missing update of the mask on changing the size of
the Plasma panel if only listening to mask changes.

Reviewers: #plasma, apol

Reviewed By: apol

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21201
2019-05-14 15:10:27 +02:00
Friedrich W. H. Kossebau
193775def6 FrameSvg: prevent crash when calling mask() with no frame yet created
Reviewers: #plasma, apol

Reviewed By: apol

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21200
2019-05-14 15:10:07 +02:00
Friedrich W. H. Kossebau
084ba0f886 FrameSvgItem: emit maskChanged always from doUpdate()
Summary:
In that method we can assue a high chance that the mask is also affected.
Instead of adding complicated additional code to track if the mask
really changed, we rely on the cached value from FrameSvg.
This method is not too often called in a Plasma session, so that
further optimization work to avoid unneccesary emits seems not yet
worth it.

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21179
2019-05-13 23:47:25 +02:00
Friedrich W. H. Kossebau
9142155b5a API dox: note for FrameSvg::prefix()/actualPrefix() the trailing '-'
Reviewers: #plasma, dhaumann

Reviewed By: dhaumann

Subscribers: apol, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21173
2019-05-13 23:44:58 +02:00
Marco Martin
4498ba9fb9 a kf6 comment 2019-05-13 11:25:22 +02:00
Friedrich W. H. Kossebau
0f65c95771 API dox: point to Plasma5 versions on techbase if avail 2019-05-13 01:09:26 +02:00
Friedrich W. H. Kossebau
fca08ef241 FrameSvg: l & r borders or t & b don't need to have same height resp. width
Summary:
The specification for FrameSvg does not require that all borders exist
or that left & right and top & bottom borders have samples with the same
size in the scalable dimension.
The old assumption in the code broke e.g. themes which had special
variants per screen side for the panel-background and left out elements
for the border side which would not be rendered anyway, but only set a
margin-hint. So e.g. for a panel on the east screen edge, without the
left border element set, leftHeight would be 0 and as result also the
right border not be painted due to an empty size.

Reviewers: #plasma, apol

Reviewed By: apol

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21106
2019-05-10 01:13:23 +02:00
l10n daemon script
ff8ac120cb 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"
2019-05-08 05:45:12 +02:00
Friedrich W. H. Kossebau
7f4e171ef7 PlatformComponentsPlugin: fix plugin iid to QQmlExtensionInterface
Summary: The Q_PLUGIN_METADATA IID should be the one of the implemented interface.

Reviewers: #plasma, apol

Reviewed By: apol

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D21000
2019-05-04 01:48:46 +02:00
Friedrich W. H. Kossebau
c8fe7bc5ac IconItem: remove remaining & unused smooth property bits
Summary: fix-up for 18a2ca50ab

Reviewers: #plasma, davidedmundson, apol

Reviewed By: apol

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20999
2019-05-04 01:48:12 +02:00
Kai Uwe Broulik
91024027b0 [Dialog] Add CriticalNotification type
Allows to flag a dialog window as critical notification that should be shown even on top of fullscreen windows

Differential Revision: https://phabricator.kde.org/D20630
2019-05-02 10:15:57 +02:00
l10n daemon script
58d8fc6dd5 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"
2019-04-29 05:32:30 +02:00
Noah Davis
176643f48c Fix wrong group names for 22, 32 px in audio.svg
Summary: Before this fix, the system tray audio widget would try to use the 32px icons where 22px icons should be used.

Reviewers: #vdg, #plasma, ngraham

Reviewed By: #vdg, ngraham

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20825
2019-04-25 14:01:21 -04:00
Kai Uwe Broulik
1b2424879a [Window Thumbnail] Also monitor scene visibility and clean up
Just because the item is visible doesn't mean the window itself is. Keep track of the window it's in.
Use itemChange instead of connects and move the check for starting to startRedirect so we don't have to check the conditions
for that in every change handler (visible && enabled && window->visible). It also saves three connects in the constructor.
Also, don't unredirect if we didn't redirect in the first place to avoid warnings printed on console.

BUG: 406303

Differential Revision: https://phabricator.kde.org/D20805
2019-04-25 15:04:20 +02:00
Marco Martin
9aeaf7cbb5 make the mobile text toolbar appear only on press 2019-04-24 11:54:53 +02:00
Marco Martin
bdb2783b0d use the new Kirigami.WheelHandler 2019-04-23 10:34:08 +02:00
Noah Davis
b5ec56091e Add more icon sizes for audio, configure, distribute
Summary: The tooltip for the audio system tray widget and panel edit mode had blurry versions of these icons because the icons were being scaled to fit.

Test Plan:
audio.svg: {F6783458, size=full}

configure.svg: {F6783423, size=full}

distribute.svg: {F6783424, size=full}

Reviewers: #vdg, #plasma, ngraham

Reviewed By: #vdg, ngraham

Subscribers: ngraham, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20695
2019-04-22 08:42:19 -04:00
Friedrich W. H. Kossebau
170ff5668f [FrameSvgItem] Update filtering on smooth changes
Summary:
When just the smooth property is changed, this also results in a call of
QQuickItem::updatePaintNode reimplementations. So always just set the
filtering flag to match the current value of the smooth property.

Reviewers: #plasma, broulik, mart

Reviewed By: #plasma, broulik

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20579
2019-04-18 13:04:17 +02:00
Friedrich W. H. Kossebau
084edba0db Air/Oxygen desktoptheme: fix progressbar height using "hint-bar-size"
Summary:
During Pre-Plasma5 the hard-coded height of 20 of the progressbar was
changed to instead be taken from the theme via the "hint-bar-size":
commit cee9c928e3

As fallback for old themes in absence of the hint the default height
since some time later has been derived from the sum of the heights of
the elements "bar-inactive-top" & "bar-inactive-bottom".

Which though for the Air and Oxygen themes results in the small heights
of respective 10 & 4. As a result the visual appearance of the theme
differs from what people remember of the time when the themes were
designed.
Ideally the theme designer would tune the actual value to something they
prefer. Until then setting the hint to restore the visual appearance over
the currently pretty slim or even too slim one should improve things
already.

Reviewers: #plasma, #vdg

Subscribers: broulik, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20602
2019-04-17 22:16:29 +02:00
Noah Davis
cdad9c38c1 Fix stylesheet support for audio-volume-medium 2019-04-17 14:10:54 -04:00
Noah Davis
bd8264e928 Update audio, drive, edit, go, list, media, plasmavault icons to match breeze-icons
Test Plan:
media.svg: {F6777018, size=full}

drive.svg: {F6777019, size=full}

plasmavault_error.svg: {F6777022, size=full}

plasmavault: {F6777023, size=full}

list.svg: {F6777025, size=full}

go.svg: {F6777028, size=full}

audio.svg: {F6777029, size=full}

edit.svg: {F6777030, size=full}

Reviewers: #vdg, #plasma, broulik, ngraham

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

Subscribers: broulik, ngraham, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20623
2019-04-17 13:52:31 -04:00
Noah Davis
0ff81fe4c7 Align z's to pixel grid in system.svg
Summary: This does the same thing as D20586, but for the Breeze desktop theme. The diff shows a lot of changes because I optimized the SVG.

Test Plan: Looks exactly the same as D20586

Reviewers: #vdg, ngraham

Reviewed By: #vdg, ngraham

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20597
2019-04-16 08:46:00 -04:00
Marco Martin
8431223542 use the mobiletextcursor from proper namespace 2019-04-16 11:21:34 +02:00
Kai Uwe Broulik
2a636d6671 [FrameSvgItem] Respect smooth property
This ensures the textures are rendered smoothly, especially when rotated.

Differential Revision: https://phabricator.kde.org/D20570
2019-04-15 12:46:12 +02:00
Friedrich W. H. Kossebau
b9ac83d4d7 Oxygen desktoptheme: add padding to hands, against jagged outline on rotation
Reviewers: #vdg, #plasma, ngraham

Reviewed By: #vdg, ngraham

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20550
2019-04-15 11:27:29 +02:00
Friedrich W. H. Kossebau
18a2ca50ab SvgItem, IconItem: drop "smooth" property override, update node on change
Summary:
QQuickItem already has a "smooth" property, which was shadowed by the
custom ones with the same name. As the property was not part of public
symbols, but instead is dynamically looked up without the class name part
of the property, we just remove the custom versions and instead switch
all custom code to use the inherited property.

While doing that the code is also fixed to properly update the
textureNodes to the current value of the "smooth" property.
As well as not set the filtering only on the texture, when it is passed
to a texturenode which will set its own filtering state to the texture
right before the bind call and thus wipe any previous direct setting
of the filter mode on the texture.

This also changed the default to smooth=true for SvgItem, though
effectively smooth was always true, as the texturenode was hardcoded
to get a QSGTexture::Linear filtering (which, as said above, is forced
onto its texture, no matter what was otherwise set before).

Reviewers: #plasma, davidedmundson, mart

Reviewed By: #plasma, davidedmundson

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20510
2019-04-15 00:03:28 +02:00
Friedrich W. H. Kossebau
78bec83b22 Support gzipping of svgz also on windows, using 7z
Reviewers: #plasma, #windows

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20499
2019-04-12 22:45:16 +02:00
Friedrich W. H. Kossebau
37a1845bc4 Air/Oxygen desktoptheme: fix hand offsets with hint-*-rotation-center-offset
Summary:
The hands of the clocks still relied on the KDE4 times rule that the
position in y-axis relativ to the clock center would define the relative
rotation point for the hands.

With the default in Plasma 5 being (width/2, width/2) from topleft of the
hand shape, using hints of upcoming Plasma 5.16 allows to override that
again to match the original definition, without the need to enlarge
the pixmaps of the hand shapes.

Reviewers: #plasma, mart, ngraham

Reviewed By: ngraham

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20496
2019-04-12 19:33:31 +02:00
David Edmundson
83d85dc228 Add invokable public API for emitting contextualActionsAboutToShow
Summary:
This signal is emitted just before showing the context menu to allow
lazy-loading expensive actions like hasAlternatives.

This emitted by our code whenever we show a context menu from an event
filter, however we want to use this code from a tooltip in D17410

Test Plan:
Hovered over some applets, they correctly enabled/disabled the
alternatives button

Reviewers: #plasma

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20417
2019-04-12 15:46:58 +01:00
Friedrich W. H. Kossebau
417a82b1b9 Breeze desktoptheme clock: support hand shadow offset hint of Plasma 5.16
Reviewers: #plasma, #vdg, mart, davidedmundson, ngraham

Reviewed By: #plasma, #vdg, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20478
2019-04-12 11:17:40 +02:00
l10n daemon script
f1f4d64576 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"
2019-04-12 05:51:51 +02:00
Friedrich W. H. Kossebau
6887d4e736 Port away from deprecated KWindowSystem::windowInfo 2019-04-12 01:40:11 +02:00
Friedrich W. H. Kossebau
38ba8beee3 Keep desktoptheme SVG files uncompressed in repo, install svgz
Summary:
The SVG format being based on plain text, storing the SVG in the repository
not as .svgz, but .svg, helps both VCS tools (patching, showing diffs) as
well as allows some developers to edit the SVG directly in any text editor,
not only those which support automatic conversion from/to gzip format.

While most artists will continue (and which shall be okay) to use GUI
editors like inkscape, which might rewrite the complete structure on saving,
using uncompressed format in the repo still allows the occasional direct
edit of the text, .e.g. to change a colour, which then is also easily seen
in the commit diff.

To still keep the svgz format when deployed, a build step is introduced,
which uses gzip to create svgz files in the build dir. This conversion can
be controlled using the option GZIP_DESKTOPTHEME_SVG (default: ON).

Test Plan: Themes are still working (with & without cache removed).

Reviewers: #plasma, #vdg, ngraham

Reviewed By: #vdg, ngraham

Subscribers: bruns, GB_2, ndavis, ngraham, fvogt, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20166
2019-04-12 01:37:01 +02:00
Marco Martin
58dd4c5c0f separe mobile text selection to avoid recursive imports
Summary:
the mobile text selection toolbar uses toolbuttons, which in turn use the
private import. This will make the components loading stuck in dependency
resolution

Test Plan: all loads correctly now

Reviewers: #plasma, hein

Reviewed By: #plasma, hein

Subscribers: hein, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20428
2019-04-10 13:53:44 +02:00
Eike Hein
846741f851 Revert "use the right namespace"
This reverts commit 067ec2eafc.
2019-04-10 06:54:30 +09:00
Eike Hein
a280cccfde Revert "mov the mobile text actions in own import"
This reverts commit c72ee78bbb.

Broke PlasmaComponents3. Missing files? Error example:

MenuRepresentation.qml:172:5: Type PlasmaComponents3.TextField unavailable
file:///home/eike/devel/install/lib64/qml/org/kde/plasma/components.3/TextField.qml:27:1: "mobiletextselection": no such directory

CCMAIL:notmart@gmail.com
2019-04-10 06:52:45 +09:00
Marco Martin
067ec2eafc use the right namespace 2019-04-09 15:40:36 +02:00
Nate Graham
7687ffa3da Use more appropriate "Alternatives" icon and text
Summary:
The new icon was just added in D20367. The current icon is semantically and visually incorrect,
and the new one fixes that.

The current text also does not begin with an action verb, and this patch fixes that too.

Test Plan:
Before:
{F6759646, size=full}

After:
{F6759647, size=full}
{F6759649, size=full}

Reviewers: #vdg, #plasma, GB_2, filipf

Reviewed By: #vdg, GB_2, filipf

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20392
2019-04-08 15:04:02 -06:00
Friedrich W. H. Kossebau
f20722fbe1 FrameSvgItem: add "mask" property
Summary:
This property allows e.g. the Plasma shell to query the shape a panel has
when defining the area for BlurBehind.

Reviewers: #plasma, mart

Reviewed By: #plasma, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20202
2019-04-08 15:11:07 +02:00
Marco Martin
c72ee78bbb mov the mobile text actions in own import
this avoids a qml type resolution recurtion which can
in some cases stuck the component to loading forever
this was particularly visible in plasma mobile
2019-04-08 13:32:46 +02:00
Kai Uwe Broulik
c65145bd34 [AppletInterface] Check for corona before accessing it
On plasmashell shutdown when the panels are destroyed, the available screen geometry changes.
When an applet then accesses screenGeometry in response to that change, it crashes because the corona is already gone.

availableScreenRegion() and availableScreenRect() already checked for this but screenGeometry() did not

Differential Revision: https://phabricator.kde.org/D20244
2019-04-05 11:34:07 +02:00
Kai Uwe Broulik
9de0def99f [Dialog] Don't forward hover event when there is nowhere to forward it to
Dialog has this clever way of re-sending a mouse event inside the bounardies of the dialog,
so despite visual padding, the items can be clicked on any corner following Fitt's law.
However, when the mainItem has no size, adjusting the position will adjust it inside the border
since there is no pixel inside the main item, leading to infinite recursion as the event is
processed again and again and again leading to a crash.

Differential Revision: https://phabricator.kde.org/D20200
2019-04-02 14:04:37 +02:00
Kai Uwe Broulik
9aa249e86a [Menu] Fix triggered signal
It casted the QAction to a MenuItem which fails because it isn't such.
Instead, manually find the item with the corresponding action.

Differential Revision: https://phabricator.kde.org/D20199
2019-04-02 14:03:34 +02:00
Aleix Pol
4f132316c5 Reduce the importance of some debug information so actual warnings can be seen.
Reviewers: #plasma, #frameworks, ngraham

Reviewed By: ngraham

Subscribers: ngraham, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D20095
2019-04-02 01:10:46 +02:00
Aleix Pol
decabe7b67 Fix qml warning 2019-04-01 21:07:46 +02:00
Kai Uwe Broulik
d868804a7f [PlasmaComponents3 ComboBox] Fix textColor
Uses the one from ColorScope rather than Kirigami.
Kirigami.Theme isn't used in any other Plasma Components 3 and the opacity already changes for when it's disabled

Differential Revision: https://phabricator.kde.org/D20070
2019-04-01 10:12:06 +02:00
l10n daemon script
978160d9d9 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"
2019-03-25 05:53:54 +01:00
Friedrich W. H. Kossebau
5f4f88ad66 FrameSvgItem: catch margin changes of FrameSvg also outside own methods
Summary:
FrameSvg updates the margins e.g. on a Theme change already in its
internal event handling before the methods of FrameSvgItem are invoked.
Due to that CheckMarginsChange guards before this change could not detect
any changes, and thus missed to trigger an update via the margin objects
to the QtQuick world.

So when changing the theme e.g. in a Plasma shell or in the Plasma Theme
Explorer, existing FrameSvg items are using outdated margins, resulting
in broken display.

By keeping a copy of the last seen margins as part of the item and not only
per method, changes outside the FrameSvgItem items can be properly detected.

Test Plan:
Switch Plasma themes between Air, Breeze & Oxygen, see how different margins
are reflected in the widgets sizes instantly.
Switch Plasma themes in the Plasma Theme Explorer, with "Show Margins"
enabled, see how margins are always correctly updated intead of taking the
value of the last theme used.

Reviewers: #plasma, mart

Reviewed By: #plasma, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D19743
2019-03-22 11:32:44 +01:00
Friedrich W. H. Kossebau
fb1a332948 Add Theme::blurBehindEnabled()
Summary:
Allows themes to disable the blurring of what is behind panels,
if they either do not need it (being fully opaque) or by design want
non-blurry transparency.

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D19907
2019-03-21 19:33:41 +01:00
Aleix Pol
349648c1e6 Fix crash 2019-03-21 19:13:03 +01:00
Friedrich W. H. Kossebau
0ffe183d71 FrameSvgItem: fix textureRect for tiled subitems to not shrink to 0
Summary:
The old logic results in broken rendering if the sample was bigger than the
area to render, due to normalized texture rect being 0 in the respective
dimansion. As well as stretched mapping of the sample for fractional
relationships between the area to render and the sample size.

Test Plan:
Borders of backgrounds of FluffyBunny theme render properly, no other
regressions seen (but unsure what else might rely on that artifact).

Reviewers: #plasma, mart

Reviewed By: #plasma, mart

Subscribers: apol, sitter, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D19787
2019-03-20 00:52:13 +01:00
Fabian Vogt
3aba8a7e10 Fix breeze dialog background with Qt 5.12.2
Summary:
style elements without type="text/css" were ignored before, but now they act as
if type was set. Set id and style properly to restore the working behaviour.

BUG: 405548

Test Plan:
Installed new files on a system with Qt 5.12.2, wiped the SVG cache
and it looks fine again.

Reviewers: #plasma, rooty

Reviewed By: rooty

Subscribers: acooligan, filipf, heikobecker, falqueto, rooty, Zren, arojas, rikmills, asturmlechner, kde-frameworks-devel, plasma-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D19821
2019-03-19 14:52:48 +01:00
l10n daemon script
d7e2f921d7 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"
2019-03-14 05:38:31 +01:00
Laurent Montel
ebae2d6303 Remove crash in plasmashell
Summary: remove bug in plasmashell Bug 405341

Test Plan: can't reproduce bug

Reviewers: dfaure, #frameworks, #plasma, broulik

Reviewed By: #plasma, broulik

Subscribers: broulik, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D19698
2019-03-12 10:18:41 +01:00
Kai Uwe Broulik
017954185c [Icon Item] Also clear image icon when using Plasma Svg
When changing an IconItem from using a local image (e.g. PNG file) to using a Plasma themed icon,
the implicit size wasn't updated since the old image was still loaded in m_imageIcon.
Clearing it when clearing the other icon stores fixes this.

BUG: 405298

Differential Revision: https://phabricator.kde.org/D19674
2019-03-11 13:27:37 +01:00
l10n daemon script
e77bf0f5d6 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"
2019-03-10 05:35:43 +01:00
Marco Martin
a2749dc9c7 textfield height based only on clear text
Summary:
as the implicit height could change when switching to password mode,
use a textmetrics which always computes it from the visible text

BUG:399155

Test Plan: height doesn't change

Reviewers: #plasma, ngraham, rooty

Reviewed By: ngraham, rooty

Subscribers: sitter, rooty, ngraham, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D19599
2019-03-08 15:40:47 +01:00
Marco Martin
fa8b766eb0 bind alternateBackgroundColor 2019-03-06 10:55:16 +01:00
l10n daemon script
252298e88c 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"
2019-03-03 05:33:56 +01:00
l10n daemon script
21e671bee1 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"
2019-03-01 05:56:28 +01:00