Commit graph

5140 commits

Author SHA1 Message Date
Ivailo Monev
3b7d786733 kdeui: redo the items when importing configuration in KShortcutsEditor
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-25 03:57:50 +03:00
Ivailo Monev
91751cc302 kdeui: read actions collections settings once application has started
and since this is done by KApplication it is bound to it, finally shortcuts
are saved and restored tho

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-25 03:28:47 +03:00
Ivailo Monev
d5f125511c kdeui: use the main component as fallback in KShortcutsEditor
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-25 03:13:12 +03:00
Ivailo Monev
ef7148ff44 kdeui: sort internal KShortcutsEditor widget items and show columns based on options and items count
there may be a case of not having any items (e.g. only global shortcuts are
do be shown but there are none), have to figure out how to handle that

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-25 02:44:23 +03:00
Ivailo Monev
d55aff3489 kdeui: do not add widgets for non-configurable shortcuts
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-25 00:14:27 +03:00
Ivailo Monev
667e1073f0 kdeui: steal the action global shortcut by setting it to empty QKeySequence and then removing it
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 23:41:04 +03:00
Ivailo Monev
45ef26718a kdeui: emit globalShortcutChanged() from KAction
no way the grab failed or something other than KGlobalAccel grabs the
shortcut by force from KGlobalAccel, right?

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 23:37:43 +03:00
Ivailo Monev
d3fd904c29 kdeui: implement KShortcutsEditor::allDefault() and apply changes to the sequences
now to figure out if importing of action collections settings should be
magic or done by a KShortcutsEditor::importConfiguration() call (there is
only one place where it is called, see kwin/kcmkwin/kwindesktop/main.cpp)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 23:09:51 +03:00
Ivailo Monev
1e00291be2 kdeui: set the top-level items icon in KShortcutsEditor
kinda hack tho but makes it easier to distinguish between main and plugin
action collection shortcuts, if there is only one top-level item it should
not be visible (decorated) for cases like kwin KCM but this will be done
later on

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 22:34:39 +03:00
Ivailo Monev
9ca75a8355 kdeui: implement KShortcutsEditor::keyChange() signal
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 22:18:55 +03:00
Ivailo Monev
e7abdd765f kdeui: setup conflict detection in KShortcutsEditor
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 22:00:07 +03:00
Ivailo Monev
f9fdbc6a7e kdeui: simplify reading and writing of shortcut settings
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 21:40:13 +03:00
Ivailo Monev
bbf7fddba4 kdeui: expand root KShortcutsEditor items and look for exisiting one first
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 20:48:23 +03:00
Ivailo Monev
f623641b73 kdeui: semi-working KShortcutsEditor
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 13:41:29 +03:00
Ivailo Monev
378011afe8 kdeui: remove unused KShortcutsEditor::ActionType enums
were not even used in the old implementation

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 11:12:13 +03:00
Ivailo Monev
cf229be24d kdeui: drop KCheckAccelerators
already have an idea about something like it but better

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 10:59:28 +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
a8906fbcf5 kdeui: testing build fix
tests pass to no surprise

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 06:15:13 +03:00
Ivailo Monev
39998ee94e kdeui: accept the ambiguous event in KAction::event()
with an upcomming change in Katie it is required to stop sending events

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-24 06:14:29 +03:00
Ivailo Monev
671d45fe1d generic: adjust to Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-22 04:29:48 +03:00
Ivailo Monev
b8266082ff Merge branch 'master' of ssh://bitbucket.org/smil3y/kdelibs 2024-04-22 02:55:06 +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
9c78166b87 kdecore: debug areas update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-22 00:38:11 +03:00
Ivailo Monev
594e901c4a kdeui: rework KGlobalAccel
global shortcut resolution (the KGlobalAccel methods) work on
application level, X11 as far as I can tell does not have a method to
tell which application has grabbed a key (to fill KGlobalShortcutInfo).
other than that no configuration interface for global shortcuts (not by
KGlobalAccel itself, plasma and its applets have interface for that),
also the shortcuts interface did not and still does not handle global
shortcuts well so that is something to look into.

one of the problems solved with this change is the fact that multiple
plasma applets (e.g. multiple instances of the keyboard applet) could
not use the same shortcut, now it is possible. as for which applet gets
the shortcut action it is the one that has the grab first - that is how
key grabbing works in X11

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-22 00:07:35 +03:00
Ivailo Monev
936a4e3e84 kdeui: new/delete size mismatch fix
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 21:40:37 +03:00
Ivailo Monev
a70b781c58 kdeui: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 21:37:05 +03:00
Ivailo Monev
ac1f9e2eb9 kdeui: KMessageBox optimization
only for the case when notification via KNotification is done

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 20:40:07 +03:00
Ivailo Monev
c31499dd07 generic: drop messages handler support
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 20:17:56 +03:00
Ivailo Monev
713c9394d7 kdecore: drop message box feature of KDebug
tho it can be fixed (by not using queued up message boxes) I am not into
supporting such feature

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 19:40:13 +03:00
Ivailo Monev
093ad1d84d kdeui: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 19:17:23 +03:00
Ivailo Monev
9d2994fad0 kdecore: start as many threads as possible from the queue of KThreadPool
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 17:32:44 +03:00
Ivailo Monev
f53d175e6b kio: handle non-local URLs in KRecentDocument and reject URLs with empty filename
this is mostly for KIO jobs that, for example, get remote URLs

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 16:28:28 +03:00
Ivailo Monev
3be77d2b5f kio: remove unused header inclusion
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 16:00:49 +03:00
Ivailo Monev
4b7f20f57b kdeui: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 16:00:36 +03:00
Ivailo Monev
302a470d3b kded: drop unused window registration feature
no point in passing around windows to kded4 or its modules, job UI delegate
windows are different thing tho

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 15:45:36 +03:00
Ivailo Monev
fc408ce6b3 kdecore: drop command formatting
used only in one place in rich message

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 04:19:39 +03:00
Ivailo Monev
714d831b1f kdecore: drop message formatting
used only in one place in rich message

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 04:10:39 +03:00
Ivailo Monev
fce4c2d3c7 kdecore: drop email formatting
now unused

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 04:07:51 +03:00
Ivailo Monev
a31c876d6c kdecore: drop resource formatting
only one use of it, in the case it was used for what the message is trying
to tell is the least concern (the system would be missing basic MIME data)
which means someone messed up at some level (shared-mime-info is required)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 03:56:04 +03:00
Ivailo Monev
c47f1633d8 kdeui: adjust to Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 00:01:06 +03:00
Ivailo Monev
e75bf1747a kdecore: const-ify KThreadPool::setMaxThreadCount() argument
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-19 22:59:09 +03:00
Ivailo Monev
941a85507b kdecore: reject invalid threads count from KThreadPool::setMaxThreadCount()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-19 22:57:35 +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
d4ab9eae6c kio: KRecentDocument optimization
the bug report was related to the resources system that Katie does not
support

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-19 04:35:28 +03:00
Ivailo Monev
4600904f5b kdecore: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-19 04:34:16 +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