From: masensio Date: Mon, 10 Mar 2014 10:08:42 +0000 (+0100) Subject: Merge branch 'develop' into check_server_certificates_in_SSO_webview X-Git-Tag: oc-android-1.5.5~15^2~5 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/101cbbe492469265603145640835e244d6e2949a Merge branch 'develop' into check_server_certificates_in_SSO_webview --- 101cbbe492469265603145640835e244d6e2949a diff --cc res/values/setup.xml index de70e350,932612ea..325e2f1c --- a/res/values/setup.xml +++ b/res/values/setup.xml @@@ -19,8 -19,12 +19,12 @@@ off - off + on + + on + + #FFFFFF #FFFFFF diff --cc src/com/owncloud/android/authentication/SsoWebViewClient.java index e498d0d8,442ec73d..89f66ef2 --- a/src/com/owncloud/android/authentication/SsoWebViewClient.java +++ b/src/com/owncloud/android/authentication/SsoWebViewClient.java @@@ -17,30 -17,14 +17,27 @@@ package com.owncloud.android.authentication; +import java.io.ByteArrayInputStream; import java.lang.ref.WeakReference; +import java.security.cert.Certificate; +import java.security.cert.CertificateException; +import java.security.cert.CertificateFactory; +import java.security.cert.X509Certificate; +import com.owncloud.android.lib.common.network.NetworkUtils; +import com.actionbarsherlock.app.SherlockFragmentActivity; - import com.owncloud.android.R; - import com.owncloud.android.ui.dialog.SslUntrustedCertDialog; +import com.owncloud.android.ui.dialog.SslUntrustedCertDialogABSTRACT; - import com.owncloud.android.ui.dialog.SslUntrustedCertDialog.OnSslUntrustedCertListener; import com.owncloud.android.utils.Log_OC; +import android.content.Context; import android.graphics.Bitmap; +import android.net.http.SslCertificate; import android.net.http.SslError; +import android.os.Bundle; import android.os.Handler; import android.os.Message; +import android.support.v4.app.FragmentManager; +import android.support.v4.app.FragmentTransaction; import android.view.KeyEvent; import android.view.View; import android.webkit.CookieManager; diff --cc src/com/owncloud/android/syncadapter/FileSyncAdapter.java index fe6c7c74,fe6c7c74..4f1cd68a --- a/src/com/owncloud/android/syncadapter/FileSyncAdapter.java +++ b/src/com/owncloud/android/syncadapter/FileSyncAdapter.java @@@ -30,7 -30,7 +30,6 @@@ import com.owncloud.android.R import com.owncloud.android.authentication.AuthenticatorActivity; import com.owncloud.android.datamodel.FileDataStorageManager; import com.owncloud.android.datamodel.OCFile; --import com.owncloud.android.lib.common.accounts.AccountUtils.Constants; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.operations.SynchronizeFolderOperation; import com.owncloud.android.operations.UpdateOCVersionOperation; @@@ -41,7 -41,7 +40,6 @@@ import com.owncloud.android.utils.Log_O import android.accounts.Account; --import android.accounts.AccountManager; import android.accounts.AccountsException; import android.app.Notification; import android.app.NotificationManager; diff --cc src/com/owncloud/android/ui/activity/CopyToClipboardActivity.java index 7c546412,7c546412..b503c379 --- a/src/com/owncloud/android/ui/activity/CopyToClipboardActivity.java +++ b/src/com/owncloud/android/ui/activity/CopyToClipboardActivity.java @@@ -22,7 -22,7 +22,6 @@@ import com.owncloud.android.R import android.app.Activity; import android.content.ClipData; import android.content.Intent; --import android.os.Build; import android.os.Bundle; import android.text.ClipboardManager; import android.widget.Toast; diff --cc src/com/owncloud/android/ui/activity/FileDisplayActivity.java index cf43c6ad,0293314f..e246c4fd --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@@ -141,7 -143,7 +142,9 @@@ OCFileListFragment.ContainerActivity, F private boolean mSyncInProgress = false; //private boolean mRefreshSharesInProgress = false; + private String DIALOG_UNTRUSTED_CERT; ++ + private OCFile mWaitingToSend; @Override protected void onCreate(Bundle savedInstanceState) { @@@ -1589,34 -1613,35 +1601,64 @@@ mRefreshSharesInProgress = true; } */ + + /** + * Show untrusted cert dialog + */ + public void showUntrustedCertDialog(RemoteOperationResult result) { + // Show a dialog with the certificate info + SslUntrustedCertDialog dialog = SslUntrustedCertDialog.newInstance(result, this); + FragmentManager fm = getSupportFragmentManager(); + FragmentTransaction ft = fm.beginTransaction(); + dialog.show(ft, DIALOG_UNTRUSTED_CERT); + + } + + /** + * Dismiss untrusted cert dialog + */ + public void dismissUntrustedCertDialog(){ + Fragment frag = getSupportFragmentManager().findFragmentByTag(DIALOG_UNTRUSTED_CERT); + if (frag != null) { + SslUntrustedCertDialog dialog = (SslUntrustedCertDialog) frag; + dialog.dismiss(); + } + } + + @Override + public void onCancelCertificate() { + // TODO Auto-generated method stub + + } + /** + * Requests the download of the received {@link OCFile} , updates the UI + * to monitor the download progress and prepares the activity to send the file + * when the download finishes. + * + * @param file {@link OCFile} to download and preview. + */ + @Override + public void startDownloadForSending(OCFile file) { + mWaitingToSend = file; + requestForDownload(mWaitingToSend); + boolean hasSecondFragment = (getSecondFragment()!= null); + updateFragmentsVisibility(hasSecondFragment); + } + + private void requestForDownload(OCFile file) { + Account account = getAccount(); + if (!mDownloaderBinder.isDownloading(account, file)) { + Intent i = new Intent(this, FileDownloader.class); + i.putExtra(FileDownloader.EXTRA_ACCOUNT, account); + i.putExtra(FileDownloader.EXTRA_FILE, file); + startService(i); + } + } + + private void sendDownloadedFile(){ + getFileOperationsHelper().sendDownloadedFile(mWaitingToSend, this); + mWaitingToSend = null; + } + }