From: Bartek Przybylski Date: Fri, 13 Apr 2012 18:51:58 +0000 (+0200) Subject: fix file uploading X-Git-Tag: oc-android-1.4.3~452^2 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/03556cf9f30cb639e6d74b11560b7a54b5bb5af0?hp=-c fix file uploading --- 03556cf9f30cb639e6d74b11560b7a54b5bb5af0 diff --git a/src/eu/alefzero/owncloud/Uploader.java b/src/eu/alefzero/owncloud/Uploader.java index 42806375..94b43dd8 100644 --- a/src/eu/alefzero/owncloud/Uploader.java +++ b/src/eu/alefzero/owncloud/Uploader.java @@ -276,9 +276,9 @@ public class Uploader extends ListActivity implements OnItemClickListener, andro null, null); mCursor.moveToFirst(); - pathToUpload = mCursor.getString(mCursor.getColumnIndex(ProviderTableMeta.FILE_PATH)) + - mCursor.getString(mCursor.getColumnIndex(ProviderTableMeta.FILE_NAME)).replace(" ", "%20"); + pathToUpload = mCursor.getString(mCursor.getColumnIndex(ProviderTableMeta.FILE_PATH)).replace(" ", "%20"); } + Log.d(TAG, "Uploading file to dir " + pathToUpload); showDialog(DIALOG_WAITING); mUploadThread = new Thread(new BackgroundUploader(pathToUpload, mStreamsToUpload, mHandler)); @@ -329,29 +329,38 @@ public class Uploader extends ListActivity implements OnItemClickListener, andro mUsername = mAccount.name.substring(0, mAccount.name.indexOf('@')); mPassword = mAccountManager.getPassword(mAccount); setContentView(R.layout.uploader_layout); + mCursor = managedQuery(ProviderMeta.ProviderTableMeta.CONTENT_URI, null, - ProviderTableMeta.FILE_CONTENT_TYPE+"=? AND " + ProviderTableMeta.FILE_ACCOUNT_OWNER + "=?", - new String[]{"DIR", mAccount.name}, + ProviderTableMeta.FILE_NAME+"=? AND " +ProviderTableMeta.FILE_ACCOUNT_OWNER+"=?", + new String[]{"/", mAccount.name}, null); - - ListView lv = getListView(); - lv.setOnItemClickListener(this); - SimpleCursorAdapter sca = new SimpleCursorAdapter(this, - R.layout.uploader_list_item_layout, - mCursor, - new String[]{ProviderTableMeta.FILE_NAME}, - new int[]{R.id.textView1}); - setListAdapter(sca); - Button btn = (Button) findViewById(R.id.uploader_choose_folder); - btn.setOnClickListener(this); - // insert create new directory for multiple items uploading - if (getIntent().getAction().equals(Intent.ACTION_SEND_MULTIPLE)) { - Button createDirBtn = new Button(this); - createDirBtn.setId(android.R.id.button1); - createDirBtn.setText(R.string.uploader_btn_create_dir_text); - createDirBtn.setOnClickListener(this); - ((LinearLayout)findViewById(R.id.linearLayout1)).addView(createDirBtn, LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT); + + if (mCursor.moveToFirst()) { + mCursor = managedQuery(ProviderMeta.ProviderTableMeta.CONTENT_URI, + null, + ProviderTableMeta.FILE_CONTENT_TYPE+"=? AND " + ProviderTableMeta.FILE_ACCOUNT_OWNER + "=? AND " +ProviderTableMeta.FILE_PARENT+"=?", + new String[]{"DIR", mAccount.name, mCursor.getString(mCursor.getColumnIndex(ProviderTableMeta._ID))}, + null); + + ListView lv = getListView(); + lv.setOnItemClickListener(this); + SimpleCursorAdapter sca = new SimpleCursorAdapter(this, + R.layout.uploader_list_item_layout, + mCursor, + new String[]{ProviderTableMeta.FILE_NAME}, + new int[]{R.id.textView1}); + setListAdapter(sca); + Button btn = (Button) findViewById(R.id.uploader_choose_folder); + btn.setOnClickListener(this); + // insert create new directory for multiple items uploading + if (getIntent().getAction().equals(Intent.ACTION_SEND_MULTIPLE)) { + Button createDirBtn = new Button(this); + createDirBtn.setId(android.R.id.button1); + createDirBtn.setText(R.string.uploader_btn_create_dir_text); + createDirBtn.setOnClickListener(this); + ((LinearLayout)findViewById(R.id.linearLayout1)).addView(createDirBtn, LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT); + } } } diff --git a/src/eu/alefzero/owncloud/providers/FileContentProvider.java b/src/eu/alefzero/owncloud/providers/FileContentProvider.java index 683b6911..7055b2af 100644 --- a/src/eu/alefzero/owncloud/providers/FileContentProvider.java +++ b/src/eu/alefzero/owncloud/providers/FileContentProvider.java @@ -145,7 +145,6 @@ public class FileContentProvider extends ContentProvider { switch (mUriMatcher.match(uri)) { case ROOT_DIRECTORY: - sqlQuery.appendWhere(ProviderTableMeta.FILE_PARENT + " is null"); break; case DIRECTORY: sqlQuery.appendWhere(ProviderTableMeta.FILE_PARENT + "="+uri.getPathSegments().get(1));