Commit graph

434 commits

Author SHA1 Message Date
Ivailo Monev
7bea4731e7 plasma: do not add the default applet actions twice to the action collections
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-10 07:22:03 +03:00
Ivailo Monev
4677b62c24 plasma: remove reference to declarative library
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-07 00:41:48 +03:00
Ivailo Monev
b8d4dc0dc4 generic: call static KStandardDirs methods as such
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-05 02:04:03 +03:00
Ivailo Monev
559411bd09 generic: optimize MIME type detection
KRun already had such optimization in place for example, that makes the
file slave kinda special tho as it will determine MIME type only from mode
but the goal is to not even spin a job and a slave for local files

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-04 21:26:18 +03:00
Ivailo Monev
817b7a4aab kdecore: rework KMimeType
more accurate probing then before, notably by probing the file content
from the file slave (only the name was checked before because the
filepath was not a full path in some cases and the file could not be
open)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-04 20:14:53 +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
540ee2cde7 kio: rework the job scheduler
thread-safe and private

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-02 02:16:50 +03:00
Ivailo Monev
aebe72a932 generic: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-30 21:45:09 +03:00
Ivailo Monev
98f6b2b434 plasma: update the key sequence widget when the applet global shortcut changes
for the case when it is stolen

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-27 04:18:19 +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
451dc7ea32 plasma: adjust to Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-26 23:49:18 +03:00
Ivailo Monev
2a6dd1965c plasma: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-26 22:59:39 +03:00
Ivailo Monev
e47359782c plasma: make Plasma::Applet::setGlobalShortcut() set the shortcut once only
the shortcut is managed internally by Plasma::Applet

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-26 01:08:31 +03:00
Ivailo Monev
334ecceb27 plasma: set the associated action of the shortcut editor
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-25 09:44:35 +03:00
Ivailo Monev
843463c95d kdeui: drop KSortcut
missing proper configuration interface for the shortcuts, the old one
was borked anyway

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 10:19:03 +03:00
Ivailo Monev
d725bcef69 kdeui: remove old KGlobalAccel autoloading feature leftovers
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-22 02:51:29 +03:00
Ivailo Monev
174f6a30e0 plasma: assume QPixmap paint engines support composition
the backbone of QPixmap is QImage

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-19 20:31:07 +03:00
Ivailo Monev
2ad07c5a86 plasma: remove redundant widget properties
once used in qml bindings and such, now redundant

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-19 20:24:03 +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
489bb13a8b plasma: bring back Plasma::RunnerManager::reloadConfiguration() method
does totally different thing tho - the old method was reloading the
configuration of Plasma::RunnerManager while this one reloads the
configuration of the loaded runners. it is a convenience method still that
should not be used as runners are matching for obvious reasons

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-19 07:28:38 +03:00
Ivailo Monev
d3ca6d35c5 plasma: do not load runners when the allowed runners change
unless there are runners loaded that may have to be unloaded for example,
that way the initial loading of runners will be delayed until the first
query

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-19 02:51:16 +03:00
Ivailo Monev
8c2136445e plasma: remove unused Plasma::RunnerContext::Type enum
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 22:35:46 +03:00
Ivailo Monev
df9bffd10c plasma: reset runners context before waiting
so that runners know that it is time for them to stop because the context
is no longer valid

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 22:28:17 +03:00
Ivailo Monev
bd3425b187 plasma: Plasma::RunnerManager documentation update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 22:23:23 +03:00
Ivailo Monev
8791f0571b plasma: do not emit Plasma::RunnerContext::matchesChanged() from Plasma::RunnerContext::reset()
any preperation for matching anew should be done prior to starting a query

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 22:14:48 +03:00
Ivailo Monev
6514cb22a6 plasma: remove unused private member
performance gain for the runners, there should be no duplicates and even
if there was the only thing that was done about it is to print a debug
message when build for debugging

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 22:06:26 +03:00
Ivailo Monev
595991ff55 plasma: simplify runners setup and correct signals emission
Plasma::RunnerManager::matchesChanged() is now emitted when new matches
arive, Plasma::RunnerManager::queryFinished() when matching is done (all
match jobs finished)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 18:18:42 +03:00
Ivailo Monev
f452997709 plasma: remove unused and redundant Plasma::RunnerContext methods
nothing but the manager is supposed to remove matches and there is a
Plasma::RunnerContext::reset() method

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 17:32:27 +03:00
Ivailo Monev
ac5d407fd5 plasma: remove unused Plasma::RunnerContext methods arguments
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 17:09:11 +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
632dd982df plasma: remove redundant KThreadPool::setMaxThreadCount() call
KThreadPool uses the same value by default

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 06:40:49 +03:00
Ivailo Monev
a871678ec4 plasma: rework runners classes to not pass around the context
unused in most cases, shared data and dangerous to pass around

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 05:15:02 +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
747c37269b plasma: remove unused Plasma::RunnerContext MIME type info
runners can determine it anyway, generic type detection is done already

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 01:02:11 +03:00
Ivailo Monev
b2a66f5a72 plasma: const-ify Plasma::RunnerContext arguments
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 00:16:31 +03:00
Ivailo Monev
7683b1d29e plasma: drop redundant Plasma::QueryMatch type feature
it could be used to sort ala relevance but what would the relevance feature
would be for then?

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-18 00:06:05 +03:00
Ivailo Monev
c4c494d705 plasma: do not copy the query match in Plasma::RunnerContext::addMatch()
its relevance remains unchanged

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-17 23:01:28 +03:00
Ivailo Monev
e7fcb90738 plasma: actually use the priority
the runners priority property was not used for anything, it is now

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-17 21:35:38 +03:00
Ivailo Monev
4152c2b044 plasma: de-virtualize Plasma::Animation::setDuration() and make it public
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-17 21:10:35 +03:00
Ivailo Monev
54d5ec4782 plasma: initialize all members of private class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-17 20:05:47 +03:00
Ivailo Monev
22e93f449e plasma: properly initialize internal class members
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-17 19:57:40 +03:00
Ivailo Monev
935b228484 plasma: simplify animations classes
the proxy class Plasma::EasingAnimation is simply redundant, just one
more virtual function call which slows the animations

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-17 19:44:26 +03:00
Ivailo Monev
76fa8e28b8 plasma: remove checks for non-existing properties in Plasma::ScrollWidget
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-17 01:47:22 +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
3f4425e9bb plasma: remove redundant Plasma::Animator::Animation::LastAnimation enum
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-16 23:31:47 +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
1f11147bd4 plasma: drop redundant Plasma::PluginLoader class
not finished either

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-16 22:33:18 +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