Commit Graph

14274 Commits

Author SHA1 Message Date
David Rosca
5184ac94c9 IconItem: Try to load QIcon::fromTheme icons as svg
When showing QIcons in IconItem, it would ignore stylesheet colors.
This tries to load QIcons created with QIcon::fromTheme as svg, by using
the icon name returned from QIcon::name.

REVIEW: 126792
CCBUG: 353358
2016-01-19 10:14:49 +01:00
David Rosca
11937533e8 Ignore check if just one part of size is zero in compactRepresentationCheck
When debugging the linked bug, it looks like when item's geometry change
eg. from 0x0 to 100x100, geometryChanged may be called twice, first with 100x0
and then finally with 100x100.
This was not issue before, because we used timer to call compactRepresentationCheck.
This changes compactRepresentationCheck so that it early returns also when just
one part of item's size is zero.

Fixes regression from 344dbeb938

REVIEW: 126778
BUG: 358039
2016-01-17 18:02:36 +01:00
Kai Uwe Broulik
d9719f1037 [Units] Return at least 1ms for durations
Animators do not reliably work with a duration of 0 as can be seen in the linked bug report.

Upstream bug report: QTBUG-39766

BUG: 357532
REVIEW: 126652
2016-01-17 12:59:30 +01:00
Kai Uwe Broulik
c4c5e9090a Run currentColorFillFix.sh over tasks.svgz 2016-01-17 12:50:27 +01:00
Kai Uwe Broulik
72910fd448 tasks.svgz: Add "progress" frame
This item will be used to indicate progress (such as download or file copy
progress) in the task bar.

REVIEW: 126719
2016-01-17 12:47:41 +01:00
David Edmundson
d11c7535ba Add clearActions() to remove every applet interface action
REVIEW: 126742
2016-01-16 16:02:57 +00:00
Marco Martin
225efd7e71 attached properties have parent, not parentItem
attached properties never, ever are in a scene
even if they are qquickitems it may cause big rendering
problems
2016-01-14 15:12:20 +01:00
Martin Klapetek
7a3499dd70 Merge branch 'mklapetek/dontAnimateNotifications' 2016-01-13 14:36:37 -05:00
Martin Klapetek
311cde3ba5 [plasmaquick/dialog] Don't use KWindowEffects for Notification window type
REVIEW: 126727
2016-01-13 14:36:16 -05:00
l10n daemon script
3908c521ca 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"
2016-01-13 10:35:10 +00:00
Marco Martin
427419ba2e more docs
Change-Id: I821c7f38a1880754a12bbcbb997b03d8813e6903
2016-01-12 13:32:17 +01:00
Marco Martin
6841956ea6 deprecate Applet::loadPlasmoid()
Deprecated: use Containment::createApplet instead,
you are not supposed to have applets without containments

Change-Id: I5e73335523687969918a71e56eaa3124d779ee74
2016-01-12 13:28:00 +01:00
Kai Uwe Broulik
bbf295cdfa [PlasmaCore DataModel] Don't reset model when a source is removed
REVIEW: 126687
2016-01-11 18:00:43 +01:00
Eike Hein
85a5d821fb Fix margin hints in opague panel background SVG.
Means panel contents no longer dance around when compositing cuts out.
2016-01-10 18:18:36 +01:00
l10n daemon script
9af6bec13d Upgrade KF5 version to 5.19.0. 2016-01-09 13:24:38 +00:00
Marco Martin
5b79da30f0 support simple QObjects too
support ColorScope in Svg as well (that's not a QQuickItem)
2016-01-08 16:11:19 +01:00
Marco Martin
5911ad2920 keep track of the context parents
keep internally a pointer (important that is *not* a smart pointer)
to the item the context has been created for.
on context deletion, remove the copy from the static bookeeping hash
this solves two related crashes: an infinite recursion
and a connection to a deleted object
2016-01-08 13:38:06 +01:00
Marco Martin
dc1bfc3de1 same enabled borders between toolbutton and shadow
Change-Id: I6180121b32755f6f0ee391f8399b3a7cce55d14e
2016-01-07 12:56:56 +01:00
Marco Martin
e565c5c225 rework ColorScope
Since some time PlasmaCore had the very useful ColorScope class,
which can semi-automatically make children take colors of the
View, Button or Complementary color groups.
Unfortunately it didn't support dynamic reparenting, giving
wrong colors in some cases (see black on black battery on the phone)

even tough is a bit complicated, now by cascading signals down the
children tree, support on the fly apply of the new context upon
reparenting.

also add a manual test case showing text, rectangles and icons
dynamically changing color as they get moved from one scope
to the other

REVIEW:126654
Change-Id: I3d746b73eac55a359c4706fb719b4d5018677fb5
2016-01-07 11:06:40 +01:00
David Rosca
e4ea8d55b7 IconItem: Add animated property
Add property animated, that allows to disable cross-fade animation when
changing icon (enabled by default).

REVIEW: 126637
2016-01-06 20:21:15 +01:00
Kai Uwe Broulik
6353e0e7bf Remove obsolete comments 2016-01-05 18:57:00 +01:00
Kai Uwe Broulik
073e7ec7ae [Unity] Scale Desktop icon size
Given with Qt high-dpi support manually adjusting the icon sizes to fit is mostly
obsolete because applications will do that nowadays - we should do the same.

REVIEW: 126641
2016-01-05 18:40:56 +01:00
Marco Martin
5af3ed10d9 blue border in the active task
Change-Id: Ieefaf132d566c512345e76c04cdcaba949d17d20
REVIEW:126373
2016-01-05 12:59:34 +01:00
Marco Martin
7301bcf42f fix compressed file
patch by Anthony Fieroni
REVIEW:126577

Change-Id: I5ec7907ce68f2d6699cdc536e594d2ac8d350411
2016-01-04 19:43:41 +01:00
Marco Martin
4ac969d5f1 the button is compose-over-borders
Change-Id: Ia56145126021c917d3f33430ebad52e3467d3a8c
2016-01-04 18:59:38 +01:00
Marco Martin
c532ca8ff7 paintedWidth/paintedheight for IconItem
export the actual painted icon size of the icon item
REVIEW:126625

Change-Id: Ifa6667fdb9e3f7ee675b2c36628eae2ea5394a35
2016-01-04 18:20:38 +01:00
Martin Klapetek
3992593f31 [scriptengine/qml] Allow applets to set full ToolTip item
Adds new property available as Plasmoid.toolTipItem that allows
to set a full custom item as the tooltip

REVIEW: 126463
2016-01-04 11:38:14 -05:00
l10n daemon script
532fce558d Upgrade ECM and KF5 version requirements for 5.18.0 release. 2016-01-01 20:09:36 +00:00
l10n daemon script
345fba11bf 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"
2015-12-30 09:28:22 +00:00
Kai Uwe Broulik
81a03ef291 [ToolButtonStyle] Always indicate activeFocus
Even when flat we should indicate that a ToolButton has focus.
This makes keyboard navigation substantially less awkward.

CHANGLOG: Improved visibility of keyboard focus on buttons

REVIEW: 126567
2015-12-29 23:42:23 +01:00
Martin Klapetek
f639996bec Use the SkipGrouping flag for the "widget deleted" notification
https://git.reviewboard.kde.org/r/126459/ introduced new
flag that allows to skip the grouping of notifications.

This should fix all bugs caused by checking for appName
being "plasma_workspace" which are all default notifications
from any plasmoid.

CCBUG: 356653
REVIEW: 126461

(this also needs to raise the KF5 dep to 5.18 which is
normally done at release time, but in order to use this
now, it needs to be bumped now, otherwise build failures
will ensue)
2015-12-29 15:12:05 -05:00
Kevin Ottens
46c555838c Deal properly with symlinks in path to packages
We receive the URL with all symlinks resolved, but internally the
pkgRoot kept unresolved symlinks preventing matches if there was a
symlink somewhere to get to the package.

REVIEW: 126562
2015-12-29 17:31:16 +01:00
Marco Martin
d85c02b5bb fix build
5.18 dep will be bumped by release scripts

Change-Id: Idb9bfe6ab3267c0d4e764a706b794b0ef98c7008
2015-12-29 15:47:12 +01:00
Marco Martin
3f56e63e70 use the new KDEPackageAppTemplates ECM module
REVIEW:126557
Change-Id: Ie32644a0641d1f0d5299ba9d1b0053e3f37d2635
2015-12-29 15:41:35 +01:00
David Edmundson
ab135f4e8e Don't always load the timetracker
It has a timer that wakes up every 2 seconds and drains my battery just
simply because I have debug builds. This make it on demand.

Don't track containments twice.
Containments inherit from Applets which also have the same line

Change-Id: Ia9a9b58a0b1197083d692c58e4ce75838c311db4
REVIEW: 126472
2015-12-27 19:37:35 +00:00
Leslie Zhai
97ef641566 Add HiddenStatus for plasmoid self-hiding
Self-hiding plasmoid is useful https://forum.kde.org/viewtopic.php?f=83&t=39501
for example, bluetooth plasmoid can be totally hided when there is NO bluetooth
adpater available.

PassiveStatus is NOT enough, because plasma-workspace's systemtray applet ONLY
hide the passive status plasmoid into ExpandedRepresentation. when click the
expanding triangle, the 'hidden' plasmoid is still visible.

So I added HiddenStatus and implemented it in the plasma-workspace systemtray
applet.

REVIEW: 126297
2015-12-23 22:17:20 +08:00
Eike Hein
fa0030a9ac Always check both before redirecting. 2015-12-22 20:36:10 +01:00
Eike Hein
c64a94a265 Stop redirecting windows when item is disabled or hidden.
Concretely fixes Task Manager tooltips slowing down app rendering even
after the tooltip is hidden.

REVIEW:126475
BUG:356938
2015-12-22 19:26:15 +01:00
Eike Hein
9dcb6e5d52 Oops. Drop timer member. 2015-12-22 18:42:17 +01:00
Eike Hein
706276d108 Stop relying on timer to schedule pixmap updates.
The timer was used to skip ahead of parsing and to compress prop
updates to handle width/height changes atomically. This achieves
both by moving pixmap load into the polish phase after those are
guaranteed to be done.

This fixes a bunch of flicker all over the place since 150ms is
obviously far beyond the frame time budget on 60 hz, but we can
usually easily fit into one frame on hot caches.
2015-12-22 18:39:53 +01:00
David Edmundson
01cd374c8e Don't emit statusChanged if it hasn't changed
For some applets the status is bound to a complex expression that can be
re-evaluated a lot. This ends up causing a lot of unnecassary updates.

REVIEW: 126471
2015-12-22 17:32:28 +00:00
David Rosca
344dbeb938 AppletQuickItem: Drop timer to create full representation
The timer only added 250ms delay before creating the full representation,
sometimes resulting in showing empty popup for a moment.

REVIEW: 126468
2015-12-22 15:46:00 +01:00
Eike Hein
283ab4a634 Fix element ids for east orientation. 2015-12-22 05:04:01 +01:00
Michael Pyne
5c1d2ed01c plasmaquick: Fix memory leak in PackageUrlInterceptor.
Noted by Coverity, CID #1332370.

REVIEW:126443
2015-12-21 14:38:59 -05:00
David Rosca
bca8e87531 Containment: Don't emit appletCreated with null applet
ContainmentPrivate::createApplet may return null pointer
(eg. when desktop is immutable), so check the pointer before
emitting appletCreated.

REVIEW: 126449
BUG: 356428
2015-12-21 15:00:22 +01:00
Eike Hein
2d1a3364b8 Thoroughly unbreak tasks.svgz.
* Fix inconsistent inside margins causing vertical misalignment inside Task Buttons.
* Fix inconsistent outside margins causing incorrect alignment inside panel.
* Fix outside margins and button corner appearance in locations other than South.
* Fix a few instances of incorrect color scheme application.
* Remove many unused elements.
2015-12-21 04:56:59 +01:00
Kai Uwe Broulik
899f95d0cf [Containment Interface] Fix erratic high precision scrolling
This makes containment actions only trigger for one "wheel tick" rather than
continuously when you scroll with a touchpad.

REVIEW: 126433
2015-12-20 22:55:45 +01:00
Patrick Spendrin
54736e262f don't rely on char* to QString implicit conversion
my Qt won't cast char* to QString, so explicitly use QStringLiteral here.

REVIEW: 126417
2015-12-19 00:29:23 +01:00
Michael Pyne
600bdda045 Fix potential use-after-free in FrameSVG.
Plasma framework's FrameSVG class uses cached regions for efficiency. However
Coverity caught a mis-use of QCache in FrameSvg::mask(), which could lead to a
use-after-free situation. (CID 1291560)

Basically, any pointer passed into QCache::insert must be assumed to be deleted
after insert() has been called -- we can't then return that pointer to the
caller.

Moreover we were simply returning a pointer to calling code that had been (and
still would be) owned by QCache, which is unsafe as it can be deleted at any
time. The fix in both cases is to make a local copy of the QRegion from out of
the cache and return that.

REVIEW:126411
FIXED-IN:5.18
2015-12-17 21:34:04 -05:00
l10n daemon script
a1feac929b 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"
2015-12-16 09:05:14 +00:00