47 Commits

Author SHA1 Message Date
Niccolò Venerandi
60e029d9d2 Merge branch 'master' of https://invent.kde.org/frameworks/plasma-framework into work/plasmoidsCanIgnoreMargins 2020-08-24 19:56:20 +02:00
Friedrich W. H. Kossebau
3f8469acb1 Use Q_DECLARE_OPERATORS_FOR_FLAGS in same namespace as flags definition
Having the macro's definition of the operator| in the namespace of the
flags argument improves/unbreaks things for the argument-dependent
lookup of unqualified function names, e.g. when flags are combined in
calls of other methods, but there is some other operator| defined in the
namespace of the current code.

Given Q_DECLARE_OPERATORS_FOR_FLAGS creates inlined functions, this
should be a source and binary compatible change.

Qt did similar for Qt 5.12 in
https://codereview.qt-project.org/c/qt/qtbase/+/225348
2020-08-24 09:21:41 +00:00
Niccolò Venerandi
dcb26d979e ops 2020-08-22 16:56:05 +02:00
Niccolò Venerandi
db2126cea1 Use a hint instead of a bool 2020-08-22 16:54:52 +02:00
Andreas Cord-Landwehr
d10afb5d2a plasma-framework: Convert copyright statements to SPDX expressions 2020-08-13 19:08:54 +00:00
Marco Martin
57fdb56790 support for user removing background and automatic shadow
Summary:
add the ability for the user to override the background hints anddecide
about applets having background or a shadow
A new handle button will be added to manually enable/disable background for
plasmoids that support it
if they don't, the ImmutableBackground flag is set in the hints.

PlasmaCore.ColorScope has been expanded to work more like Kirigami.Theme (which will be replaced by) even if it's oòld behavior still works. This makes the complementary colorscope in applets with shadow actually work (and at the same time gives a clearer porting path for kf6)

Test Plan: Tested the functionality and correct save/restore

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: davidedmundson, ndavis, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D25590
2019-11-29 10:45:08 +01:00
Yuri Chornoivan
052a81f755 Fix minor issues found by EBN and typos 2019-11-10 12:06:10 +02:00
Yuri Chornoivan
72ca2f79e0 Fix minor EBN issues and typos 2018-10-22 21:05:29 +03:00
Yuri Chornoivan
38431eebfa Fix minor typos 2018-09-05 22:22:38 +03:00
Montel Laurent
7f0c023d3f Use nullptr + add explicit 2017-12-13 07:36:22 +01:00
Friedrich W. H. Kossebau
fcee026657 API dox: note CamelCase includes by @class tag with more classes 2017-05-26 19:55:09 +02:00
Friedrich W. H. Kossebau
8749591922 API dox: fix doxygen notation with some post-position comments 2017-05-26 19:54:11 +02:00
Roman Gilg
daee27f096 [Menu] Improve available space correction for openRelative
There was already some kind of detection and adjustment if there is not enough
space for the popup available. Do some more work by placing the popup according
to its PopupPlacement enum. Do this also if the popup breaks the top or left
boundary of the screen.

Also fixes some minor problems:

* TopPosedRightAlignedPopup was the same as RightPosedTopAlignedPopup, but in
  the first case the menu should be on top of parentItem
* LeftPosedTopAlignedPopup was above parentItem and not left of it
* Small documentation error

Reviewers: #plasma, hein

Subscribers: plasma-devel, #frameworks

Tags: #frameworks, #plasma

Differential Revision: https://phabricator.kde.org/D4867
2017-03-02 21:02:32 +01:00
Marco Martin
47ec9b84db correctly forward status from applets to containment
Summary:
unfortunately hiddenvisibility is the "biggest" status
that makes computing the proper status tricky.
if an applet in the containment is hidden, we must not mark as
hidden the whole containment, because it's as if hidden was
(as it should be) the smallest in the enum

BUG:372062

Test Plan: touchpad plasmoid no longer hides the systray

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: plasma-devel, #frameworks

Tags: #plasma, #frameworks

Differential Revision: https://phabricator.kde.org/D4174
2017-01-17 18:07:10 +01:00
Albert Astals Cid
5c46e32993 Q_ENUMS -> Q_ENUM and Q_FLAGS -> Q_FLAG
REVIEW: 129826
2017-01-14 01:06:28 +01:00
Marco Martin
84c29fa3d0 new containment type for the systray
add a new containment type for use in the systray:
this way it will be able to have a screen number without
actually creating a panel from its own

REVIEW:128118
2016-06-07 20:18:06 +02:00
Leslie Zhai
97ef641566 Add HiddenStatus for plasmoid self-hiding
Self-hiding plasmoid is useful https://forum.kde.org/viewtopic.php?f=83&t=39501
for example, bluetooth plasmoid can be totally hided when there is NO bluetooth
adpater available.

PassiveStatus is NOT enough, because plasma-workspace's systemtray applet ONLY
hide the passive status plasmoid into ExpandedRepresentation. when click the
expanding triangle, the 'hidden' plasmoid is still visible.

So I added HiddenStatus and implemented it in the plasma-workspace systemtray
applet.

REVIEW: 126297
2015-12-23 22:17:20 +08:00
Marco Martin
f278416753 Revert "very basic prototype for delete undo"
This reverts commit f8ba97ae3e346e7ab8ab0859cd640089dfd72bdf.
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
David Edmundson
f817168d02 Fix remaining doxygen exporting in Plasma.Core 2014-08-13 01:07:55 +02:00
Marco Martin
924818a0ca don't link agains KConfigWidgets
not needed anymore
2014-05-19 16:58:37 +02:00
Kevin Ottens
72ba7b4146 Apply the astyle-kdelibs script 2014-04-26 01:48:37 +02:00
Aleix Pol
437962f2e8 Introduce a new plasmoid status
REVIEW: 117722
2014-04-24 16:56:51 +02:00
Marco Martin
47dfda75c0 introduce the signal Corona::startupCompleted()
when emitted we are sure all containments *graphics objects*
 have been created
2014-04-22 14:58:12 +02:00
Marco Martin
a2b436aef8 remove all references to runners 2014-04-16 18:56:22 +02:00
Aurélien Gâteau
43e2b0f670 Unbreak build of code using plasma-framework
plasma_export.h is now installed in include/plasma/, not in include/.
Code using plasma-framework does not have include/plasma in its include
directory list, so plasma-framework headers must refer to others using
</plasma/foo.h>, not "foo.h".

CCMAIL: aleixpol@kde.org
2014-03-18 12:01:36 +01:00
Aleix Pol
2ef12f1ee8 More headers tweaking
Don't install the camel-case headers twice
Look for the plasma_export.h in the current directory instead of jumping
around in the project.
2014-03-17 16:48:49 +01:00
Marco Martin
8750d01f40 move the tracking of uiReady into libplasma
doesn't still have nothing about ui, is completely bookkeeping, but is
easier to have it correct there
2013-08-09 21:51:13 +02:00
Marco Martin
749d8d900c add private ctor 2013-05-15 19:56:13 +02:00
Marco Martin
aa2c4a6595 add all Q_ENUMS in Plasma::Types 2013-05-15 19:48:44 +02:00
Marco Martin
40fd2f23ca Rename BackgroundHints 2013-05-14 21:02:54 +02:00
Marco Martin
13045faffa rename ItemStatus 2013-05-14 20:49:50 +02:00
Marco Martin
6e113e6176 rename MarginEdge 2013-05-14 20:37:16 +02:00
Marco Martin
8f2e5b2375 renamed ComponentType 2013-05-14 20:33:34 +02:00
Marco Martin
7761a995f2 rename ImmutabilityType 2013-05-14 20:27:32 +02:00
Marco Martin
aad4945cf8 rename PopupPlacement 2013-05-14 19:16:37 +02:00
Marco Martin
7b3c29ee07 rename Plasma::Position 2013-05-14 19:08:43 +02:00
Marco Martin
6b4d1f31d1 rename Plasma::Direction 2013-05-14 18:44:12 +02:00
Marco Martin
52b42a247e rename Plasma::ActionType 2013-05-14 18:39:07 +02:00
Marco Martin
c90e6d23cf rename Plasma::ContainmentType 2013-05-14 18:34:40 +02:00
Marco Martin
812b9a06ab get rid of Plasma::Location 2013-05-14 18:27:27 +02:00
Marco Martin
9b9fbf6eb9 get rid of Plasma::FormFactor 2013-05-14 18:19:33 +02:00
Marco Martin
ad2fe77745 get rid of Plasma::Constraint 2013-05-14 18:08:58 +02:00
Marco Martin
e07600a83f Put all Plasma emums in a Types class
This makes possible to use them directly frmo QML
as a minus, is not pretty and requires tons of search and replace in old
c++ code
2013-05-10 19:29:13 +02:00
Marco Martin
3ce3048ad1 Containment::ToolType -> Plasma::ActionType
actions categories are no more Toolbox-specific, but generic properties for actions
2013-02-19 14:04:20 +01:00
Marco Martin
f5b51c7c54 Containment::Type -> Plasma::ContainmentType 2013-02-19 13:52:32 +01:00
Sebastian Kügler
7dfe957e66 The Big Move
All cpp code moves into the src/ subdirectory, as the Frameworks policy
suggests.

Directory structure should now be in line with other, future frameworks.
2013-02-14 17:17:12 +01:00