Commit graph

162 commits

Author SHA1 Message Date
Ivailo Monev
ae72f73768 kdeui: simplify KToolInvocation::invokeMailer()
thunderbird for one accepts a single URL (which probably is split into bits
and checked for query items). it does not have "t", "s", etc. placeholders
in its .desktop file so that whole map thing is not really working well

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-12 15:04:52 +03:00
Ivailo Monev
0e0db0b815 kdeui: move session management to KApplicaiton
every comment about X11 and session management in general claims it was
broken, not going to claim otherwise. everything that does not use
KApplication shall not be involved into session management now and gets
the middle finger (SIGTERM or SIGKILL) after 5 sec by klauncher when the
session is done

also session management has to be explicitly enabled by applications
now, disabled by default

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-09 08:29:51 +03:00
Ivailo Monev
59f92c0970 generic: compiler warning fixes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-03 20:21:35 +03:00
Ivailo Monev
dcb57aa69a kdeui: manually delete the dialog in KMessageBox::createKMessageBox()
Qt::WA_DeleteOnClose can have some unforseen consequences

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-02 08:57:44 +03:00
Ivailo Monev
f44fc1ee8d kdeui: tweak KMessageBox layout
with a fixed-size contstraint the stretch factor bits are redundant

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-30 23:33:31 +03:00
Ivailo Monev
0e4e6a717f kdeui: import action collection configuration when adding one to KShortcutsDialog
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-30 23:02:11 +03:00
Ivailo Monev
faaf690e9e kdeui: use fixed-size size constraint for KMessageBox dialogs
effectively reverting 4ed10bdd76 but with a
twist

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-30 22:44:17 +03:00
Ivailo Monev
072673d082 kdeui: delete the KMessageBox dialog on close
what if the dialog is closed between show and exec by the window manager
tho?

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-30 22:35:38 +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
53dc9fede5 kdeui: enable opening of external links for KMessageWidget and disable text selection
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-30 21:31:32 +03:00
Ivailo Monev
2a566aa4d0 kdeui: rework KMessageBox layout
finally it is not scuffed

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-30 08:24:48 +03:00
Ivailo Monev
78232470de kdeui: always use QTextBrowser for the details text
otherwise the look and feel is not consistent

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-30 07:49:07 +03:00
Ivailo Monev
0360088d1e kdeui: do not use KSqueezedTextLabel in KMessageBox
because the message may be rich text, see the previous commit

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-30 07:46:22 +03:00
Ivailo Monev
aa43f7335c kdeui: fix regression since 956cfc5a59
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-30 05:29:50 +03:00
Ivailo Monev
5a2df923aa kdeui: use QTextBrowser instead of KTextEdit for detailed messages
the only way to make external links accessible right now, may revert it
if QTextEdit gets a method to make external links accessible. required for
the next commit

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-30 03:34:27 +03:00
Ivailo Monev
70f0f3d997 kdeui: build fix
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-26 23:27:42 +03:00
Ivailo Monev
956cfc5a59 generic: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-26 22:38:19 +03:00
Ivailo Monev
b64a94ac19 kdeui: handle shortcut stealing in KShortcutsEditor
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-26 04:19:37 +03:00
Ivailo Monev
383b6c53d0 kdeui: change only the active shortcut from KShortcutsEditor
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-26 01:47:33 +03:00
Ivailo Monev
d74d369e5e kdeui: simplify KActionCollection settings reading and writing
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-25 23:10:57 +03:00
Ivailo Monev
d077f26ce5 kdeui: deal with TODO related to KKeySequenceWidget
it is simple - as soon as a second key sequence is added to action it will
be a partial match with itself (atleast)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-25 09:08:48 +03:00
Ivailo Monev
080d40fc9f kdeui: set flags for the KShortcutsEditor items
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-25 05:24:01 +03:00
Ivailo Monev
f8dbe8fb29 kdeui: copy the action tool and status tips in KShortcutsEditor
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-25 05:08:59 +03:00
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
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
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
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
093ad1d84d kdeui: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 19:17:23 +03:00
Ivailo Monev
4857f6cd17 kdeui: rework KAboutKdeDialog to expand the text as much as possible
also to parent widgets properly

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-15 22:55:46 +03:00
Ivailo Monev
45674c0c4e kdeui: replace KFontDialog and KFontChooser with QFontDialog
requires the following commit from the Katie repo:
97fea30784dfdc41a6599ea31219d0b366d8efaa

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-31 19:01:45 +03:00
Ivailo Monev
bb11a3e5f4 kdeui: replace KFontComboBox with QFontComboBox
one less class to maintain with substitute provided by Katie

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-31 01:40:10 +02:00
Ivailo Monev
75b9cfddd3 generic: const-ify private data pointers where copying is disabled
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-23 06:49:59 +02:00
Ivailo Monev
2cee1a15f8 kdeui: replace QLabel with KPixmapWidget in KPasswordDialog
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-30 16:16:00 +03:00
Ivailo Monev
23cc474596 kdeui: replace QLabel with KPixmapWidget in KNewPasswordDialog
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-29 19:20:18 +03:00
Ivailo Monev
099f49db36 generic: replace QLabel with the new KPixmapWidget class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-29 18:06:09 +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