Skip to content

Commit 30c42fb

Browse files
committed
remove v1
Signed-off-by: alperozturk <[email protected]>
1 parent 4a172b5 commit 30c42fb

File tree

5 files changed

+6
-271
lines changed

5 files changed

+6
-271
lines changed

app/src/main/java/com/owncloud/android/authentication/AuthenticatorActivity.java

Lines changed: 2 additions & 177 deletions
Original file line numberDiff line numberDiff line change
@@ -24,25 +24,17 @@
2424
import android.content.ServiceConnection;
2525
import android.content.SharedPreferences;
2626
import android.content.pm.PackageManager;
27-
import android.graphics.Bitmap;
28-
import android.graphics.Color;
2927
import android.net.Uri;
30-
import android.os.Build;
3128
import android.os.Bundle;
3229
import android.os.Handler;
3330
import android.os.IBinder;
3431
import android.preference.PreferenceManager;
3532
import android.text.TextUtils;
36-
import android.util.AndroidRuntimeException;
3733
import android.view.KeyEvent;
3834
import android.view.View;
3935
import android.view.inputmethod.EditorInfo;
4036
import android.webkit.CookieManager;
41-
import android.webkit.CookieSyncManager;
4237
import android.webkit.URLUtil;
43-
import android.webkit.WebResourceRequest;
44-
import android.webkit.WebResourceResponse;
45-
import android.webkit.WebView;
4638
import android.widget.AdapterView;
4739
import android.widget.ArrayAdapter;
4840
import android.widget.LinearLayout;
@@ -77,8 +69,6 @@
7769
import com.owncloud.android.databinding.AccountSetupWebviewBinding;
7870
import com.owncloud.android.datamodel.FileDataStorageManager;
7971
import com.owncloud.android.lib.common.OwnCloudAccount;
80-
import com.owncloud.android.lib.common.OwnCloudClient;
81-
import com.owncloud.android.lib.common.OwnCloudClientFactory;
8272
import com.owncloud.android.lib.common.OwnCloudClientManagerFactory;
8373
import com.owncloud.android.lib.common.OwnCloudCredentials;
8474
import com.owncloud.android.lib.common.OwnCloudCredentialsFactory;
@@ -92,9 +82,6 @@
9282
import com.owncloud.android.lib.common.operations.RemoteOperationResult;
9383
import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode;
9484
import com.owncloud.android.lib.common.utils.Log_OC;
95-
import com.owncloud.android.lib.resources.status.GetCapabilitiesRemoteOperation;
96-
import com.owncloud.android.lib.resources.status.NextcloudVersion;
97-
import com.owncloud.android.lib.resources.status.OCCapability;
9885
import com.owncloud.android.lib.resources.status.OwnCloudVersion;
9986
import com.owncloud.android.lib.resources.users.GetUserInfoRemoteOperation;
10087
import com.owncloud.android.operations.DetectAuthenticationMethodOperation.AuthenticationMethod;
@@ -103,7 +90,6 @@
10390
import com.owncloud.android.providers.DocumentsStorageProvider;
10491
import com.owncloud.android.services.OperationsService;
10592
import com.owncloud.android.services.OperationsService.OperationsServiceBinder;
106-
import com.owncloud.android.ui.NextcloudWebViewClient;
10793
import com.owncloud.android.ui.activity.FileDisplayActivity;
10894
import com.owncloud.android.ui.activity.SettingsActivity;
10995
import com.owncloud.android.ui.dialog.IndeterminateProgressDialog;
@@ -112,18 +98,14 @@
11298
import com.owncloud.android.utils.DisplayUtils;
11399
import com.owncloud.android.utils.ErrorMessageAdapter;
114100
import com.owncloud.android.utils.PermissionUtil;
115-
import com.owncloud.android.utils.WebViewUtil;
116101
import com.owncloud.android.utils.theme.CapabilityUtils;
117102
import com.owncloud.android.utils.theme.ViewThemeUtils;
118103

119104
import org.json.JSONObject;
120105

121-
import java.io.InputStream;
122106
import java.net.URLDecoder;
123107
import java.util.ArrayList;
124-
import java.util.HashMap;
125108
import java.util.Locale;
126-
import java.util.Map;
127109
import java.util.Objects;
128110
import java.util.Optional;
129111
import java.util.concurrent.Executors;
@@ -134,12 +116,10 @@
134116

135117
import androidx.activity.result.ActivityResultLauncher;
136118
import androidx.activity.result.contract.ActivityResultContracts;
137-
import androidx.annotation.ColorInt;
138119
import androidx.annotation.NonNull;
139120
import androidx.annotation.Nullable;
140121
import androidx.annotation.VisibleForTesting;
141122
import androidx.appcompat.app.ActionBar;
142-
import androidx.core.content.ContextCompat;
143123
import androidx.fragment.app.DialogFragment;
144124
import androidx.fragment.app.Fragment;
145125
import androidx.fragment.app.FragmentManager;
@@ -188,14 +168,6 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity
188168
private static final String KEY_PASSWORD = "PASSWORD";
189169
private static final String KEY_ASYNC_TASK_IN_PROGRESS = "AUTH_IN_PROGRESS";
190170

191-
/**
192-
* Login Flow v1
193-
*/
194-
// public static final String WEB_LOGIN = "/index.php/login/flow";
195-
196-
/**
197-
* Login Flow v2
198-
*/
199171
public static final String WEB_LOGIN = "/index.php/login/v2";
200172

201173
public static final String PROTOCOL_SUFFIX = "://";
@@ -253,9 +225,6 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity
253225
private String token;
254226

255227
private boolean onlyAdd = false;
256-
@SuppressLint("ResourceAsColor") @ColorInt
257-
private int primaryColor = R.color.primary;
258-
private boolean strictMode = false;
259228

260229
private ViewThemeUtils viewThemeUtils;
261230

@@ -275,8 +244,6 @@ protected void onCreate(Bundle savedInstanceState) {
275244
viewThemeUtils = viewThemeUtilsFactory.withPrimaryAsBackground();
276245
viewThemeUtils.platform.colorStatusBar(this, getResources().getColor(R.color.primary));
277246

278-
// WebViewUtil webViewUtil = new WebViewUtil(this);
279-
280247
Uri data = getIntent().getData();
281248
boolean directLogin = data != null && data.toString().startsWith(getString(R.string.login_data_own_scheme));
282249
if (savedInstanceState == null && !directLogin) {
@@ -343,7 +310,6 @@ protected void onCreate(Bundle savedInstanceState) {
343310
accountSetupWebviewBinding = AccountSetupWebviewBinding.inflate(getLayoutInflater());
344311
setContentView(accountSetupWebviewBinding.getRoot());
345312
anonymouslyPostLoginRequest(webloginUrl);
346-
// initWebViewLogin(webloginUrl, false);
347313
} else {
348314
accountSetupBinding = AccountSetupBinding.inflate(getLayoutInflater());
349315
setContentView(accountSetupBinding.getRoot());
@@ -362,13 +328,10 @@ protected void onCreate(Bundle savedInstanceState) {
362328

363329
initServerPreFragment(savedInstanceState);
364330
ProcessLifecycleOwner.get().getLifecycle().addObserver(lifecycleEventObserver);
365-
366-
// webViewUtil.checkWebViewVersion();
367331
}
368332
}
369333

370334
private void showEnforcedServers() {
371-
372335
showAuthStatus();
373336
accountSetupBinding.hostUrlFrame.setVisibility(View.GONE);
374337
accountSetupBinding.hostUrlInputHelperText.setVisibility(View.GONE);
@@ -421,9 +384,8 @@ public void onNothingSelected(AdapterView<?> parent) {
421384

422385
private void deleteCookies() {
423386
try {
424-
CookieSyncManager.createInstance(this);
425387
CookieManager.getInstance().removeAllCookies(null);
426-
} catch (AndroidRuntimeException e) {
388+
} catch (Exception e) {
427389
Log_OC.e(TAG, e.getMessage());
428390
}
429391
}
@@ -485,124 +447,15 @@ private void launchDefaultWebBrowser(String url) {
485447
startActivity(intent);
486448
}
487449

488-
private static String getWebLoginUserAgent() {
489-
return Build.MANUFACTURER.substring(0, 1).toUpperCase(Locale.getDefault()) +
490-
Build.MANUFACTURER.substring(1).toLowerCase(Locale.getDefault()) + " " + Build.MODEL + " (Android)";
491-
}
492-
493-
/**
494-
* @Deprecated This function is deprecated. Please use the {@link #anonymouslyPostLoginRequest(String)} method instead, which utilizes the improved login flow v2.
495-
*/
496-
@Deprecated
497-
@SuppressFBWarnings("ANDROID_WEB_VIEW_JAVASCRIPT")
498-
@SuppressLint("SetJavaScriptEnabled")
499-
private void initWebViewLogin(String baseURL, boolean useGenericUserAgent) {
500-
viewThemeUtils.platform.colorCircularProgressBar(accountSetupWebviewBinding.loginWebviewProgressBar, ColorRole.ON_PRIMARY_CONTAINER);
501-
accountSetupWebviewBinding.loginWebview.setVisibility(View.GONE);
502-
new WebViewUtil(this).setProxyKKPlus(accountSetupWebviewBinding.loginWebview);
503-
504-
accountSetupWebviewBinding.loginWebview.getSettings().setAllowFileAccess(false);
505-
accountSetupWebviewBinding.loginWebview.getSettings().setJavaScriptEnabled(true);
506-
accountSetupWebviewBinding.loginWebview.getSettings().setDomStorageEnabled(true);
507-
508-
if (useGenericUserAgent) {
509-
accountSetupWebviewBinding.loginWebview.getSettings().setUserAgentString(MainApp.getUserAgent());
510-
} else {
511-
accountSetupWebviewBinding.loginWebview.getSettings().setUserAgentString(getWebLoginUserAgent());
512-
}
513-
accountSetupWebviewBinding.loginWebview.getSettings().setSaveFormData(false);
514-
accountSetupWebviewBinding.loginWebview.getSettings().setSavePassword(false);
515-
516-
Map<String, String> headers = new HashMap<>();
517-
headers.put(RemoteOperation.OCS_API_HEADER, RemoteOperation.OCS_API_HEADER_VALUE);
518-
519-
String url;
520-
if (baseURL != null && !baseURL.isEmpty()) {
521-
url = baseURL;
522-
} else {
523-
url = getResources().getString(R.string.webview_login_url);
524-
}
525-
526-
new WebViewUtil(this).setProxyKKPlus(accountSetupWebviewBinding.loginWebview);
527-
if (url.startsWith(HTTPS_PROTOCOL)) {
528-
strictMode = true;
529-
}
530-
531-
accountSetupWebviewBinding.loginWebview.loadUrl(url, headers);
532-
533-
setClient();
534-
}
535-
536450
@Override
537451
public boolean onKeyDown(int keyCode, KeyEvent event) {
538452
if (accountSetupWebviewBinding != null && event.getAction() == KeyEvent.ACTION_DOWN &&
539453
keyCode == KeyEvent.KEYCODE_BACK) {
540-
if (accountSetupWebviewBinding.loginWebview.canGoBack()) {
541-
accountSetupWebviewBinding.loginWebview.goBack();
542-
} else {
543-
finish();
544-
}
545454
return true;
546455
}
547456
return super.onKeyDown(keyCode, event);
548457
}
549458

550-
private void setClient() {
551-
accountSetupWebviewBinding.loginWebview.setWebViewClient(new NextcloudWebViewClient(getSupportFragmentManager()) {
552-
@Override
553-
public WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) {
554-
return super.shouldInterceptRequest(view, request);
555-
}
556-
557-
@Override
558-
public void onPageStarted(WebView view, String url, Bitmap favicon) {
559-
super.onPageStarted(view, url, favicon);
560-
}
561-
562-
@Override
563-
public boolean shouldOverrideUrlLoading(WebView view, String url) {
564-
if (url.startsWith(getString(R.string.login_data_own_scheme) + PROTOCOL_SUFFIX + "login/")) {
565-
parseAndLoginFromWebView(url);
566-
return true;
567-
}
568-
if (strictMode && url.startsWith(HTTP_PROTOCOL)) {
569-
Snackbar.make(view, R.string.strict_mode, Snackbar.LENGTH_LONG).show();
570-
return true;
571-
}
572-
return false;
573-
}
574-
575-
@Override
576-
public void onPageFinished(WebView view, String url) {
577-
super.onPageFinished(view, url);
578-
579-
accountSetupWebviewBinding.loginWebviewProgressBar.setVisibility(View.GONE);
580-
accountSetupWebviewBinding.loginWebview.setVisibility(View.VISIBLE);
581-
582-
if (mServerInfo.mVersion != null && mServerInfo.mVersion.isOlderThan(NextcloudVersion.nextcloud_25)) {
583-
viewThemeUtils.platform.colorStatusBar(AuthenticatorActivity.this, primaryColor);
584-
getWindow().setNavigationBarColor(primaryColor);
585-
} else {
586-
viewThemeUtils.platform.resetStatusBar(AuthenticatorActivity.this);
587-
getWindow().setNavigationBarColor(ContextCompat.getColor(AuthenticatorActivity.this, R.color.bg_default));
588-
}
589-
}
590-
591-
@Override
592-
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
593-
accountSetupWebviewBinding.loginWebviewProgressBar.setVisibility(View.GONE);
594-
accountSetupWebviewBinding.loginWebview.setVisibility(View.VISIBLE);
595-
596-
InputStream resources = getResources().openRawResource(R.raw.custom_error);
597-
String customError = DisplayUtils.getData(resources);
598-
599-
if (!customError.isEmpty()) {
600-
accountSetupWebviewBinding.loginWebview.loadData(customError, "text/html; charset=UTF-8", null);
601-
}
602-
}
603-
});
604-
}
605-
606459
private void parseAndLoginFromWebView(String dataString) {
607460
try {
608461
String prefix = getString(R.string.login_data_own_scheme) + PROTOCOL_SUFFIX + "login/";
@@ -826,7 +679,6 @@ protected void onNewIntent(Intent intent) {
826679
accountSetupWebviewBinding = AccountSetupWebviewBinding.inflate(getLayoutInflater());
827680
setContentView(accountSetupWebviewBinding.getRoot());
828681
anonymouslyPostLoginRequest(getString(R.string.provider_registration_server));
829-
// initWebViewLogin(getString(R.string.provider_registration_server), true);
830682
}
831683
}
832684

@@ -900,7 +752,7 @@ private void checkOcServer() {
900752

901753
mServerInfo = new GetServerInfoOperation.ServerInfo();
902754

903-
if (uri.length() != 0) {
755+
if (!uri.isEmpty()) {
904756
if (accountSetupBinding != null) {
905757
uri = AuthenticatorUrlUtils.INSTANCE.stripIndexPhpOrAppsFiles(uri);
906758
accountSetupBinding.hostUrlInput.setText(uri);
@@ -1043,24 +895,6 @@ private void onGetServerInfoFinish(RemoteOperationResult result) {
1043895
webViewPassword != null && !webViewPassword.isEmpty()) {
1044896
checkBasicAuthorization(webViewUser, webViewPassword);
1045897
} else {
1046-
new Thread(() -> {
1047-
OwnCloudClient client = OwnCloudClientFactory.createOwnCloudClient(Uri.parse(mServerInfo.mBaseUrl),
1048-
this,
1049-
true);
1050-
RemoteOperationResult remoteOperationResult = new GetCapabilitiesRemoteOperation().execute(client);
1051-
1052-
if (remoteOperationResult.isSuccess() &&
1053-
remoteOperationResult.getData() != null &&
1054-
remoteOperationResult.getData().size() > 0) {
1055-
OCCapability capability = (OCCapability) remoteOperationResult.getData().get(0);
1056-
try {
1057-
primaryColor = Color.parseColor(capability.getServerColor());
1058-
} catch (Exception e) {
1059-
// falls back to primary color
1060-
}
1061-
}
1062-
}).start();
1063-
1064898
accountSetupWebviewBinding = AccountSetupWebviewBinding.inflate(getLayoutInflater());
1065899
setContentView(accountSetupWebviewBinding.getRoot());
1066900

@@ -1071,7 +905,6 @@ private void onGetServerInfoFinish(RemoteOperationResult result) {
1071905
} else {
1072906
initLoginInfoView();
1073907
}
1074-
// initWebViewLogin(mServerInfo.mBaseUrl + WEB_LOGIN, false);
1075908
}
1076909
}
1077910
} else {
@@ -1310,10 +1143,6 @@ public void onAuthenticatorTaskCallback(RemoteOperationResult<UserInfo> result)
13101143
accountManager.setCurrentOwnCloudAccount(mAccount.name);
13111144
getUserCapabilitiesAndFinish();
13121145
} else {
1313-
// init webView again
1314-
if (accountSetupWebviewBinding != null) {
1315-
accountSetupWebviewBinding.loginWebview.setVisibility(View.GONE);
1316-
}
13171146
accountSetupBinding = AccountSetupBinding.inflate(getLayoutInflater());
13181147
setContentView(accountSetupBinding.getRoot());
13191148
initOverallUi();
@@ -1341,10 +1170,6 @@ public void onAuthenticatorTaskCallback(RemoteOperationResult<UserInfo> result)
13411170
} else { // authorization fail due to client side - probably wrong credentials
13421171
if (accountSetupWebviewBinding != null) {
13431172
anonymouslyPostLoginRequest(mServerInfo.mBaseUrl + WEB_LOGIN);
1344-
// initWebViewLogin(mServerInfo.mBaseUrl + WEB_LOGIN, false);
1345-
DisplayUtils.showSnackMessage(this,
1346-
accountSetupWebviewBinding.loginWebview, R.string.auth_access_failed,
1347-
result.getLogMessage());
13481173
} else {
13491174
DisplayUtils.showSnackMessage(this, R.string.auth_access_failed, result.getLogMessage());
13501175

app/src/main/java/com/owncloud/android/ui/activity/EditorWebView.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ public void onUrlLoaded(String loadedUrl) {
7272
this.url = loadedUrl;
7373

7474
if (!url.isEmpty()) {
75-
new WebViewUtil(getApplicationContext()).setProxyKKPlus(this.getWebView());
75+
new WebViewUtil().setProxyKKPlus(this.getWebView());
7676
try {
7777
Thread.sleep(1000);
7878
} catch (InterruptedException e) {

app/src/main/java/com/owncloud/android/ui/activity/ExternalSiteWebView.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request
147147
}
148148
});
149149

150-
new WebViewUtil(getApplicationContext()).setProxyKKPlus(getWebView());
150+
new WebViewUtil().setProxyKKPlus(getWebView());
151151
getWebView().loadUrl(url);
152152
}
153153

0 commit comments

Comments
 (0)