It seems like a lot of people try to use this library together with WebViews in order to implement custom web browsers. However, it seems to be non-trivial to properly use WebView's together with the library's recycling mechanism that reuses previously inflated views to display the contents of different tabs when they are not visible anymore. The following issues are related to this problem:
I don't have enough experience with the WebView class to give good advices on this issue. I even hadn't WebViews in mind when I implemented this library. Therefore this issue is meant to be a platform for discussing this problem. It would be great, if those that are interested in using this library together with WebView's could share their experiences here. Even better, if someone would create a simple example project at Github different people would be able to enhance it, which will hopefully result in a satisfying solution to be used by everyone. I will do my best to comment on issues and give advices about how to use this library properly.
I think that the recycling mechanism of the library works great as it is and there is no need to add any workarounds to get it to work together with WebView's. Of course there is a chance that there might be any bugs related to it. If that's the case, I will do my best to fix them.
In my opinion the following things must be tackled:
- It is necessary to save the state of a
WebView in memory or on the local storage. This includes the visited URL, the history and the content of the displayed website.
- If the
WebView class does not provide a suitable way to store/restore its full state out of the box, it is necessary to implement this by ourselves.
- For displaying the previews of tabs it might be helpful to display a "screenshot" of the website rather than actually using the
WebView to render the website.
- Frequently reloading the URL of the
WebView is no option as this will result in a bad user experience due to the fact that network requests are time consuming.
I hope that some people will contribute to this issue and share their opinions and experiences in order to solve this problem.
It seems like a lot of people try to use this library together with
WebViews in order to implement custom web browsers. However, it seems to be non-trivial to properly useWebView's together with the library's recycling mechanism that reuses previously inflated views to display the contents of different tabs when they are not visible anymore. The following issues are related to this problem:I don't have enough experience with the
WebViewclass to give good advices on this issue. I even hadn'tWebViews in mind when I implemented this library. Therefore this issue is meant to be a platform for discussing this problem. It would be great, if those that are interested in using this library together withWebView's could share their experiences here. Even better, if someone would create a simple example project at Github different people would be able to enhance it, which will hopefully result in a satisfying solution to be used by everyone. I will do my best to comment on issues and give advices about how to use this library properly.I think that the recycling mechanism of the library works great as it is and there is no need to add any workarounds to get it to work together with
WebView's. Of course there is a chance that there might be any bugs related to it. If that's the case, I will do my best to fix them.In my opinion the following things must be tackled:
WebViewin memory or on the local storage. This includes the visited URL, the history and the content of the displayed website.WebViewclass does not provide a suitable way to store/restore its full state out of the box, it is necessary to implement this by ourselves.WebViewto render the website.WebViewis no option as this will result in a bad user experience due to the fact that network requests are time consuming.I hope that some people will contribute to this issue and share their opinions and experiences in order to solve this problem.