Commit Graph

3226 Commits

Author SHA1 Message Date
Leszek Lesner
a7b438ece4 Documentation for PlasmaComponents Menu
Add documentation for declarative menu (PlasmaComponents.Menu)

Change-Id: I66363f43433dedd5f19723e3de4b680eb3e40527
REVIEW: 124727
2015-08-13 13:44:52 +01:00
Aleix Pol
74a605e0cf Let the RowLayout figure out the size of the label
No need to specify the preferredHeight as the RowLayout can already infer
it automatically.

REVIEW: 124646
2015-08-07 14:21:30 +02:00
Marco Martin
d5b71611e2 always show the edit menu when the cursor is visible
not super nice but needed functionality-wise, since i cannot trigger the
menu from CursorDelegate
2015-08-06 15:25:30 +02:00
Aleix Pol
f87f03b4a8 Fix loop on ButtonStyle
Nowadays the size of the icon is defined by the size of the button itself,
and vice-versa.
This patch uses the unit sizes to decide which sizes to offer.

REVIEW: 124628
2015-08-05 18:30:23 +02:00
Aleix Pol
4e9f3dd129 Don't change the flat-iness of a button on pressed
Changes the background component on press, looks odd.

Reviewed by Marco Martin
2015-08-05 18:30:23 +02:00
Marco Martin
0aca608bda on touchscreen and mobile scrollbars are transient
Change-Id: I81b2986b4ca0486b59e8bd400cd8e2603a54e040
2015-08-05 14:54:31 +02:00
Marco Martin
04d946e786 adjust flick velocity&deceleration to dpi
on denser screens we need more higher speed and
deceleration expressed in pixels

Change-Id: Ida366190ec99720f05b8c52f08514fc087a67948
reviewed-by: "Kai Uwe Broulik" <kde@privat.broulik.de>
2015-08-05 14:54:31 +02:00
Marco Martin
ba69d19c63 custom cursor delegate only if mobile 2015-08-05 13:55:26 +02:00
Marco Martin
669f807fa8 touch friendly text cursor 2015-08-05 13:52:22 +02:00
Kai Uwe Broulik
b61a03c048 Support pinch to zoom in the calendar
CHANGELOG: Using a pinch gesture one can now switch between the different zoom levels of the calenda

REVIEW: 124507
2015-08-04 12:44:37 +02:00
David Edmundson
32020aad78 comment about code duplication in icondialog
Change-Id: I0850c6698cbd4b4940b289e3c370c0ab140ed2e4
2015-08-03 15:29:32 +01:00
Xavier Vello
b380205f29 Slider groove color was hardcoded, modified to use color scheme 2015-08-01 22:39:57 +02:00
Kai Uwe Broulik
11e5ff10ae Improve calendar navigation
This adds a "Year overview" showing all 12 months in a grid, and a "Decade overview"
showing the current decade.

CHANGELOG: Calendar navigation has been significantly improved, providing a year and decade overview
REVIEW: 122488
2015-07-27 11:41:35 +02:00
Kai Uwe Broulik
80940951e0 Make PlasmaCore.Dialog opacity work
CHANGELOG: PlasmaCore.Dialog now has an 'opacity' property

REVIEW: 124408
2015-07-21 22:28:34 +02:00
Aleix Pol
75b1034dd6 Make some space for the radio button
Reviewed by Marco Martin
2015-07-21 18:18:40 +02:00
Aleix Pol
99282d151b Don't show the circular background if there's a menu
Otherwise it's centered on the button instead to the icon and it looks
wrong. Also it's good that we use the rectangular background as it involves
all the button, arrow included.

Reviewed by Marco Martin
2015-07-21 17:30:21 +02:00
Marco Martin
ee94a3ad3e fix parenting and popping up policy 2015-07-21 11:34:01 +02:00
Marco Martin
03560b5a5b declare __editMenu
this makes the patch not fail also on non patched Qt
2015-07-21 10:57:56 +02:00
Kai Uwe Broulik
6098528cd4 Add X-Plasma-NotificationAreaCategory definition 2015-07-20 14:14:52 +02:00
David Rosca
0ffd7681dd Set notifications and osd to show on all desktops
Notification and OnScreenDisplay window types are now shown on all
desktops, same as Dock.

REVIEW: 124355
2015-07-16 17:35:48 +02:00
Bhushan Shah
084d527638 Print useful warning when we can not get valid KPluginInfo
We can not generate proper PluginInfo most likely because metadata was
not valid, printing metadata itself will not be useful and will result
in printing message like,

Could not load plugin info for plugin : "" skipping plugin

Which is 0% useful.
2015-07-16 19:13:44 +05:30
Marco Martin
3689d5472f add missing cursot handles delegates 2015-07-16 15:40:16 +02:00
Marco Martin
797c622f7f whitespace-- 2015-07-16 15:33:34 +02:00
Marco Martin
eef99055e6 rewrite the EditMenu implementation
license reasons
2015-07-16 15:26:18 +02:00
Dan Vrátil
2b31836bdc Fix potential endless recursion in PlatformStatus::findLookAndFeelPackage()
The LookAndFeel entry does not exist in kdeglobals (it's called LookAndFeelPackage),
so when the configured LnF package is removed or renamed, the code will go to
endless loop because it never clears the configuration ine kdeglobals correctly.

REVIEW: 124371
2015-07-16 15:12:45 +02:00
Marco Martin
9e318ed6d9 use the mobile menu only conditionally 2015-07-16 13:52:46 +02:00
Marco Martin
b88f84e703 reparent the menu to root
this makes the menu to be corectly positioned and correct Z
it may happen of menus not getting deleted in dynamic cases such as
 things in pagestacks
2015-07-16 12:51:03 +02:00
Marco Martin
7525a0db40 experimental brnch for inline edit menu 2015-07-15 19:23:30 +02:00
Kai Uwe Broulik
81dbda8e17 Rename software-updates.svgz to software.svgz
Plasma only looks for the section before the first dash.
Fixes not being able to use software-updates-foo icons
2015-07-13 20:12:39 +02:00
Kai Uwe Broulik
5cf9c04ff5 Also check for SharedEngineView
With the move to a shared QML engine infrastructure, the check for whether the
focus item is a View no longer held and thus Plasma dialogs stayed opened when
clicking the Desktop to dismiss them.

CHANGELOG: Dialogs like Kickoff now properly close when clicking the Desktop
BUG: 349172
REVIEW: 124260
FIXED-IN: 5.13
2015-07-05 15:23:34 +02:00
Marco Martin
0cdd928376 make the dark theme completely dark, also the complementary group 2015-06-24 14:09:33 -07:00
Marco Martin
fef51e71d6 cache naturalsize separately by scalefactor
solves some highdpi issues
saves and reads natural sizes separed by scalefactor
so they don't get mixed up when the scaefactor changes
resulting in wrongly sized items

reviewed-by:David Edmundson <david@davidedmundson.co.uk>
2015-06-24 10:38:53 -07:00
Marco Martin
b2b1c93fac give fullrepresentation a parent immediately
like compactRepresentationItem, initialize it
with the appletInterface as parent at creation
not having any moment without parents
2015-06-18 18:29:14 -07:00
Vishesh Handa
2dbeea4d23 ContainmentInterface: Move to lambda to a private slot
The containment interface deletion order isn't clear. It can happen that
it is deleted before the application quits, and then this lambda is
called, and its accesses internals of the class even though it has been
deleted.

Reviewd-By: Marco Martin
2015-06-19 01:07:24 +02:00
Vishesh Handa
c77377221b ContainmentView: Do not crash on an invalid corona metadata
On launching `plasmashell -wap notExistingName`, it's better to give a
warning instead of crashing.
2015-06-19 00:03:20 +02:00
Vishesh Handa
9976edcbc9 AppletQuickItem: Do not access KPluginInfo if not valid
When loading an applet which does not exist, we create a dummy applet
which just contains the error message. This dummy does not have a valid
KPluginInfo, and using an invalid KPluginInfo causes as assert to be
hit.

Reviewed-By: Marco and Sebas
2015-06-18 23:36:28 +02:00
Marco Martin
aa52188364 use ColorScope 2015-06-18 11:42:09 -07:00
Kai Uwe Broulik
ac04b5570a Ignore invalid X-Plasma-ConfigPlugins
CHANGELOG: Fix occasional empty applet config pages

CCBUG: 349250
REVIEW: 124113
2015-06-17 18:28:12 +02:00
Martin Klapetek
5165d6574e [calendar] Ensure the grid is repainted on theme changes
Change-Id: If6e6144fa3aa691628c3ba2c053f3e848da8498d
2015-06-15 16:39:03 +02:00
Martin Klapetek
23add5d6e4 [calendar] Refactor the Calendar grid computation a bit
Makes the code a bit simpler & lighter and fixes the sometimes missing
bottom line in calendar.

The grid is now equally padded from both sides (including the month
name), so basically it's now always aligned to the center and this also
fixes the cases where there was a bigger padding on one side than on the
other.

The grid is now also anchored to the bottom so that the bottom margin
can stay moreless consistent with the side margins in different sizes.

Change-Id: I2f2173d11e473d6e93db2bdca002269e4239f516
REVIEW: 124072
CHANGELOG: Improve hidpi support in the Calendar grid component
2015-06-15 16:35:32 +02:00
Marco Martin
f9d4f3d836 don't destroy the window 2015-06-14 12:30:57 -07:00
David Edmundson
99da4651c3 Verify KService has valid plugin info before using it
Change-Id: I361bb9f49e9fab108e524e5d321d114fd1fc4aae
REVIEW: 124062
2015-06-14 10:16:54 -07:00
Marco Martin
6b633de572 destroy native window on hide 2015-06-11 21:29:10 -07:00
Marco Martin
839dc2c3df write in the qmlobj rootcontext, not global
use a private rootcontext for each wallpaper, or they would
share config
2015-06-11 18:13:30 -07:00
Marco Martin
34935428e8 correctly scale up svgs
scale the natural size as well as sizes
this makes hugh dpi ratios to be more uniformly scaled
2015-06-11 18:01:53 -07:00
Martin Klapetek
bc0280ddb0 [calendar] Always start counting weeks from Monday
Sometimes the first day in the grid can be Sunday, but the week number
must always be counted from Monday in that week

BUG: 349044
Change-Id: I903650fcaadb4fd78764ad6a8bb1e219261c791b
FIXED-IN: 5.11
2015-06-12 01:11:11 +02:00
Marco Martin
c60ca1b6a0 immediately parent objects
don't let representations without parents, avoid
possible leaks and fix cases in which the applet relies
on ht eparent hyerarchy, such as ColorContext
2015-06-10 22:39:22 -07:00
Jan Kundrát
eb4edb0e9e Fix build on Qt 5.2
The QJsonArray::operator<<(const QJsonValue &) is a 5.3 thing.

Change-Id: Ia183cf55bed764747dbba727346f18df396affeb
2015-06-10 18:55:18 +02:00
Marco Martin
13bd6703c0 Merge branch 'mart/singleQmlEngineExperiment'
REVIEW:123736
2015-06-10 09:05:46 -07:00
Martin Klapetek
c98f356fc6 [calendar] Repaint the grid when show week numbers setting changes
Change-Id: I5ec923ed62492afe9a6db24db5085ca98849a5e6
2015-06-10 14:37:20 +02:00
Kai Uwe Broulik
d65c0ed1d0 Bind translucent theme to background contrast rather than blur effect
Only the background contrast effect provides real contrast for contents, the blur effect
doesn't improve readability that much; so we now use the translucent theme only when we
have the background contrast effect. This significantly improves readability.

CHANGELOG: An opaque theme is now used when only the blur effect is available
REVIEW: 124039
BUG: 342934
BUG: 348154
2015-06-08 17:30:38 +02:00
Dan Vrátil
afd962a15b Fix crash when QGuiApplication::primaryScreen() returns a null pointer
There can be a situation when changing resolution/scaling or some other screen
property that driver/XRandR decides to turn the screen off temporarily, during
which there are no screens and QGuiApplication::primaryScreen returns a null
pointer.

Approved-by: David Edmundson
2015-06-06 16:06:51 +02:00
Martin Klapetek
70cf70be3a Fix typo in ToolTipArea documentation
Change-Id: I6a823b1356099f364d0bd59e3f3a0daa137f1ae7
2015-06-05 14:34:56 +02:00
Martin Klapetek
5caba3cfaf [calendar] Add week numbers in Calendar components
Change-Id: Ie46b9b9c1e6035a9b2933362227d3c8fcd30a10e
REVIEW: 124004
CCBUG: 338195
CHANGELOG: Calendar components can now display week numbers
2015-06-05 14:34:05 +02:00
Marco Martin
a2e223c1ad use PlasmaCore.ColorScope in needed places
standard controls should work better in inverted color scopes

Change-Id: I3d10a195cb0ae0b2f2fbbcca21fc6f87f99e7cfc
2015-05-28 12:51:30 +02:00
Marco Martin
eca200f67e use color contexts
Change-Id: Iea8cc397ddd431c61390ddc70c3fab808ef9f72f
2015-05-27 18:18:50 +02:00
Marco Martin
cc97bd8297 most entries are not kcms, fail gracefully
don't spit scary errors when an entry has an empty plugin path,
ie not a kcm

Change-Id: I1f2cc744aaed315ae3dd56d5a55082eb09a5ed6e
2015-05-26 15:45:34 +02:00
Jaroslaw Staniek
1fcdc08222 Missing "or" when looking for .cmake and CMakeLists.txt files
REVIEW:123902
2015-05-25 16:30:43 +02:00
Marco Martin
7e51d55022 remove dead code
Change-Id: I7d5c896572e65d0bc30cbfc41b75968bf6085cec
2015-05-19 14:59:39 +02:00
Marco Martin
607b7bf584 whitelist applets/versions for separate engine
an attempt at transition without having to litter all
the metadata files: whitelist for now the applets in which
use the separate engine: when they have a version number
greater than 3 (arbitrary) switch over to shared engine

Change-Id: I354638527923734722bfcb0810703e20e32372d1
2015-05-19 14:45:12 +02:00
Marco Martin
68104d38d4 ntroduce a new class ContainmentView
replaces View, uses the shared engine view and uses the only global engine

Change-Id: I3de71c38edc92a0609d6614bde819957819c66a4
2015-05-18 16:19:01 +02:00
Marco Martin
07a487de8d less margins
Change-Id: I9acc3cf2e54b6a74fdd1693f60358fa2bd4e37eb
2015-05-15 17:18:17 +02:00
Marco Martin
ae9cb77838 Use QtRendering for fonts in password fields
Since the password echo is a circle woithout vertical or horizontal lines, it won't be
more blurred with different rendring types.
Using Qt rendering, the dots will look more aligned and equally spaced.

Change-Id: I8052f176930d1e2dc144f0b65daf539764cf08b1
REVIEW:123799
2015-05-15 14:29:08 +02:00
Aleix Pol Gonzalez
dedc3cc9ae Improve debug information for some plasmoids
I've been trying to figure out why there's so many qml scripts which errors always specify "<Unknown Files>".
This patch is not ideal, but improves the situation slightly.

REVIEW: 123575
2015-05-14 02:56:04 +02:00
Martin Klapetek
37590e2d2b Fix AssociatedApplicationManager lookup when a mimetype has no aliases
QMimeType::aliases() does not return the main mimetype in the returned
list and so when there are no aliases for a mimetype, there would be no
associated application found as it would be querying for empty mimetype.

This now always prepends the current mimetype to the list for which the
apps are queried.

REVIEW: 123779
BUG: 340326
FIXED-IN: 5.11
CHANGELOG: Fix AssociatedApplicationManager lookup when a mimetype has
no aliases

Change-Id: I322b03f2ac17fa4c0eb70fc3354c65a0f7a5e34c
2015-05-13 19:05:09 +02:00
Marco Martin
c0c56191db fix panel background coloring
Change-Id: Ie60dbf45e78be6d400019834d2324f3ca4e18b6f
BUG:347143
2015-05-12 13:45:40 +02:00
Marco Martin
1b5805ba02 qmlobjectsharedengine in wallpapers
Change-Id: I6125cfa6d7a0cbf1f6f4ece132e9b824a447ddfb
2015-05-11 20:54:52 +02:00
Marco Martin
a595bf9f61 use QmlObjectSharedEngine in applets
Change-Id: Ie3f8c90b7fd601fdb2da23bd69e4b4b338cb190b
2015-05-11 20:44:57 +02:00
Marco Martin
cb6b03e907 use QmlObjectSharedEngine for tooltips
Change-Id: I6ddb3bcad870165e24bd7b5cd63505fd31ca46b9
2015-05-11 20:06:28 +02:00
Marco Martin
a7d4e52aed get rid of "Could not load applet" message
is misleading and not correct anymore

Change-Id: I6429d522d92d94661d14d618f20e1c604140a6a9
2015-05-11 17:48:01 +02:00
Marco Martin
9802e9c6d1 implify
Change-Id: I983400993050e2ebf735290387982845d27dc0d1
2015-05-11 14:51:01 +02:00
Marco Martin
bb0d245d5b support fallback to the multi engine
require SingleEngine in X-Plasma-RequiredExtensions to share the engine

Change-Id: I72873d2e370f98a069bb3dff0d58290277da1292
2015-05-11 13:47:15 +02:00
Marco Martin
509c5da619 consider the case of one engine per applet
rest of fallback mechanism still to be implemented

Change-Id: I2889075d72c776fea4a7db7e9ea638697acd907f
2015-05-11 12:02:34 +02:00
Marco Martin
ac2f76d9c8 heuristic for finding out what package we want
based on the absolute path requested

Change-Id: Ie99bfdc322a409e7ef275499eb8b254d834a98b7
2015-05-11 11:49:37 +02:00
Marco Martin
f1c0a9a06b capability to load QML kcms in plasmoid config windows
With the same mechanism as plasma 1, add the possibility to load kcms directly
 in the plasmoids config windows. this works only for qml based ones.
the apply enable and trigger is correctly wired between the config dialog
and kcm apis.

Change-Id: I66b5ab2253dcbb5f223b5dcf5616efc9d5aab274
REVIEW:123673
2015-05-08 20:35:45 +02:00
Marco Martin
f9e61de51b hopefully fix Plasmoid attached property
Change-Id: I57d6d443b0a2f94e986e11e0e5cfb1ac6e6884bc
2015-05-08 20:23:00 +02:00
Marco Martin
dc288044ef rough experiment on giving all applets the same engine
it has a couple of big problems
Plasmoid attached property (should be easily fixable)
url interceptor (more tricky)

Change-Id: Ie75dfa97e097f43e8e5778f9b47fdff29224e5fc
2015-05-08 19:44:22 +02:00
Aleix Pol
ec6afe2a8a Don't use the DataEngineStructure for Applets
Use Plasmoid instead.

REVIEW: 123690
2015-05-08 19:24:38 +02:00
l10n daemon script
662adbb41b 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-05-08 10:19:36 +00:00
David Edmundson
04f96779c1 Fix memory leak in AppletQuickItem
Change-Id: I7307cdd4f61fa87f6385a5c09b2fe722165e5199
REVIEW: 123492
2015-05-07 22:18:33 +01:00
Marco Martin
ea924b1469 port libplasma away from sycoca as much as possible
this ports most of libplasma away from sycoca, using instead
a combination of KPluginLoader and KPackage::PackageLoader instead
(so eventually using their own little caches instead of the
global sycoca cache)
a kservicetypetrader call is left in the loading of
containmentactions since is the only way to make an older
workspace still work, but is only a fallback, so containmentactions
in plasma-workspace can be ported eventually as well

Change-Id: Ie9579c3e01284f6d97043e22d01bbe63d3c3f45a
REVIEW:123626
2015-05-07 16:26:37 +02:00
Martin Klapetek
02f124b120 [plasmacomponents] Make SectionScroller follow the ListView.section.criteria
Now it will show first character only if the ListView has FirstCharacter
set

Change-Id: I6d2451d95e36a9a07eed4168402ac5748e87dcb3
Reviewed-by: Marco Martin
2015-05-07 12:56:49 +02:00
Kai Uwe Broulik
01d7343642 Disable transient scrollbars
To improve accessibility and consistency with widget applications scroll bars no longer
automatically hide after a timeout, which was the case when a touch screen was present,
which is nice for tablets but bad for desktops.

CHANGELOG: Scroll bars no longer automatically hide when a touch screen is present

REVIEW: 123645
BUG: 347254
2015-05-05 22:12:48 +02:00
Sergio Martins
dea859ee60 Fix member initialization order [-Wreorder] 2015-05-03 20:36:59 +01:00
Sergio Martins
245082dc34 Fix mismatched header include guards 2015-05-03 12:32:56 +01:00
Aleix Pol
71891996d4 -- unneeded includes 2015-04-30 19:29:50 +02:00
Marco Martin
fe9f515bf5 increase maxAllowedSize a bit
Change-Id: I88ca56d1ac687288e8e780ce43506fb45246d23f
2015-04-28 12:43:49 +02:00
Kai Uwe Broulik
93cf07deac Add support for menu sections
Also adds a manual unit test

CHANGELOG: PlasmaComponents.Menu now supports sections
REVIEW: 123537
2015-04-27 22:19:41 +02:00
Marco Martin
c22bb8c4a8 don't cut away text
Change-Id: I56cf92d0ac6515ec9deb2c8136ef7e2914d1a529
2015-04-21 11:23:11 +02:00
Marco Martin
f248bfbfd1 consider corona actions when evaluating shortcuts
Change-Id: Ic8ff309d6abac6bd85c4fb3c568a9c040f0fc93a
2015-04-16 18:38:23 +02:00
Marco Martin
a5588aab9a Merge "Consider visualParent rotation in popupPosition" 2015-04-10 15:02:34 +02:00
Sebastian Kügler
2b1a487428 Use KPluginLoader to load dataengines
KPluginLoader has all the needed machinery to identify a plugin by its
pluginId. No need to use the query parser here, replace it with a
lambda.

Look for C++ dataengines first. These are much more common, especially
in essential cases. By looking up the plugins through KPluginLoader
first, we can save querying ksycoca.

REVIEW:123297
CHANGELOG:Use KPluginLoader instead of ksycoca for loading C++ dataengines
2015-04-09 01:10:52 +02:00
Marco Martin
a5737b553e fix margin sizing after the imagepath changes
Change-Id: If47f4d538caf93a35b4ef008cbc5339a9ef265a0
2015-04-08 13:44:55 +02:00
Marco Martin
7ea2e8f028 panels have bottom margin
simplify the theme, always use complete frames
and drop the now unised *-mini-* prefixes

Change-Id: I2b85e3561adc6cb910dc12866f246ce1c9fd9c7a
2015-04-07 21:31:47 +02:00
Antonis Tsiapaliokas
684e456f84 Fix typo
REVIEW: 123276
2015-04-07 17:47:36 +03:00
Andrius da Costa Ribas
99d968e190 Convert switch/case statements to if/else due to MSVC being unable to recognise e.g. FrameSvg::TopBorder | FrameSvg::LeftBorder as a const expression (error C2051: case expression not constant)
REVIEW: 120877
2015-04-03 16:29:37 -03:00
Marco Martin
6dfc6e38dd 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
2015-04-02 15:59:14 +02:00
Marco Martin
48dd5963d3 always return all the actuions
it's task of the visualization(the toolbox) to show or hide them

BUG:345788
Change-Id: I267ba99d7300b52c03877868204d628098d3c2aa
2015-04-02 15:10:40 +02:00
Marco Martin
b2583a9368 measure the proper elements
Change-Id: I938abac5001c980e664ed7e5df41fdf0cacfafbc
2015-04-01 13:11:10 +02:00
Marco Martin
67a64e8763 fix themes that don't have hint-bar-size element
Change-Id: Ic2623d66223628b992650084de451ac288467157
2015-03-31 21:43:05 +02:00
Marco Martin
e37576f8d8 expose repaintNeeded()
also emits marginsChanged when is needed
on the fly theme changes work a bit better now

Change-Id: Icefc4fba9c6a80531edc4b1e0c08b62ea039e244
2015-03-30 13:42:40 +02:00
Marco Martin
b9efa292b0 make sure the coordinates are containment relative
Change-Id: I82d3d6dded9701cd674a861a339cd60d6d12c962
Corona::availableScreenRegion has absolute coordinates, we need relative ones
2015-03-27 14:10:20 +01:00
Marco Martin
22796e978d function to adjust a rect to availableScreenRect
Given a geometry, it adjusts it moving it completely inside of the boundaries
of availableScreenRegion, returning the topLeft point of the adjusted
rectangle

reviewed-by: David Edmundson <david@davidedmundson.co.uk>

Change-Id: Ib58cbf521d5def1cd5bb34fe90366d4b628f8a89
CCBUG:345401
CCBUG:345002
2015-03-26 16:50:10 +01:00
Kai Uwe Broulik
4985a4fe65 Immediately hide tooltip on ToolTipArea destruction or when it becomes empty
When the tooltip is empty (no text, no subtext, and no mainItem) it will not be shown.
However, when it becomes empty while it is already shown, it stays there as a small
rectangle. This hides the tooltip immediately (so KWin's fadeout animation still has
the proper content rather than the empty tooltip) when the TooltipArea that opened
the tooltip has been destroyed or its content becomes empty.

CHANGELOG: Fixed stray tooltips when temporary owner of tooltip disappeared or became empty

REVIEW: 122939
2015-03-26 15:23:46 +01:00
Kai Uwe Broulik
b7e4669db2 Layout children in TabBarLayout right away
When Component.onCompleted is emitted, all the static children have been created,
thus we can call the layout function right away.

CHANGELOG: Fix TabBar not properly laid out initially, which could be observed in eg. Kickoff

REVIEW: 123106
2015-03-25 18:18:38 +01:00
Marco Martin
285224a2ea don't risk to mix up frames with different pixelratio
BUG:345155
Change-Id: I0b2384831d755e02b944a49259ffeacd0d2fb71e
2015-03-25 17:06:47 +01:00
Marco Martin
3516c04006 device pixel ratio applied before generating svg
Change-Id: I22bc343894716cbbebabd5c0633889890ce1da9e
CCBUG:345155
2015-03-25 12:07:41 +01:00
Martin Klapetek
8bebf82fbf Update the documentation page with current informations
Change-Id: Iffe77b6ca173b2c09c74b8928a5412d2ce098a85
2015-03-24 15:32:33 +01:00
David Edmundson
bbd328b957 set m_tooltipTextFormat in both constructors
Change-Id: I37971554121f9de1b3b0ca1b6ff1598c727203ed
2015-03-24 12:18:05 +01:00
David Edmundson
ed558bdd5c Fix order and unitiliased variable warnings in appletinterface
Change-Id: I3fab64384f7cd1fb306c85210a4b3e8ec715732f
2015-03-24 12:16:52 +01:00
David Edmundson
4490a3b868 Initialise member varaibles
Change-Id: I174738b6f684b21c65df53db24bd5c1c71976c6a
2015-03-24 12:11:11 +01:00
David Edmundson
d9dd89890a Save a lookup in containmentActions
Also fixes an (arguably invalid) coverity warning

Change-Id: I1eebd475131b540517a7964c4ea9ec057a18c26f
2015-03-24 12:05:21 +01:00
David Edmundson
fa3cd81597 Initialise bool members of iconitem
Change-Id: I289ab2e2676ea27e1add8b0b4548dd6502cc8adc
2015-03-24 11:50:28 +01:00
David Edmundson
e08302f26b Initialise pointer in constructor
Change-Id: I6b195d1998879cbe13b4ab7660f18d6d26f05bbd
2015-03-24 11:48:13 +01:00
David Edmundson
7b355093d0 Initialise members
Not a real issue as initialize() is always called before they're used
but  it's cleaner and fixes a coverity warning.

Change-Id: Ib1168be7f9d72c7d5765850a7f35d524ea279a75
2015-03-24 11:46:03 +01:00
Kai Uwe Broulik
039b808b07 Use Animator for PageStack transitions
This improves animation smoothness, eg. when switching between heavy system tray plasmoids.

CHANGELOG: PageStack transitions now use Animators for smoother animations

REVIEW: 123102
2015-03-22 22:07:05 +01:00
Kai Uwe Broulik
f186b2938f Use Animator for TabGroup transitions
This reduces stuttering when switching between lazyloaded pages

CHANGELOG: TabGroup transitions now use Animators for smoother animations

REVIEW: 123103
2015-03-22 22:06:29 +01:00
David Edmundson
144a58c746 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
2015-03-22 13:55:20 +01:00
Marco Martin
dd46de10ec export correct Layout.minimumWidth
recalculate size when text on a tab changes
BUG:342964

Change-Id: I7fd17557e92de29a7d1b1e897caf17e60bfe101e
2015-03-20 13:45:37 +01:00
Marco Martin
ecbd619566 make PlasmaCore.ColorScope work better as advertised
Since attached properties cannot ever change during the lifetime of the object,
a colorscope needs to be created for each obect that asks for the
attached property. now each instance if (internal) has m_inherit
(only those created as an attached property), will search for the property
of the proper ancestor. Not super efficient, but the proeprties should be
actually asked for rarely enough.

doesn't look much nice, but seems to work pretty reliably and the only way to.

Change-Id: I735da5551dbb8c2641be88d245f998d00ed977ac
REVIEW:122988
2015-03-19 11:20:01 +01:00
Marco Martin
fac1100fff make sure to not emit immutabilityChanged at startup
if the immutability doesn't actuall change at startup,
don't emit immutabilityChanged even tough each applet needs
one ImmutableConstraint at start to correctly initialize
stuff

Change-Id: Id1fd40ffd62c09a2b092d13d7fb4c556cfb34994
2015-03-17 19:13:28 +01:00
Marco Martin
117898f4ed don't install notifyrc
the plasmashell notifyrc is unfortunately installed by frameworksintegration

Change-Id: I50aba5bef79150c3d8d92e9c2c94965daabd5e38
2015-03-17 18:30:45 +01:00
l10n daemon script
5265842028 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-03-14 10:19:38 +00:00
Marco Martin
e754f7bf1a pick the color from colorScope
Change-Id: Iff83658b3d91ffc9ed0f4a9a02db68ade67c82e6
2015-03-13 21:20:39 +01:00
Aleix Pol
644b93830a Don't try to infer sizes when the dialog is not visible
It suggests weird sizes and often resizes dialogs into -1x-1 size.

Reviewed by David Edmundson and Vishesh Handa
2015-03-12 18:00:54 +01:00
David Edmundson
79a30ab7a3 Check for object existing when timer expiers not when starting timer
Otherwise if it gets deleted in the meantime you'll still crash

Change-Id: If6dcf329eb5e43cff3b047f77c240d19427170ff
2015-03-12 17:03:41 +01:00
Marco Martin
01590d8fbc mainItemLayout needed for updateLayoutParameters()
Change-Id: Ic1d53f2dc479b36097b39f550d52e20810e44307
CCBUG:345089
2015-03-12 16:46:41 +01:00
Marco Martin
80d5a6fdda start timer with invokeMethod
rectSaveTimer is used to event compress the save and sync of the
configuration file that is used as a cache of the rectangles of
svg items (in order to avoid svg renderers creation when possible)
there is exactly one situation where it seems to not work: during
creation of svgitems/framesvgitems, insertintorectcache ends up
being called by another thread than the Theme's qobject thread,
and that is not allowed.

with invokeMethod the timer will be started by the correct thread
REVIEW:122915

Change-Id: I3ff4a4ebd1dfdba4b9b830fe6c08feece19b903e
2015-03-12 15:15:45 +01:00
Marco Martin
082ee9aad3 don't show shadow for flat toolbuttons
fixes the look of all themes that actually provide a separed button shadow

Change-Id: I24fde6437e2cdd2949d629ddb53138ace0a883f3
2015-03-12 11:37:33 +01:00
Marco Martin
bd1d632da0 bring config view to fron if already existing
Change-Id: I47bfed3ee8e327e78e046428abececd90c070df8
2015-03-11 14:39:00 +01:00
Marco Martin
148e0022f6 Make Svg,FrameSvg work qith QT_DEVICE_PIXELRATIO
when QT_DEVICE_PIXELRATIO is something different from 1,
the pixmaps generated by Svg will be scaled up to give a proper texture.

This is complementary but not replacing our current approach:
the pixelratio that can be accessed by units is now in relation to the qt pixel ratio,
spacings are also adjusted accordingly (therefore, spaces and sizes won't
need an integer value like pixelratio)

svg introduces also a scaleFactor property (that is pretty much like its old pixelRatio)
basically, scalefactor, will scale both the textures and all the reported sizes,
(old method) pixelratio just scales textures without altering measures
(like qt pixelratio likes)

Change-Id: I304aa0d80abf76abafac239be185dd3b2ab741b7
REVIEW:122673
2015-03-10 18:02:15 +01:00
Kai Uwe Broulik
c9fd8fc1e5 When changing "active" load pixmap right away
The active property is usualy set in response to a hover event.
Loading the new pixmap right away, starting the fade animation immediately, provides
a more responsive user experience.

REVIEW: 122857
2015-03-08 19:57:25 +01:00
Sebastian Kügler
afc3cf2f34 Use semantically more correct units.largeSpacing
Also saves an evaluation of an expression, so should be slightly faster.

Suggested by Martin Klapetek.

REVIEW:122717
2015-03-05 23:40:25 +01:00
Sebastian Kügler
a2dd646a17 fix tooltip's horizontal sizing
This is Martin Klapetek's version of the fix, it also works nicely on my
machine, and seems otherwise logical.

CCMAIL:mklapetek@kde.org
REVIEW:122717
2015-03-05 23:40:25 +01:00
David Edmundson
1ce575cf5a Simple fix for huge icon sizes
Currently units is based on font metrics except icon size and some SVG
parts which use DPI directly.

Instead of taking the physical DPI we take the logical DPI which is used
for working out font point -> pixel sizes.

We can rely on this being correct as otherwise every other app would
appear broken.

REVIEW: 122799
BUG: 338308

Change-Id: I22f668ccea7d6d15ff475e1368c82964bdde1e60
2015-03-04 11:25:59 +01:00
Marco Martin
993301c80b add missing K_EXPORT_PLASMA_APPLET_WITH_JSON
both old and new notation for compatibility:
same as DataEngine

Change-Id: I96af8f2255a94e1c0bc86e55ebb420de721444eb
2015-03-03 16:35:15 +01:00
Eike Hein
e090c77b10 Add a KF6 TODO note. 2015-02-27 19:05:06 +01:00
Eike Hein
6cc17ea25e Add a 'visible' property/role to ConfigCategory/ConfigModel.
This gives users a bit to conditionally hide categories in
combination with a filter model.
2015-02-27 19:00:32 +01:00
Eike Hein
80c32e6d51 Add a 'filterCallback' property to SortFilterModel.
Allows setting a callback function from QML to replace the
default filter implementation.
2015-02-27 19:00:32 +01:00
Martin Klapetek
54899c56ba Make the import 2.1 work
Change-Id: I12b6557a7a0e64dc4d55410da143d3d8d278bc94
Reviewed-by: Marco Martin
2015-02-27 18:37:41 +01:00
Sebastian Kügler
d285b818f6 Improve tooltip layouting
This patch ports the default tooltip away from custom spacing,
positioning and Row/Column to QtQuick.Layouts. It makes the sizing more
predictable, and the code more modern and readable. Tooltips feel to
behave a bit smoother with this patch.

In the process, this...
- fixes spacing when no icon or image is set
- limits the maximum height of the subtext to 8 lines (this prevents the
  klipper tooltip for example from growing super-high)
- Makes the icon on the LHS proportional to the text
- Limits the width a bit more to prevent super-wide tooltips
- makes it use units.gridUnit throughout

Changelog: Improve tooltip layout
REVIEW:122717
2015-02-26 16:25:52 +01:00
Marco Martin
adfc3a7752 shadow frames with center element
so they can be loaded as a full framesvg too

Change-Id: I7a16da765a530420ad050401a5b8215403b8ace0
2015-02-26 15:44:30 +01:00
Aleix Pol
e9bddef8ee Make it possible to let plasmoids to load scripts outside the plasma package
Adds a X-Plasma-Requires property for the plasmoid metadata files that will
specify the features.
Furthermore, adds a feature called ExternalScripts so that a plasmoid can
request to load files that are outside of the import directories.

REVIEW: 122595
2015-02-25 16:26:23 +01:00
Martin Klapetek
ba9f6ff03c Store the filter string in the member variable
Doh.

Change-Id: I529e79e947614545a7bc9f1d4e4a2191e238feaa
2015-02-24 16:01:35 +01:00
Martin Klapetek
404ed07fb0 Revert "Raise the QML imports version to 2.1"
This reverts commit fa2109ccb6.

Turns out the plan to raise the version with every framework
release is not as simple as raising the version numbers as
this breaks pretty much everything.
2015-02-24 15:31:41 +01:00
Martin Klapetek
fa2109ccb6 Raise the QML imports version to 2.1
Change-Id: Ia753bbc7a55a256486f2d0f225571b9046f03cda
REVIEW: 122696
2015-02-24 13:06:48 +01:00
Martin Klapetek
0f3eee1bc7 Add REVISION to the filterString property
Change-Id: I8b5474995ec64c69e16d5209442f7351c10aa73f
2015-02-24 13:06:12 +01:00
Kai Uwe Broulik
5e53bd4d57 Don't ask KWindowEffects for blur repeatedly since we track it ourselves anyway
It might not have caught up yet when we decide to nuke the cache, resulting in
the translucent graphics staying when disabling blur or switching to XRender.

Changelog: Fix Plasma popups being hard to read tue to translucent background

REVIEW: 122676
BUG: 344179
2015-02-23 21:24:12 +01:00
Martin Klapetek
0230949b08 Add plain string filtering capability to SortFilterModel
Filtering only by regexps is not enough because as soon as filtering by
special characters is needed, they can get interpreted as regexp special
characters and stuff will break.

Change-Id: Ic5cd0309e1e77d790faeecedbe87fdaaeceffc33
REVIEW: 122695
2015-02-23 20:02:41 +01:00
Sebastian Kügler
2cf49abb3e 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:kwin@kde.org
2015-02-21 19:53:01 +01:00
Aleix Pol
e3b8935d29 Fix applet loading
Don't request delayed initialization if we're not going to wait for it.

Reviewed by DjE
2015-02-21 14:06:29 +01:00
Marco Martin
bb9552c7cd remove trailing slash
Change-Id: Ifb22bcfdf2d0562dcb904539a801d8dfa537f35d
2015-02-21 11:27:14 +01:00
Aleix Pol
b14463f352 Make it possible for ContainmentInterface to deal with WrappedMimeData
This way it integrates properly with KDeclarative as well. This will need
to be extended in order to integrate QtQuick.DropArea.
2015-02-20 21:27:30 +01:00
Marco Martin
e2e7cb1cab remove PlasmaKPackageLoader
use a package of type KPackage/GenericQML for the toolbox instead

Change-Id: I5e559535338f093b3cd3734ef9c3906bb20cf001
2015-02-20 18:08:48 +01:00
Marco Martin
2bbb9dda7f if an inexisting library was specified, fallback
fallback to empty Applet/containment if an inexisting library
was specified in the metadata file.
this fixes old applets with incorrect metadata
BUG:344281

Change-Id: I0efc9dc32dee0e6fe4f3757065004a19f6e01844
2015-02-20 13:37:09 +01:00
Kai Uwe Broulik
ffcb5c8046 Make units more finegrained
It's always if (ratio < n) { return size * (ratio - 0.5); } but with the
"< 3.0" condition that was not the case.

REVIEW: 122644
2015-02-20 12:28:53 +01:00
Sebastian Kügler
a8edd6fd2c Port toolbox loading to KPackage
This needs KPluginMetaData::isHidden() which was recently added in kcoreaddons.

Reviewed-by: Marco Martin
2015-02-20 10:00:02 +01:00
Marco Martin
bda055367f use an internal package loader
internal kpackage loader used to load Plasma/generic plasma/plasmoid etc
directly from kpackage

Change-Id: Ibd91b0d18b233291978ac667f7bf768a8bdc3c9b
2015-02-20 09:58:57 +01:00
Sebastian Kügler
47206f89b1 Fix plasmapkg2 -t package for translated systems
We're comparing all package type arguments against translated and
untranslated strings. For the simple "package" type packages, this was
actually forgotten, so the english version would not work on non-English
systems.

CHANGELOG:Fix plasmapkg2 for translated systems

Reviewed-by: notmart
2015-02-19 15:55:51 +01:00
Marco Martin
1794d3c43f ungrab the current grabber before showing the menu
forcing the current item to ungrab the mouse before showinf a modal
menu ensures the scene mouse state will be coherent and an even won't
be lost

Change-Id: Icc0a89c437184ea0b87348358827f898ad342f72
2015-02-19 15:11:25 +01:00
Kai Uwe Broulik
e823ec8488 Ignore single actions on popups
Changelog: Sticky notes no longer appear when middle clicking a plasmoid popup

REVIEW: 122623
BUG: 344309
2015-02-18 14:36:21 +01:00
Kai Uwe Broulik
a717bac7a4 Make non-interactive tooltips outputOnly
This makes them significantly less annoying by having them close more reliably when
leaving the ToolTipArea and more importantly fixes the tooltip interrupting the
applet resize operation.

REVIEW: 122624
2015-02-18 14:32:36 +01:00
Kai Uwe Broulik
d0c5aa6fc9 Explain magical round ToolButton behavior on the documentation
Reviewed by David Edmundson
2015-02-17 23:21:54 +01:00
Kai Uwe Broulik
2a4812c9ba Drop size check for round ToolButton
It causes binding loops causing all sorts of weird behavior, like the buttons
in Klipper not always having a background.

Changelog: Fix rendering glitches with ToolButtons that don't have a label

REVIEW: 122609
BUG: 339303
BUG: 340588
2015-02-17 23:21:54 +01:00
Hrvoje Senjan
9f677ebb55 Use qstrcmp instead of comparing char* pointer with a string literal [-Waddress]
Reviewed by: mgraesslin
2015-02-17 16:11:20 +01:00
Marco Martin
462ad8a6ca 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
2015-02-17 13:43:33 +01:00
Lasse Liehu
edc767740e Load config i18n domain from applet root path
This now matches AppletQuickItem

BUG: 343932
Change-Id: Ia019ea45d61ec7ae6a8ae6ea83ea757804649b1a
Reviewed-by: David Edmundson
2015-02-16 19:10:27 +01:00
Kai Uwe Broulik
b3f607ec1a Distinguish datacontainer relays by both interval and alignment
This allows being able to change just the alignment, which can happen, since
the order of QML bindings being re-evaluated is non-deterministic

REVIEW: 122593
2015-02-16 18:47:10 +01:00
David Edmundson
ae2b9f7099 Guard around a bug in older versions of Qt
Change-Id: I7d6c11bd426c87b3d1abcedbfc18ccc7b912b1a2
2015-02-16 16:46:34 +01:00
Kai Uwe Broulik
5cfe737618 Optimize DataSource
- Use QQmlParserStatus to provide event compression for setupDate() method
- Re-introduce interval alignment
- Cache sources and emit change signal only when it has actually changed

Changelog: DataSource can now align polling to full minutes

REVIEW: 122470
2015-02-16 14:55:49 +01:00
l10n daemon script
073b83b440 SVN_SILENT made messages (.desktop file) 2015-02-16 10:17:17 +00:00
Kevin Funk
7e302a5236 Use Q_DECL_OVERRIDE where possible
REVIEW: 122542
2015-02-13 13:31:58 +01:00
Lukáš Tinkl
667eb808a9 correctly default to AutoText for tooltip contents
acked by notmart
2015-02-13 13:17:42 +01:00
Aleix Pol
3937b0453e Fix PlasmaCore.IconItem initialization when using QPixmap on it
I was getting the m_pixmapIcon cleared some times, instead of the
m_iconPixmap. This made it forget about my image.
m_iconPixmap should be renamed to something else.

Reviewed and done in collaboration with David Edmindson
2015-02-12 16:35:28 +01:00
Aleix Pol
fbe756bd39 improve packageurlinterceptor errors
if it's going to prevent something to load, at least explain a bit what's
going on.

Reviewed by David Edmundson
2015-02-12 16:06:46 +01:00
Aleix Pol
4909a2f471 Save 1 string construction
We already were constructing the string, no need to do it twice.
2015-02-12 16:05:46 +01:00
David Edmundson
ecf922ab85 Put all non tiled frame textures in the atlas
Change-Id: I2525998ab3c1c76870fe8e395051127a673979af
Changelog: Faster rendering of Plasma frames from QtQuick
2015-02-12 13:05:12 +01:00
David Edmundson
084be8e534 Port to kpackage::package
Change-Id: Id52b8d6bf76ab964c02cec9f0bba1dcdf3950d76
2015-02-12 13:05:12 +01:00
Marco Martin
9c855f05ab use the X-Plasma-RootPath property as default catalog
if X-Plasma-RootPath is set, use that instead of the plugin name as
default translation domain.
if an applet uses the package of another one, of course it has to use its
translation catalog as well

Change-Id: Ia23b261f449a560c3da19bc074e521139ae942c8
reviewed-by:Eike Hein <hein@kde.org>
2015-02-11 16:48:47 +01:00
David Edmundson
e0f6b76f4b Port from deprecated KConfigLoader API
Change-Id: I9fe88d2b0b16dab02e4e35af3d0e992cec0edb91
2015-02-11 14:52:41 +01:00
David Edmundson
685ee11822 Fix leak in ContainmentActions
Change-Id: I41c9b9c224b36b045034755b07a92f2bdfe9f40e
2015-02-11 14:49:23 +01:00
David Edmundson
5f9ecfb6e1 Fix warning when compiled without HAVE_XCB_COMPOSITE
Change-Id: I62dc7cc731cf6d05592ff8e4427740c76643178a
2015-02-11 14:28:41 +01:00
David Edmundson
2c535282d5 Re-order initialisation. Warnings--
Change-Id: Ie44a657364de72739f8d52822b9f50937ad777a3
2015-02-11 14:16:09 +01:00
David Edmundson
e0f0d3a948 Merge "Unify when tooltips are shown and kept alive." 2015-02-10 15:39:35 +01:00
David Edmundson
b71d33f2be 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
2015-02-10 15:25:38 +01:00
Vishesh Handa
b81663bd65 Add a X-Plasma-StandAloneApp option to applets
We can use this option to figure out which applets should be exposed as
independent applications.

REVIEW: 122502
2015-02-10 14:43:30 +01:00
Marco Martin
ef28deebfc use the proper colors
Change-Id: Ia507ba367ab47c1373f3c5b6fc7e1eef5e3eda3a
2015-02-06 11:21:53 +01:00
Marco Martin
b484b7faf0 document what happens to the page after pop()
Change-Id: I85b6cca525ced119329e1c28807efb6befcb4af3
2015-02-04 13:24:23 +01:00
l10n daemon script
03bae89ac5 SVN_SILENT made messages (.desktop file) 2015-02-04 08:58:49 +00:00
Marco Martin
e2a6cc9c8e delete the activityId entry as well when deleting
cleanup the activityId entry when the config group is deleted

Change-Id: I1eb7559c3111f058a730a620646bfd3e03af8b5b
2015-02-02 19:04:36 +01:00
Alex Merry
d4ea9ef66d Fix CamelCase header installation.
Installing the Plasma directory (which contains the CamelCase forwarding
headers) breaks on case-insensitive filesystems (eg: Windows) because it
is that directory also contains the lowercase build-time-only forwarding
headers (they are put in the plasma directory). These then overwrite the
real lowercase headers with ones that forward to the source directory.

However, the first argument to ecm_generate_headers is a variable name
containing exactly the CamelCase headers that should be installed,
avoiding this issue rather neatly.

Reviewed-by: Patrick von Reth
2015-01-31 13:01:49 +00:00
Marco Martin
0161b2fce3 don't load hidden toolboxes
Change-Id: I96badc3f3b0c1ff0986bc74570f3dd19073e83b3
2015-01-30 21:05:38 +01:00
Marco Martin
7ef09d883d reload the configuration when plasmarc changes
Change-Id: I77a5a1d49d6d260bc302203658cc9790858dbda7
CCBUG:343569
2015-01-30 16:44:12 +01:00
Marco Martin
2f0f7716e4 default to AutoText as textformat
yep, we don't have access to the proper enum :/

Change-Id: I47bc0662e4204e5f510704dbece1f64a2d1517ce
2015-01-30 14:56:16 +01:00
Marco Martin
ea8974fa93 try to reposition before showing
to minimize dialog repositions, try to put it at the proper position before showing.

besides making things a bit snappier,
showing at 0,0 for an instant has some interesting sideeffects:
MouseArea has a rather strange way to manage hoverevents:
at window show, it will check if the item is under the absolute mouse position,
if so, will emit an entered() signal. This causes the Kickoff menu to
automatically select the last tab on first show, because for an instant
(that never gets drawn on the screen) all the tabs will actually be under the mouse cursor

Change-Id: Ie9fc45f2a5076c3f49b42e8a7cee109b04db46b9
2015-01-30 14:40:25 +01:00
Xavier Vello
867098ea14 Removed hardcoded colors from viewitem.svgz
selected-bottom* and hover-bottom* were still hardcoded blue
2015-01-29 13:12:00 -05:00
Sebastian Kügler
b931c00031 Fix fallback from invalid L&F packages
The mechanism should have deleted the old key from the config if it was
invalid and then try again in order to get the default. As we were
deleting the wrong key (actually the value of the shell package key),
this was turning into a recursive loop. Deleting the correct key
obviously fixes this.

Thanks Bille for reporting!

Reviewed-by: Marco Martin

BUG:343510
2015-01-29 13:35:31 +01:00
Marco Martin
2d7dfd2147 fix tooltip positioning
don't ever try to reposition the tooltip on showEvent

Change-Id: Ie1c159c092baf480ab3cbb83e537b28e354973bf
2015-01-29 13:17:39 +01:00
Marco Martin
534733558c restore hint-apply-color-scheme support
make hint-apply-color-scheme work (kiconeffect based coloring),
and make sure the kcolorschemes are reloaded when app palette changes
and the theme follows system colors

BUG:343389
Change-Id: I0a7a7eb0f89ed0948e618f1d608521f235aa1959
2015-01-29 13:17:39 +01:00
Marco Martin
bdda85a40d restore hint-apply-color-scheme support
make hint-apply-color-scheme work (kiconeffect based coloring),
and make sure the kcolorschemes are reloaded when app palette changes
and the theme follows system colors

BUG:343389
Change-Id: I0a7a7eb0f89ed0948e618f1d608521f235aa1959
2015-01-28 17:54:26 +01:00
Marco Martin
993cdb54a6 collapse tooltips that only have text
if a tooltip has only text, expecially only title or only subtitle, make
it as small as possible

BUG:343390
Change-Id: I5eff081613c9c64c78b8c5741bac67409a112c98
2015-01-28 12:41:34 +01:00
Marco Martin
8044e15a71 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
2015-01-28 10:20:57 +01:00
Marco Martin
c17ed3a107 fix layout in reverse mode
Change-Id: Ib81611f149821fc79669ae191a03daeba840b802
2015-01-27 19:36:58 +01:00
l10n daemon script
4b1970cf83 SVN_SILENT made messages (.desktop file) 2015-01-27 11:23:41 +00:00
Lukáš Tinkl
f29ba02777 fix tooltip docu 2015-01-26 15:09:48 +01:00
Marco Martin
32c5eb77db same tint between panel and dilogs without blur
when no blur, both the dialogs and the panel are opaque to ease
text reading

Change-Id: I0199fe978ab22b57fd13d262c73b351cfdbfba3f
2015-01-26 15:05:10 +01:00
Marco Martin
4c1438c59a 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
2015-01-23 20:10:22 +01:00
Marco Martin
9898e1be4f emit immutabilityChanged in all cases it changes
when an applet or cont is deleted, when invisible has systemimmutable as
its immutability (then restored to mutable if restored)
notify correctly the change

BUG:342704
Change-Id: Iea37fd287d6b120e161f5ac7ad4a17a078fec9bb
2015-01-21 15:03:15 +01:00
Marco Martin
237cb24b2d undelete panels when applet gets undeleted
when a deleted applet of a deleted panel
gets undeleted, undetele before the panel itself
that's the safest and most "expected" outcome
BUG:343096

Change-Id: Iece7710028052b2118f590377fd39e3c78279b11
2015-01-21 13:57:45 +01:00
Marco Martin
7255728805 fix stylesheet
Change-Id: I2c0f6b98ea750a0abd474d1ddfdffac74d7b39ac
2015-01-20 14:41:50 +01:00
Kevin Funk
9dda1204c8 Run convert-to-cmake-automoc.pl over files 2015-01-20 00:00:31 +01:00
Hrvoje Senjan
1403295db8 Add missing QDataStream and QObject includes
Fixes build with Qt 5.5
2015-01-17 17:48:48 +01:00
Marco Martin
05cea81fdd make sure animation is disabled the first time
make sure the animation is disabled when the tooltip appears
for the first time.
since the correct implicitsizes can be calculated only when the
tooltip window is visible, we need to show the tooltip window
then calculate the final size and position, and last move it
*without animations*

Change-Id: I2d0f653e860104f17a62203565d5002a16d0dfae
reviewed-by: David Edmundson <kde@davidedmundson.co.uk>
BUG:341933
2015-01-16 18:01:17 +01:00
Marco Martin
99128b73eb 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
2015-01-16 12:20:58 +01:00
Weng Xuetian
f8faf5380a Change string from non-existing %2 to %1.
Change-Id: I52b69a7bd65118c5d0a8dc5bc1649ca0157769d4
CCMAIL:notmart@gmail.com
2015-01-15 13:44:02 +01:00
Marco Martin
5d62905a03 make sure pixelration is not 0
fix rendering

Change-Id: Idb5716ded802f4b6e68dabd82449053726977641
2015-01-14 17:06:02 +01:00
Marco Martin
d96a8505d9 a check more on centering
Change-Id: Ib22fcc6fe727c8b2b5ddc2473663c1e56b1dad09
CCBUG:342537
2015-01-13 15:59:17 +01:00
Marco Martin
af0dffd89b don't forward events if not visible anymore
BUG:342444
Change-Id: I58bfd951e4f55d07c8f3327881354a678a7f65ba
2015-01-13 13:18:00 +01:00
Marco Martin
c1814477fd trigger button switch on mouse wheel
BUG:342778
Change-Id: Idfa06319ac84762040eea07074042061a4bc313c
2015-01-13 12:49:35 +01:00
l10n daemon script
d255c63ce2 SVN_SILENT made messages (.desktop file) 2015-01-13 11:36:35 +00:00
Marco Martin
7d00d30f44 reset the internal size copy when the theme changes
Change-Id: I1800076e98bc543ffdea3f4c92d5a08f934f7573
2015-01-13 10:50:20 +01:00
Kai Uwe Broulik
7476decf29 Fix errorneously opening a broken context menu when middle clicking Plasma popup
BUG: 342702
2015-01-11 17:50:52 +01:00
Alex Merry
48e9c2f29e Update installation variables. 2015-01-10 17:47:31 +00:00
Kai Uwe Broulik
94ecb4ff43 Let month menu navigate in current year
Rather than jumping back to the current year unconditionally, just navigate
inside the current year.

BUG: 342327
REVIEW: 121774
2015-01-02 14:11:19 +01:00
Kai Uwe Broulik
6f58ddc05d Expose new OnScreenDisplay window type in Dialog
REVIEW: 121301
2015-01-02 12:18:21 +01:00
l10n daemon script
1afbc2c461 SVN_SILENT made messages (.desktop file) 2015-01-02 09:15:04 +00:00
l10n daemon script
6f7a3ae9ea SVN_SILENT made messages (.desktop file) 2014-12-30 10:48:32 +00:00
David Edmundson
0f5e9b1a5d Merge "Set visibility on mainItem to match Dialog" 2014-12-29 15:02:24 +01:00
Marco Martin
dd866b427e Merge "migrate to KPackage" 2014-12-29 14:20:43 +01:00
Marco Martin
a629fe4d8f 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
2014-12-29 13:56:52 +01:00
Kai Uwe Broulik
b4e1fd5f1c Keep the event filter around so get notified of font changes at runtime
Changelog: Fix labels not picking up changes to font settings at runtime

REVIEW: 121728
BUG: 334818
2014-12-28 23:43:47 +01:00
Kai Uwe Broulik
11485738af Connect Plasma::Theme::themeChanged to ColorScope::colorsChanged
Changelog: Fix text not properly updating its color when switching themes (especially dark<-->light)

REVIEW: 121726
2014-12-28 23:02:34 +01:00
Kai Uwe Broulik
cf6cd3297c Use rgba color with 0.5 alpha channel for placeholder text
Changelog: Fix placeholder text in textfields being too strong when using a light theme

REVIEW: 121724
2014-12-28 21:32:42 +01:00
David Edmundson
7d545e22f1 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
2014-12-28 20:37:04 +01:00
Kai Uwe Broulik
8a68da469c Rename keyboard_layout.svgz to keyboard.svgz
In order for Plasma to find the icon named "keyboard-layout" (used by the OSD)
the filename needs to match
2014-12-27 17:56:06 +01:00
l10n daemon script
10a94ba7c9 SVN_SILENT made messages (.desktop file) 2014-12-24 08:38:52 +00:00
David Edmundson
86e89dd309 Document WallpaperInterface
Change-Id: I25819a1d11fb63d3685a6fa0940e0c2f88e5cfd4
2014-12-21 21:03:51 +01:00
l10n daemon script
53d694072c SVN_SILENT made messages (.desktop file) 2014-12-19 09:15:56 +00:00
Kai Uwe Broulik
6d7ce28992 Merge "save some CPU cycle when busy indicator is not visible." 2014-12-16 22:18:39 +01:00
Kai Uwe Broulik
6531279771 Load IconItem immediately upon componentComplete()
This makes the IconItem load the icon immediately after component creation and not
wait 150ms there for no reason which prevents eg. flickering in the OSD when it shows up.

REVIEW: 121219
2014-12-15 20:21:06 +01:00
Weng Xuetian
267ddccbff save some CPU cycle when busy indicator is not visible.
Change-Id: Ia5c296cdbc6c0ccd2ca45444d4f3171723b50d23
2014-12-14 16:23:13 -08:00
l10n daemon script
f64207f408 SVN_SILENT made messages (.desktop file) 2014-12-14 08:54:42 +00:00
Weng Xuetian
a11ac49717 stop animation if the pixmap change is triggered by geometry change
Making transition between two different size doesn't make much sense,
since repainting is usually happens at that time and it could take some
time to finish. And the animation need to be stopped if m_animValue is set
manually.

Change-Id: I240c19f46d4d13eb0e54b4e7b3fa3b6c31cfc6d8
REVIEW: 121411
2014-12-11 14:49:43 -05:00
David Edmundson
2de3f489d3 Don't create a Plasma::Theme in units which is unused
Unit now takes all fonts from the default system font, which we monitor
for with an eventFilter on the application object.

Change-Id: Ib17c01e2811c0c672be18a930d625d84ecd154a4
2014-12-11 18:33:16 +01:00
David Edmundson
2204d21be6 Add FocusFrameStyle to qmldir
Change-Id: I67fadd9f3d13557541a4873f8bbb3740e0eee427
2014-12-11 17:34:37 +01:00
Marco Martin
43f1ff419d Merge "Different themes between desktop and dialogs" 2014-12-11 15:21:44 +01:00
David Edmundson
c546f314be 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
2014-12-11 15:06:54 +01:00
Marco Martin
340a4680bf 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
2014-12-11 12:46:02 +01:00
David Edmundson
2afeb22f42 Merge changes Ibb130779,I68521f90,Ica6ba027
* changes:
  Reparse settings when they change
  Use a shared config in tooltip
  Save SVGs only when a theme is unloaded, not on each theme proxy
2014-12-11 12:40:43 +01:00
David Edmundson
e9d760d93b Merge "Do not keep reparsing plasmarc configuration" 2014-12-11 12:40:37 +01:00
David Edmundson
d2707e795a Reparse settings when they change
Change-Id: Ibb13077943330417fa08d23ce1ea60f2aff5defc
2014-12-11 01:59:51 +01:00
David Edmundson
81a494b131 Use a shared config in tooltip
Change-Id: I68521f9066114a265c3f3444332e5e67016207f7
2014-12-11 01:57:10 +01:00
David Edmundson
f6aa18c884 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
2014-12-11 01:56:55 +01:00
David Edmundson
901cc3e159 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&,
QFlags<KConfig::OpenFlag>, QStandardPaths::StandardLocation)

      + 3.93% KDesktopFile::KDesktopFile(QString const&)

      + 3.61% Units::settingsFileChanged(QString const&)

Change-Id: Ia70b7001ba473c8063e6c999b8e4233ea5b206f5
2014-12-11 01:04:57 +01:00
David Edmundson
2c8dd8982d Merge "roundToIconSize(0) should return 0" 2014-12-10 19:46:19 +01:00
David Edmundson
aac89104bd 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
2014-12-10 19:19:57 +01:00
Kai Uwe Broulik
d5148f87c0 Fix capitalization
REVIEW: 121071
2014-12-09 23:24:01 +01:00
Kai Uwe Broulik
5e17e3fd1c Give undo notifications a title
The "Plasma" (default put in there by the notification applet because it has no title)
is not really descriptive.

REVIEW: 121071
2014-12-09 23:22:57 +01:00
Kai Uwe Broulik
23b590b90c Fix scaling in ProgressBar and Slider
REVIEW: 121417
2014-12-09 22:46:57 +01:00
Marco Martin
bf99d9c03c Merge "move the controls to an independent style" 2014-12-09 13:27:54 +01:00
l10n daemon script
d47e417e40 SVN_SILENT made messages (.desktop file) 2014-12-07 08:47:50 +00:00
l10n daemon script
96b26c8833 SVN_SILENT made messages (.desktop file) 2014-12-06 08:59:32 +00:00
David Faure
d348816c7d Fix compilation with Qt 5.2.0
(moc was a bit buggy it seems)
2014-12-03 09:49:53 +01:00
Martin Klapetek
187e53493e Merge "Fix the platformstatus kded module" 2014-12-02 20:34:03 +01:00
Martin Klapetek
7e5b00cff0 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
2014-12-02 19:53:42 +01:00
Weng Xuetian
3093d69fa6 fix typo height -> width
updateMinimumWidth and updateMaximumWidth wrongly set the updated
value to height instead of width.

Change-Id: Ie24ef194d9bf02e53b92aa6802b0fbded68b896d
2014-12-02 10:01:20 -05:00
Marco Martin
7d52397115 move the controls to an independent style
* Adapt the existing controls to be generic enough to work on stock QtQuickControls
* Add missing styles needed for the set to be complete (and applications actually work)

The full list of controls styles is now:
ApplicationWindowStyle
BusyIndicatorStyle
ButtonStyle
CalendarStyle
CheckBoxStyle
ComboBoxStyle
MenuBarStyle
MenuStyle
ProgressBarStyle
RadioButtonStyle
ScrollViewStyle
SliderStyle
SpinBoxStyle
StatusBarStyle
SwitchStyle
TabViewStyle
TableViewStyle
TextAreaStyle
TextFieldStyle
ToolBarStyle
ToolButtonStyle
GroupBoxStyle

Change-Id: Ic5d33bc20c7456d1478c07aca33bda63378d5c05
2014-12-02 15:59:42 +01:00
Marco Martin
0ca29bc0f2 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
2014-12-02 15:05:48 +01:00
Marco Martin
15547cd885 initialize size of wallpaper as soon as possible
in order to minimize resizes, redraws and eventual reloading of images,
try to initialize the wallpaper with the correct size already.

reviewed by: Kai Uwe Broulik <kde@privat.broulik.de>

Change-Id: I8489744cb845213195f1916bfb9328c53ec0798d
2014-12-02 11:48:33 +01:00
Sebastian Kügler
b4519bdffb Fix DialogStatus namespace in SelectionDialog
DialogStatus, as in other Dialog variants, can only be accessed through
the PlasmaComponents namespace.

Fixes 3 ReferenceErrors in SelectionDialog and makes it actually work.
2014-12-02 02:05:58 +01:00
l10n daemon script
cf3898f7a9 SVN_SILENT made messages (.desktop file) 2014-12-01 08:51:21 +00:00
David Edmundson
c1b5adf25e Fix documentation linking
Change-Id: I391d1c4c7d0aae63ebf99e19197f20484a78f315
2014-11-27 12:53:14 +01:00
Marco Martin
cb8175f1f6 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
2014-11-25 18:27:20 +01:00
l10n daemon script
8415c20760 SVN_SILENT made messages (.desktop file) 2014-11-23 08:53:19 +00:00
Aleix Pol
fe0d60cfca Make WallpaperInterface use the suggested async object loading API
Just asks QmlObject to create an object and waits for QmlObject::finished
signal to acquire it.

REVIEW: 121148
2014-11-19 11:59:45 +01:00
l10n daemon script
7c65143e12 SVN_SILENT made messages (.desktop file) 2014-11-19 08:40:19 +00:00
l10n daemon script
0e13fb9833 SVN_SILENT made messages (.desktop file) 2014-11-14 09:03:12 +00:00
David Edmundson
fdbb37472b remove unused forward declare
Change-Id: Iba058903214eaf01e9ee6020af6bea4a3f755db1
2014-11-13 18:03:45 +01:00
Marco Martin
fa0a37c705 never hide desktops
Change-Id: I804bc9de57b42c1e299cc20efb636bfab3457464
2014-11-13 11:44:25 +01:00
Eike Hein
7b747fb341 Fix margins in tasks.svgz.
It's no longer necessary to add extra margin at the outside edge
with the panel theming fix.

Also clean up element positions to make the file easier to work
with.
2014-11-12 17:11:57 +01:00
l10n daemon script
43049221ab SVN_SILENT made messages (.desktop file) 2014-11-12 08:52:06 +00:00
Kai Uwe Broulik
f54ff55bc5 Migrate ProgressBar to QtQuick.Controls
Test is enhanced to also cover vertical bars. The ProgressBar does not yet use
the vertical assets since Qt just conveniently rotates the bar for us and
apparently just overriding the entire "panel" component is evil

REVIEW: 121085
2014-11-10 22:09:55 +01:00
Burkhard Lück
a609b5a237 use correct ki18n_wrap_ui in ki18n based plasma-frameworks
REVIEW:121065
2014-11-10 10:03:01 +01:00
l10n daemon script
4390aa5536 SVN_SILENT made messages (.desktop file) 2014-11-10 08:26:37 +00:00
l10n daemon script
37a97d41c0 SVN_SILENT made messages (.desktop file) 2014-11-09 08:55:12 +00:00
Kai Uwe Broulik
65a6861476 Migrate BusyIndicator to QtQuick.Controls
Comes with a test for the seamless pause/resume

REVIEW: 121070
2014-11-09 01:16:30 +01:00
l10n daemon script
fa21d7b1c5 SVN_SILENT made messages (.desktop file) 2014-11-05 08:37:57 +00:00
Marco Martin
51a821512a typos
Change-Id: I6fb45ab89a4313b838e6926b7761f54e1da8c17a
2014-11-04 15:22:30 +01:00
Marco Martin
8fe43b3c20 Merge "show/hide view when applet asked to be destroyed" 2014-11-04 15:21:41 +01:00
Marco Martin
e6a0d09607 actually use isAncestor
Change-Id: I12180137a256c33d3e603238537c81a7059ba65f
2014-11-04 15:17:37 +01:00
Marco Martin
36cd79b590 Merge "workaround on textarea input breaking" 2014-11-04 15:14:11 +01:00
Marco Martin
b54e328304 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
2014-11-04 15:04:17 +01:00
Aleix Pol
e967049bee Fix Breeze tasks east border on hover, for the bottom left element
The name was wrong, so it wasn't being found, hten something black was
being painted instead, for some reason.

Reviewed by David Edmundson
2014-11-04 11:55:07 +01:00
l10n daemon script
1a4b23f845 SVN_SILENT made messages (.desktop file) 2014-11-04 10:53:50 +00:00
Marco Martin
bb0bd0a4c5 fix build
Change-Id: Ibb1d5a0a5432f8638d33251a8be6b3762f236265
2014-11-03 11:54:26 +01:00
Marco Martin
cb3c53a616 don't forward events if there is no mainItem
reviewed by: "Bhushan Shah" <bhush94@gmail.com>

Change-Id: I73227ee1a8f55bf167e4f41758b95a5558ebbeb3
2014-11-03 11:50:35 +01:00
Kai Uwe Broulik
ce1ba8a687 Add thumbnailAvailable property to PlasmaCore.WindowThumbnail
This property tells us whether a thumbnail is actually being rendered or it has
fallen back to the window icon

REVIEW: 120946
BUG: 336524
2014-11-03 10:11:32 +01:00
l10n daemon script
481e796e67 SVN_SILENT made messages (.desktop file) 2014-11-02 21:49:13 +00:00
l10n daemon script
77b0b83a85 SVN_SILENT made messages (.desktop file) 2014-11-02 08:56:23 +00:00
Marco Martin
280902bbb5 show/hide view when applet asked to be destroyed
Change-Id: Id53300532c2322467188dbb44259f25dc6183a1e
2014-10-31 21:18:52 +01:00
Marco Martin
72b9a37fe9 fix test
Change-Id: Ib7698dfe3880e23355fd1c0acfcc3de2cc7c4d2d
2014-10-31 18:11:16 +01:00
Marco Martin
78ab028d52 Merge branch 'mart/basicDeleteUndo'
REVIEW:120885
2014-10-31 17:48:41 +01:00
Marco Martin
ad06e7c8a2 minor message fixes
Change-Id: I050b2e70ad1d9a57eb99c0f8fd34a80b76b66736
2014-10-31 17:29:33 +01:00
Kai Uwe Broulik
b5f627352e Forward wheel events inside dialog
This makes it also forward wheel events in the same fashion as it does with clicks.

REVIEW: 120908
BUG: 340412
2014-10-30 22:01:15 +01:00
Marco Martin
cef6b23e74 proper icon in notifications
Change-Id: I10832bf91a7a5a605ae27d6a417931f9462c1b78
2014-10-30 18:12:48 +01:00
Marco Martin
73500516ff track changes in destroyed()
Change-Id: Ibc4dcc64028e1127dd55e7c7d4d73000d2964dab
2014-10-30 18:06:50 +01:00
Marco Martin
f870ea1a11 drop QwaitingDeletionStatus
emit appletRemoved and appletAdded instead, making the graphics representation
(almost) just work

Change-Id: I481dbbb4dbf7d01a121b92511410dfee79b16469
2014-10-30 18:06:50 +01:00
Marco Martin
e38e2eb0a7 custom panel for breeze-dark
having a light border, breeze-dark needs the panel margins to be
rebalanced by one pixel in order to appear really centered.
This is specific for the dark version, because the light version has the border
almost invisible, therefore a different visual balance

Change-Id: Ic7dbf250d2e1b9b269b4990c27a42a06605d5066
2014-10-30 16:07:39 +01:00
Marco Martin
781d30cfef plasmoid->widget
Change-Id: I531297523a41886229cec163c5f81004fe15e7c0
2014-10-29 11:12:23 +01:00
Marco Martin
4487261d1a use NULLPTR
Change-Id: I5fcf9a16e962dda74f411b71f5276320e8196ac0
2014-10-29 11:09:59 +01:00
Marco Martin
e2f06e9ece restore to the actual previous status
Change-Id: I43b7f5812daffe2b846fbc1f7b57d6db51961358
2014-10-29 11:06:20 +01:00
Marco Martin
30d3ab72d1 pretty header
Change-Id: I08bf321d79e6c6c8bc50e5181472ec2c719e1a3f
2014-10-29 11:03:20 +01:00
Marco Martin
9aea733bb5 deleted->removed
Change-Id: I45102fa7585744943a6b107e68208141712866bc
2014-10-29 10:52:24 +01:00
Marco Martin
5749b01fe3 no contextmenu for invisible applets
Change-Id: Ia94a467d860243f42bda756d9f94f4ad685446c7
2014-10-28 19:08:13 +01:00
Marco Martin
d44d194db6 only a minute before real deletion
Change-Id: Ibc90aae44e7013453c8a96a3f22522806cb12ef2
2014-10-28 19:08:03 +01:00
Marco Martin
099a22d9da irreversibly delete on notification close
Change-Id: I3216286a707a1904b6917bfd19c007f99ffa4475
2014-10-28 19:07:53 +01:00
Marco Martin
eee9a90aab remove dead code
Change-Id: Id8daeafa77dabea7253ac5c489ad761ba0c6fdf6
2014-10-28 19:07:43 +01:00
Marco Martin
d901062d9d Plasma instead of PlasmaShell
Change-Id: I19ac45d8ee9d82a7bb7cc466a89db746b5f38784
2014-10-28 19:07:33 +01:00
Marco Martin
2475a2560e really delete awaiting applets on quit
Change-Id: I3b9107f988bde75262f27c1fd7e851b868140ccf
2014-10-28 19:07:09 +01:00
Marco Martin
af6149c9d0 use notifications actions to undo
Change-Id: I4b9abf6047b94b4fc13aad672d1bc8e97203f502
2014-10-28 19:06:55 +01:00
Marco Martin
5252020318 very basic prototype for delete undo
the idea is to just hide applets at first and then offer a really delete and undo buttons

Change-Id: I4d869cb58f5c0fb0163d5d4d6b265af860d8727e
2014-10-28 19:06:42 +01:00
Marco Martin
81b25be5c5 install plasma-wallpaper.desktop in servicetypes
it was installed in the wrong place

Change-Id: Ia9e59091e4447847229c59256938084e2ce9b839
2014-10-28 12:51:11 +01:00
l10n daemon script
150f24b30c SVN_SILENT made messages (.desktop file) 2014-10-27 08:35:46 +00:00
Marco Martin
7a5342e970 fix paint and size hints
Change-Id: Icb42635f4d4d2f15fb6cd51805f3e0e0906c34a2
2014-10-24 18:12:36 +02:00
Marco Martin
2b07624173 make sure there is any screen geometry returned
if the heuristic fails (because the topleft of the dialog is offscreen)
use at least our screen()

the screen should be correctly updated now on Qt 5.3+ so should be
more reliable anyways (could be tried to remove the whole Q_FOREACH
at this point)

Change-Id: I29311f4767bde3e02ae7bcb54b400b72a8f190eb
2014-10-24 13:14:27 +02:00
Marco Martin
8d2aa05530 don't mess with cursor pos if mouse outside view
Change-Id: I9dde440b4644c5bddcbe20f6f7458b588d076fdc
2014-10-24 11:51:15 +02:00
l10n daemon script
4a4e3dc526 SVN_SILENT made messages (.desktop file) 2014-10-23 08:55:08 +00:00
Marco Martin
f278416753 Revert "very basic prototype for delete undo"
This reverts commit f8ba97ae3e.
2014-10-22 17:01:15 +02:00
Marco Martin
f8ba97ae3e very basic prototype for delete undo
the idea is to just hide applets at first and then offer a really delete and undo buttons

Change-Id: I4d869cb58f5c0fb0163d5d4d6b265af860d8727e
2014-10-22 16:59:59 +02:00
Marco Martin
cfd29dec88 Merge "always have margins in dialogs" 2014-10-22 14:15:49 +02:00
Hrvoje Senjan
99a6647437 Fix build with Qt 5.4
The include is no longer indirectly pulled in with latest qtbase changes

Reviewed-by: David Edmundson
2014-10-21 18:06:04 +02:00
Marco Martin
4062a53c9a always have margins in dialogs
always show full margins in dialogs
this is to make things look less cramped with screen and panel edges
since mouse still has to work on screen edges (fitts law)
in that case it forwards mouse events inside the actual content item
so things like menus at the edge of the screen keep working

Change-Id: I4b8a5a5bac92eadbaf7ad5b9b7dc0d5f364888c3
2014-10-21 16:55:38 +02:00
Ivan Čukić
a9262c6fa4 Removed the dead code that used to calculate the direction of a tooltip
The value of the 'dir' variable is quite difficult to calculate,
and it is not used anywhere.

Change-Id: I806a559dde51bdf3b243271fe68ee138faa872f6
2014-10-17 09:31:22 +02:00
Ivan Čukić
e346b50cd8 Removed the call of clearDataForMimeJob on a null pointer
tjob pointer is checked for being null (result of the dynamic_cast)
and then passed to clearDataForMimeJob. The issue can be solved by
replacing tjob with job in the problematic line, but since the
mimeTypeRetrieved method called later already processes jobs that
are not KIO::TransferJob, there is no purpose in doing it here as well.

Change-Id: I863ac41ad66ac3cbceca82adeab85498315a5e42
2014-10-17 09:15:06 +02:00
Marco Martin
adf92d4573 fix css colors
BUG:337317
Change-Id: I5968d6766adbc4678fa94c3d52f6a9674733cfb6
2014-10-16 11:09:59 +02:00
Marco Martin
7f9693746f crash--
BUG:339875
Change-Id: Ic8ab63853fa9b58dd83e1aa868e9599b0e37f09e
2014-10-16 10:45:30 +02:00
Marco Martin
1cb4501a11 remove the old icon when an empty source is set
BUG:339793

reviewer by:Bhushan Shah <bhush94@gmail.com>

Change-Id: I02910e7ec9397c5bb6ca4e5c0ed3793d19aa14e5
2014-10-15 16:11:19 +02:00
Marco Martin
c32d93731d add icon for spacer
BUG:337995
Change-Id: I1c753298f5d2deb43296eaec94d765f1575f47ce
2014-10-15 15:40:27 +02:00
Aleix Pol
7a4998046e Adopt QuickAddons in plasma-framework
Removes the code that was moved to QuickAddons

REVIEW: 120596
2014-10-15 13:22:27 +02:00
l10n daemon script
b65201b735 SVN_SILENT made messages (.desktop file) 2014-10-15 08:33:00 +00:00
Aleix Pol
dc59a397f1 Also check the style for cmake modules 2014-10-14 15:45:15 +02:00
Aleix Pol
8df7801d3b Don't crash if the plasmoid wasn't properly loaded
If d->applet->package().isValid(), then d->qmlObject->mainComponent()
is null.
This makes Plasma crash when a faulty plasmoid is loaded.

REVIEW: 120581
2014-10-14 15:45:14 +02:00
Marco Martin
71444986ee respect stylesheet
Change-Id: Ib865c2097d17f5892b250ad2f013c28eadef3e2a
2014-10-14 15:44:41 +02:00
Eike Hein
d3a9b5bb1f Add margins.horizontal/vertical helpers that return added up margins along one axis.
Adding up margins along the horizontal or vertical axis is often
done to calculate sizing or spacing. This tends to result in scary-
long and bug-prone expression being bound to props, since nobody
seems to like to blowing them up into a code block with a separate
variable assignment. This aims to increase the readability of com-
plex expressions by summing axis margins into a single operand.

Change-Id: I39a37dde80b9314da0c69f3b33d26d26a9ff54d1
2014-10-13 15:14:56 +02:00
Marco Martin
f5fb0dbc24 consider the case of fallback as well
consider the case of fallback as well when we are searching for a texture

reviewed by: Eike Hein <hein@kde.org>

Change-Id: I1faa119f9b3486d21ebd07a294b5063a896d7af1
2014-10-13 14:19:36 +02:00
Marco Martin
aa7b3ff773 typo
Change-Id: Ia8dd4676cb45166bfc5f5e55b3c30a15f895d39f
2014-10-11 21:04:10 +02:00
Marco Martin
66a1a497ef add a property to tell if fallback happened
add a property in Svg (and framesvgitem) to tell if the current theme
has this image, or if some fallback did happen
useful for items that are better not displayed than showing the potentially different
default theme

Change-Id: Ib914c0e196c5c941d35d9a600cc7d38818fc754f
2014-10-10 17:36:44 +02:00
Marco Martin
68eadae6c8 never reparent old mainItems
This is not completely correct.
however, when reparenting the mainItem containming window thumbnails
it causes serious graphical artifacts, like the "lost fonts" on
nvidia and fglrx

Change-Id: Id194f5e7863e4ed71792835a9a3cf9c6e4fa70ee
2014-10-08 14:32:52 +02:00
Marco Martin
9796f043b7 Revert "set flags again on QEvent::Expose"
This reverts commit 65ab514a2c.
2014-10-08 14:06:10 +02:00
Marco Martin
65ab514a2c set flags again on QEvent::Expose
is the only event we get we know the window will already be visible
to set the flags to have actually any effect

BUG:335572
Change-Id: Id1b69a894295af59a681946df9d14ff7ed316526
2014-10-08 13:57:37 +02:00
Martin Klapetek
cbe50c408b Add "..." after "<Applet Name> Settings" to comply with HIG
Reviewed-by: Marco Martin

BUG: 339756
2014-10-07 17:45:10 +02:00
Marco Martin
ad03d0bb14 try to restore the original parent if possible
setting a null parent to mainitems seems to screw up with their QQmlContext

the problem can be seen with the taskbar, that after fiddling with tooltips a lot, (like switching between pager and a task) it loses thumbnails and it starts to output on stderr
about ids that aren't accessible anymore.

Change-Id: Ibbb6d270fd2e20b5b6745e228f4010b74d3266c9
2014-10-06 12:33:16 +02:00
Kai Uwe Broulik
7cf9fb93d8 Hide ProgressBar inner item when value is 0
This fixes the situation where an empty progress bar still shows a little spot on the left.

REVIEW: 120489
2014-10-04 22:41:40 +02:00
Marco Martin
046a419493 don't tile
buttons have a gradient

Change-Id: Icf279d0a2e32dd4faf587057f584a7c3461a8586
2014-10-03 19:24:21 +02:00
Marco Martin
2a582e6b4a make sure the layout timer isn't running
when maintintem changes

Change-Id: I59d1930caf2686e1fa9a1fb0510e15630898d99f
2014-10-03 19:10:31 +02:00
Marco Martin
1015d51997 adjust margins
Change-Id: If6147f112bdb441f0c678bfa975f687035ec2111
2014-10-03 18:59:23 +02:00
Marco Martin
717153ebb4 lightly less border contrast on dark themes
Change-Id: Ic60ab2ddf6bdb3adace2fe6127c0723d675941bc
2014-10-03 18:52:12 +02:00
Marco Martin
ab69d1029c guard mainItem of resize
crash--

Change-Id: Ifa08f78573d4eed690c23e93f87d1cf0b3c033ef
2014-10-03 13:51:57 +02:00
Marco Martin
419b344b6d make sure the theme is loaded on item sync
Change-Id: Iea920b208c9e84bc9fb3c6c3c39e4362782f0b5f
2014-10-02 16:17:35 +02:00
Andrew Lake
98af054c28 add missing tooltip icons used by network manager
BUG:339547
2014-10-01 22:35:24 -07:00
Andrew Lake
0cf3c74a7f fix hardcoded colors 2014-10-01 15:06:21 -07:00
Andrew Lake
69ff7e5281 better 32x32 klipper icon, updated reboot icon to match main icon theme. 2014-10-01 13:58:28 -07:00
Marco Martin
018a7a3c6d smaller corner shadows
lets having a smaller windows without visible glitches

Change-Id: I91661e1f427344d195cc4b98b7588a48a20b36f4
2014-10-01 19:07:43 +02:00
Sebastian Kügler
cccfdf5a9e Proper color for placeholder text in TextFieldStyle
Fixes unreadable placeholder text in TextField with dark themes.

Reviewed-by:Kai Uwe Broulik
2014-10-01 18:04:04 +02:00
Marco Martin
43e3359c68 fix mask for dialogs and tooltips
Change-Id: I3b41f84395fa3e554416193c60167c6df21609c5
2014-10-01 15:05:42 +02:00
Marco Martin
32a0be3d1c remove extra margins
Change-Id: I1212d69583a06871620ccf209ab8fbf766b6033e
2014-10-01 14:20:01 +02:00
David Edmundson
764cd182cc Merge "Floor devicePixelRatio in ProgressBar before use" 2014-10-01 11:45:09 +02:00
Marco Martin
2fcc325abf Merge "Warning --" 2014-10-01 10:04:17 +02:00
Andrew Lake
e5bc62330f Add battery-charging, battery-discharging, battery-100, battery-missing for tooltip icons.
- Note: The code changes are needed to use battery-discharging icon
2014-09-30 20:29:56 -07:00
David Edmundson
4d8f9c55c0 Floor devicePixelRatio in ProgressBar before use
This matches what happens in the C++ SVG code

Change-Id: Ide914751d3ba18d7e4d62c4872651998bc226900
2014-10-01 03:16:07 +02:00
David Edmundson
4233f7f38e Warning --
Change-Id: I7649fc9f9209816be909217f1c71e7bbe60ab10f
2014-10-01 03:04:52 +02:00
Marco Martin
ff9703aabf consistent border size
make the dialogs borders the same for composite and non composite mode
more consistent behavior -and- fixes a test on openbox

Change-Id: Idd687a1f3b44f89d35886e1f9a86c2543741cbdb
2014-09-30 17:48:53 +02:00
Marco Martin
792c39a9bb Merge "queue change of minimum/maximum size" 2014-09-30 17:02:46 +02:00
Marco Martin
afe0524fa7 queue change of minimum/maximum size
the layout size hints can change all together, in any order possible.
the only way to have a deterministic behavior is to compress them
and do the sync of the size all at once.
also being sure to do a single adjustGeometry (one X call) instead of
separate setWidth/setHeight

a test for the issue is dialog_resizeWithParent.qml

BUG:339478
Change-Id: Ia7c3c55e40ff89971beb734dcd205df05bfba687
2014-09-30 16:34:21 +02:00
l10n daemon script
f0ad60f7cf SVN_SILENT made messages (.desktop file) 2014-09-30 10:54:42 +00:00
Andrew Lake
8a3742b78a fix button shadow. Buttons on lock, logout screen should look better when focused. 2014-09-29 22:06:09 -07:00
Andrew Lake
07289d9bd4 add more icon sizes for battery, klipper and network tooltip icons.
- tooltip icon use appears to be inconsistent but at least the icons are now available.
2014-09-29 21:18:14 -07:00
Andrew Lake
b798be64fa use 10% increments for battery icons and
update matadata.desktop versions using suggested version numbering
2014-09-29 14:39:17 -07:00
Andrew Lake
86b62039cb add missing Fill0 battery icon 2014-09-29 10:41:51 -07:00
David Edmundson
55368fac23 Update breeze-dark version to match breeze
Otherwise caches don't get cleaned when the SVGs change

Change-Id: I112a1f7305b1f1113ec531a8eaf081b76f0a22af
2014-09-29 15:24:34 +02:00
Andrew Lake
c6ebb64379 update theme version after icon updates 2014-09-29 00:34:13 -07:00
Andrew Lake
cc8b47553d update theme icons based on feedback:
- Consistent stroke width
- 22x22 replaces 24x24 sizes
- align most icons to pixel grid
- changed some icon designs based of feedback of plasma dev team
2014-09-29 00:21:55 -07:00
Volker Krause
ca77cad251 Make constants const, saves a few symbols in the .data section. 2014-09-28 12:40:40 +02:00
David Edmundson
56e1c9c48a warnings--
Change-Id: If41d2ebcec822002edb5282dd401b84fc2d40a10
2014-09-26 17:05:30 +02:00
David Edmundson
0d209f9d2a Make KWindowSystem a public dependency of plasmaquick
Dialog.h uses netwm_def.h in the header so it should be included by apps
that use plasmaquick implicitly

Change-Id: I55507f552025468dde32e4830a78e34dc35c03af
2014-09-26 16:47:46 +02:00
David Edmundson
d9bf760c14 warnings--
Change-Id: Ide6d4301162f617ae0846df8ea2ef938982f9a7f
2014-09-26 16:34:09 +02:00
David Edmundson
62d240b7d6 Only update real visibility when component has finished completion
We only want to toggle our visibility until after all window flags have
been set, as some flags can only be set before the window is shown.

This patch caches and proxies the visibility flag and only update the
real visibility when the component is complete.

Change-Id: I4ce7744dc48afecf35db6679ca0991b7042e45a2
2014-09-26 16:17:33 +02:00
Marco Martin
87e3240f72 don't make the progressbar smaller than its borders
BUG:338225
Change-Id: Ia5926206b9185c82bcdf96956bc7f586c3b2d50e
2014-09-25 18:31:19 +02:00
Marco Martin
5b50373b37 if rootObject exists, component is here and ready
Change-Id: I37deb527a04dde9ce458c5aea8e178b3d08b1b46
2014-09-25 18:02:59 +02:00
Marco Martin
a71697e68d the qquickitem con be resized before qml is created
AppletQuickItemPrivate::compactRepresentationCheck() must not be executed before
the qml parse is over and rootObject is here: the creation of the full or compact representation
would go very wrong in that case

Change-Id: Ib72f7d25f570a1ae34ada3330080350384d5c1e8
CCBUG:339329
2014-09-25 17:57:14 +02:00
Marco Martin
8aab4ac9c7 share icon rounding code between Units/IconItem
it should ensure both share the same behavior

Change-Id: I2de37f5fb43bdcdd482ede9252c68fc207efbe39
2014-09-25 14:48:45 +02:00
Marco Martin
18b57ffc29 fix tooltips
use adjustSize in updateMinimumWidth et al.
changing tooltip content updates sizeHints
using setGeometry is immediate, and will kill the animations.
for dialogs other than tooltips there is no change since adjustGeometry
is just setGeometry

Change-Id: I3e6310f12f76e400f2663b8409a2bbc7e7398f39
2014-09-24 14:07:30 +02:00
Marco Martin
e3fd010166 don't update the minimum size when not visible
since when is not visible the dialog doesn't update its size
from the mainItem size, the minimum size should not be
updated as well, or the initial mainitem size will get lost
and the dialog will be initialized to a wrong size

Patch by: Vishesh Handa <vhanda@kde.org>

Change-Id: I272727fb4732474b102de64c9bfdddb7fc3906c8
2014-09-23 17:05:09 +02:00
Marco Martin
d28871cb65 Merge "fix availableScreenGeometryForPosition()" 2014-09-23 12:50:55 +02:00
David Edmundson
8a70067e8c Don't duplicate background resizing to contents
The code in Button is
panel.implicitWidth: max(label+borders, backgroundImplicitSize)

by setting the background implicitSize to be max(size, labels+borders)
we just duplicate the functionality.

This worked, but icon only buttons became smaller because we weren't
setting the implicitHeight of the label properly.

(two wrongs were making a right)

We need to move the RowLayout inside an Item as we are modiyfing the
preferredHeight of RowLayout, but this doesn't sync back to updating the
implicitHeight which Button.qml uses.

This fixes all binding loops and the rather broken icon only flat
button.

Change-Id: Id2f9c2ab37b2280ee69dc1473f388fe686e3327e
2014-09-23 10:22:35 +02:00
David Edmundson
b2a5ebc926 Update hover effect to match QtQuickControls port
Change-Id: Ib3ad938f24d2a7c9e5d8c6cdd5d6717b3574351a
2014-09-22 19:01:31 +02:00
l10n daemon script
88ccf7be3d SVN_SILENT made messages (.desktop file) 2014-09-22 08:34:39 +00:00
Marco Martin
b98fdd7753 introduce roundToIconSize(int size)
return a size rounded tothe nearest inferior standard icon size.
sizes larger than iconSizes.huge, it will be returned unmodified
Reviewed by: Kai Uwe Broulik <kde@privat.broulik.de>

Change-Id: I85c575ea1cc7965ae9bede9e5a8b7b4cb342580e
2014-09-19 16:38:22 +02:00
Marco Martin
cd8c134578 increase version number
systray icons have changed, increase the version number
(correct and will force a cahce drop)

Change-Id: I46bd169e1e221daf16d7c45ab12370437b74688d
2014-09-19 14:38:31 +02:00
l10n daemon script
f12eb638f0 SVN_SILENT made messages (.desktop file) 2014-09-19 09:02:03 +00:00