Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Files browser: endless scroll of files list #251

Closed
DeepDiver1975 opened this issue Nov 5, 2012 · 9 comments
Closed

Files browser: endless scroll of files list #251

DeepDiver1975 opened this issue Nov 5, 2012 · 9 comments

Comments

@DeepDiver1975
Copy link
Member

As explained by @jancborchardt in #164

endless scroll, but with »lazy loading« if it’s over a certain limit, say 50 files (or whenever performance is impacted). That means only load as many entries as the viewport can show, and then some. When people scroll down, start loading more. Then when it’s scrolled more, load more. To people it should seem instantaneous.

@jancborchardt
Copy link
Member

Some more: Lazy loading is usually used for sites with »endless« content, like news streams.

With personal files it’s a bit different though: When you have 150 Files, but only 50 are loaded then the scroll bar will be a bit short, which might be confusing and lead you to think »why only so few files, I have more?«. Then you scroll down and see more, but the initial confusion will probably always be there. To alleviate that, can we at all times show all entries (via elements.length) but not fill them with actual content?

@DeepDiver1975
Copy link
Member Author

or use pagination?
The user immediately can see that there is more.

@jancborchardt
Copy link
Member

Pagination is a really bad system because pages are broken at arbitrary limits (say 20 entries) and a bunch of very related things might be on different pages. Also, no other file manager does this.

@mosch
Copy link

mosch commented Nov 13, 2012

I think showing all the files is the right way. Even if there are hundreds or thousands of files in a directory. Current browsers can show a lot of elements without any trouble. Using a caching system should prevent long loading times caused by the PHP process.
When the directory contains more files than ownCloud can process, it should cut off and just say "and thousands more" files or s.th. like this.
I think a "endless scroll" is the wrong solution for a file manager!

@jancborchardt
Copy link
Member

So is there a performance impact when many files are displayed? And if so, where does it come from? Just showing all files is certainly better than lazy loading, and pagination is just really bad.

@mosch
Copy link

mosch commented Dec 20, 2012

There is strong impact on the performance when showing a lot of files. It comes from a lot of mark-up that is generated for every row of the files table: For each row there is a base64 encoded image in the markup, just to display the type. There should be a CSS class for that instead. Furthermore there is an extra style attribute with a color in it, just to make the size look grey. This could also be added to the already existing "filesize" class. But I think this also has something to to with the CSS "framework" ownCloud provides.

Optimizing the overview css / javascript might help a lot displaying huge lists of files.

@jancborchardt
Copy link
Member

So does someone want to work on this or what? :)

@jancborchardt
Copy link
Member

See »Virtual list in vanilla Javascript«.

@DeepDiver1975
Copy link
Member Author

This is being worked on: #7167

@lock lock bot locked as resolved and limited conversation to collaborators Aug 19, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants