Giter Club home page Giter Club logo

Comments (4)

stefonarch avatar stefonarch commented on August 22, 2024

True, my guess it because there is no cache for desktop entries icons.

from libfm-qt.

tsujan avatar tsujan commented on August 22, 2024

I had the same thought, but further investigation showed that the cache existed and worked fine.

Then, I thought that reading of desktop entries might be CPU-intensive, but that theory proved to be wrong too.

I'm suspicious of GLib: some of its icon functions may cause this. There should be a reason why Nautilus doesn't show desktop icons by default (it didn't a year ago, when I tested it).

from libfm-qt.

tsujan avatar tsujan commented on August 22, 2024

BTW, I found a reason to generalize the option for disabling smooth scrolling: here, it's choppy with a maximized window inside /usr/share/applications/. Smooth scrolling itself isn't the culprit, because it's really smooth inside a folder with more than 600 different icons (from an icon set) or elsewhere.

At least some users will be happy ;)

from libfm-qt.

tsujan avatar tsujan commented on August 22, 2024

Mystery solved!. The culprit is nether GLib nor Qt, but this line in pcmanfm-qt:

        // decrease the cache size to reduce memory usage
        QPixmapCache::setCacheLimit(2048);

While developers of some well-known desktop environments justify wasting of system resources by telling how "modern computers" can handle it, we think in terms of 20th century computers. Even if we care for ancient systems, we should prioritize CPU over RAM by leaving the cache to Qt (10240 KB by default).

Long story made short, although the first loading of /usr/share/applications/ after a boot takes longer compared to other folders, its extra CPU usage after that is only because of the above line.

I'll test for a while and then remove that line if everything goes well.

from libfm-qt.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.