Commit graph

142 commits

Author SHA1 Message Date
Ivailo Monev
5513e53f36 includes: remove headers for gone classes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-27 22:13:30 +03:00
Ivailo Monev
1a45508306 kdecore: reimplement KLocale
by using QLocale in KLocale and separating the date, time and numbers
conversion from translation KLocale actually gets extended locale
support from QLocale (which uses CLDR data v43 currently). translation
remains unaffected. for comparison here is the result of two function
calls the result of which should explain the whole change:
KLocale::allLanguagesList().size() = 669
KLocale::installedLanguages().size() = 68

the first number is locales Katie supports, the second being the
number of languages Katana is translated into

KSwitchLanguageDialog needs a rewrite but that is on the TODO

also copyrighting KCatalog to me because I rewrote it, for reference:
881b47b8ea

KCalendarSystem gets the middle finger - batteries not included for date
and time. extra calendar systems can, but are unlikely to be, supported
in the future

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-26 23:50:18 +03:00
Ivailo Monev
7e78f97d61 plasma: new Plasma::CalendarWidget class
to be used by the clock and calendar applets

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-23 11:30:15 +03:00
Ivailo Monev
714b6f2021 kdecore: remove unused KLocalizedDate class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-23 06:54:53 +03:00
Ivailo Monev
061a11fd43 kdeui: replace KDatePicker/KDateTable with new KCalendarWidget class
interestingly QLocale is not used for many things but that is about to
change, Katie uses it a lot internally (e.g. for QDateTime formatting
and such) so instead of bolting a calendar system on top of KLocale
perhaps a QLocale wrapped around in KLocale will fit the general idea
of using QLocale in widgets when necessary (as does QCalendarWidget).

that however means no way to specify a calendar system (in general,
other than changing the widgets locale itself) but the QDateTime and
related classes are tied to gregorian calendar already - the system
time itself carries no information about the calendar and any
conversions from one calendar to another are basically made up stuff
(there is the time zone thing ofcourse but that is not a calendar)

another interesting thing to note is that KLocale was written such that
it is read-write - changing the date formats for example is possible
because there are public KLocale methods for that.

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-23 06:16:56 +03:00
Ivailo Monev
000c8af989 kdeui: remove unused date and time related widget classes
some of the classes date back to 2001 and 2002, still unused

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-23 02:48:22 +03:00
Ivailo Monev
94199903d9 kdeui: remove unused KBreadcrumbSelectionModel, KCheckableProxyModel and KIdentityProxyModel classes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-13 06:11:22 +03:00
Ivailo Monev
32445250ef includes: add KPowerManager header
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-09 04:36:35 +03:00
Ivailo Monev
355bca1289 kutils: new knetworkmanager library
to replace the status notifier (in the kde-workspace repo) and
eventually manage network connections aswell as move network status
notifier out of solid

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-08 07:48:38 +03:00
Ivailo Monev
9916fcdce9 kparts: remove unused PartActivateEvent, PartManager and PartSelectEvent classes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-03 12:21:25 +03:00
Ivailo Monev
a6ffb2dbc0 kdeui: remove unused KPixmapRegionSelectorWidget and KPixmapRegionSelectorDialog classes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-03 07:23:23 +03:00
Ivailo Monev
55458f706c kfile: purge KDirSelectDialog
that way file and directory dialogs will be consistent, not to mention
there were things that KDirSelectDialog was lacking such as resizable
places area.

more changes are needed to account for the directory mode
(KFile::Directory), currently for directory only mode the filter is set
to "All Folders" but it can be changed (the filter widget is not
disabled). also when an attempt to open non-existing directory by name
(via the name input widget) the error says "the file cannot be found"
- it should be "the directory cannot be found" for directory mode

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-03 03:25:54 +03:00
Ivailo Monev
c3bc63f0f1 interfaces: remove unused smart KTextEditor interface classes
replaced with not so smart classes? (see comments in the headers)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-28 06:13:50 +03:00
Ivailo Monev
f1a36b91e5 interfaces: remove unused and non-operational KRegExpEditorInterface
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-28 05:44:47 +03:00
Ivailo Monev
f54740e469 kio: remove now unused ForwardingSlaveBase class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-22 02:11:31 +03:00
Ivailo Monev
36c910c653 generic: move stuff from KDE4Internal module to KDELibs4Config
large-scale changes to the build system, nothing a user sees tho - it is
all under the hood

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 19:01:40 +03:00
Ivailo Monev
6a18754f1b kdeui: merge KPageModel into KPageView and KPageWidgetModel
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-14 16:10:43 +03:00
Ivailo Monev
2a8c7a06e2 kdeui: merge KSpellBackgroundChecker into KSpeller
it is actually faster to no do it in a thread for the use case of Kate
because too many threads may be created

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-10 11:31:16 +03:00
Ivailo Monev
8c9f56e862 kdeui: drop support for spelling correction via dialog
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-10 01:04:04 +03:00
Ivailo Monev
7f7eb09b35 kdeui: spelling classes reimplementation
not leaking enchant dictionaries, simpler implementation and its not
spread across 2 libraries (kdecore and kdeui)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-09 20:45:52 +03:00
Ivailo Monev
25bc94ac0e kio: remove unused KBookmarkExporterBase, KBookmarkImporterBase and KXBELBookmarkImporterImpl classes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-08 08:16:00 +03:00
Ivailo Monev
c63f00ec2a kio: move KDynamicJobTracker to kdeui and export it as public class
to be used by kprintjobs and possibly more, also added camelcase header
for KUiServerJobTracker

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-07 03:09:21 +03:00
Ivailo Monev
7862c2ca66 kio: remove unused KBookmarkDomBuilder class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-06 14:06:47 +03:00
Ivailo Monev
d9eca4f771 kio: remove unused KIO::FileJob class and random access I/O API
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-05 23:06:32 +03:00
Ivailo Monev
004e03252f kio: merge KIO::Slave into KIO::SlaveInterface
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 13:37:11 +03:00
Ivailo Monev
819cca1e41 kdeui: replace libdbusmenu-qt dependency with custom classes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-28 20:56:05 +03:00
Ivailo Monev
4fb8a1d674 generic: call klauncher methods asynchronously from KToolInvocation
so that application event processing is not blocked by any
KToolInvocation method, the D-Bus service name and PID return arguments
are not used anyway so removing them

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-19 12:44:44 +02:00
Ivailo Monev
4dbb501d25 generic: drop text-to-speech support
Katana (or any interface designed around key and mouse events) is not
for blind people, trying to slap text-to-speech on top of it was the
wrong thing to do to begin with

side note: speech-dispatcher tends to hang if the output device is not
configured properly (i.e. editing /etc/speech-dispatcher/speechd.conf
manually)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-18 15:56:59 +02:00
Ivailo Monev
4216cc4e26 includes: remove headers for kdbgstream and kndbgstream
they have not been a thing for a long time

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-15 08:22:34 +02:00
Ivailo Monev
97372a82ef plasma: remove unused AbstractDialogManager class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 00:06:27 +02:00
Ivailo Monev
521d3cd59b kdeui: remove unused KFadeWidgetEffect class
for example on how to do it (somewhat) properly see KMessageWidget

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-21 20:05:45 +02:00
Ivailo Monev
a5734faf0f kdeui: new KPixmap class
very much written for use case, not to make sense. while porting to it I
already noticed there are leaks for X11 pixmaps and may have to write
glue code to keep track of the pixmaps and release them before
application quits, that will be a huge performance penalty tho so may
have to be ifdef'ed for debug builds only

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-09 02:08:27 +02:00
Ivailo Monev
38cc86db41 plasma: export DialogShadows class
there are 3 copies of the sources for that class because it is not
exported (one here, one in kde-workspace and one in kde-extraapps) with
one class that is very similar to it - PanelShadows (in kde-workspace
repo, part of plasmagenericshell library)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-07 18:05:11 +02:00
Ivailo Monev
c2a98d4c5d kdeui: KSelectionOwner rewrite
natural selection - kill or be killed

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-05 12:44:07 +02:00
Ivailo Monev
860b2d098d kdecore: new KCompressor and KDecompressor classes replacing KFilterDev
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-17 18:07:24 +03:00
Ivailo Monev
301bc3a1e5 kutils: new kemail library
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-15 05:03:10 +03:00
Ivailo Monev
3ab3f3b47f kutils: new karchive library to replace KZip and KTar
it has to solve a few problems like:
1. blocking the current thread while listing, extracting or adding to
   archive
2. lack of support for some archive formats such as 7-zip in the
   previously available classes for dealing with archive
3. progress and error reporting

a KArchiveJob class may have to be implemented to solve the above
issues. the API is just as frustrating to use as KTar and KZip right now
tho and I am not happy with that but the class itself is a 3-rd rewrite
of what was once Python module, plugin for another project and now used
as base in library.

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-06 16:53:55 +03:00
Ivailo Monev
6f0b3eda3b kdecore: merge KTzfileTimeZone and other tzdata related classes into the base classes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-01 16:08:05 +03:00
Ivailo Monev
d30fc8d22a kdecore: KSystemTimeZones rewrite to not require daemon
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-01 12:20:38 +03:00
Ivailo Monev
81870c59a8 kdeui: remove unused KModifierKeyInfo class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-29 22:25:05 +03:00
Ivailo Monev
aa3793cb90 kdeui: remove unused KWordWrap class
word wrapping is done automatically via QLabel::setWordWrap() for
example

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-29 21:57:54 +03:00
Ivailo Monev
a7b141e60f interfaces: undeprecate KTextEditor::TemplateInterface methods and remove KTextEditor::TemplateInterface2
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-28 18:37:06 +03:00
Ivailo Monev
6cf96c3a87 kdeui: remove unused KAnimatedButton class and KIconLoader getters for movies
KIconLoader::loadMovie() and KIconLoader::moviePath() are attempting to
load non-standard .mng files which, as far as I am aware, no icon theme
ships. for reference:
https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html#context

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-28 17:56:47 +03:00
Ivailo Monev
379600e61e kdeui: remove unused classes related to plotting
ksysguard library already has a plotting class (KSignalPlotter) which
should be moved to kdeui library, plasma library also has a plotting
class (SignalPlotter) very similar to the one from ksysguard library
(KGraphicsSignalPlotter)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-27 08:58:07 +03:00
Ivailo Monev
0ac2e1f132 kio: remove unused and redundant KShellCompletion class
KCompletion has a shell-completion mode

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-26 21:26:19 +03:00
Ivailo Monev
7dc5187778 kdecore: replace most of KRandomSequence with new KRandom::randomMax() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-26 12:58:37 +03:00
Ivailo Monev
a692d6026e kdecore: remove unused KAutoSaveFile class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-26 09:54:51 +03:00
Ivailo Monev
e88c621aa2 generic: authorization reimplementation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-25 19:27:41 +03:00
Ivailo Monev
fbd4a17ac2 kdecore: drop currency and monetary support
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-24 14:43:11 +03:00
Ivailo Monev
5b03742ff8 kdeui: remove unused KStyle methods
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-23 04:13:50 +03:00