Commit Graph

114 Commits

Author SHA1 Message Date
Noah Davis
13882a60e1 Fix visual glitches and improve the layouts of component tests 2020-08-19 14:00:44 -04:00
Andreas Cord-Landwehr
d10afb5d2a plasma-framework: Convert copyright statements to SPDX expressions 2020-08-13 19:08:54 +00:00
Nate Graham
711789908b Drop implicit minimum sizing from PC2 and PC3 Buttons
For the following reasons:
- It can break and look bad on Plasma Mobile which uses the Plasma style
- It makes buttons with icons and short text look visually unbalanced
- QStyle and QML desktop style buttons do not do this so it's a source
  of inconsistency

Tests are adjusted to all pass. Stuff looks better to my eye.
2020-08-10 18:47:49 +00:00
Nate Graham
b7ee696250 [PlasmaComponents3] Honor icon.[name|source] property
Since a checkbox is a subclass of AbstractButton, it can be given an
icon. QWidgets checkboxes will faithfully display this icon, but
PlasmaComponents3 ones will not. They should. :)

I will submit a similar change for the QQC2 checkbox style
to make them consistent.
2020-07-23 14:38:14 +00:00
Laurent Montel
e45a66139a Use camelcase include. (scripted) 2020-07-08 07:44:43 +02:00
Laurent Montel
48f60533b9 [plasma-framework] make it compiles without foreach
Summary: compile without foreach

Test Plan: autotest ok

Reviewers: dfaure, apol

Reviewed By: dfaure, apol

Subscribers: ahmadsamir, nicolasfella, broulik, apol, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D19913
2020-04-17 06:47:04 +02:00
Harald Sitter
6e39c1de5b do not install testengine
Summary:
by default users have to opt out of BUILD_TESTING meaning everyone would
by default build and get testengine installed even though it serves no
purpose in production. this also includes distros as I've noticed :O

do not install the engine, same as testplugin isn't getting installed.

(I am actually thinking throwing it away as a whole may make sense; it
 serves no real purpose over any other engine)

Reviewers: mart, apol

Reviewed By: apol

Subscribers: broulik, apol, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28463
2020-04-06 12:40:42 +02:00
Marco Martin
0b89e7f3f0 Buttons: allow to scale up icons
Summary:
always scale icons unless a size is specified in the api.
this makes icon sizing more in line with plasma components 2

Test Plan:
{F8129062}

{F8129064}

{F8129065}

Reviewers: #plasma, broulik

Reviewed By: #plasma, broulik

Subscribers: broulik, ngraham, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D27628
2020-03-02 14:42:15 +01:00
Marco Martin
ba0b637de9 fix layout size hints for button labels
Summary:
icon sizes and label placements tested correct in  several scenarios

* control.icon.width/height is used as maximum size of the icon
* if the button is smaller icons always scale down
* icons stay ccentered regardless of button size when there is no text

Test Plan:
fixes icon sizes without workarounds like D27260
{F8108705}

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: davidedmundson, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D27460
2020-02-19 12:12:41 +01:00
George Vogiatzis
dccf6c4dd6 [Tests]Make radiobutton3.qml use PC3
Summary: Correct test radiobutton3.qml to use Plasma Components 3 instead of 2.

Test Plan:
Run `qmlscene radiobutton3.qml`
Before:
Misaligned button and big height. (bug in PC2 radiobutton)
After:
Correct height and alignment between button and button's text.

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: ngraham, davidedmundson, ndavis, kde-frameworks-devel

Tags: #frameworks, #plasma

Differential Revision: https://phabricator.kde.org/D27082
2020-02-04 11:14:14 -07:00
Marco Martin
e9468a8442 add a manual test on the highlight look 2020-01-09 17:35:57 +01:00
Aleix Pol
66122410a1 Enable wheel events on Slider {}
Summary:
So far PC3 version of the slider doesn't react to events, this change
enables it.

Test Plan: Used it with a test.

Reviewers: #plasma, broulik, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: davidedmundson, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D26055
2019-12-30 18:49:56 +01:00
David Edmundson
fecb716b87 Add test for combobox from QQC2 2019-12-12 15:29:42 +00:00
David Edmundson
a3acfbfce6 Add manual test for changing colorscope in components
Summary: For quickly other bugs in PC3

Test Plan:
Opened qmlscene on some files
It's only for unit tests anyway

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D25822
2019-12-09 20:59:57 +00:00
Yuri Chornoivan
052a81f755 Fix minor issues found by EBN and typos 2019-11-10 12:06:10 +02:00
David Edmundson
4ecdbe9622 Add manual tests for PC3
Summary:
These were super useful for spotting bugs in PC2.
They show many many issues already.

Visually they should match PC2. They don't

Some API doesn't map directly. Those tests
were removed.

Test Plan:
Opened in qmlscene
Everything binds correctly. Some things look horrible.

Reviewers: #plasma

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D23827
2019-09-11 11:11:47 +02:00
Aleix Pol
d3b22f8828 Port trivial connects to the new style 2019-08-30 17:26:54 +02:00
David Edmundson
0bd2ea178f Add test for buttons with icon height 2019-05-13 09:54:44 +01:00
Yuri Chornoivan
72ca2f79e0 Fix minor EBN issues and typos 2018-10-22 21:05:29 +03:00
Friedrich W. H. Kossebau
30cbc2dc33 Use more nullptr 2018-07-02 00:16:21 +02:00
Laurent Montel
70a274ad3a Use override 2018-05-23 08:05:40 +02:00
Aleix Pol
49ef90bcb9 Don't show the background if Button.flat
Summary: Otherwise the flat property is ignored

Test Plan: Tested on KDE Connect port to use PlasmaComponents

Reviewers: #plasma, mart

Reviewed By: #plasma, mart

Subscribers: mart, #frameworks

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D11652
2018-04-17 13:44:11 +02:00
Aleix Pol
b8b8a69fd1 Remove implicit string casting
Summary: Follow the KF5 guidelines

Test Plan: Plasma shell starts

Reviewers: #plasma, #frameworks, sebas

Reviewed By: #plasma, sebas

Subscribers: plasma-devel

Tags: #plasma, #frameworks

Differential Revision: https://phabricator.kde.org/D9108
2017-12-02 15:44:14 +01:00
David Edmundson
ee2b12be04 Add extra visual indicator for Checkbox/Radio keyboard focus
Summary:
This draws a line underneath a Plasma checkbox label when it has
keyboard focus. This is needed as when an item is checked, the focus
shadow is practically invisible.

Visuals when clicking is completely unchanged
This brings it more in line with our QStyle.

Test Plan: Attached runtime tests

Reviewers: #plasma, #vdg, mart

Reviewed By: #plasma, mart

Subscribers: plasma-devel, #frameworks

Tags: #plasma, #frameworks

Differential Revision: https://phabricator.kde.org/D7819
2017-09-19 13:50:44 +01:00
Kai Uwe Broulik
21f954d94d [PlasmaComponents Menu] Don't crash on null action
You can assign a QAction as "action", this way you can just pass it e.g. plasmoid.action("configure").
However, when assigning a null action as can happen with kiosk restrictions, it would crash
as it assigns m_action the nullptr but never checks for that.

This patch ensures we always have a QAction, creating a new empty one, if neccessary.
Also deletes our own action if an external one is assigned

Differential Revision: https://phabricator.kde.org/D6608
2017-07-11 12:23:39 +02:00
Kai Uwe Broulik
ceeb57d17f [PlasmaComponents Menu] Add maximumWidth property
This allows to limit the maximum width of a menu. It can be useful for instance
in task manager where long file names for recent documents will result in gigantic menus.

The property has a RESET method (which is called if you assign "undefined") which will
set it back to QWIDGETSIZE_MAX to remove the size restriction.

Differential Revision: https://phabricator.kde.org/D4257
2017-01-25 18:02:33 +01:00
David Edmundson
cb9ec94625 Add an optional reveal password button to TextField
Similar to KPasswordWidget in kwidgetaddons

Also fixes:
- the clear button still being clickable when not enabled
- RTL icons
- Updating the right margin correctly

REVIEW: 128660
2016-08-15 14:34:15 +01:00
David Faure
7a9855ec77 plugintest: remove dead code 2016-06-12 15:54:47 +02:00
David Faure
fc673146a6 Fix plugintest crash on startup: qApp needed. 2016-06-12 15:14:35 +02:00
Marco Martin
f3c05034d9 Selected state for Plasma::Svg and IconItem
Like KIconloader, support a Selected state, in IconItem,
as in all generic svgs/framesvg
it replaces the text color with HighlightedText and the
background color with HighlightColor

Change-Id: Id97a527405d2c3feed75a172f05547defdbf440c
REVIEW:127975
2016-05-31 11:10:47 +02:00
Aleix Pol
9f62532674 Fix most of Clazy warnings in plasma-framework
REVIEW: 126672
2016-02-29 00:13:41 +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
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
Alex Richardson
f35e514b7d Use SERVICE_TYPES parameter to kcoreaddons_desktop_to_json() 2015-12-09 23:10:41 +00:00
l10n daemon script
01f4cf59ea 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-11-04 17:07:45 +00: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
Takahiro Hashimoto
64b951fab3 Make tooltip dialog hidden on the cursor entering the inactive ToolTipArea
REVIEW: 125443
2015-10-02 23:23:14 +09: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 Edmundson
d6e5d81a59 Make more tests for button with descriptions
Change-Id: I6d1d2be97bac4b6f6b1deebc6e5654a303ba150e
2015-09-12 22:40:18 +02:00
l10n daemon script
98583160cb 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-08-28 10:20:30 +00: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
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
Martin Klapetek
9a41afb29b Add another tooltip test mimicking the notifications applet
Change-Id: I3900c02c16c8c4c0a98f058e55681ec05006a360
2015-03-05 15:09:29 +01:00
David Edmundson
8022adb399 Add icons and images to the tooltip test
Change-Id: Idbcac97bb3e5b8e2349d384c94734a312f177954
2015-02-25 11:24:18 +01:00
Sebastian Kügler
70b545a964 Don't install dpitest app
It's really only a test, not supposed to be installed.
2015-02-17 18:40:49 +01:00
Kevin Funk
7e302a5236 Use Q_DECL_OVERRIDE where possible
REVIEW: 122542
2015-02-13 13:31:58 +01:00
l10n daemon script
03bae89ac5 SVN_SILENT made messages (.desktop file) 2015-02-04 08:58:49 +00:00
Alex Merry
48e9c2f29e Update installation variables. 2015-01-10 17:47:31 +00:00
Elias Probst
2f2e7ca0f1
Deprecate kservice_desktop_to_json(), use kcoreaddons_desktop_to_json().
REVIEW: 121958
2015-01-09 20:49:12 +01:00
l10n daemon script
1afbc2c461 SVN_SILENT made messages (.desktop file) 2015-01-02 09:15:04 +00:00