Commit Graph

15801 Commits

Author SHA1 Message Date
Dan Leinir Turthra Jensen
8a35f83c4b Add a humanMoment unit to the various Units
Time in milliseconds equivalent to the theoretical human moment, which can be used
to determine whether how long to wait until the user should be informed of something,
or can be used as the limit for how long something should wait before being
automatically initiated.

Some examples:

- When the user types text in a search field, wait no longer than this duration after
  the user completes typing before starting the search
- When loading data which would commonly arrive rapidly enough to not require interaction,
  wait this long before showing a spinner

This might seem an arbitrary number, but given the psychological effect that three
seconds seems to be what humans consider a moment (and in the case of waiting for
something to happen, a moment is that time when you think "this is taking a bit long,
isn't it?"), the idea is to postpone for just before such a conceptual moment. The reason
for the two seconds, rather than three, is to function as a middle ground: Not long enough
that the user would think that something has taken too long, for also not so fast as to
happen too soon.

See also
https://www.psychologytoday.com/blog/all-about-addiction/201101/tick-tock-tick-hugs-and-life-in-3-second-intervals
(the actual paper is hidden behind an academic paywall and consequently not readily
available to us, so the source will have to be the blog entry above)

see also https://invent.kde.org/frameworks/kirigami/-/merge_requests/268
2021-03-31 14:44:50 +01:00
Marco Martin
fb16e8eb20 add PageIndicator
qml should be complete to all qqc2 components otherwise it can't be
accessible as Plasmacomponents 3 import
2021-03-31 15:26:48 +02:00
Nicolas Fella
bfa1100523 [pluginloader] Add methods to list containments using KPluginMetaData
To replace the KPluginInfo-based variants
2021-03-29 20:41:37 +02:00
Nicolas Fella
cde7f8a986 Deprecate PluginLoader::listEngineInfoByCategory
It isn't used anywhere.

It is problematic since it returns KPluginInfo. Instead one can use the
KPluginMetaData-based method and do the filtering manually
2021-03-28 22:24:20 +02:00
David Faure
f54f769d12 GIT_SILENT increase KF_DISABLE_DEPRECATED_BEFORE_AND_AT 2021-03-27 11:41:04 +01:00
Jan Blackquill
d526a2c29a Revert "Redesign calendar component"
This reverts commit b6f9e51b65. The MR
was not approved by anyone and still had outstanding criticisms raised
in the VDG room that were not addressed.

CCMAIL: carl@carlschwan.eu
2021-03-25 19:28:02 -04:00
Carl Schwan
b6f9e51b65 Redesign calendar component
1. This removes the grid around the items
2. The header component is now optional and the API caller can disable it
to add its own.
3. It is now using a SwipeView to provide better touch navigation
4. Use buttons to navigate to year/month/decade view instead of a non-discoverable click on the heading
5. Add some convenient functions to manipulate the view and get its state
6. Add a bit of documentation

Implements https://phabricator.kde.org/file/data/wiv5bs4ucvqnfiibxtjy/PHID-FILE-nnurs2z323lvwrjsavun/system_tray_w%E2%81%84headers_2x.png
2021-03-25 23:26:54 +00:00
Carl Schwan
53b8883019 Mark Plasma Style as internal
So that it doesn't appear on api.kde.org and produce noice.
2021-03-21 20:16:57 +00:00
Carl Schwan
8047c5daad Make private API invisible in api.kde.org 2021-03-21 20:04:54 +00:00
Carl Schwan
fb5dcf1f47 Improve TabBar documentation 2021-03-21 19:55:22 +00:00
Ahmad Samir
3b0d926a95 Add notes about classes that will hopefully be dropped in KF6
Mainly so that no one spends time porting them for KF6...etc
2021-03-18 18:11:40 +00:00
Noah Davis
c159eff4b3 [lineedit.svg] Remove empty space around borders and use 3px corner radius 2021-03-16 12:26:26 +00:00
l10n daemon script
1bb889dfac GIT_SILENT Upgrade KF version to 5.81.0. 2021-03-15 14:42:41 +00:00
Noah Davis
669f25347f [PC3 TextField] set on placeholder text
Fixes cursor not being an I beam when placehoder text is hovered.
2021-03-13 20:06:13 -05:00
Noah Davis
1b71490296 [PC3 TextField] mirrored -> control.mirrored
Fixes "ReferenceError: mirrored is not defined"
2021-03-13 19:59:40 -05:00
Alexander Lohnau
9b7b38004e
GIT_SILENT Fix formatting for templates 2021-03-13 21:52:20 +01:00
Alexander Lohnau
c7c0146cc6
GIT_SILENT Remove trailing comma in QML code 2021-03-13 21:21:15 +01:00
Ahmad Samir
a6e994a391 Add .git-blame-ignore-revs
GIT_SILENT
2021-03-13 17:35:34 +00:00
Ahmad Samir
2ff586d513 Tweak formatting after running clang-format
NO_CHANGELOG
2021-03-13 17:35:34 +00:00
Ahmad Samir
e7e839e82b Fix build after clang-format reorderd the #include's
Include the public class header in the private one.

NO_CHANGELOG
2021-03-13 17:35:34 +00:00
Ahmad Samir
c0274df69a Run clang-format on all cpp/h files
NO_CHANGELOG
2021-03-13 17:35:34 +00:00
Ahmad Samir
cce6198bb9 Add clang-format bits to CMakeLists.txt
GIT_SILENT
2021-03-13 17:35:34 +00:00
Ahmad Samir
9ae7d71b9a Add a trailing comma to enum
Should help produce better diffs and clang-format won't squash the enum
on one line.

GIT_SILENT
2021-03-13 17:35:34 +00:00
Noah Davis
52b9c9e94a [PC3] Refactor TextField
Compensate for inset in implicit size.

Set padding to 0 if background is not present or does not have the margins property.

Use more of TextField's properties for setting the appearance.

Fix input alignment in RTL layouts.

Use colorGroup to set colors instead of deprecated properties.

Make placeholder text renderType match TextField's.

Use `clear()` instead of `text = ""`.

Use disableTextColor for placeholderTextColor.

Reduce background to 2 elements and set implicit size like most controls.

Set `anchors.rightMargin` of inlineButtonRow to `background.margins.right`.
2021-03-13 13:59:02 +00:00
Niccolò Venerandi
2f48e808d5 Make compositing-off margins in the panel same size of compositing on 2021-03-12 14:54:15 +00:00
Jan Blackquill
96b069d4f4 widgets>lineedit.svg: remove double ring
We aren't using this style yet, so having it in our Plasma
theme is weird.
2021-03-11 21:05:14 -05:00
Dominic Hayes
1b9b03529b Change ContrastEffect check to AdaptiveTransparency in A.T. check
Fix Contrastless Plasma Styles not being able to use Adaptive
Transparency by changing the check, for ContrastEffect being enabled in
the Plasma Style to instead check if AdaptiveTransparency is enabled in
the Plasma Style, for determining if Adaptive Transparency should be
available.

BUG: 434200
FIXED-IN: 5.81
2021-03-11 20:34:11 +00:00
Dominic Hayes
3701b184d8 Revert 4d4db0b199780d8e3a94594fb72739565cd3919d's theme changes
Undoes the theme changes in that commit since they got pushed too
early in the Frameworks release cycle to be effectively Plasma 5.22
exclusive, saddling users on 5.21 with increased transparency all the
time with no way to turn it off. This was not the intended user
experience.

This commit will be reverted in time to be released with Frameworks 5.83,
which will align with the release of Plasma 5.22.

BUG: 434202
2021-03-09 22:31:58 +00:00
Nate Graham
5447cef2d8 Port to singleton Units
The context property version is slower to access and won't be supported
in Qt6. Let's port away from it and use the singleton version instead.

Here was my full process for making this change:

1. Made the change with `find . -name '*.qml' | xargs perl -pi -e 's/units\./PlasmaCore\.Units\./g'`
2. Verified no more occurrences with `grep -r " units."`
3. Made sure this didn't change any comments in a silly way by inspecting the output of `git diff | grep "+   " | grep "//"`
4. Manually inspected the full git diff to make sure there were no other unintentional or silly changes (there were none)
5. verified that all changed files have the PlasmaCore import with the correct name with `for FILE in `git status | grep modified | cut -d ":" -f 3`; do grep -q "as PlasmaCore" $FILE || echo "$FILE needs the PlasmaCore import"; done` (one needed the import)
2021-03-07 13:34:47 +00:00
Laurent Montel
bc9eb362c8 Remove not implemented method 2021-03-05 20:50:16 +01:00
Nate Graham
177be0c79a Use more standard durations
CCBUG: 433948

Note that this also makes the busy indicator stop spinning at all when
the user has disabled animations. Instead it just shows a static image.
2021-03-05 16:47:08 +00:00
Noah Davis
98810a7dd5 Make durations match Kirigami durations 2021-03-05 06:18:56 -05:00
Nate Graham
15b75de387 [plasmacomponents3/TextField|TextArea] Fix placeholder text
In TextField, it was not disabled, so the mousearea that changes the
cursor shape wasn't working properly. Fixed now.

In TextArea, it was not disabled, not the right color, and was
inappropriately selectable. Fixed now.

The UI tests were testing for these conditions but were broken, and are
now fixed by these changes.

BUG: 433864
FIXED-IN: 5.80
2021-03-02 12:44:07 -07:00
Kai Uwe Broulik
6ac6ff028e [Icon Item] Load .ico files using QIcon
Loading it as a `QImage` just uses whatever first frame there is in the image
whereas `QIcon` has all the logic needed for interpreting `.ico` files and
picking the right pixmap for a given size.

BUG: 429927
2021-03-02 00:35:41 +00:00
Niccolò Venerandi
4d4db0b199 Use adaptive transparency and tweak contrast effect to make better use of it 2021-03-01 22:25:52 +00:00
Nate Graham
aa1ce4e7ea [PlaceholderMessage] Correct my silly mistake
Sorry about that.
2021-03-01 14:46:56 -07:00
Nate Graham
498983d8de [PlaceholderMessage] Sync with Kirigami version
Can't let these drift out of sync.
2021-03-01 10:37:07 -07:00
Marco Martin
f709007d46 add missing sizeForLabels 2021-03-01 14:30:17 +01:00
l10n daemon script
5072f38e80 GIT_SILENT Upgrade ECM and KF version requirements for 5.80.0 release. 2021-02-28 19:09:04 +00:00
Aleix Pol
f33d8b795f Print which file is responsible for an error
Makes it easier to debug issues.
2021-02-24 15:51:04 +01:00
Aleix Pol
918dc221e2 --warning
Don't warn when there's no tabs visible
2021-02-24 15:50:08 +01:00
Noah Davis
b84fbb01f7 [PC3 ToolTip] Reduce margins to smallSpacing
CCBUG: 428191

BUG: 433243

FIXED-IN: 5.80
2021-02-19 13:56:16 -05:00
David Faure
2b31e65cb4 GIT_SILENT increase KF_DISABLE_DEPRECATED_BEFORE_AND_AT 2021-02-13 14:44:55 +01:00
l10n daemon script
db1808346c GIT_SILENT Upgrade KF version to 5.80.0. 2021-02-13 12:32:09 +00:00
Arjen Hiemstra
e1c784dfa4 Port Plasma Style Kirigami Theme plugin to new Kirigami API 2021-02-12 10:30:43 +00:00
Ahmad Samir
c9bb42b2e4 Add compile_commands.json to .gitignore
See https://invent.kde.org/sdk/kdesrc-build/-/merge_requests/82

GIT_SILENT
2021-02-11 14:32:47 +02:00
Nate Graham
b4dd1a1819 [plasmoidheading] Use intended color for footers
There's no such color group as PlasmaCore.Theme.WindowColorGroup; the
one corresponding to the window color group is
PlasmaCore.Theme.NormalColorGroup.
2021-02-03 21:39:01 -07:00
Nate Graham
32eef18f50 [plasmacomponents3/spinbox] Fix selected text color
There's no such color as theme.selectedTextColor.
2021-02-03 21:30:16 -07:00
Jan Blackquill
353bb1578b widgets>lineedit.svg: fix pixel misalignment woes
This fixes all visible pixel misalignment and different-sizes-causing-weird-behaviour
issues with the line edit widget.

BUG: 432422
2021-02-02 21:07:31 +00:00
Christophe Giboudeaux
ac9562606c Revert "Fix build errors if PREFIX is different from ECM's PREFIX."
This change breaks the build for applications that have no dependency
on ECM (eg: ikona).

A similar change was also reverted in kpackage for the same reason.

This reverts commit ff5ed26f21.
2021-02-01 12:03:22 +01:00