Commit Graph

13090 Commits

Author SHA1 Message Date
David Edmundson
be05a8394a Don't remove nodes from a parent whilst we're cycling through them 2014-07-16 22:22:43 +02:00
David Edmundson
6c0dadc1c2 tidy variable + method names + fix crash 2014-07-16 20:40:41 +02:00
David Edmundson
e037203748 Add tiling support 2014-07-16 20:40:41 +02:00
Aleix Pol
41c4ba6787 Make it possible to run the widgetsgallery from qmlscene
Adds a new entry point to the widgets gallery so we can test it
from qmlscene.
It's a valid use case for the components and the best tool we
have for testing that we didn't break components.

REVIEW: 119322
2014-07-16 17:41:34 +02:00
Aleix Pol
061723f236 Add a couple of manual tests 2014-07-16 17:02:01 +02:00
Aleix Pol
a4e3569bbd Introduce the FrameSvgItem fastPath alternative, opt out of it on overlays
Fallback to the old code if there's something not (yet?) handled by the
new implementation. This way we get to optimize for the the common use-case
without breaking former, complex, code-paths.

Reviewed by David Edmundson
2014-07-16 17:01:05 +02:00
Aleix Pol
cbe13ac765 Do a full repaint when frameSvg says a repaintNeeded 2014-07-16 13:51:53 +02:00
Aleix Pol
a30afb9c34 Ensure we don't overlap the center with the right and bottom borders 2014-07-16 13:51:25 +02:00
Aleix Pol
fc4e09df46 Add warning 2014-07-15 19:57:43 +02:00
Aleix Pol
0a94e1b1b8 Take composeOverBorder into accoun 2014-07-15 19:56:04 +02:00
Aleix Pol
cf0f8d0c91 Make sure all prefixes are being used 2014-07-15 19:54:45 +02:00
Aleix Pol
89536abd9c Take into account that the requested prefix is not always the actually used prefix 2014-07-15 17:26:25 +02:00
Aleix Pol
4bde2d48dd Iterate over svgitem
Don't upload textures every time we resize, makes the resize much smoother.
Make it possible to show and hide borders
2014-07-15 16:28:41 +02:00
Aleix Pol
c4d9bcb362 don't let the contentRect overlap the borders 2014-07-15 16:27:34 +02:00
Aleix Pol
83895d8e26 Use proper sizes and positions 2014-07-14 20:02:47 +02:00
Aleix Pol
f9d1bb3452 Merge branch 'master' into davidedmundson/framesvg_native 2014-07-14 18:52:51 +02:00
David Edmundson
dcbcb8a490 Construct full frame image using nodes inside FrameSVGItem 2014-07-14 18:44:33 +02:00
Aleix Pol
a8b37129d0 Refactor a contentGeometry method out of generateFrameBackground
Given the FrameData and the total size, we get to know where is the
contents going to be and gives us the information to extrapolate where to
put all the borders and corners.

Reviewed by David Edmundson
2014-07-14 18:13:40 +02:00
David Edmundson
9fc470089b If SvgItem size is 0, remove any nodes in the scenegraph 2014-07-14 17:23:33 +02:00
David Edmundson
96941f6c55 Use Atlas textures 2014-07-14 17:23:33 +02:00
Aleix Pol
d574f51108 Move the central space painting into a separate function
Reviewed by David Edmundson
2014-07-14 17:00:39 +02:00
Aleix Pol
33aa8e406d cleanups
Move variable declarations closer to its uses
Prefer using QSize than width and height separately, so we can pass it
around directly and use isEmpty
Remove duplicated code in the central piece drawing
2014-07-14 16:49:12 +02:00
Aleix Pol
ae56796cb9 Move corner painting into a paintCorner function 2014-07-14 16:47:56 +02:00
Aleix Pol
f62b357b62 Prefer passing a size rather than a width and height 2014-07-14 16:37:00 +02:00
Aleix Pol
df1d44407a cleanup
Reduce type casts from QSizeF to QSize, we're always using it as a QSize,
so just make the cast once.
Remove redundant constructions like checking whether it's null and returning
null or unneeded arithmetics
2014-07-14 16:32:10 +02:00
Aleix Pol
5b1fc96329 Small internal code refactoring
Create a paintBorder function that can generically paint framesvg borders.
This helps us reduce duplicated code as well as improving the readability
of the code.

Reviewed by David Edmundson
2014-07-14 14:16:16 +02:00
Aleix Pol
dac1d8f265 Figure out why my plasma wasn't notifying the startup
Make sure AppletPrivate::uiReady is set in applet_p.cpp when we report that
the ui is ready.
Make sure that if we loop through all the containments and they're all
ready, we emit that it's done.

So far, Corona::startupCompleted was never emitted.

REVIEW: 119220
2014-07-14 13:23:20 +02:00
Martin Klapetek
2f933387af Refactor the Calendar component a bit
Currently the grid itself is composed of 88 rectangles that draw all the
lines in a way that two big rect draws the whole two topmost horizontal
and leftmost vertical border lines and then each day rectangle is
drawing small bottom and right rect.

This patch reduces it to 13 rects only where one rect draws the whole
frame around the grid and then 1px wide/high rects draw the inner lines.
Results in much cleaner & simple code.

Plus there's a small refactor on the id names so it makes more sense.

This does not require any additional changes in the applets.

REVIEW: 119232
2014-07-12 13:52:34 +02:00
Aleix Pol
054a38b9d0 --runtime warnings 2014-07-11 19:51:42 +02:00
Aleix Pol
e008a5d7d4 If a timer is active and we start it, it will restart
No need to check if it's active and stop it first, according to the
documentation.
2014-07-11 19:15:06 +02:00
Aleix Pol
804a0d34da Fix cache implementation
It was weird.

Reviewed by the Handa-man.
2014-07-11 18:37:55 +02:00
Marco Martin
100b60a7fb return the prefix that has ben set even if not avail
symmetricity++ between setelementprefix and prefix
2014-07-11 16:55:59 +02:00
Marco Martin
c77b2bf9a8 fix switch from a less complete to a more complete
if the old theme didn't have a prefix, but the new one has,
set the old (formerly nonexisting) prefix again
2014-07-11 16:42:55 +02:00
Marco Martin
c2284cb48e connect(QPoineter breaks on some gcc versions
please, use connect(QPointer.data(), for time to come
2014-07-11 10:49:25 +02:00
Aleix Pol
d1e24d19fb fix build on jenkins
for some reason it works here...
2014-07-10 20:28:19 +02:00
Aleix Pol
4b222c5ef6 --warning unused variable 2014-07-10 20:28:01 +02:00
Aleix Pol
f75eb2d984 Don't connect to signals until the class has been initialized
While profiling plasmashell memory usage with Vishesh we realized that most
of the usage came from loading the Background image repeatedly.

We traced it back to this change, where we were connecting to
wallpaperChanged before initializing it, so it would initialize it again,
loading the wallpaper twice. It's not that we were leaking the object,
AFAIK, but loading an image using QQuickImage already raises the memory
quite a bit.

This change alone reduces by 15% the memory usage of my plasmashell (with 2
screens, that makes it a bit worse, because there's 2 DesktopViews then).

REVIEW: 119216
2014-07-10 19:53:03 +02:00
Aleix Pol
92a8007489 Introduce TimeTracker debugging tool for plasma
TimeTracker is a small class that keeps track of an object the changes in
the properties of an object and relates them to a point in time. This way
we can see how things change and react to each other. Then, this information
is exported into a json file to analyze.

REVIEW: 119199
2014-07-10 19:20:59 +02:00
l10n daemon script
8afadc6410 SVN_SILENT made messages (.desktop file) 2014-07-10 04:23:58 +00:00
Aleix Pol
124dc4799a fix build 2014-07-09 18:23:58 +02:00
Aleix Pol
f5f96c1390 Remove unneeded casts
They're all because we're accessing the d-pointer of the parent class (!),
we can access it without casting.
2014-07-09 18:20:32 +02:00
Aleix Pol
459f81814d Only consider a containment as finished if it actually passes a "true".
So far, we were only considering the fact that teh signal was being
emitted, and that's doesn't seem correct.

REVIEW: 119191
2014-07-09 12:51:24 +02:00
Aleix Pol
8fb62cc0a4 Cleanup
Re-use containment variable instead of keep fetching it every time. It's
not a trivial function, so better reduce the calls.
2014-07-09 12:43:08 +02:00
Aleix Pol
ae996c6666 --deprecated call 2014-07-09 12:36:34 +02:00
Aleix Pol
5e0acaa443 --warning 2014-07-09 12:02:31 +02:00
Marco Martin
11311f61e9 treat desktop location as bottom edge
swap edge only when the location is left or right
fixes tooltip position for things in desktop, like Folder icons

BUG:337112
2014-07-09 11:40:34 +02:00
Frederik Gladhorn
445331bba8 Improve TextField accessibility
Qt Quick accessibility already picks up the text automatically. Instead
set the name (which is a descriptive element) to the placeholder text
which is more descriptive of the element. Otherwise Orca will read the
text twice.
2014-07-09 09:57:23 +02:00
Andrew Lake
c29896a3a8 fix too many minute marks.
BUG:337235
2014-07-08 21:27:28 -07:00
l10n daemon script
ee230c4d21 SVN_SILENT made messages (.desktop file) 2014-07-09 03:37:24 +00:00
Frederik Gladhorn
5199c9778a Fix accessible roles 2014-07-08 21:46:13 +02:00