Commit graph

49 commits

Author SHA1 Message Date
Ivailo Monev
8559352bde kdirshare: hide the server label when directory is not shared
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-20 21:31:11 +03:00
Ivailo Monev
1618f83ab3 kdirshare: implement getter for the server address and show it on label
requires b3ed6f356afe76d289a7b89d3c95b4dcfb895cbb from kdelibs

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-20 21:03:23 +03:00
Ivailo Monev
ce48bc0997 generic: preperations for kdelibs changes
automatically replaced via:
find -name CMakeLists.txt -exec sed -e 's|${KDE4_PLASMA_LIBS}|KDE4::plasma|g' -e 's|${KDE4_KIO_LIBS}|KDE4::kio|g' -e 's|${KDE4_SOLID_LIBS}|KDE4::solid|g' -e 's|${KDE4_KFILE_LIBS}|KDE4::kfile|g' -e 's|${KDE4_KDECORE_LIBS}|KDE4::kdecore|g' -e 's|${KDE4_KDEUI_LIBS}|KDE4::kdeui|g' -e 's|${KDE4_KCMUTILS_LIBS}|KDE4::kcmutils|g' -e 's|${KDE4_KDECLARATIVE_LIBS}|KDE4::kdeclarative|g' -e 's|${KDE4_KPTY_LIBS}|KDE4::kpty|g' -e 's|${KDE4_KEMAIL_LIBS}|KDE4::kemail|g' -e 's|${KDE4_KMEDIAPLAYER_LIBS}|KDE4::kmediaplayer|g' -e 's|${KDE4_KPARTS_LIBS}|KDE4::kparts|g' -e 's|${KDE4_KIDLETIME_LIBS}|KDE4::kidletime|g' -e 's|${KDE4_KTEXTEDITOR_LIBS}|KDE4::ktexteditor|g' -e 's|${KDE4_KPASSWDSTORE_LIBS}|KDE4::kpasswdstore|g' -e 's|${KDE4_KARCHIVE_LIBS}|KDE4::karchive|g' -e 's|${KDE4_KDNSSD_LIBS}|KDE4::kdnssd|g' -e 's|${KDE4_KNOTIFYCONFIG_LIBS}|KDE4::knotifyconfig|g' -e 's|${KDE4_KEXIV2_LIBS}|KDE4::kexiv2|g' -i {} +

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 23:27:11 +03:00
Ivailo Monev
5482268e40 kdirshare: implement favicon
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-27 17:37:15 +02:00
Ivailo Monev
9cd4a781ff kdirshare: thread the server again
the initial testing was done with a small buffer (QT_BUFFSIZE) which
did not block long while reading file chunks but to reach the disk I/O
limit a larger buffer may be used by KHTTP in the future

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 17:57:11 +02:00
Ivailo Monev
417d9065fb kdirshare: include only the MIME type in Content-Type for files
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 20:08:04 +02:00
Ivailo Monev
c61891926c kdirshare: use the new KHTTP::setServerID() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:35:07 +02:00
Ivailo Monev
0e81d497dd kdirshare: adjust to KHTTP changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:15:21 +02:00
Ivailo Monev
4d1aff9ff9 kdirshare: adjust to KHTTP changes
KHTTP no longer has to be threaded to not block the current thread

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 05:03:18 +02:00
Ivailo Monev
6e8b03eeb9 kdirshare: do not open the file when sending response
KHTTP should send error response if opening the file fails

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-24 15:08:08 +02:00
Ivailo Monev
e291a23a3b generic: log kdirshare and kscreensaver messages to specialized debug area
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-01 18:35:21 +02:00
Ivailo Monev
1de418911e kdirshare: write share entry into the kdirsharerc config from KDirShareModule::share()
should the worst happen and kded4 crash the share settings will be saved
regardless (unless it crashes because of KDirShareModule::share())

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-25 21:05:34 +02:00
Ivailo Monev
77453ce6e9 kdirshare: use KRandom::randomMax() for less round-trips
feels like a new KRandom::randomRange() method is needed

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-25 19:11:03 +02:00
Ivailo Monev
a408a397a5 kdirshare: update comment related to kpasswdstore service
kpasswdstore service is now loaded in phase 1 and kdirshare in phase 2 (the
default)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-25 19:06:29 +02:00
Ivailo Monev
936c69c827 generic: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-14 16:19:24 +03:00
Ivailo Monev
e47545edf0 kdirshare: HTML output correction
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-25 11:44:56 +03:00
Ivailo Monev
aa96333e7c kdirshare: clamp the title aswell
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-16 23:33:16 +03:00
Ivailo Monev
016d6d047b kdirshare: the Avahi limit for service names is 64
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-16 05:36:10 +03:00
Ivailo Monev
a42d981176 kdirshare: manually emit KDirNotify signals when directory is shared/unshared
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-14 05:41:18 +03:00
Ivailo Monev
01fed852cf kdirshare: authentication tooltip
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-13 06:17:28 +03:00
Ivailo Monev
81f6b83424 kdirshare: remove now unused implementation class members
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-13 03:57:51 +03:00
Ivailo Monev
08d0f44446 kdirshare: stretch the user and password input widgets in properties plugin
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-13 01:45:39 +03:00
Ivailo Monev
cd18fa33c6 kdirshare: do not attempt to get password if user is not specified for the share
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-12 05:02:24 +03:00
Ivailo Monev
9661a1dc6a generic: not so generic KDED modules descriptions
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-12 01:27:01 +03:00
Ivailo Monev
524d78cff6 kdirshare: abort applying changes when user or password is empty
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-11 23:55:41 +03:00
Ivailo Monev
fb954a6a50 kdirshare: do not set password widget text if user is empty in properties plugin
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-11 23:45:02 +03:00
Ivailo Monev
0b0a9bdfe8 kdirshare: implement authentication
requires:
a48d4cbb28

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-11 23:08:24 +03:00
Ivailo Monev
19ed9f7462 kdirshare: move code for determening port number to server thread class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-11 20:16:45 +03:00
Ivailo Monev
910a7588f9 kdirshare: run each directory share server in its own thread
that way kded4 process will not be affected by server poll

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-11 16:00:55 +03:00
Ivailo Monev
28a359bc0f kdirshare: minor review
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-11 14:47:12 +03:00
Ivailo Monev
0a2d1f2193 kdirshare: convert QString objects to UTF-8 when appending them to the content data
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-11 14:40:21 +03:00
Ivailo Monev
edce5c20b3 kdirshare: output formatted HTML and title
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-11 05:46:21 +03:00
Ivailo Monev
6ce6615bd6 kdirshare: fix pointer derefence on serve or publish error
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-11 03:17:02 +00:00
Ivailo Monev
85e1e8a8ea kdirshare: fix possible crash in case of null KMimeType pointer
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-11 04:03:49 +03:00
Ivailo Monev
5d5350a6af kdirshare: convert port numbers to uint when saving shares for KConfig cannot handle ushort/quint16
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-10 16:12:46 +03:00
Ivailo Monev
0914a74956 kdirshare: better content MIME type detection and fix for possible crash
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-10 15:24:10 +03:00
Ivailo Monev
aeeae815ba kdirshare: adjust to KHTTP changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-10 14:52:32 +03:00
Ivailo Monev
1c4fee822d kdirshare: fix unshare
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-10 13:37:29 +03:00
Ivailo Monev
f3515ca0b6 kdirshare: send 500 if icon pixmap saving fails
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-10 02:47:21 +03:00
Ivailo Monev
7f58ed303b kdirshare: server optimizations
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-10 02:44:48 +03:00
Ivailo Monev
b0a6628094 kdirshare: send 500 if opening file fails
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-10 01:58:01 +03:00
Ivailo Monev
901dca08cc kdirshare: better service publishing error reporting
requires:
23af14f8ed

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-10 00:45:06 +03:00
Ivailo Monev
798a7b0be9 kdirshare: fix directory sharing of directories with long basename and share name for hidden directories
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-09 23:40:32 +03:00
Ivailo Monev
e1c3dbffa3 kdirshare: fix directory shares restoration on startup
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-09 23:39:06 +03:00
Ivailo Monev
9a2ca297ee kdirshare: notify when directory sharing on startup fails
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-09 22:16:06 +03:00
Ivailo Monev
b9370d28f8 kdirshare: implement option to control the shared directories server port
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-09 21:50:16 +03:00
Ivailo Monev
2ebe90b420 kdirshare: minor review
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-09 19:04:29 +03:00
Ivailo Monev
2bfbd1ab66 kdirshare: stop the server if service publishing fails
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-09 18:52:51 +03:00
Ivailo Monev
31afa6c691 kdirshare: new KDED module and file properties plugin for directory sharing
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-09 17:51:48 +03:00