[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    Re: RFC: Managing remote folders, KNetAttach sequel
From:       Aaron Seigo <aseigo () kde ! org>
Date:       2004-12-01 20:02:09
Message-ID: 200412011302.13292.aseigo () kde ! org
[Download RAW message or body]


On December 1, 2004 2:56, Kévin Ottens wrote:
> It's really weird that it takes so much time on your box... It's immediate
> on mine which is really less powerful.
> Someone else with the same issue than Aaron?

ok, so i see what the problem is... in systemimpl.cpp SystemImpl::createEntry 
there is this:

    if (!empty_icon.isEmpty())
    {
        KURL url = desktop.readURL();

        m_lastListingEmpty = true;

        KIO::ListJob *job = KIO::listDir(url, false, false);
        connect( job, SIGNAL( entries(KIO::Job *,
                              const KIO::UDSEntryList &) ),
                 this, SLOT( slotEntries(KIO::Job *,
                         const KIO::UDSEntryList &) ) );
        connect( job, SIGNAL( result(KIO::Job *) ),
                 this, SLOT( slotResult(KIO::Job *) ) );
        qApp->eventLoop()->enterLoop();

        if (m_lastListingEmpty) icon = empty_icon;
    }

if i #ifdef 0 out that loop system:/ lists instantly

for whatever reason, trash:/ is painfully slow on my system here (haven't 
investigated the cause of this yet). so getting the listing for trash:/ slows 
system:/ down dramatically, and since it's done syncronously the listing just 
apears to "hang". i imagine this will be true of any service that takes a 
while to load and has an empty icon.

it would be nice if this could be done async... i looked at the code and it 
would be doable from within kio_system (i've made the job processing async, 
even =) if there was only a way to update an entry from an ioslave that's 
already been passed to listEntry(). i'm sure there is, i just don't know 
how ...

< cue dfaure or waldo replying with an obvious answer ;) >

-- 
Aaron J. Seigo
Society is Geometric

[Attachment #3 (application/pgp-signature)]

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic