Skip to content

Enable WebView caching #1843

Open
Open
@Pilzinsel64

Description

@Pilzinsel64

Is your feature request related to a problem? Please describe.

Whenever you open a document, the amount of data downloaded (even for empty documents) is about 15 MB. On mobile data this is absolutely too much.
--> The reason is file core-common.js is too big and the WebView wont cash it.

I already have http compression enabled but this does not help in WebView. The Cache of the WebView seems to be cleared each time directly on closing it. This triggeres a completely redownload of that js file (and of course others).

Also, this absolutely slows down the process of opening a document - from tapping on it to the content is shown. Most of the times there is "it needs long to load" at the bottom to read. (No, my server is fast enough and my internet connection is 500/100 glass fiber - this is not the problem.)

This does also happen to the Files apps, see here: nextcloud/android#11800

Describe the solution you'd like

Enable caching of WebView or at least make it an option. The cache should not be cleared on closing the WebView and also not on closing the App. It should be saved into the App Cache (at least I read this would likely for apps with webview cashing enabled, you probably know the right solution).

Describe alternatives you've considered

Reduce the size of loaded components on https://github.com/nextcloud/server, with under core-common.js. The pull request nextcloud/server#38329 is mostly a performance boost in general but will not degrese the amount of data downloaded. For public web pages like direct editing it should not use all of that components.
This is only a workaround in my opition.

Additional context

See the following topic. Read carefully, there are screenshots, logs and so on. Also check the issue following.
https://help.nextcloud.com/t/loading-new-page-hanging-under-certain-conditions/165873
nextcloud-snap/nextcloud-snap#2450

NOTE: Be super sure to remove sensitive data like passwords, note that everybody can look here! You can use the Issue Template application to prefill some of the required information: https://apps.nextcloud.com/apps/issuetemplate

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions