Improved Preview Operation

Various KDE 1.-4. Improvements

Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net

0
5 .0
Description:

This patch improves the way in which Konqueror load preview icons.
If the window is scrolled then the files that are in-view will have there icons generated next.
If the mouse moves over an icon then that icon will be generated next.

Konqueror can also be configured so that only those icons in view will be loaded by setting a new option 'Only load previews for items in view' under Konqueror's previews and Meta-data setting this option reduces memory and system overhead.


The screen shot shows the effect of scrolling to the end of a folder waiting for the icons to be rendered and then scrolling up a bit.
As you can see the top icons that were previously in view have been loaded before the icons before them listwise.


Patches are against kdelibs-3.4.1 and kdebase-3.4.1.

*******************
If you would like this feature included in future KDE releases see this bug http://bugs.kde.org/show_bug.cgi?id=87319
*******************
Last changelog:

15 years ago

0.4
remade the patches, tested with gentoo.

you only need to make install kdelibs/kio and kdebase/libkonq

preview 'only' in view is switched on by default, to change the behaviour so that items out of view are also loaded,
[MENU] Settings/Configure KDE
Previews & Meta Data, and deselect the option 'Only load preview for items in view'
You need to refresh the view for the change to take effect.

===================

0.3 fixed another compile error, 'it's too hot today'
===================
0.2 Corrected bug in kdelibs patch.

===================

updated for kde 3.4.1

You must install kdelibs before kdebase.

MamiyaOtaru

14 years ago

The bug is still new. I'll be somewhat disappointed if this doesn't make it into KDE 3.5 ;)

Report

vdboor

15 years ago

Sounds like a great idea, is it in the KDE SVN already? You might want to consider contacting a developer (or bugs.kde.org) for this.

I really love it to be a default thing for KDE. (especially considering the fact you already did the coding :-))

Report

soya

15 years ago

here are the ebuilds:
http://kde-look.org/content/show.php?content=25622
look at the comments please

Report

bfkeats

15 years ago

You said you tested it on gentoo. Is there an ebuild?

Report

C

oliverthered

15 years ago

soya's putting one together, well as soon as (I've got to the bottom of all the bugs).


To test with KDE I have done the following:

installed KDE 3.4.1-r1 as usual,
then
emerge kde-libs
and CTRL+c after ./configure has run
do the same with kde-base

then apply the patch to kde libs and kde base in /var/tmp/portage/kde-libs-4.3.1-r1 and /var/tmp/portage/kde-base-4.3.1-r1

then

make install kio in kde-libs
make install kcontrol in kde-base
make install libkonq in kde-base

There was a problem with a missing header (I forgot to note which one), just cd into the directory and
make nameofmissingheader.h
then start
make install .. again.

Report

soya

15 years ago

First of all gonna thank your quick work/updates.

then, libkonq compiles well, kcontrol now gives this error (also want to say that i've could activate the option load icons on view and i think it's very unstable, it makes konqueror crash sometimes. also someone times it can't determine which icons are in view and load the hardly all icons in view except someones):

-Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -mcpu=pentium4 -march=pentium4 -O3 -mfpmath=s
se,387 -ffast-math -fforce-addr -fforce-mem -falign-functions=4 -fomit-frame-pointer -pipe -ftracer -frepo -Wformat-security -Wmissing-format-attribute -fno
-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -Wl,-O1 -Wl,-z,combreloc -Wl
,--relax -Wl,--enable-new-dtags -Wl,--sort-common -s -o kcm_background.la -rpath /usr/kde/3.4/lib/kde3 -R /usr/kde/3.4/lib -R /usr/kde/3.4/lib -R /usr/qt/3/
lib -R /usr/lib -module -avoid-version -L/usr/kde/3.4/lib -L/usr/qt/3/lib -L/usr/lib -no-undefined -Wl,--no-undefined -Wl,--allow-shlib-undefined main.lo
libkcmbgnd.la libbgnd.la -lkio -lknewstuff
collect: recompiling main.cpp
collect: relinking
collect: recompiling main.cpp
collect: relinking
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x2b1a): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMapPrivate::QMapPrivate[in-charge]()'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x2e58): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMapPrivate::find(QString const&) const'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x319e): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMap::operator[](QString const&)'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x31ea): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QPair qMakePair(QString const&, QString const&)'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x3434): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMap::detachInternal()'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x34a1): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMap::detachInternal()'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x38b9): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMapPrivate::find(QString const&) const'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x3ac5): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMap::operator[](QString const&)'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x3ae5): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QPair qMakePair(QString const&, QString const&)'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x3bd0): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMap::detachInternal()'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x3be8): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMap::detachInternal()'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x4015): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMap::clear()'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x4098): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMapIterator::inc()'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x40f3): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMapPrivate::clear()'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x41ae): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMap::detachInternal()'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x41c6): In function `BGDialog::loadWallpaperFilesList()':
: undefined reference to `QMap::detachInternal()'
./.libs/libkcmbgnd.a(bgdialog.o)(.text+0x6501): In function `BGDialog::slotAdvanced()':
: undefined reference to `vtable for QDict'
./.libs/libkcmbgnd.a(bgadvanced.o)(.text+0x224): In function `BGAdvancedDialog::BGAdvancedDialog[not-in-charge](KBackgroundRenderer*, QWidget*, bool)':
: undefined reference to `vtable for QDict'
./.libs/libkcmbgnd.a(bgadvanced.o)(.text+0x960): In function `BGAdvancedDialog::BGAdvancedDialog[in-charge](KBackgroundRenderer*, QWidget*, bool)':
: undefined reference to `vtable for QDict'
./.libs/libkcmbgnd.a(bgadvanced.o)(.gnu.linkonce.t._ZN16BGAdvancedDialogD1Ev+0x5d): In function `BGAdvancedDialog::~BGAdvancedDialog [in-charge]()':
: undefined reference to `vtable for QDict'
./.libs/libkcmbgnd.a(bgadvanced.o)(.gnu.linkonce.t._ZN16BGAdvancedDialogD0Ev+0x5d): In function `BGAdvancedDialog::~BGAdvancedDialog [in-charge deleting]()'
:
: undefined reference to `vtable for QDict'
collect2: ld returned 1 exit status
make[4]: *** [kcm_background.la] Error 1
make[4]: Leaving directory `/var/tmp/portage/kcontrol-3.4.1-r1/work/kcontrol-3.4.1/kcontrol/background'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/var/tmp/portage/kcontrol-3.4.1-r1/work/kcontrol-3.4.1/kcontrol/background'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/kcontrol-3.4.1-r1/work/kcontrol-3.4.1/kcontrol'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/kcontrol-3.4.1-r1/work/kcontrol-3.4.1'
make: *** [all] Error 2

Report

C

oliverthered

15 years ago

I've noticed that it sometime doesn't find all the icons in view (SFAIK this is a kde bug, since it seemed to be better in kde 3.2/3)

I haven't had any crashes though and kcontrol starts fine for me.

I used kde-base 3.4.1-r1 to test the patches.

I've also just find a crash problem, with view in view only, clicking refresh causes a crash. I'll try to fix this soon.

Report

soya

15 years ago

Still errors when compiling libkonq:

./'`konq_drag.cc
konq_iconviewwidget.cc:909: error: no `void
KonqIconViewWidget::resizeEvent(QResizeEvent*)' member function declared in
class `KonqIconViewWidget'
/bin/sh ../libtool --silent --mode=compile --tag=CXX i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/kde/3.4/include/arts -I/usr/kde/3.4/include -I/usr/qt/3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -mcpu=pentium4 -march=pentium4 -O3 -mfpmath=sse,387 -ffast-math -fforce-addr -fforce-mem -falign-functions=4 -fomit-frame-pointer -pipe -ftracer -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -c -o konq_operations.lo `test -f 'konq_operations.cc' || echo './'`konq_operations.cc
konq_iconviewwidget.cc: In member function `void
KonqIconViewWidget::setPreviewSettings(const QStringList&)':
konq_iconviewwidget.cc:2029: error: 'class KonqIconViewWidget' has no member
named 'updatePreviewMimeTypes'
konq_iconviewwidget.cc: In member function `bool
KonqIconViewWidget::canPreview(KFileItem*)':
konq_iconviewwidget.cc:2067: error: 'class KonqIconViewWidget' has no member
named 'updatePreviewMimeTypes'
konq_iconviewwidget.cc: At global scope:
konq_iconviewwidget.cc:2073: error: no `void
KonqIconViewWidget::updatePreviewMimeTypes()' member function declared in
class `KonqIconViewWidget'
konq_iconviewwidget.cc:2073: error: `void
KonqIconViewWidget::updatePreviewMimeTypes()' and `void
KonqIconViewWidget::updatePreviewMimeTypes()' cannot be overloaded
In file included from konq_iconviewwidget.cc:2092:
konq_iconviewwidget.moc: In member function `virtual bool
KonqIconViewWidget::qt_invoke(int, QUObject*)':
konq_iconviewwidget.moc:264: warning: `slotToolTipPreview' is deprecated
(declared at konq_iconviewwidget.cc:526)
konq_iconviewwidget.moc:265: warning: `slotToolTipPreviewResult' is deprecated
(declared at konq_iconviewwidget.cc:531)
make[3]: *** [konq_iconviewwidget.lo] Error 1
make[3]: *** Se espera a que terminen otras tareas....
make[3]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1/libkonq'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1/libkonq'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1'
make: *** [all] Error 2

!!! ERROR: kde-base/libkonq-3.4.1 failed.
!!! Function kde_src_compile, Line 166, Exitcode 2
!!! died running emake, kde_src_compile:make
!!! If you need support, post the topmost build error, NOT this status message.

Report

soya

15 years ago

With the udate now kdelibs compiles well, kcontrol also compiels well like before, but libkonq still fails to compile. this is the error:

/bin/sh ../libtool --silent --mode=compile --tag=CXX i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/kde/3.4/include/arts -I/usr/kde/3.4/include -I/usr/qt/3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -mcpu=pentium4 -march=pentium4 -O3 -mfpmath=sse,387 -ffast-math -fforce-addr -fforce-mem -falign-functions=4 -fomit-frame-pointer -pipe -ftracer -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -c -o konq_operations.lo `test -f 'konq_operations.cc' || echo './'`konq_operations.cc
konq_iconviewwidget.cc: In member function `void
KonqIconViewWidget::slotMovedContents(int, int)':
konq_iconviewwidget.cc:484: error: `isPreviewOnlyInView' undeclared (first use
this function)
konq_iconviewwidget.cc:484: error: (Each undeclared identifier is reported only
once for each function it appears in.)
konq_iconviewwidget.cc: At global scope:
konq_iconviewwidget.cc:691: error: no `bool
KonqIconViewWidget::isPreviewOnlyInView() const' member function declared in
class `KonqIconViewWidget'
konq_iconviewwidget.cc:909: error: no `void
KonqIconViewWidget::resizeEvent(QResizeEvent*)' member function declared in
class `KonqIconViewWidget'
In file included from konq_iconviewwidget.cc:2092:
konq_iconviewwidget.moc: In member function `virtual bool
KonqIconViewWidget::qt_invoke(int, QUObject*)':
konq_iconviewwidget.moc:264: warning: `slotToolTipPreview' is deprecated
(declared at konq_iconviewwidget.cc:526)
konq_iconviewwidget.moc:265: warning: `slotToolTipPreviewResult' is deprecated
(declared at konq_iconviewwidget.cc:531)
make[3]: *** [konq_iconviewwidget.lo] Error 1
make[3]: *** Se espera a que terminen otras tareas....
make[3]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1/libkonq'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1/libkonq'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1'
make: *** [all] Error 2

!!! ERROR: kde-base/libkonq-3.4.1 failed.
!!! Function kde_src_compile, Line 166, Exitcode 2
!!! died running emake, kde_src_compile:make
!!! If you need support, post the topmost build error, NOT this status message.

Report

C

oliverthered

15 years ago

this should now be fixed.

Report

soya

15 years ago

I'm using gentoo so i wnated to do some ebuilds, i've done them.i've divided the two patches in three, one for libkonq another for kcontrol, and the other as it comes per default only for kdelibs.
kcontrol have compiled well. but kdelibs whose patch i didn't touched give me a compile error.

**kdelibs compile error:

_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -c -o metainfojob.lo `test -f 'metainfojob.cpp' || echo './'`metainfojob.cpp
previewjob.cpp: In member function `void KIO::PreviewJob::bubbleItems(const
KFileItemList&, bool)':
previewjob.cpp:233: error: no match for 'operator==' in '
this->KIO::PreviewJob::d->KIO::PreviewJobPrivate::items == 0'
/usr/qt/3/include/qvaluelist.h:577: error: candidates are: bool
QValueList::operator==(const QValueList&) const [with T =
KIO::PreviewItem]
/usr/qt/3/include/qcstring.h:299: error: bool operator==(const
QCString&, const QCString&)
/usr/qt/3/include/qcstring.h:302: error: bool operator==(const
QCString&, const char*)
/usr/qt/3/include/qcstring.h:305: error: bool operator==(const
char*, const QCString&)
/usr/qt/3/include/qstring.h:303: error: bool operator==(char,
QChar)
/usr/qt/3/include/qstring.h:308: error: bool operator==(QChar,
char)
/usr/qt/3/include/qstring.h:313: error: bool operator==(QChar,
QChar)
/usr/qt/3/include/qstring.h:1017: error: bool operator==(const
QString&, const QString&)
/usr/qt/3/include/qstring.h:1024: error: bool operator==(const
QString&, const char*)
/usr/qt/3/include/qstring.h:1030: error: bool operator==(const
char*, const QString&)
/usr/qt/3/include/qpoint.h:148: error: bool operator==(const
QPoint&, const QPoint&)
/usr/qt/3/include/qsize.h:162: error: bool operator==(const
QSize&, const QSize&)
/usr/qt/3/include/qrect.h:151: error: bool operator==(const
QRect&, const QRect&)
previewjob.cpp: In member function `void KIO::PreviewJob::prependItems(const
KFileItemList&, bool)':
previewjob.cpp:159: warning: unused parameter `bool deleteItems'
previewjob.cpp: In member function `void KIO::PreviewJob::bubbleItems(const
KFileItemList&, bool)':
previewjob.cpp:229: warning: unused parameter `bool deleteItems'
make[3]: *** [previewjob.lo] Error 1
make[3]: *** Se espera a que terminen otras tareas....
make[3]: Leaving directory `/var/tmp/portage/kdelibs-3.4.1-r1/work/kdelibs-3.4.1/kio/kio'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/kdelibs-3.4.1-r1/work/kdelibs-3.4.1/kio'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/kdelibs-3.4.1-r1/work/kdelibs-3.4.1'
make: *** [all] Error 2

!!! ERROR: kde-base/kdelibs-3.4.1-r1 failed.
!!! Function kde_src_compile, Line 166, Exitcode 2
!!! died running emake, kde_src_compile:make
!!! If you need support, post the topmost build error, NOT this status message.


** libkonq aslo gives me a compile error
/bin/sh ../libtool --silent --mode=compile --tag=CXX i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/kde/3.4/include/arts -I/usr/kde/3.4/include -I/usr/qt/3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -mcpu=pentium4 -march=pentium4 -O3 -mfpmath=sse,387 -ffast-math -fforce-addr -fforce-mem -falign-functions=4 -fomit-frame-pointer -pipe -ftracer -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -c -o konq_operations.lo `test -f 'konq_operations.cc' || echo './'`konq_operations.cc
konq_iconviewwidget.cc: In member function `void
KonqIconViewWidget::slotOnItem(QIconViewItem*)':
konq_iconviewwidget.cc:274: error: `bubbleItems' undeclared (first use this
function)
konq_iconviewwidget.cc:274: error: (Each undeclared identifier is reported only
once for each function it appears in.)
konq_iconviewwidget.cc: In member function `void
KonqIconViewWidget::slotMovedContents(int, int)':
konq_iconviewwidget.cc:484: error: `isPreviewOnlyInView' undeclared (first use
this function)
konq_iconviewwidget.cc:492: error: `bubbleItems' undeclared (first use this
function)
konq_iconviewwidget.cc: At global scope:
konq_iconviewwidget.cc:691: error: no `bool
KonqIconViewWidget::isPreviewOnlyInView() const' member function declared in
class `KonqIconViewWidget'
konq_iconviewwidget.cc:909: error: no `void
KonqIconViewWidget::resizeEvent(QResizeEvent*)' member function declared in
class `KonqIconViewWidget'
konq_iconviewwidget.cc: In member function `void
KonqIconViewWidget::resizeEvent(QResizeEvent*)':
konq_iconviewwidget.cc:960: error: `bubbleItems' undeclared (first use this
function)
konq_iconviewwidget.cc: In member function `void
KonqIconViewWidget::startImagePreview(const QStringList&, bool)':
konq_iconviewwidget.cc:1054: error: `bubbleItems' undeclared (first use this
function)
In file included from konq_iconviewwidget.cc:2092:
konq_iconviewwidget.moc: In member function `virtual bool
KonqIconViewWidget::qt_invoke(int, QUObject*)':
konq_iconviewwidget.moc:264: warning: `slotToolTipPreview' is deprecated
(declared at konq_iconviewwidget.cc:526)
konq_iconviewwidget.moc:265: warning: `slotToolTipPreviewResult' is deprecated
(declared at konq_iconviewwidget.cc:531)
make[3]: *** [konq_iconviewwidget.lo] Error 1
make[3]: *** Se espera a que terminen otras tareas....
make[3]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1/libkonq'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1/libkonq'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1'
make: *** [all] Error 2

!!! ERROR: kde-base/libkonq-3.4.1 failed.
!!! Function kde_src_compile, Line 166, Exitcode 2
!!! died running emake, kde_src_compile:make
!!! If you need support, post the topmost build error, NOT this status message.


Someone can help? i have the full compile logs. ALL PATCHES WERE APLIED PERFECTLY.

Report

soya

15 years ago

I'm using gentoo so i wnated to do some ebuilds, i've done them.i've divided the two patches in three, one for libkonq another for kcontrol, and the other as it comes per default only for kdelibs.
kcontrol have compiled well. but kdelibs whose patch i didn't touched give me a compile error.

**kdelibs compile error:

_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -c -o metainfojob.lo `test -f 'metainfojob.cpp' || echo './'`metainfojob.cpp
previewjob.cpp: In member function `void KIO::PreviewJob::bubbleItems(const
KFileItemList&, bool)':
previewjob.cpp:233: error: no match for 'operator==' in '
this->KIO::PreviewJob::d->KIO::PreviewJobPrivate::items == 0'
/usr/qt/3/include/qvaluelist.h:577: error: candidates are: bool
QValueList::operator==(const QValueList&) const [with T =
KIO::PreviewItem]
/usr/qt/3/include/qcstring.h:299: error: bool operator==(const
QCString&, const QCString&)
/usr/qt/3/include/qcstring.h:302: error: bool operator==(const
QCString&, const char*)
/usr/qt/3/include/qcstring.h:305: error: bool operator==(const
char*, const QCString&)
/usr/qt/3/include/qstring.h:303: error: bool operator==(char,
QChar)
/usr/qt/3/include/qstring.h:308: error: bool operator==(QChar,
char)
/usr/qt/3/include/qstring.h:313: error: bool operator==(QChar,
QChar)
/usr/qt/3/include/qstring.h:1017: error: bool operator==(const
QString&, const QString&)
/usr/qt/3/include/qstring.h:1024: error: bool operator==(const
QString&, const char*)
/usr/qt/3/include/qstring.h:1030: error: bool operator==(const
char*, const QString&)
/usr/qt/3/include/qpoint.h:148: error: bool operator==(const
QPoint&, const QPoint&)
/usr/qt/3/include/qsize.h:162: error: bool operator==(const
QSize&, const QSize&)
/usr/qt/3/include/qrect.h:151: error: bool operator==(const
QRect&, const QRect&)
previewjob.cpp: In member function `void KIO::PreviewJob::prependItems(const
KFileItemList&, bool)':
previewjob.cpp:159: warning: unused parameter `bool deleteItems'
previewjob.cpp: In member function `void KIO::PreviewJob::bubbleItems(const
KFileItemList&, bool)':
previewjob.cpp:229: warning: unused parameter `bool deleteItems'
make[3]: *** [previewjob.lo] Error 1
make[3]: *** Se espera a que terminen otras tareas....
make[3]: Leaving directory `/var/tmp/portage/kdelibs-3.4.1-r1/work/kdelibs-3.4.1/kio/kio'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/kdelibs-3.4.1-r1/work/kdelibs-3.4.1/kio'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/kdelibs-3.4.1-r1/work/kdelibs-3.4.1'
make: *** [all] Error 2

!!! ERROR: kde-base/kdelibs-3.4.1-r1 failed.
!!! Function kde_src_compile, Line 166, Exitcode 2
!!! died running emake, kde_src_compile:make
!!! If you need support, post the topmost build error, NOT this status message.


** libkonq aslo gives me a compile error
/bin/sh ../libtool --silent --mode=compile --tag=CXX i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/kde/3.4/include/arts -I/usr/kde/3.4/include -I/usr/qt/3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -mcpu=pentium4 -march=pentium4 -O3 -mfpmath=sse,387 -ffast-math -fforce-addr -fforce-mem -falign-functions=4 -fomit-frame-pointer -pipe -ftracer -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -c -o konq_operations.lo `test -f 'konq_operations.cc' || echo './'`konq_operations.cc
konq_iconviewwidget.cc: In member function `void
KonqIconViewWidget::slotOnItem(QIconViewItem*)':
konq_iconviewwidget.cc:274: error: `bubbleItems' undeclared (first use this
function)
konq_iconviewwidget.cc:274: error: (Each undeclared identifier is reported only
once for each function it appears in.)
konq_iconviewwidget.cc: In member function `void
KonqIconViewWidget::slotMovedContents(int, int)':
konq_iconviewwidget.cc:484: error: `isPreviewOnlyInView' undeclared (first use
this function)
konq_iconviewwidget.cc:492: error: `bubbleItems' undeclared (first use this
function)
konq_iconviewwidget.cc: At global scope:
konq_iconviewwidget.cc:691: error: no `bool
KonqIconViewWidget::isPreviewOnlyInView() const' member function declared in
class `KonqIconViewWidget'
konq_iconviewwidget.cc:909: error: no `void
KonqIconViewWidget::resizeEvent(QResizeEvent*)' member function declared in
class `KonqIconViewWidget'
konq_iconviewwidget.cc: In member function `void
KonqIconViewWidget::resizeEvent(QResizeEvent*)':
konq_iconviewwidget.cc:960: error: `bubbleItems' undeclared (first use this
function)
konq_iconviewwidget.cc: In member function `void
KonqIconViewWidget::startImagePreview(const QStringList&, bool)':
konq_iconviewwidget.cc:1054: error: `bubbleItems' undeclared (first use this
function)
In file included from konq_iconviewwidget.cc:2092:
konq_iconviewwidget.moc: In member function `virtual bool
KonqIconViewWidget::qt_invoke(int, QUObject*)':
konq_iconviewwidget.moc:264: warning: `slotToolTipPreview' is deprecated
(declared at konq_iconviewwidget.cc:526)
konq_iconviewwidget.moc:265: warning: `slotToolTipPreviewResult' is deprecated
(declared at konq_iconviewwidget.cc:531)
make[3]: *** [konq_iconviewwidget.lo] Error 1
make[3]: *** Se espera a que terminen otras tareas....
make[3]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1/libkonq'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1/libkonq'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/libkonq-3.4.1/work/libkonq-3.4.1'
make: *** [all] Error 2

!!! ERROR: kde-base/libkonq-3.4.1 failed.
!!! Function kde_src_compile, Line 166, Exitcode 2
!!! died running emake, kde_src_compile:make
!!! If you need support, post the topmost build error, NOT this status message.


Someone can help? i have the full compile logs. ALL PATCHES WERE APLIED PERFECTLY.

Report

C

oliverthered

15 years ago

The problem should be fixed with the -0.2 patches.

The first was caused by comparing a non-pointer to NULL, the second was caused by kdebase needing kdelibs to be installed first.

Report

C

oliverthered

15 years ago

This first problem is 'caused' by an update to the QT libraies (or maybe gcc). the compiler isn't picking up qstring = "this is a char *" properly,
but this is easly fixed.

either use a cast to (char char *)
or string = new QString("this is a char *")


I'll find out what's causing the second problem as soon as my system updates finished.

Report

C

oliverthered

15 years ago

I'll recheck the patches and make sure nothing had been missed.

I'm recompiling kdevelop at the moment so it may be a little while.

Report

nuka

15 years ago

it got my 20 votes :)

im actually surprised that this wasnt already done in konqueror. it just seems like the common sense way to do it.

does this make any difference on browsing though?

Report

C

oliverthered

15 years ago

only if you have previews turned on for FTP.

I have some other plans to sort out browsing but there going to take a while to implement...

Things like if a page hasn't been viewed for an hour put it into cache to free up some system memory.

Report

janet

15 years ago

So you really *like* that behaviour? It's one of the things I hate most in Windows...

Report

MamiyaOtaru

15 years ago

huh? What exactly don't you like? Loading thumbnails? If so, your complaint is with KDE, not with this patch, which increases the perceived speed by loading the thumbnails for the files you are actually looking at instead of in alphabetical order from the beginning.

If thumbnails must be loaded, a patch like this simply has to go in. Bravo submitter.

Report

janet

15 years ago

> loading the thumbnails for the files you are actually looking at instead of in alphabetical order from the beginning.

Exactly that's what I don't like. I finde it very annoying if the thumbnails load when you scroll in the window. Takes too much time! I like to have the thumbnails loaded at the beginning when I open the folder - all of them. Scrolling then is *much* faster (means: without the patch)!

Report

C

oliverthered

15 years ago

I like to have the thumbnails loaded at the beginning when I open the folder - all of them. Scrolling then is *much* faster


But that's not how konqueror works at the moment. With or without the patch the same amount of time is spent loading thumbnails (well unless you selected to load only those in view).

All this patch does is change the order in which the thumbnails are loaded, putting those icons in view at the top of the list.
If you change the view port say by scrolling then a moment afterwards the icons will be re-orded so that those in view are loaded first.

Because it takes a moment, the order will not be updated until you stop (or pause) you scrolling.

Report

janet

15 years ago

So it is a permanet update of the loading order when I scroll (the ones that are in the viewed window and then the rest alphabetically or whatever the sorting of the folder is set to) until all thumbnails are loaded? And the rest of the thumbnails is being loaded in the background as it is now?

That would be ok - to me it sounded like the Redmond way of loading the thumbnails, which really is very annoying: the thumbnails viewed are loaded and only when you scroll the next viewed are loaded.

Report

C

oliverthered

15 years ago

Yep, that's the way it works.

There's also an option to load only the icons in view because currently if you fire up 3 or 4 konqueror file views all those view will attempt to load all their icons at the same time, hogging CPU and memory resources.

Report

Superstoned

15 years ago

but this IS really cool, makes konqi feel faster...

Report

aseigo

15 years ago

diffs will be necessary to be able to review your changes (which i'll do as soon as there are diffs =)

as for the option, i don't think we need more options. things like this tend to be either better or worse, configuration is only necessary if its worse ;-)

Report

15 years ago

0.4
remade the patches, tested with gentoo.

you only need to make install kdelibs/kio and kdebase/libkonq

preview 'only' in view is switched on by default, to change the behaviour so that items out of view are also loaded,
[MENU] Settings/Configure KDE
Previews & Meta Data, and deselect the option 'Only load preview for items in view'
You need to refresh the view for the change to take effect.

===================

0.3 fixed another compile error, 'it's too hot today'
===================
0.2 Corrected bug in kdelibs patch.

===================

updated for kde 3.4.1

You must install kdelibs before kdebase.

12345678910
product-maker Base: 4 x 5.0 Ratings
Be the first to comment
File (click to download) Version Description PackagetypeArchitecture Downloads Date Filesize DL OCS-Install MD5SUM
*Needs pling-store or ocs-url to install things
Pling
0 Affiliates
Details
license
version
0.4
updated Jun 20 2005
added Dec 13 2004
downloads 24h
0
mediaviews 24h 0
pageviews 24h 0