Commit graph

120 commits

Author SHA1 Message Date
Ivailo Monev
4869eb7bcc plasma: check the popup dialog visibility on status change too
because the status may change as the popup dialog is visible

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-24 06:35:13 +03:00
Ivailo Monev
11e1a73adb plasma: use pulse animation for Plasma::ItemStatus::NeedsAttentionStatus
because Plasma::IconWidget state is messed up if pressed is set manually
and it is possible for it to be activated (if it accepts mouse button
events). it is also fancier, especially when the icon is not very small

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-21 14:19:45 +03:00
Ivailo Monev
92ff7de73c plasma: proxy QDoubleSpinBox from Plasma::SpinBox
rounding via qRound() and other methods is always possible anyway

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-20 12:23:29 +03:00
Ivailo Monev
6635f1d35d plasma: drop extender support
unused

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-20 09:50:05 +03:00
Ivailo Monev
25e28e7076 plasma: simulate pressed icon for applets that have Plasma::ItemStatus::NeedsAttentionStatus status
this is only for popup applets, normal (Plasma::Applet-based) applets paint
everything and as such should handle status

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-19 01:57:13 +03:00
Ivailo Monev
b90f90905b kio: move most of the KRun bits to KLauncher
two things doing the same thing - one has to go away. also KRun does not
fork and the launched service/application lifetime was bound to the
process launching it, that is not the case with klauncher - it is bound
to the session (in the usual case)

a few things on the TODO list but mostly for services/applications
lacking features

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-12 03:21:17 +03:00
Ivailo Monev
e273741fdb kio: drop MIME type feature of slaves
the specialized one, stat() does it now because emitting MIME type while
also emitting data (in or out) interrupts the data flow

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-03 05:26:56 +03:00
Ivailo Monev
6514366e29 plasma: create the application activation action on demand
for applets that do not have global shortcut set programatically but global
shortcut is set from the configuration interface

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-27 04:07:33 +03:00
Ivailo Monev
8765730377 plasma: plug memory leak
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-19 20:05:17 +03:00
Ivailo Monev
97cfe669fc plasma: do not magically adjust the speed of runners
I've optimized the runners enough to not need such bits

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 07:53:05 +03:00
Ivailo Monev
afb548b2ed plasma: unlock Plasma::QueryMatch
assuming that match (Plasma::QueryMatch) objects are modified by one thread
in the runner itself only or operated on a copy of one matching does not
need a mutex

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 07:43:34 +03:00
Ivailo Monev
2f485d5376 generic: replace QThreadPool and QRunnable with custom class
on a side note it does not solve any thread-safety issues, such are out
of the scope of the class

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 03:05:03 +03:00
Ivailo Monev
a179fd4603 plasma: drop unused runners matching feature
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-17 00:49:17 +03:00
Ivailo Monev
8163991f03 plasma: rework runners to not rely on configuration
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-16 23:23:58 +03:00
Ivailo Monev
95340211ee plasma: drop now unused runner options feature
not to be confused with runners configuration

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-16 21:40:44 +03:00
Ivailo Monev
5597939dbf plasma: remove unused header
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-16 21:40:17 +03:00
Ivailo Monev
f4c2f5c84e generic: drop stylesheet support
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-16 04:31:21 +03:00
Ivailo Monev
bb1e962276 plasma: remove unused private method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-11 13:47:28 +03:00
Ivailo Monev
def76d2d7c plasma: remove declaration of non-existing Plasma::WindowPreview::previewsAvailable() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-11 01:48:35 +03:00
Ivailo Monev
d21869a910 plasma: remove stylesheet getters and setters
slowly but surely stylesheets feature will dissapear

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-10 04:03:03 +03:00
Ivailo Monev
52a8caa5ee plasma: drop everything related to dataengines
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-08 11:32:12 +03:00
Ivailo Monev
f3a9b3c0c2 plasma: do not lock when setting runners speed
much like done for the priority, the speed is enum and not shared data so..

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-07 19:36:37 +03:00
Ivailo Monev
ead9bb1090 plasma: remove redundant private method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-05 12:19:04 +03:00
Ivailo Monev
869ea51b06 plasma: remove unused private member
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-05 12:16:20 +03:00
Ivailo Monev
ce66b4435a plasma: remove qrc support leftovers
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-10-22 19:17:46 +03:00
Ivailo Monev
93c35e4c15 generic: remove build-time compat options
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-10-21 19:57:19 +03:00
Ivailo Monev
73d767817d plasma: remove scripting leftovers
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-10-21 19:28:06 +03:00
Ivailo Monev
fbfb374b9c generic: drop scripting and tray support
after changes to multiple sub-projects (Katie, kdelibs, kde-workspace
and kde-extraapps) that finally happened, can write lots about it but I
will keep it short - by rewriting parts that were using js/qml (e.g. the
plasma applets) the desktop startup was reduced to half, also the legacy
tray thing shall be no more (anything that needs tray icon shall be a
plasma applet now) thus some applications and features will be dropped
aswell. see all repositories for the changes done

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-10-21 08:06:58 +03:00
Ivailo Monev
9afe0d8566 plasma: remove redundant constraints checks
whatever the constraints were attempting to filter and secure is unused now
and I bet in the past - the "Constraints" group is not a thing

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-24 21:53:02 +03:00
Ivailo Monev
9c683ba417 plasma: do not override QStyle::ComplexControl::CC_Slider control rectangle
Plasma::Slider is now painted as native widget

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-20 19:46:24 +03:00
Ivailo Monev
961d56277c plasma: paint Plasma::ComboBox, Plasma::LineEdit, Plasma::PushButton, Plasma::Slider and Plasma::SpinBox as native widgets
goal is to paint as little as possible with svg images, the fact that there
are 3 kinds of widgets (native, plasma and qml) makes things look
different and as if made of bits and pieces instead of having a uniform
look. with my reimplementation of several widgets and applets it is less
so tho

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-20 10:26:36 +03:00
Ivailo Monev
88598523d0 kdeui: new KPixmapWidget
the idea for QImage/QPixmap-optimized widget occurred to me while
writing kimageviewer (see the kde-playground repo), unlike the widget I
wrote for kimageviewer this one supports drag-n-drop tho and is drop-in
replacement for QLabel when showing only a pixmap is required. the
widget also shows a small image while dragging ala ksnapshot

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-29 08:59:51 +03:00
Ivailo Monev
f83e176dcf plasma: remove bogus tooltip widget style sheet override
I don't know what that was supposed to style ("p" is the class name, is
supposed to be something like "QLabel")

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-07 21:24:57 +03:00
Ivailo Monev
7e543894d9 plasma: remove forward-declarations of non-existing Plasma::AccessAppletJob class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-01 08:52:33 +03:00
Ivailo Monev
ac36e123ec generic: remove redundant X11 checks and headers inclusions
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-10 22:04:39 +03:00
Ivailo Monev
67f0a70c9d plasma: remove unused private Plasma::PlasmoidService and Plasma::PlasmoidServiceJob classes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 00:23:19 +03:00
Ivailo Monev
5289e1e95a plasma: remove unused private Plasma::DataEngineService and Plasma::GetSource classes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-02 23:39:43 +03:00
Ivailo Monev
b41f9cce51 plasma: call constructors for types created on the heap
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-02 11:33:01 +03:00
Ivailo Monev
0d51245c32 plasma: remove unused header inclusions and dataengine property
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-02 07:29:36 +03:00
Ivailo Monev
a5e996209f plasma: rework services to not use files describing operations
the benfit of this is that a lot of disk I/O and parsing will be avoided
leading to faster plasma-desktop startup for example, also service
plugins are not a thing

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-02 06:54:16 +03:00
Ivailo Monev
2858f3be71 plasma: const-ify the service job parameters
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-02 02:45:51 +03:00
Ivailo Monev
963e5e8735 plasma: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-30 04:14:59 +03:00
Ivailo Monev
f8131668c3 plasma: MOC warning fix
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-22 08:56:47 +03:00
Ivailo Monev
c9e7213de4 plasma: remove unused qClamp() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-22 03:23:55 +03:00
Ivailo Monev
39ea2ed450 plasma: remove unused headers inclusions
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-22 03:23:35 +03:00
Ivailo Monev
d9a7e6b119 plasma: remove unused private members and forward-declarations of non-existing classes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-22 03:17:06 +03:00
Ivailo Monev
b91e927ffa plasma: remove non-operational service monitor
was used for remote widgets and their services

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-22 02:58:32 +03:00
Ivailo Monev
8fb3054aa1 plasma: remove unused private member
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-22 02:51:12 +03:00
Ivailo Monev
e567fdd4cd plasma: log the service monitor engine and location as strings instead of pair
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-22 01:47:14 +03:00
Ivailo Monev
913bc263e7 plasma: minor Plasma::PlasmoidService constructor optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-22 01:40:45 +03:00