Commit graph

4788 commits

Author SHA1 Message Date
Ivailo Monev
88394f1a7f kdecore: use QCryptographicHash::hash() to make lock name
converting the file to hex can result in way too long file name and
infinite loop in KLockFile::lock()

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-20 12:04:51 +03:00
Ivailo Monev
96de1ec99f kio: check only the number of maximum recent document entries to decide if adding should be disabled
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-20 11:53:53 +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
7139774873 kioslave: fix file slave runtime warning
prior to cf6ac06d91 the slave was simply
exiting but that is no longer the case

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-19 20:20:15 +03:00
Ivailo Monev
bc8e0c451e kdeui: fix KNotification sound notification feature
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-19 19:53:55 +03:00
Ivailo Monev
00400ef6de kioslave: correct close() result check in FileProtocol::put()
close() is not documented to return positive integer, it returns either
zero or -1

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-19 19:35:42 +03:00
Ivailo Monev
b15290d523 includes: remove non-existing headers references
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-19 18:30:32 +03:00
Ivailo Monev
b1b83d3afd plasma: do not add stretches around the Plasma::TabBar proxy
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-18 20:09:13 +03:00
Ivailo Monev
9222bc71e1 plasma: remove redundant Plasma::Applet::eventFilter() reimplementation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-18 17:29:49 +03:00
Ivailo Monev
84d27ea0b7 kio: log the protocol of the slave that fails the verifications
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-18 12:32:10 +03:00
Ivailo Monev
552d89425b kioslave: implement Authorization metadata for http slave
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-16 13:46:36 +03:00
Ivailo Monev
46cf566daa plasma: clear the internal Plasma::ToolButton image member from Plasma::ToollButton::setImage()
if the image path happened to be the same but the elemente ID not then the
image was not going to change, that is no longer the case

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-16 11:10:36 +03:00
Ivailo Monev
581fe4066a plasma: do not adjust Plasma::ScrollWidget on timer
while the compression of the scrollbars adjustment has its gain the visual
glitches that resizing on timer causes are not worth it

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-14 15:04:06 +03:00
Ivailo Monev
e66a124829 plasma: do not deep-copy the Plasma::Applet::action() and Plasma::Applet::addAction() arguments
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-14 12:00:06 +03:00
Ivailo Monev
7d56c26074 plasma: call QToolButton constructor in Plasma::ToolButton constructor
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-14 08:43:19 +03:00
Ivailo Monev
c4e23a5c3f plasma: remove redundant signals declaration
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-10 06:59:27 +03:00
Ivailo Monev
8656f87085 plasma: remove unused Plasma::ScrollWidgetPrivate members
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-09 23:37:42 +03:00
Ivailo Monev
c4ae9e0460 kdecore: save lock files in the global temporary directory
O_CLOEXEC won't do it but saving the locks in /tmp or other directory that
is purged across reboot will remove stale locks

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-09 21:16:04 +03:00
Ivailo Monev
f27719e1f8 solid: initialize variables in Solid::Predicate::matches()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-09 09:29:46 +03:00
Ivailo Monev
32f73a6c6f kdecore: remove now unused KAUTHORIZATION_TIMEOUT and header inclusion
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-09 07:16:04 +03:00
Ivailo Monev
5cd906e4f9 kdecore: do not call the helper asynchronously from KAuthorization::execute()
racy-racy..

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-09 07:10:38 +03:00
Ivailo Monev
85d6590693 kdecore: remove unused system signal header inclusion in klockfile_unix source file
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-09 01:06:54 +03:00
Ivailo Monev
95a8be4470 kdecore: rewrite KLockFile
the PID check was racy, bonus points for not writing data at all to the
lock and not reading it meaning less disk I/O

oh, yes - by using O_CLOEXEC the lock is stale-safe

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-09 00:46:42 +03:00
Ivailo Monev
7ed5ec71eb kdeui: add the program icon name to the crash data
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-08 18:32:37 +03:00
Ivailo Monev
aa0cc77a6a solid: keep reference to the QByteArray object in Solid::Backends::UDev::NetworkInterface::isWireless()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-08 07:50:24 +03:00
Ivailo Monev
0fc1865606 solid: remove redundant Solid::Backends::UDev::UDevDevice::devicePath() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-08 07:31:29 +03:00
Ivailo Monev
2da2e7ddb6 solid: remove unused Solid::Backends::UDev::UDevDevice::device() method
return the same as Solid::Backends::UDev::UDevDevice::devicePath() too

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-08 07:29:18 +03:00
Ivailo Monev
d519e61cb5 solid: UdevQt::Client::monitorReadyRead() optimization
because the string returned by udev_device_get_action() is valid for as
long as the device is storing it in QByteArray is redundant

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-08 07:12:22 +03:00
Ivailo Monev
ccfd17a401 solid: remove unused UdevQt::Client signals
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-08 06:45:34 +03:00
Ivailo Monev
e6aef8e5d5 solid: parent the QSocketNotifier to UdevQt::Client
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-08 06:42:01 +03:00
Ivailo Monev
8d3250d896 kdecore: log debug message before and after the call in KAuthorization::execute()
otherwise it is bombardment of messages if the KAuthorization area is enabled

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-08 06:24:09 +03:00
Ivailo Monev
8cb49b86db kdeui: replace entities in rules from scoop-rules.py script
"< >" is a placeholder I am assuming, question is for what?

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-08 04:45:38 +03:00
Ivailo Monev
3e5ec11092 kdecore: use KLockFile instead of service check in KAuthorization
the service check is racy, KLockFile is as not (assuming the combination of
O_EXCL and O_CREAT is not racy which is not KLockFile's responsibility)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-08 03:14:17 +03:00
Ivailo Monev
60a5b15a39 kdecore: reduce the KAuthorization helper delayed stop time to 100ms
the sooner the better

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-08 00:08:21 +03:00
Ivailo Monev
1467f3cae0 solid: do not block while waiting for org.kde.SolidUiServer replies
so that, for example, the plasma devicenotifier applet does not block
plasma-desktop events when mounting/unmounting

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-07 21:55:19 +03:00
Ivailo Monev
8ac9b27855 generic: don't sleep while waiting for D-Bus replies
waiting for D-Bus replies to finish is enough business

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-07 21:44:47 +03:00
Ivailo Monev
49637b249d solid: unmount optical drives conditionally
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-07 21:40:51 +03:00
Ivailo Monev
b77a8b70fd solid: unmount the optical drive before ejecting it
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-07 20:43:21 +03:00
Ivailo Monev
4d6cc60bc6 solid: return QByteArray object from UdevQt::Device::driver()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-07 08:38:16 +03:00
Ivailo Monev
35241fbc27 solid: return QByteArray object from UdevQt::Device::subsystem()
it is handled as latin1 anyway

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-07 08:30:09 +03:00
Ivailo Monev
d69e5328dd solid: const-ify Solid::Backends::UDev::UDevDevice::udevDevice() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-07 08:19:52 +03:00
Ivailo Monev
134fd23a6c solid: do not deep-copy the device object for Solid::Backends::UDev::UDevDevice constructor
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-07 08:16:38 +03:00
Ivailo Monev
189599adee kdeui: sort KKeyboardLayout table entries by description
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-05 22:55:21 +03:00
Ivailo Monev
94a7028fdb kdeui: KKeyboardLayout review
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-05 18:54:44 +03:00
Ivailo Monev
ce1dcbb552 kdeui: new KKeyboardLayout class
KKeyboardLayout along with Solid::Input are to be used not only in a
reimplementation of the keyboard plasma applet but also potentially
for a software input panel (QEvent::RequestSoftwareInputPanel and
QEvent::CloseSoftwareInputPanel handler)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-05 18:15:25 +03:00
Ivailo Monev
aeba52714a solid: new Solid::Input class for mouse, keyboard and joystick devices
includes camel-case header for Solid::Video as it was noticed to be
missing while working on the handling the new class in kde-workspace

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 20:21:52 +03:00
Ivailo Monev
086e08f00a kutils: start counting from 1 in KPowerManagerInhibitImpl::Inhibit()
because 0 should be invalid cookie, much like the inhibition cookie of the
org.freedesktop.ScreenSaver interface

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 16:56:56 +03:00
Ivailo Monev
9195193191 kutils: log debug messages when there is no valid inhibition interface
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 16:33:03 +03:00
Ivailo Monev
a39e7777ea kutils: show notification after switching power management profile
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 04:00:12 +03:00
Ivailo Monev
057f775782 solid: use "battery-charging"-prefixed icons for fully charged batteries
battery can be fully charged but because it is plugged in not discharging

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-03 03:40:47 +03:00