Commit graph

114 commits

Author SHA1 Message Date
Ivailo Monev
52cb8a6df0 generic: adjust to KDateTime removal
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-14 23:15:36 +03:00
Ivailo Monev
2b8f0ec06e generic: adjust to Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-07 01:33:45 +03:00
Ivailo Monev
f1b2130343 generic: adjust to KLocale changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-26 09:56:25 +03:00
Ivailo Monev
94a4442bd9 gwenview: port to the new KCalendarWidget class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-23 05:52:25 +03:00
Ivailo Monev
cb04718ceb generic: adjust to KDateTime changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-21 07:50:30 +03:00
Ivailo Monev
f0935b19ec gwenview: remove now redundant KExiv2Property checks
see 3521d07234beab1822bc7e30f5bdf451a5cebc3c in kdelibs repo

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-07 23:39:34 +03:00
Ivailo Monev
ee6443ddaa gwenview: update comment in LoadingDocumentImplPrivate::loadMetaInfo()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-07 17:08:30 +03:00
Ivailo Monev
66f4c1cf16 gwenview: do not emit Document::saved() twice when the undo stack is clean
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-07 17:07:43 +03:00
Ivailo Monev
d7ea9b0a57 gwenview: remove obsolete comment about the hint
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-07 16:41:12 +03:00
Ivailo Monev
8bba9e82d6 gwenview: DocumentLoadedImpl::applyTransformation() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-07 16:38:18 +03:00
Ivailo Monev
e85564830f gwenview: replace qDebug() with kDebug() calls
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-05 10:24:42 +03:00
Ivailo Monev
2c90b02a32 gwenview: stabilize the RecursiveDirModel test
note that this race that was observed by the author of the test will happen
outside the test - if files are created while the KDirLister is listing
(because an automatic update was issued for example) some files may not be
listed

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-05 01:13:15 +03:00
Ivailo Monev
c55b482da9 gwenview: use the new recursive listing feature of KDirLister
requires the following commit from kdelibs:
5d60973ab442fb6c3ccad7027d96da18f4fdeaea

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-04 22:27:23 +03:00
Ivailo Monev
6983e81516 gwenview: remove semantic info leftovers
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-04 18:10:56 +03:00
Ivailo Monev
de8207696d gwenview: do not list non-readable directories from RecrusiveDirModel
directores such as "lost+found" may not be readable, if the main directory
is not readable an error will be shown still (as it should be).

requires 268eac6790195fe72afeb8525f930e289276eaf9 from kdelibs

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-04 16:09:21 +03:00
Ivailo Monev
1734f0498e gwenview: clear the dir listers list on reset
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-03 21:19:34 +03:00
Ivailo Monev
f2772db1b2 gwenview: drop places tab
already half file manager

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-03 21:12:04 +03:00
Ivailo Monev
238f7ca13d gwenview: fix RecursiveDirModel regression
not sure if I want to keep it tho, I can already see it choke on symlinks
because they are not tracked

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-03 17:25:28 +03:00
Ivailo Monev
8dde8e8783 gwenview: adjust to KDirLister changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-03 13:46:14 +03:00
Ivailo Monev
3ea4bbd312 gwenview: adjust to KDirLister changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-01 06:17:05 +03:00
Ivailo Monev
602730bac1 generic: adjust to KUrl changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-26 20:57:07 +03:00
Ivailo Monev
04c0f02df7 generic: adjust to KUrl changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-26 01:41:35 +03:00
Ivailo Monev
39b4708812 gwenview: log debug messages to special area
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-20 04:13:03 +03:00
Ivailo Monev
93e394f1ca generic: preperations for kdelibs changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 23:28:51 +03:00
Ivailo Monev
05397d9ddf generic: adjust to kdelibs changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 18:39:16 +03:00
Ivailo Monev
89dfa766ba gwenview: do not assume some MIME types are supported in Gwenview::MimeTypeUtils::imageMimeTypes() function
I found more intelligent way - image format plugins now have mimeTypes()
method to query the supported MIME types (which is wrapped by
KImageIO::mimeTypes()), so if a plugin is not installed for the MIME types
that were previously hardcoded gwenview will no longer suggest to open such
when opening files via the dialog for example

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 23:42:28 +03:00
Ivailo Monev
5449379ca6 gwenview: simplify the save job
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 04:26:18 +03:00
Ivailo Monev
984399a1dc gwenview: remove obsolete format hack
the plugin for it accepts only "jpg" as format now and gwenview no longer
has hacks that assume "jpeg", fixes saving of jpg/jpeg images

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 03:59:41 +03:00
Ivailo Monev
5d77471e5b gwenview: do not thread document jobs
threading it does not help when an image requires gigabytes of memory to
store to begin with (such as when the image is resized to 30000x20000,
it requires a bit less than 2GB of memory and that's because its ARGB),
the document jobs were not thread-safe either

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 03:05:30 +03:00
Ivailo Monev
c33d81a38f gwenview: remove redundant tooltip
shows exactly the same information as the text bellow the image in the
model, see the FIXME in the removed code

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 02:18:53 +03:00
Ivailo Monev
714bc7076d gwenview: use the application palette as fullscreen palette
note that besides the config option there was no interface option to
change it

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 01:04:55 +03:00
Ivailo Monev
96c709b614 gwenview: merge MIME type functions
also mimeTypeKind() was not checking if the result of rawImageMimeTypes()
contains the MIME type

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 00:46:39 +03:00
Ivailo Monev
6f52fa6301 gwenview: remove unused Gwenview::MimeTypeUtils::urlMimeTypeByContent() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 00:38:45 +03:00
Ivailo Monev
2418a3a6b5 generic: exclude some source files from the unity build
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-12 13:00:24 +03:00
Ivailo Monev
9607e18358 gewnview: adjust to Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-24 05:06:31 +03:00
Ivailo Monev
ae9dcfe318 gwenview: deep-copy added views in Gwenview::DocumentViewContainer::pretendFadeInFinished()
fixes crash in case animations are disabled

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-14 05:12:34 +02:00
Ivailo Monev
658e812f74 gwenview: do not rely on compiler to pick up the correct constructor
KUrl has QVariant operator meaning it should be QVariant from QVariant
(i.e. copy constructor) but the testModel() function (see the history model
test) explicitly converts it to KUrl while the StartMainPage class was
converting it to QUrl (via QVariant::toUrl()).

qVariantFromValue<T>() has type before QVariant specialization

side note, try compiling the following (with proper Makefile):

 #include <qurl.h>
 #include <qvariant.h>
 #include <qdebug.h>
 #include <kurl.h>

int main (int argc, char** argv)
{
    QVariant v(QUrl());
    qDebug() << v.type() << v.userType();

    QVariant v2(KUrl());
    qDebug() << v2.type() << v2.userType();

    return 0;
}

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-30 22:32:43 +02:00
Ivailo Monev
fde94cda1c gwenview: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-14 02:09:37 +02:00
Ivailo Monev
e52b5a473a generic: use sysconf() to get the total memory
available on non-Linux and non-FreeBSD, getFreeMemory() remains
unimplemented for other platforms tho

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-05 19:18:38 +02:00
Ivailo Monev
a488e15681 gwenview: comment correction
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 20:04:22 +03:00
Ivailo Monev
94ff551e89 gwenview: check for Exif date in the same order as the list
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 00:11:45 +03:00
Ivailo Monev
810ef2b5af gwenview: skip some Exif/IPTC/XMP properties
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 21:10:02 +03:00
Ivailo Monev
2821d36488 gwenview: do not warn if image has no Exif date
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 18:54:38 +03:00
Ivailo Monev
e6bbe6f23a gwenview: test animated document loader with WebP image
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 18:40:22 +03:00
Ivailo Monev
4b105d8244 gwenview: minor optimizations
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-16 01:04:41 +03:00
Ivailo Monev
0ca5a4530a gwenview: adjust to KExiv2 changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-16 00:47:42 +03:00
Ivailo Monev
cac9414148 gwenview: port to KExiv2
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-16 02:33:13 +03:00
Ivailo Monev
6ccf553d1e generic: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-14 16:21:09 +03:00
Ivailo Monev
4b8cfb62e0 gwenview: remove win support leftovers
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-03 18:41:02 +03:00
Ivailo Monev
0116b2cad6 gwenview: randomize the slideshow URLs via KRandom::randomize()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-30 01:55:09 +03:00