Commit graph

2906 commits

Author SHA1 Message Date
Ivailo Monev
271ffadb7b plasma: remove unused SolidRunner member
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-05 22:39:01 +03:00
Ivailo Monev
f0427c4a8e plasma: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-05 22:36:09 +03:00
Ivailo Monev
e74152d243 kcontrol: fix keyboard KCM edit action initial variant selection and up/down buttons state
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-05 21:33:17 +03:00
Ivailo Monev
6d76faf469 kcontrol: implement add and edit actions for keyboard KCM
TODO: store the descriptions in KKeyboardLayout such that when adding items
to, say, QComboBox the items will be pre-sorted

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-05 20:54:51 +03:00
Ivailo Monev
5f2c455590 kcontrol: set layouts before key repeat settings on startup
in case any XKB-related function fails (such as XkbAllocKeyboard())

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-05 19:41:16 +03:00
Ivailo Monev
23222eff52 plasma: add the keyboard applet from the systemtray applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-05 19:03:29 +03:00
Ivailo Monev
39998c92dc plasma: set the keyboard applet status based on the number of keyboard layouts
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-05 19:03:05 +03:00
Ivailo Monev
b5b873c2b3 generic: keyboard layout applet and kayboard KCM reimplementation
lots of changes with this commit - on the plasma applet side:
 + the applet now handles mouse wheel events
 * the applet itself sets its global global shortcut key
 + the applet itself has configuration interface for the text and flag options
 * ported to the new KKeyboardLayout class
 - no per-window or per-application keyboard layout

on the overall keyboard configuration:
 * no KDED module required
 + keyboard layout descriptions (model, layout, variant, etc.) are actually translated
 - no keyboard configuration will be shown when a keyboard is plugged-in (see bellow)
 - keyboard layout options are not configurable, not via GUI interface anyway

the hotplug plasma data engine, device notifications and solid actions
have to be either reimplemented or extended to handle more device types
(currently the above mentioned handle only removable devices by default
such as cameras, not input devices such as keyboard)

overall - from reimplemented one thing to another and the keyboard
configuration is not done yet (adding and editing keyboard layout not
implemented yet) but in a working state

on a side note the changes here affect kvkbd as it uses D-Bus interface
for keyboard layout change that is no more and has to be ported or (most
likely) replaced with a handler for QEvent::RequestSoftwareInputPanel
event that shows a keyboard on demand

there is also the double-keyboard layout applet thing - applet for the
keyboard layout could be added and the daemon (KDED module) was showing
its own keyboard layout indicator automatically (by default)

the X11 keyboard bell options are next to useless btw - there is
KNotification::beep() for such things so the X11 bell options are
simply dropped

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-05 18:12:13 +03:00
Ivailo Monev
620a7a1136 generic: handle the new Solid::Input interface
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 20:26:24 +03:00
Ivailo Monev
937cbc813b plasma: validate the active battery when battery is added or removed in batterymonitor applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 16:25:07 +03:00
Ivailo Monev
3dd51351b8 plasma: keep references to the battery devices in batterymonitor applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 16:14:37 +03:00
Ivailo Monev
13490a1a02 plasma: use the theme battery icon in batterymonitor applet, if available
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 06:43:55 +03:00
Ivailo Monev
63bd660c21 plasma: validate the active battery when restoring it in batterymonitor applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 05:04:43 +03:00
Ivailo Monev
1c9ce16bb2 plasma: save and restore the active battery of batterymonitor applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 03:06:13 +03:00
Ivailo Monev
b2ae704740 plasma: delay initial batterymonitor applet layout setup
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 02:17:33 +03:00
Ivailo Monev
148a3f836a plasma: set the batterymonitor applet preferred widget icon size to one suitable for panel
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 22:49:45 +03:00
Ivailo Monev
ae8f7c65eb plasma: mark the batterymonitor applet as requiring attention when the battery is low and discharging
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 22:27:43 +03:00
Ivailo Monev
689e15e40b plasma: reimplement battery applet
now with separate options for screen and sleep power management
suppression as well as being able to select which battery to show
information (including icon) for in the tray:
https://ibb.co/DDC01rh

the battery icon is questionably bigger than it should be, have to test
it with battery that is recognizable still (PS3 controller battery
provides only capacity and status info)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 22:18:05 +03:00
Ivailo Monev
3187c6f825 plasma: query for batteries via solid directly from systemtray applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 17:38:42 +03:00
Ivailo Monev
221aca19c1 libs: query for batteries via solid directly from WorkspaceScripting::AppInterface::hasBattery()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 17:17:23 +03:00
Ivailo Monev
671d3667d4 plasma: disconnect the powerSupplyStateChanged() and capacityChanged() signals on battery unmap in soliddevice data engine
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 16:39:10 +03:00
Ivailo Monev
1b6e45e3e0 plasma: sync soliddevice data engine battery charge state map
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 16:23:27 +03:00
Ivailo Monev
b2e2da7b08 plasma: map powerSupplyStateChanged() and capacityChanged() signals in soliddevice data engine
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 16:19:52 +03:00
Ivailo Monev
2e93ffd6a8 plasma: sync and update soliddevice data engine maps
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 04:59:17 +03:00
Ivailo Monev
cc1e651c49 plasma: implement battery capacity and power supply data
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 04:38:17 +03:00
Ivailo Monev
de914115ac plasma: correct and update soliddevice content type checks
incorrect since before the fork

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 04:21:20 +03:00
Ivailo Monev
ff06818144 plasma: set the hotplug data engine watcher poll interval to 5 seconds
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 04:09:14 +03:00
Ivailo Monev
32fa5497c1 kcrash: delete the details dialog even if not accepted
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 03:56:40 +03:00
Ivailo Monev
ac66784b79 kcrash: implement dialog to show backtrace
also open the program bug report address, unless it is official Katana
application in which case the default bug report URL will be opened
(defined as KDE_BUG_REPORT_URL)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-02 03:33:54 +03:00
Ivailo Monev
2bdaf882c2 plasma: add the group manager configuration interface to the tasks applet configuration interface
done by the icontasks applet but was not done by the tasks applet

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 23:47:38 +03:00
Ivailo Monev
a42f25b004 libs: read launcher items as a list of QUrl
because KUrl passes the URL as-is when it is constructed from string (char
array, QString, etc.) query items (intentionally) are not splitted, fixes
restoration of task manager launchers

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 22:27:52 +03:00
Ivailo Monev
f584f4dbbd kglobalaccel: remove redundant config-kglobalaccel.h build-time header
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 21:38:27 +03:00
Ivailo Monev
1b116dbc2e kdirshare: do not percentage-encode the file links
if only there was a way to tell browsers:
Hey, browser! Don't decode the URL - you don't know where it points to!

for reference:
https://ibb.co/cyhwppK

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 19:07:10 +03:00
Ivailo Monev
114265bd60 kate: oops
because the files are marked as output for custom target and custom
command the build system deleted them after reconfigure..

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 17:24:56 +03:00
Ivailo Monev
a5a07d46ca generic: drop bogus multihead support
note that it is independant of X11 multiscreen, as the comment in
KWin::Workspace::isOnCurrentHead() claims

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 16:41:30 +03:00
Ivailo Monev
f06b7c74e6 Revert "kfreespace: poll for user config changes, even if it does not exist yet"
KStandardDirs::locateLocal() returns the same as
KGlobal::dirs()->saveLocation()
2023-09-01 04:48:02 +03:00
Ivailo Monev
d891677b00 startkde: do not export KDE_SESSION_UID variable
the UID can be obtained via other means and KDE_SESSION_UID is no longer
required by kded, see the following commit in kdelibs repo:
e482da906734dcd5434fc322eac262c775125825

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 03:05:34 +03:00
Ivailo Monev
d02f3ac43d kwin: different take on mouse interception from startupfeedback effect
grabbing the pointer does not play well with the kwin mouse interception
feature, notably for the presentwindows effect

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 02:21:34 +03:00
Ivailo Monev
ab85ad15c3 plasma: do not suspend startup for the wallpaper
plasma-desktop wallpaper does not affect other applications, not during
startup and not after startup is done

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 02:04:58 +03:00
Ivailo Monev
182583a41c Merge branch 'master' of ssh://bitbucket.org/smil3y/kde-workspace 2023-09-01 01:08:34 +03:00
Ivailo Monev
260efdf321 konsole: disable size hint by default
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 00:51:12 +03:00
Ivailo Monev
15b2ebeea2 kreadconfig: do not create application instance
no events to process

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 00:38:09 +03:00
Ivailo Monev
3136e1d92d kcrash: load KDED module during phase 1 and in any session
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 00:27:29 +03:00
Ivailo Monev
6457f6e76a generic: adjust to kded changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-31 23:49:30 +03:00
Ivailo Monev
333aae94ed kreadconfig: keep references to QByteArray objects
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-31 23:35:53 +03:00
Ivailo Monev
04d7b0c309 kreadconfig: optimizations
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-31 23:33:31 +03:00
Ivailo Monev
a0b92ba949 kreadconfig: return 0 when no groups where processed
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-31 23:29:29 +03:00
Ivailo Monev
5a9eef2d1a ksmserver: remove now redundant _KDE_RUNNING atom ownership
kded no longer requires it during early startup, see the following
commit in the kdelibs repo:
e482da906734dcd5434fc322eac262c775125825

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-31 23:26:11 +03:00
Ivailo Monev
17664234e8 kreadconfig: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-31 23:24:46 +03:00
Ivailo Monev
29aac779a2 kcontrol: drop browser support of componentchooser
see 387bdaa93fd6adb0cd8a930454e3be578fa5fdc0 in the kdelibs repo, how a
link will be opened depends on a few things now - the MIME type and what
method is used for opening the URL. if KRun is used the MIME type will
be detetermined and the prefered service for it will be launched, if
KToolInvocation is used first the preferred service for "text/html" will
be attempted with fallback to kde-open and xdg-open which solidifies the
behaviour of "mimetype-determination-in-calling-application" (see
kdelibs/kdecore/sycoca/kprotocolinfo.cpp)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-31 21:31:09 +03:00