# Project target.
target=android-13
-android.library.reference.1=actionbarsherlock/library
+android.library.reference.1=../../../Downloads/JakeWharton-ActionBarSherlock-436230d/library
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>\r
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"\r
- android:layout_width="fill_parent"\r
- android:layout_height="wrap_content"\r
- android:background="#F7F7F7"\r
- android:orientation="vertical" >\r
-\r
- <LinearLayout\r
- android:id="@+id/linearLayout1"\r
- android:layout_width="fill_parent"\r
- android:layout_height="fill_parent"\r
- android:orientation="vertical" >\r
-\r
- <LinearLayout\r
- android:id="@+id/linearLayout7"\r
- android:layout_width="fill_parent"\r
- android:layout_height="wrap_content"\r
- android:layout_gravity="center_vertical"\r
- android:background="@drawable/main_header_bg"\r
- android:gravity="top"\r
- android:orientation="horizontal" >\r
-\r
- <ImageView\r
- android:id="@+id/main_header_small"\r
- android:layout_width="wrap_content"\r
- android:layout_height="wrap_content"\r
- android:layout_gravity="center_vertical|left"\r
- android:src="@drawable/icon" >\r
- </ImageView>\r
-\r
- <eu.alefzero.owncloud.ui.fragment.PathLayout\r
- android:id="@+id/pathLayout1"\r
- android:layout_width="wrap_content"\r
- android:layout_height="wrap_content"\r
- android:layout_gravity="center_vertical" >\r
- </eu.alefzero.owncloud.ui.fragment.PathLayout>\r
- </LinearLayout>\r
- </LinearLayout>\r
-</LinearLayout>
\ No newline at end of file
\r
import java.util.HashMap;\r
\r
-import android.util.Log;\r
-\r
/**\r
* A helper class for some string operations.\r
* @author Bartek Przybylski\r
import android.content.ContentValues;\r
import android.content.Intent;\r
import android.net.Uri;\r
-import android.os.Binder;\r
import android.os.Environment;\r
import android.os.Handler;\r
import android.os.HandlerThread;\r
import android.os.Process;\r
import android.util.Log;\r
import eu.alefzero.owncloud.authenticator.AccountAuthenticator;\r
-import eu.alefzero.owncloud.db.DbHandler;\r
import eu.alefzero.owncloud.db.ProviderMeta.ProviderTableMeta;\r
import eu.alefzero.owncloud.ui.activity.FileDisplayActivity;\r
import eu.alefzero.webdav.WebdavClient;\r
\r
import java.io.File;\r
import java.net.FileNameMap;\r
-import java.net.URI;\r
import java.net.URLConnection;\r
import java.util.ArrayList;\r
import java.util.Stack;\r
}\r
\r
private void validateRequiredFeatures(String[] requiredFeatures) throws UnsupportedFeaturesException {\r
- // TODO\r
}\r
\r
private void validateCreaditials(String username, String password, String path) throws AccessDeniedException {\r
import java.net.MalformedURLException;\r
import java.net.URL;\r
import java.net.UnknownHostException;\r
-import java.security.KeyManagementException;\r
-import java.security.KeyStore;\r
-import java.security.KeyStoreException;\r
-import java.security.NoSuchAlgorithmException;\r
-import java.security.SecureRandom;\r
-import java.security.UnrecoverableKeyException;\r
-\r
-import javax.net.SocketFactory;\r
-import javax.net.ssl.HostnameVerifier;\r
-import javax.net.ssl.HttpsURLConnection;\r
-import javax.net.ssl.SSLContext;\r
-import javax.net.ssl.SSLSession;\r
-import javax.net.ssl.TrustManager;\r
-import javax.net.ssl.X509TrustManager;\r
-\r
-import javax.security.cert.CertificateException;\r
-import javax.security.cert.X509Certificate;\r
-\r
-import org.apache.http.client.HttpClient;\r
import org.apache.http.conn.ClientConnectionManager;\r
import org.apache.http.conn.scheme.Scheme;\r
import org.apache.http.conn.scheme.SchemeRegistry;\r
import org.apache.http.conn.params.ConnManagerPNames;\r
import org.apache.http.conn.params.ConnPerRouteBean;\r
import org.apache.http.conn.scheme.PlainSocketFactory;\r
-import org.apache.http.conn.ssl.SSLSocketFactory;\r
-import org.apache.http.impl.conn.SingleClientConnManager;\r
import org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager;\r
import org.apache.http.params.BasicHttpParams;\r
import org.apache.http.params.HttpParams;\r
mUriMatcher.addURI(ProviderMeta.AUTHORITY_FILES, "dir/#", DIRECTORY);\r
}\r
\r
- private static final String TAG = "OC_ContentProvider";\r
- \r
@Override\r
public int delete(Uri uri, String where, String[] whereArgs) {\r
SQLiteDatabase db = mDbHelper.getWritableDatabase();\r
import android.database.Cursor;\r
import android.database.sqlite.SQLiteDatabase;\r
import android.database.sqlite.SQLiteOpenHelper;\r
-import android.util.Log;\r
\r
/**\r
* Custom database helper for ownCloud\r
import java.util.ArrayList;\r
\r
import eu.alefzero.owncloud.R;\r
-import eu.alefzero.owncloud.R.id;\r
-import eu.alefzero.owncloud.R.layout;\r
-import eu.alefzero.owncloud.R.style;\r
\r
/**\r
* Popup window, shows action list as icon and text like the one in Gallery3D app. \r
\r
\r
import eu.alefzero.owncloud.R;\r
-import eu.alefzero.owncloud.R.id;\r
-import eu.alefzero.owncloud.R.layout;\r
-import eu.alefzero.owncloud.ui.fragment.ActionBar;\r
import eu.alefzero.owncloud.ui.fragment.FileDetail;\r
-import android.app.Activity;\r
-import android.content.Context;\r
-import android.content.Intent;\r
-import android.content.res.Configuration;\r
import android.os.Bundle;\r
import android.support.v4.app.FragmentActivity;\r
import android.support.v4.app.FragmentTransaction;\r
-import android.util.AttributeSet;\r
-import android.util.Log;\r
-import android.view.View;\r
import android.view.Window;\r
\r
/**\r
\r
import eu.alefzero.owncloud.OwnCloudSession;\r
import eu.alefzero.owncloud.R;\r
-import eu.alefzero.owncloud.R.id;\r
-import eu.alefzero.owncloud.R.menu;\r
-import eu.alefzero.owncloud.R.xml;\r
import eu.alefzero.owncloud.db.DbHandler;\r
\r
import android.app.Activity;\r
package eu.alefzero.owncloud.ui.activity;\r
\r
-import java.net.URI;\r
-import java.net.URISyntaxException;\r
-\r
-import eu.alefzero.owncloud.authenticator.AccountAuthenticatorService;\r
-\r
-import android.accounts.Account;\r
import android.accounts.AccountAuthenticatorActivity;\r
-import android.accounts.AccountManager;\r
import android.app.Activity;\r
-import android.content.Intent;\r
import android.os.Bundle;\r
-import android.util.Log;\r
import android.view.View;\r
import android.view.View.OnClickListener;\r
-import android.widget.Button;\r
-import android.widget.EditText;\r
-import android.widget.Toast;\r
\r
public class PreferencesNewSession extends AccountAuthenticatorActivity implements OnClickListener {\r
- private Intent mReturnData;\r
- private final String TAG = "OwnCloudPreferencesNewSession";\r
@Override\r
public void onCreate(Bundle savedInstanceState){\r
super.onCreate(savedInstanceState);\r
}*/\r
}\r
\r
- private URI prepareURI() {\r
+ /*private URI prepareURI() {\r
URI uri = null;\r
- /* String url = "";\r
+ String url = "";\r
try {\r
String username = ((EditText) findViewById(R.id.newSession_username)).getText().toString().trim();\r
String password = ((EditText) findViewById(R.id.newSession_password)).getText().toString().trim();\r
Log.e(TAG, "Incorrect URI syntax " + e.getLocalizedMessage());\r
Toast.makeText(this, R.string.new_session_uri_error, Toast.LENGTH_LONG).show();\r
}\r
- */return uri;\r
+ return uri;\r
}\r
\r
private boolean isNameValid(String string) {\r
return string.matches("[A-Za-z0-9 _-]*");\r
- }\r
+ }*/\r
\r
@Override\r
public void onBackPressed() {\r
*/\r
package eu.alefzero.owncloud.ui.adapter;\r
\r
-import java.security.Provider;\r
-\r
import eu.alefzero.owncloud.DisplayUtils;\r
import eu.alefzero.owncloud.R;\r
-import eu.alefzero.owncloud.R.drawable;\r
-import eu.alefzero.owncloud.R.id;\r
-import eu.alefzero.owncloud.R.layout;\r
import eu.alefzero.owncloud.db.ProviderMeta;\r
import eu.alefzero.owncloud.db.ProviderMeta.ProviderTableMeta;\r
\r
import android.content.Context;\r
import android.database.Cursor;\r
import android.database.DataSetObserver;\r
-import android.util.Log;\r
import android.view.LayoutInflater;\r
import android.view.View;\r
import android.view.ViewGroup;\r
-import android.view.View.OnLongClickListener;\r
-import android.widget.AdapterView;\r
import android.widget.ImageView;\r
import android.widget.ListAdapter;\r
import android.widget.TextView;\r
-import android.widget.AdapterView.OnItemClickListener;\r
\r
/**\r
* This Adapter populates a ListView with all files and \r
+++ /dev/null
-/* ownCloud Android client application\r
- * Copyright (C) 2011 Bartek Przybylski\r
- *\r
- * This program is free software: you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation, either version 3 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program. If not, see <http://www.gnu.org/licenses/>.\r
- *\r
- */\r
-package eu.alefzero.owncloud.ui.fragment;\r
-\r
-import android.os.Bundle;\r
-import android.support.v4.app.Fragment;\r
-import android.support.v4.app.SupportActivity;\r
-import android.view.LayoutInflater;\r
-import android.view.View;\r
-import android.view.ViewGroup;\r
-import eu.alefzero.owncloud.R;\r
-\r
-/**\r
- * A custom ActionBar implementation used in the FileDisplayActivity\r
- * @author Bartek Przybylski\r
- *\r
- */\r
-public class ActionBar extends Fragment {\r
-\r
- @Override\r
- public void onCreate(Bundle savedInstanceState) {\r
- super.onCreate(savedInstanceState);\r
- \r
- }\r
- @Override\r
- public View onCreateView(LayoutInflater inflater, ViewGroup container,\r
- Bundle savedInstanceState) {\r
- View v = inflater.inflate(R.layout.action_bar, container, false);\r
- return v;\r
- }\r
- \r
- @Override\r
- public void onAttach(SupportActivity activity) {\r
- super.onAttach(activity);\r
- }\r
- \r
- public void setPath(String path) {\r
- if (getPathLayout() != null)\r
- getPathLayout().addPath(path);\r
- }\r
- \r
- public String getCurrentPath() {\r
- if (getPathLayout() != null)\r
- return getPathLayout().getFullPath();\r
- return "";\r
- }\r
- \r
- private PathLayout getPathLayout() {\r
- return (PathLayout) getActivity().findViewById(R.id.pathLayout1);\r
- }\r
-}\r
+++ /dev/null
-/* ownCloud Android client application\r
- * Copyright (C) 2011 Bartek Przybylski\r
- *\r
- * This program is free software: you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation, either version 3 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program. If not, see <http://www.gnu.org/licenses/>.\r
- *\r
- */\r
-package eu.alefzero.owncloud.ui.fragment;\r
-\r
-import java.util.LinkedList;\r
-import java.util.Stack;\r
-\r
-import eu.alefzero.owncloud.R;\r
-import eu.alefzero.owncloud.R.drawable;\r
-\r
-import android.content.Context;\r
-import android.util.AttributeSet;\r
-import android.widget.HorizontalScrollView;\r
-import android.widget.ImageView;\r
-import android.widget.LinearLayout;\r
-import android.widget.ScrollView;\r
-import android.widget.TextView;\r
-\r
-/**\r
- * Part of the ActionBar Layout\r
- * @author Bartek Przybylski\r
- *\r
- */\r
-public class PathLayout extends LinearLayout {\r
-\r
- private LinkedList<String> paths;\r
- ScrollView internalScroll;\r
- LinearLayout view;\r
-\r
- public PathLayout(Context context) {\r
- super(context);\r
- initialize();\r
- }\r
- \r
- public PathLayout(Context context, AttributeSet attrs) {\r
- super(context, attrs);\r
- initialize();\r
- }\r
-\r
- public String pop() {\r
- if (paths.size() == 0) {\r
- return null;\r
- }\r
- int start = paths.size()*2-2;\r
- int count = 2;\r
- if (paths.size() == 1) {\r
- start++;\r
- count--;\r
- }\r
- view.removeViews(start, count);\r
- return paths.removeLast();\r
- }\r
-\r
- public void addPath(String path) {\r
- for (String s : path.split("/")) if (s.length() != 0) push(s);\r
- }\r
- \r
- public void push(String path) {\r
- // its weird that we cannot declare static imgView as path separator\r
- if (paths.size() != 0) {\r
- ImageView iv = new ImageView(getContext());\r
- iv.setImageDrawable(getResources().getDrawable(R.drawable.breadcrumb));\r
- iv.setPadding(2, 0, 2, 0);\r
- view.addView(iv);\r
- }\r
- TextView tv = new TextView(getContext());\r
- tv.setLayoutParams(getLayoutParams());\r
- tv.setText(path);\r
- view.addView(tv);\r
- HorizontalScrollView hsv = (HorizontalScrollView) internalScroll.getChildAt(0);\r
- hsv.smoothScrollTo(hsv.getMaxScrollAmount()*2, 0);\r
- paths.addLast(path);\r
- }\r
- \r
- public String peek() {\r
- return paths.peek();\r
- }\r
-\r
- public String getFullPath() {\r
- String ret = new String();\r
- for (int i = 0; i < paths.size(); i++) {\r
- ret += "/" + paths.get(i);\r
- }\r
- return ret;\r
- }\r
- \r
- private void initialize() {\r
- paths = new LinkedList<String>();\r
- internalScroll = new ScrollView(getContext());\r
- internalScroll.setFillViewport(true);\r
- HorizontalScrollView hsv = new HorizontalScrollView(getContext());\r
- hsv.setSmoothScrollingEnabled(true);\r
- internalScroll.addView(hsv);\r
- view = new LinearLayout(getContext());\r
- addView(internalScroll);\r
- hsv.addView(view);\r
- ImageView iv = new ImageView(getContext());\r
- iv.setImageDrawable(getResources().getDrawable(R.drawable.breadcrumb));\r
- view.addView(iv);\r
- }\r
-\r
-}\r
\r
import org.w3c.dom.Document;\r
\r
-import android.util.Xml;\r
-\r
public class TreeNodeContainer extends TreeNode {\r
\r
@Override\r
package eu.alefzero.webdav;
-import java.sql.Date;
-
import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-import eu.alefzero.webdav.TreeNode.NodeProperty;
-
-import android.util.Xml;
public class TreeNodeFile extends TreeNode {
public TreeNodeFile() {
- is_pinned_ = false;
- pathToDownloadedFile_ = "";
- lastUpdateDate_ = new Date(1970, 1, 1);
}
@Override
//TODO: update file
}*/
}
-
- private boolean is_pinned_;
- private String pathToDownloadedFile_;
- private Date lastUpdateDate_;
}
package eu.alefzero.webdav;
import java.io.BufferedInputStream;
-import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
import org.apache.http.HttpHost;
import org.apache.http.HttpResponse;
method.setHeader("User-Agent", "Android-ownCloud");
try {
- FileBody fb = new FileBody(new File(localFile, contentType));
final FileEntity fileEntity = new FileEntity(new File(localFile), contentType);
method.setEntity(fileEntity);
import eu.alefzero.webdav.TreeNode.NodeProperty;
-import android.text.Html;
import android.util.Log;
public class WebdavUtils {