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

fix: Only serve approved slugs through HttpServer #486

Merged
merged 2 commits into from
Dec 7, 2022

Conversation

Ldoppea
Copy link
Member

@Ldoppea Ldoppea commented Dec 6, 2022

Current HttpServer implementation set source={html, baseUrl} on the
iOS' WebView

By doing so, the WebView's history does not work anymore due to a bug
on WKWebview component

This makes some iOS apps work incorrectly

In previous commits we set a blockList to prevent some slugs to be
served through HttpServer on iOS

But we found that there are still a lot of unknown features that may
not work

So we prefer to reverse the logic an only approve slugs that have been
test and proved to be working

Related issue: react-native-webview/react-native-webview#2608

Current HttpServer implementation set `source={html, baseUrl}` on the
iOS' WebView

By doing so, the WebView's history does not work anymore due to a bug
on `WKWebview` component

OnlyOffice (called from cozy-drive) relies on `window.history` in order
to handle navigation and check if it should display the back button, so
it does not work correctly on iOS when using HttpServer

To fix this, we temporarily disable HttpServer for cozy-drive on iOS
until we find a better solution

Relatted issue: react-native-webview/react-native-webview#2608
Current HttpServer implementation set `source={html, baseUrl}` on the
iOS' WebView

By doing so, the WebView's history does not work anymore due to a bug
on `WKWebview` component

This makes some iOS apps work incorrectly

In previous commits we set a blockList to prevent some slugs to be
served through HttpServer on iOS

But we found that there are still a lot of unknown features that may
not work

So we prefer to reverse the logic an only approve slugs that have been
test and proved to be working

Related issue: react-native-webview/react-native-webview#2608
@Ldoppea Ldoppea changed the title Fix/ios httpserver onlyoffice fix: Only serve approved slugs through HttpServer Dec 6, 2022
@Ldoppea Ldoppea merged commit bffcf5d into master Dec 7, 2022
@Ldoppea Ldoppea deleted the fix/ios_httpserver_onlyoffice branch December 7, 2022 08:51
Ldoppea added a commit that referenced this pull request Aug 26, 2024
In iOS, we disabled HttpServer for all cozy-apps as the WebView API may
behave differently

The side effect is that we cannot open those app when offline as we
cannot inject minimal code to make them work without network access

So we want to enable HttpServer on those apps when we detect the app to
be offline

Related PR: #486
Ldoppea added a commit that referenced this pull request Aug 26, 2024
In iOS, we disabled HttpServer for all cozy-apps as the WebView API may
behave differently

The side effect is that we cannot open those app when offline as we
cannot inject minimal code to make them work without network access

So we want to enable HttpServer on those apps when we detect the app to
be offline

Related PR: #486
Ldoppea added a commit that referenced this pull request Sep 24, 2024
In iOS, we disabled HttpServer for all cozy-apps as the WebView API may
behave differently

The side effect is that we cannot open those app when offline as we
cannot inject minimal code to make them work without network access

So we want to enable HttpServer on those apps when we detect the app to
be offline

Related PR: #486
Ldoppea added a commit that referenced this pull request Sep 24, 2024
In iOS, we disabled HttpServer for all cozy-apps as the WebView API may
behave differently

The side effect is that we cannot open those app when offline as we
cannot inject minimal code to make them work without network access

So we want to enable HttpServer on those apps when we detect the app to
be offline

Related PR: #486
Ldoppea added a commit that referenced this pull request Sep 24, 2024
In iOS, we disabled HttpServer for all cozy-apps as the WebView API may
behave differently

The side effect is that we cannot open those app when offline as we
cannot inject minimal code to make them work without network access

So we want to enable HttpServer on those apps when we detect the app to
be offline

Related PR: #486
Ldoppea added a commit that referenced this pull request Sep 25, 2024
In iOS, we disabled HttpServer for all cozy-apps as the WebView API may
behave differently

The side effect is that we cannot open those app when offline as we
cannot inject minimal code to make them work without network access

So we want to enable HttpServer on those apps when we detect the app to
be offline

Related PR: #486
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants