Commit Graph

1145 Commits

Author SHA1 Message Date
Martin Klapetek
08312b2e34 [calendar] Add a mark to days containing an event
REVIEW: 127586
2016-04-20 23:41:23 -04:00
Marco Martin
1cf145861b add Positive, Neutral, Negative text colors
add named colors for positive (usually green)
neutral(usually yellow) negative(usually red)
foreground objects, such as text or parts of
svg icons/themes

REVIEW:127696
Change-Id: I646306339f1684cdc062da3d3af1489af6092372
2016-04-20 18:25:50 +02:00
David Rosca
7944fc1d6f ScrollArea: Fix warning when contentItem is not Flickable
REVIEW: 127652
2016-04-15 10:08:43 +02:00
Eike Hein
9bd7e4ce5f Add a prop and method for aligning the menu against a corner of its visual parent.
REVIEW:127646
2016-04-14 22:10:24 +09:00
Eike Hein
17cea8059e Allow setting minimum width on Menu.
REVIEW:127648
2016-04-14 04:21:41 +09:00
Eike Hein
ec16c57e3c Maintain order in stored item list.
Reviewed-by: notmart@gmail.com
2016-04-14 01:38:12 +09:00
Eike Hein
70301e21b9 Extend API to allow (re)positioning menu items during procedural insert.
REVIEW:127645
2016-04-14 01:17:37 +09:00
Marco Martin
553a9bfe53 bind highlightedText color in Plasma::Theme
we have a color in the Plasma theme "highlight" that is basically
an accent color used around.. but one of the uses is to use it as
a background, such as highlighted text. in that case we don't know
what color would be safe for contrasting on top of it for things
like the highlighted text color (plasma style used the background
color for that, which is incorrect)

REVIEW:127637
2016-04-13 12:28:53 +02:00
David Rosca
b3076a410c SortFilterModel: Invalidate filter when changing filter callback
Model is now correctly filtered when setting filter callback.

REVIEW: 127588
2016-04-06 11:02:51 +02:00
Martin Klapetek
cff18c2cd2 [calendar] Fix calendar applet not clearing selection when hiding
This removes some old cruft that is not really used and serves
basically only as a bool property for checking if it's null and
wheter it equals the last activated date.

This can be done without it by simply resetting the current selected
date (another property) to "today".

REVIEW: 127455
BUG: 360683
2016-03-30 22:53:49 -04:00
Kai Uwe Broulik
92e2c07adf [Fading Node] Don't mix opacity separately
This breaks icon item fading when its opacity is smaller than 1 as can be observed
in the "Leave" dialog.

BUG: 355894
REVIEW: 127427
2016-03-20 11:33:07 +01:00
David Rosca
fd46322300 IconItem: Schedule pixmap update when window changes
QQuickItem::polish is not called when window changes.

Regression from 344d04e230

REVIEW: 127342
2016-03-12 13:01:07 +01:00
David Rosca
46a1181587 IconItem: Animate active and enabled change even with animations disabled
animated: false should disable only animation when changing source,
we still want the hover and enabled animations.
Also fix docs.

REVIEW: 127302
2016-03-11 14:10:59 +01:00
David Rosca
aaa85f3f98 DaysModel: Make update a slot
update is invoked with QMetaMethod, so it must be a slot

Reviewed-by: kbroulik
2016-03-10 16:26:34 +01:00
Kai Uwe Broulik
344d04e230 [Icon Item] Don't animate from previous pixmap when it has been invisible
We have a lot of reusable singletons that are just hidden when not needed, such
as the OSD. IconItem, however, will always fade from the previous state, even if
the previous action happened minutes ago.

This fixes for example changing the volume and then later changing the brightness
where you could see the OSD animating from the volume icon.

REVIEW: 122859
2016-03-10 13:01:29 +01:00
Kai Uwe Broulik
3b115e6d90 [Icon Item] Don't call loadPixmap in setColorGroup
Changing the color group of an Svg emits repaintNeeded which will then
cause it to schedule a pixmap update anyway. Includes a unittest.

REVIEW: 127313
2016-03-10 12:58:18 +01:00
David Rosca
d405378219 Remove QtScript dependency
It's not used anywhere.

REVIEW: 127312
2016-03-09 11:29:50 +01:00
David Rosca
978b8b3b87 IconItem: Don't overwrite source when using QIcon::name()
source should always return the same value as it was assigned.
Also removed duplicated code (empty sourceString is now handled
as if the source couldn't be converted to any type).

REVIEW: 127282
2016-03-04 23:44:57 +01:00
David Edmundson
1b21758570 Remove effectively duplicate code path for handling QPixmaps
IconItem handled both QOixmaps and QImages as a source.

QVariant(somePixmap).canConvert<QImage>() returns true so one of the
two code paths isn't executed. Given converting between the two is
practically free, we don't need two code paths.

REVIEW: 127270
2016-03-04 00:20:56 +00:00
David Edmundson
8c4f789b17 Docs for IconItem
REVIEW: 127268
2016-03-04 00:20:02 +00:00
David Rosca
30368e1d45 IconItem: Fix changing color of svg icons loaded from icon theme
Connect to repaintNeeded when creating Plasma::Svg.

REVIEW: 127207
2016-02-29 22:28:58 +01:00
Weng Xuetian
066cf0a0d7 Fix svg iconPath resolving in IconItem
This fixes iconPath is not correctly set when its size changes.

REVIEW: 127201
2016-02-29 13:05:48 -08:00
Aleix Pol
06c7b9c050 Remove some warnings
Unused variables
Unused code
Unused arguments
Unnecessarily complex code
Initialization order
Duplicated properties

REVIEW: 127214
2016-02-29 00:59:44 +01:00
Aleix Pol
9f62532674 Fix most of Clazy warnings in plasma-framework
REVIEW: 126672
2016-02-29 00:13:41 +01:00
David Rosca
526915895b Add autotests for IconItem
Add some tests for IconItem.
Also found one issue in animation when quickly changing source, first frame
will be rendered with wrong icon.

REVIEW: 127103
2016-02-27 21:24:45 +01:00
Marco Martin
d524d96a25 using the margins of the flickable item is wrong
the clip will be at ScrollView, not at flickable level
2016-02-24 12:52:24 +01:00
David Edmundson
73aa13b26d fix uninitialised var
Valgrind pointed this out whilst debugging something else.

REVIEW: 127079
2016-02-23 13:05:10 +00:00
David Rosca
fca765bc05 ToolTip: Prevent multiple geometry changes while changing contents
Unset mainItem and set it back only after changing of tooltip contents
is completed. This improves behavior of morphingpopups effect (popups
animates from/to incorrect values).

REVIEW: 127118
2016-02-21 15:06:44 +01:00
David Rosca
596fa082dd SvgItem: Don't use Plasma::Theme from rendering thread
Logic is similar to IconItem - rendered image is updated
in updatePolish().

REVIEW: 127115
2016-02-19 18:16:30 +01:00
Kai Uwe Broulik
eccf7cf0b2 [ToolTip] Stop show timer if hideTooltip is called
This prevents the tooltip from showing up if hideTooltip was called
before it was shown.

BUG: 358894

Differential Revision: https://phabricator.kde.org/D959
2016-02-18 21:58:35 +01:00
Aleix Pol
978529d175 Remove unused variable
Reviewed by Marco Martin
2016-02-18 17:03:49 +01:00
David Rosca
1f98734dd3 Disable animation of icons in plasma tooltips
Tooltips are now animated with KWin effect.

REVIEW: 126653
2016-02-17 18:40:14 +01:00
Marco Martin
ce9751cb35 drop animations from tooltips
tooltips are now animated by a KWin effect, don't try
to animate own X11 positions, that's quite dangerous

Change-Id: I08ef2bc23ec1ef7cb7c432ba1bf6d9c5b0a0ab01
2016-02-17 17:16:02 +01:00
Dan Vrátil
525bf2d377 Fix IconItem not loading non-theme icons with name
Commit 5184ac introduced a small regression that caused IconItem
to no longer load non-theme icons with name set, for instance icons
coming from sni-qt, causing sni-qt apps to not show in systray.

BUG: 359388
FIXED-IN: 5.20
REVIEW: 127091
2016-02-16 21:16:01 +01:00
David Rosca
1e196fdfb2 WindowThumbnail: Discard glx pixmap in stopRedirecting()
BUG: 357895
FIXED-IN: 5.20
REVIEW: 127072
2016-02-15 19:05:26 +01:00
Kai Uwe Broulik
3c03c950d6 [ToolButtonStyle] Don't rely on an outside ID
If you use Plasma's ToolButtonStyle with different controls than the PlasmaComponents.ToolButton it prints a warning about an ID that does not exist.

Use "control" instead which is guaranteed to be the item.
2016-02-09 11:03:59 +01:00
Kai Uwe Broulik
4ebf130ee6 [Calendar] Add proper back/forward buttons and a "Today" button
This removes the custom label-based triangles and replaces them with proper ToolButtons
using proper icons. It also adds a "Today" button to return to the current day.
The tooltips on the buttons reflect the actual action ("Previous Month", "Previous Year",
"Previous Decade", depending on the zoom level).

Furthermore, the day names and week numbers now use the regular font size but they're still
visually disconnected. The day names row is hidden in the zoom levels now.

REVIEW: 126960
BUG: 336124
BUG: 348362
BUG: 358536
2016-02-08 00:07:43 +01:00
Marco Martin
8c6f95f2ea add a property separatorVisible
REVIEWED-BY: Kai Uwe Broulik
2016-02-05 16:51:38 +01:00
David Rosca
83cec13edb IconItem: Add usesPlasmaTheme property
Add usesPlasmaTheme (enabled by default) property to make it possible
to disable using icons from Plasma theme.

REVIEW: 126814
2016-01-20 11:28:56 +01:00
David Rosca
5184ac94c9 IconItem: Try to load QIcon::fromTheme icons as svg
When showing QIcons in IconItem, it would ignore stylesheet colors.
This tries to load QIcons created with QIcon::fromTheme as svg, by using
the icon name returned from QIcon::name.

REVIEW: 126792
CCBUG: 353358
2016-01-19 10:14:49 +01:00
Kai Uwe Broulik
d9719f1037 [Units] Return at least 1ms for durations
Animators do not reliably work with a duration of 0 as can be seen in the linked bug report.

Upstream bug report: QTBUG-39766

BUG: 357532
REVIEW: 126652
2016-01-17 12:59:30 +01:00
Marco Martin
225efd7e71 attached properties have parent, not parentItem
attached properties never, ever are in a scene
even if they are qquickitems it may cause big rendering
problems
2016-01-14 15:12:20 +01:00
Kai Uwe Broulik
bbf295cdfa [PlasmaCore DataModel] Don't reset model when a source is removed
REVIEW: 126687
2016-01-11 18:00:43 +01:00
Marco Martin
5b79da30f0 support simple QObjects too
support ColorScope in Svg as well (that's not a QQuickItem)
2016-01-08 16:11:19 +01:00
Marco Martin
5911ad2920 keep track of the context parents
keep internally a pointer (important that is *not* a smart pointer)
to the item the context has been created for.
on context deletion, remove the copy from the static bookeeping hash
this solves two related crashes: an infinite recursion
and a connection to a deleted object
2016-01-08 13:38:06 +01:00
Marco Martin
dc1bfc3de1 same enabled borders between toolbutton and shadow
Change-Id: I6180121b32755f6f0ee391f8399b3a7cce55d14e
2016-01-07 12:56:56 +01:00
Marco Martin
e565c5c225 rework ColorScope
Since some time PlasmaCore had the very useful ColorScope class,
which can semi-automatically make children take colors of the
View, Button or Complementary color groups.
Unfortunately it didn't support dynamic reparenting, giving
wrong colors in some cases (see black on black battery on the phone)

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

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

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

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

REVIEW: 126641
2016-01-05 18:40:56 +01:00
Marco Martin
c532ca8ff7 paintedWidth/paintedheight for IconItem
export the actual painted icon size of the icon item
REVIEW:126625

Change-Id: Ifa6667fdb9e3f7ee675b2c36628eae2ea5394a35
2016-01-04 18:20:38 +01:00
Kai Uwe Broulik
81a03ef291 [ToolButtonStyle] Always indicate activeFocus
Even when flat we should indicate that a ToolButton has focus.
This makes keyboard navigation substantially less awkward.

CHANGLOG: Improved visibility of keyboard focus on buttons

REVIEW: 126567
2015-12-29 23:42:23 +01:00
Marco Martin
3f56e63e70 use the new KDEPackageAppTemplates ECM module
REVIEW:126557
Change-Id: Ie32644a0641d1f0d5299ba9d1b0053e3f37d2635
2015-12-29 15:41:35 +01:00
Eike Hein
fa0030a9ac Always check both before redirecting. 2015-12-22 20:36:10 +01:00
Eike Hein
c64a94a265 Stop redirecting windows when item is disabled or hidden.
Concretely fixes Task Manager tooltips slowing down app rendering even
after the tooltip is hidden.

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

This fixes a bunch of flicker all over the place since 150ms is
obviously far beyond the frame time budget on 60 hz, but we can
usually easily fit into one frame on hot caches.
2015-12-22 18:39:53 +01:00
Eike Hein
283ab4a634 Fix element ids for east orientation. 2015-12-22 05:04:01 +01:00
Kai Uwe Broulik
9b48e3d010 [Window Thumbnails] Don't crash if Composite is disabled
We were checking for Composite at compile-time but not at runtime causing a crash
when Composite has explicitly been disable in which case Damage might still be availab.e

REVIEW: 126296
2015-12-13 20:25:20 +01:00
Martin Klapetek
e33b486be6 [calendar] Delay the model reset until the view is ready
Otherwise things will crash.

Reviewed-by: Eike Hein
BUG: 355943
2015-12-02 12:57:57 -05:00
Nick Shaforostoff
c7c2980f14 qstring optimizations
REVIEW: 126148
2015-11-27 20:03:48 +00:00
Kai Uwe Broulik
9ccc6293f7 [IconItem] Don't crash on null KIconLoader theme
REVIEW: 126168
BUG: 355577
FIXED-IN: 5.17
2015-11-25 18:17:57 +01:00
Marco Martin
a9d3d9a81a make event filters static to decrease installed filters on qApp
since seems there are so many event filters installed
on the QApplication installed that may give performanc
 issues, try to use separate, singleton watchers for them
to decrease the amount of eventfilters called

REVIEW:126113
2015-11-20 14:26:16 +01:00
Martin Klapetek
6f3fed77d5 [calendar] Use ui language for getting the month name
Simple QDate::longMonthName(..) won't do the job as it
will return the month name using LC_DATE locale which is used
for date formatting etc. So for example, in en_US locale
and cs_CZ LC_DATE, it would return Czech month names while
it should return English ones. So here we force the first ui
language locale and take the month name from that.

BUG: 353715
REVIEW: 125705
2015-11-18 12:38:08 -05:00
Martin Klapetek
e571628b18 [calendar] Sort the events by their type too
The QML sectioning code does not actually sort the model, this needs to
be done beforehand. This should now sort the events by their type and
their start datetime
2015-11-18 12:38:08 -05:00
Marco Martin
ee9e5907cf allow paste on password fields
but don't allow to copy, select or cut
2015-11-18 18:22:46 +01:00
Marco Martin
8e0c244482 fix positioning of edit menu, add a button to select
don't show edit menu for passwords
2015-11-18 16:59:42 +01:00
Martin Klapetek
c84e591b96 [calendar] Use correct plugin IID for filtering
With moving the plugin to KDeclarative, the namespace got changed but it
was forgotten to change the plugins filter
2015-11-17 19:04:08 -05:00
Martin Klapetek
e757ebb483 [calendar] Add missing item id 2015-11-17 17:45:49 -05:00
Martin Klapetek
f746db2878 [calendar] Fix some missing properties and property settings 2015-11-17 17:44:01 -05:00
Marco Martin
258242fffd fix tickmarks in vertical mode 2015-11-17 17:52:21 +01:00
Marco Martin
91ad79a553 better disabled look 2015-11-17 17:52:21 +01:00
Martin Klapetek
520837a07c [calendar] Move the plugin library to KDeclarative
Marco is not happy with the plugin being here and having a Plasma
namespace, so after some discussion it was decided to move it to
KDeclarative and change to CalendarEvents namespace.
2015-11-16 14:26:26 -05:00
Martin Klapetek
c507c744ca [calendar] Fix build 2015-11-16 12:22:34 -05:00
Martin Klapetek
f9d7fc87d5 [calendar] Fix binding loops 2015-11-16 11:52:55 -05:00
Martin Klapetek
b65195ee65 [calendar] qmlRegisterUncreatableType needs a bit more arguments 2015-11-16 11:52:17 -05:00
Martin Klapetek
d0d0a27bac [calendar] Move the plugins handling to a separate class
This is also made a QML singleton that will be used for the applet
config view where it will add the plugin configs once we add that
possibility.

The same instance is then set to the DaysModel from QML.

REVIEW: 125951
2015-11-16 11:49:02 -05:00
Martin Klapetek
fe0384f0d4 [calendar] Add plugin system for Calendar events
This adds a simple plugin interface that can be subclassed
and provide events integration with Plasma Calendar applet.

It's asynchronous and I've kept it deliberately simple.
For now the Calendar tells the plugins which date range
is being displayed, the plugins load the data and then
emit the dataReady() signal containing the events.

The events are stored in a multihash for quick access
by the Calendar's agenda part but also for overall
easy-to-use (eg. in teh model data()).

The event data is stored in EventData class, which has
a pretty self-explanatory members, except perhaps the
"isMinor" property. The intention with this is to support
namedays, where in some countries the calendars have
different name every day. This is just a minor holiday
and as such should not mark the calendar grid, otherwise
the whole grid would be in a different color.

Putting the interface here might raise the question of
depending on plasma-framework, but plugins provided by
KDE can go to plasma-workspace and other 3rd party ones
would just have to live with it. I don't think it will
be a problem but if it turns out it is, we can rethink
the placement.

REVIEW: 125817
CCBUG: 349676
CHANGELOG: Allow plugins to supply event data to Calendar applet
2015-11-16 11:46:26 -05:00
Marco Martin
c8b9b852ef check for slot existence before connecting or disconnecting
since this is a blind connect to a slot that may exist
or not exist, the new syntax can't be used, but check
for the slot existence before attempting a connection

BUG:354751
2015-11-11 11:07:46 +01:00
Martin Gräßlin
fae8384845 [declarativeimports/core] Specify HAVE_XCB_COMPOSITE in config-x11.h 2015-11-09 11:11:06 +01:00
Martin Gräßlin
286300ad35 Use newer cmake syntax for XCB dependencies 2015-11-09 11:11:06 +01:00
Martin Gräßlin
e95de33465 [declarativeimports/core] Drop xcb shape dependency as it's unused 2015-11-09 11:11:06 +01:00
Kai Uwe Broulik
606c7f651d [TabBarLayout] Layout sooner
CHANGELOG: Fix TabBar items being cramped together on initial creation, which can be observed in eg. Kickoff after Plasma start

REVIEW: 125978
2015-11-07 13:15:50 +01:00
Nick Shaforostoff
db7f198a19 -use QStringLiteral and QLatin1String in the code that is executed multiple times (avoids utf8->utf16 conversions)
-use splitRef when converting parts of qstring to ints to avoid redundant memory allocations
-warnings--: remove redundant ';'

CCMAIL: notmart@gmail.com
2015-11-06 13:39:18 +00:00
David Rosca
f32677b8e0 Take QApplication::wheelScrollLines into account from ScrollView
This is adaptation of https://codereview.qt-project.org/#/c/109615/
for Plasma style.

REVIEW: 125889
2015-11-06 12:03:51 +01:00
Martin Gräßlin
ae4ba8920e [declarative/core] Use BypassWindowManagerHint only on platform X11
BypassWindowManagerHint is a flag which is X11 specific. Because of
that for example QtWayland doesn't create a real window for QWindows
with this flag.

Using such a window will eventually result in a freeze of the whole
application. If one renders with QtQuick to such a window, mesa will
request a frame callback from the compositor. Just the compositor
will never deliver the frame rendered callback as it doesn't know the
window exists in the first place and by that doesn't render it and
will never ever deliver the frame rendered callback.

If now one tries to render another frame, mesa notices that it hasn't
got the frame callback and will block the thread till that happens.
With the setup described: that's until eternity.

See Qt Bug: https://bugreports.qt.io/browse/QTBUG-49272

REVIEW: 125961
2015-11-06 08:51:37 +01:00
David Rosca
5dc3f0ac7f calendar: Make the entire header area clickable
This makes the entire header area clickable (not just the header label).

REVIEW: 125899
2015-10-31 22:18:06 +01:00
David Rosca
2ca48a7d2d calendar: Don't use current day number in goToMonth
Fix goToMonth when that month does not have current day number
(eg. today = 31).

REVIEW: 125894
2015-10-31 22:17:15 +01:00
David Rosca
1e867f276b calendar: Fix updating decade overview
Always update model when switching to decade overview.

REVIEW: 125893
2015-10-31 22:16:32 +01:00
Aleix Pol
36288df5ac Fix logic (and warnings) in ModelContextMenu
It was checking that a variable existed, then it used it. Now it works like
the rest of the properties.

REVIEW: 125809
2015-10-26 18:14:41 +01:00
Marco Martin
bf05c65858 Merge branch 'breeze/5.5'
merge the new theme
is mostly an incremental difference compared to the previos theme
2015-10-26 13:07:12 +01:00
Dāvis Mosāns
39f8db95c2 Initialize QFunctionPointer to Q_NULLPTR
REVIEW: 125756
2015-10-22 16:23:51 +03:00
Marco Martin
c1065ccf39 Theme breeze icons when loaded trough IconItem
This makes IconItem try to load global icons from the theme
with Plasma::Svg as well, making it assign the colors from
the stylesheet if the breeze monochrome icons are treated,
that should be scriptable, from some attempts i did the
script seems to convert them correctly, without any
change in rendering.

This will automatically color monochrome breeze icons only
in plasmashell, and more specifically only those that use
IconItem, not QIconItem (iconitem should probably have an
animation-less mode to be able to be used in taskmanager
and stuff)
perhaps in the future we'll be able somehow to hook all
this stuff in QIconEngine to be able to use it in QWidget
applications, but since QIcon does have any idea where it is,
is not usable yet for things like the fullscreen fixed-dark
gwenview view.

Change-Id: I28e5fedabafbe8ed82a9df7614f8e2af18c6a24d
REVIEW:125657
2015-10-20 11:49:20 +02:00
Marco Martin
b4d7916dba make the new checkmark work
Change-Id: I673e5e5d2dad7318027ae40c8712ffc7ba795505
2015-10-19 18:25:47 +02:00
David Edmundson
1a4c1d7eeb Fix Button minimumWidth property
Plasma's Button has an extra property "minimumWidth" which is an extra
hint not in QQC to say "what is the size to exactly fit the contents".

(it's a bit confusing, as we can perfectly handle a button below it's
"minmimum" size)

This should be based on the size the contents want to be (the
implicitWidth), not how small the contents can go (which with is pretty
meaningless when our button can elide)

It got broken at some point recently.

BUG: 353584
Change-Id: I637898c3abf98183bbae30d8f15c4d72801a3650
REVIEW: 125698
2015-10-19 11:30:19 +01:00
David Edmundson
e6ba526539 Remove duplicate code expanding size hint of panel to fit text
QtQuickControls already does this inside Button code. This hint is meant
to be "what's the default size for a panel to be".

Change-Id: I12fd084a3d3c35b172fbff9c7d3ab5c5565a82dc
2015-10-19 11:30:14 +01:00
Marco Martin
7cafe26fa0 make PageRow work
enum names aren't anymre available in js files
fix scrollToLevel behavior
2015-10-12 18:19:13 +02:00
Marco Martin
dea284f8f3 use a RowLayout for ToolbarLayout
more reliable.
also put the first and last buttons at the extremes, the others in the middle
2015-10-05 11:41:42 +02:00
Takahiro Hashimoto
64b951fab3 Make tooltip dialog hidden on the cursor entering the inactive ToolTipArea
REVIEW: 125443
2015-10-02 23:23:14 +09:00
Marco Martin
c6804b034d consider devicepixelration in standalone scrollbar
Change-Id: I06e55738cde060f7ff372c039be20f5dad72d070
2015-09-18 20:17:07 +02:00
Marco Martin
244574edd1 no hover effect on touchscreen+mobile
still normal hover effect on laptops with touchscreen

Change-Id: I64f101e1572eed9d48174f0cf290fdfea085aaeb
2015-09-18 20:08:16 +02:00
David Edmundson
7453beb9ce Use lineedit svg margins in sizeHint calculation
QQC button heights are max(backgroundHeight, label + margins).
QQC lineedits are only from the background

We need to take the margins into consideration when deciding how high
the textbox should be otherwise we're effectively just ignoring what the
SVG says.

This means button and textbox on the login screen are now the same
height.

REVIEW: 125240
2015-09-16 23:56:39 +01:00
David Rosca
4b4461d76b Don't fade animate icon in plasma tooltips
PlasmaCore.IconItem has a fade animation when changing source.
Clearing the source when tooltip is not visible eliminates the
animation.

REVIEW: 125178
2015-09-14 11:06:00 +02:00
David Rosca
0df4823e8b Fix eliding button text
Setting minimumWidth to implicitWidth forces overflowing text
instead of eliding it.

REVIEW: 125201
2015-09-12 22:49:00 +02:00
Bhushan Shah
4fcb1c6dc5 Fix documentation of gridUnit
gridUnit doesn't correspond to milimetter but size of capital M

REVIEW: 125099
2015-09-08 12:25:40 +05:30
Marco Martin
573d2985ba Merge branch 'mart/inlineEditMenu'
REVIEW:124374
2015-09-02 11:58:06 +02:00
Marco Martin
b2bfd6cdf5 reparent to flickable if possible 2015-09-02 11:43:27 +02:00
Marco Martin
e688b3d483 remove extra debug output 2015-09-02 10:44:12 +02:00
Kai Uwe Broulik
6995193219 Make model param of clicked signal of var type
When using ModelContextMenu with a JS array the "model" param of the clicked
signal is null because QtObject property can only hold QObject but no JS objects.

CHANGELOG: The onClicked signal of PlasmaComponents.ModelContextMenu now works properly
if model is a JS Array of JS objects

REVIEW: 124910
2015-08-26 10:46:43 +02:00
Kai Uwe Broulik
25748ca575 Support sections in ModelContextMenu
CHANGELOG: PlasmaComponents ModelContextMenu can now create Menu sections

REVIEW: 124909
2015-08-24 23:14:31 +02:00
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
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
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
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
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
aa52188364 use ColorScope 2015-06-18 11:42:09 -07: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
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
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
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
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
Marco Martin
cb6b03e907 use QmlObjectSharedEngine for tooltips
Change-Id: I6ddb3bcad870165e24bd7b5cd63505fd31ca46b9
2015-05-11 20:06:28 +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