Description
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