From: Andy Scherzinger Date: Fri, 11 Sep 2015 12:37:11 +0000 (+0200) Subject: initial implementaion for click events + using the import icon for upload from other... X-Git-Tag: beta-20151202~3^2~52 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/d3e12b883f6ef83316e5004cb85cf8ef26ea280b?ds=inline;hp=-c initial implementaion for click events + using the import icon for upload from other apps, also fixed the checkboxes for hdpi/mdpi --- d3e12b883f6ef83316e5004cb85cf8ef26ea280b diff --git a/res/drawable-hdpi/ic_checkbox_blank_outline.png b/res/drawable-hdpi/ic_checkbox_blank_outline.png index 198568de..164dcb53 100644 Binary files a/res/drawable-hdpi/ic_checkbox_blank_outline.png and b/res/drawable-hdpi/ic_checkbox_blank_outline.png differ diff --git a/res/drawable-hdpi/ic_checkbox_marked.png b/res/drawable-hdpi/ic_checkbox_marked.png index 92d4109c..330d7b95 100644 Binary files a/res/drawable-hdpi/ic_checkbox_marked.png and b/res/drawable-hdpi/ic_checkbox_marked.png differ diff --git a/res/drawable-hdpi/ic_import.png b/res/drawable-hdpi/ic_import.png new file mode 100644 index 00000000..ad728378 Binary files /dev/null and b/res/drawable-hdpi/ic_import.png differ diff --git a/res/drawable-mdpi/ic_checkbox_blank_outline.png b/res/drawable-mdpi/ic_checkbox_blank_outline.png new file mode 100644 index 00000000..d4ca47c6 Binary files /dev/null and b/res/drawable-mdpi/ic_checkbox_blank_outline.png differ diff --git a/res/drawable-mdpi/ic_checkbox_marked.png b/res/drawable-mdpi/ic_checkbox_marked.png new file mode 100644 index 00000000..99df2742 Binary files /dev/null and b/res/drawable-mdpi/ic_checkbox_marked.png differ diff --git a/res/drawable-mdpi/ic_import.png b/res/drawable-mdpi/ic_import.png new file mode 100644 index 00000000..3bc69d1b Binary files /dev/null and b/res/drawable-mdpi/ic_import.png differ diff --git a/res/drawable-xhdpi/ic_import.png b/res/drawable-xhdpi/ic_import.png new file mode 100644 index 00000000..bf2f72ea Binary files /dev/null and b/res/drawable-xhdpi/ic_import.png differ diff --git a/res/drawable-xxhdpi/ic_import.png b/res/drawable-xxhdpi/ic_import.png new file mode 100644 index 00000000..a4412aac Binary files /dev/null and b/res/drawable-xxhdpi/ic_import.png differ diff --git a/res/layout/list_fragment.xml b/res/layout/list_fragment.xml index 1ed1c530..931c1c2d 100644 --- a/res/layout/list_fragment.xml +++ b/res/layout/list_fragment.xml @@ -106,7 +106,6 @@ fab:fab_size="mini" fab:fab_icon="@drawable/ic_action_upload" fab:fab_colorNormal="@color/owncloud_blue_accent" - fab:fab_title="@string/actionbar_upload" fab:fab_colorPressed="@color/owncloud_blue"/> + fab:fab_colorPressed="@color/owncloud_blue"/> \ No newline at end of file diff --git a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java index 85711d78..7d7cea1e 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -149,7 +149,7 @@ public class FileDisplayActivity extends HookActivity private boolean mSyncInProgress = false; private static String DIALOG_UNTRUSTED_CERT = "DIALOG_UNTRUSTED_CERT"; - private static String DIALOG_CREATE_FOLDER = "DIALOG_CREATE_FOLDER"; + public static String DIALOG_CREATE_FOLDER = "DIALOG_CREATE_FOLDER"; private static String DIALOG_UPLOAD_SOURCE = "DIALOG_UPLOAD_SOURCE"; private static String DIALOG_CERT_NOT_SAVED = "DIALOG_CERT_NOT_SAVED"; diff --git a/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java b/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java index 2ca2cc3b..900fde98 100644 --- a/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java +++ b/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java @@ -22,6 +22,7 @@ package com.owncloud.android.ui.fragment; import java.util.ArrayList; +import android.app.Activity; import android.os.Build; import android.os.Bundle; import android.support.v4.app.Fragment; @@ -45,6 +46,7 @@ import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.ui.ExtendedListView; import com.owncloud.android.ui.activity.OnEnforceableRefreshListener; import com.owncloud.android.ui.adapter.FileListListAdapter; +import com.owncloud.android.ui.dialog.CreateFolderDialogFragment; import third_parties.in.srain.cube.GridViewWithHeaderAndFooter; diff --git a/src/com/owncloud/android/ui/fragment/OCFileListFragment.java b/src/com/owncloud/android/ui/fragment/OCFileListFragment.java index 02bd845d..bca191a4 100644 --- a/src/com/owncloud/android/ui/fragment/OCFileListFragment.java +++ b/src/com/owncloud/android/ui/fragment/OCFileListFragment.java @@ -24,6 +24,7 @@ package com.owncloud.android.ui.fragment; import android.app.Activity; import android.content.Intent; +import android.os.Build; import android.os.Bundle; import android.support.v4.widget.SwipeRefreshLayout; import android.view.ContextMenu; @@ -34,6 +35,7 @@ import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.AdapterContextMenuInfo; import android.widget.PopupMenu; +import android.widget.Toast; import com.owncloud.android.R; import com.owncloud.android.authentication.AccountUtils; @@ -46,11 +48,14 @@ import com.owncloud.android.ui.activity.FileActivity; import com.owncloud.android.ui.activity.FileDisplayActivity; import com.owncloud.android.ui.activity.FolderPickerActivity; import com.owncloud.android.ui.activity.OnEnforceableRefreshListener; +import com.owncloud.android.ui.activity.UploadFilesActivity; import com.owncloud.android.ui.adapter.FileListListAdapter; import com.owncloud.android.ui.dialog.ConfirmationDialogFragment; +import com.owncloud.android.ui.dialog.CreateFolderDialogFragment; import com.owncloud.android.ui.dialog.FileActionsDialogFragment; import com.owncloud.android.ui.dialog.RemoveFileDialogFragment; import com.owncloud.android.ui.dialog.RenameFileDialogFragment; +import com.owncloud.android.ui.dialog.UploadSourceDialogFragment; import com.owncloud.android.ui.preview.PreviewImageFragment; import com.owncloud.android.ui.preview.PreviewMediaFragment; import com.owncloud.android.utils.FileStorageUtils; @@ -75,6 +80,8 @@ public class OCFileListFragment extends ExtendedListFragment implements FileActi private static final String KEY_FILE = MY_PACKAGE + ".extra.FILE"; + private static String DIALOG_CREATE_FOLDER = "DIALOG_CREATE_FOLDER"; + private FileFragment.ContainerActivity mContainerActivity; private OCFile mFile = null; @@ -144,8 +151,89 @@ public class OCFileListFragment extends ExtendedListFragment implements FileActi setListAdapter(mAdapter); registerLongClickListener(); + registerFabListeners(); } + private void registerFabListeners() { + registerFabUploadListeners(); + registerFabMkDirListeners(); + registerFabUploadFromAppListeners(); + } + + private void registerFabUploadListeners() { + getFabUpload().setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Intent action = new Intent(getActivity(), UploadFilesActivity.class); + action.putExtra( + UploadFilesActivity.EXTRA_ACCOUNT, + ((FileActivity) getActivity()).getAccount() + ); + getActivity().startActivityForResult(action, UploadSourceDialogFragment.ACTION_SELECT_MULTIPLE_FILES); + getFabMain().collapse(); + } + }); + + getFabUpload().setOnLongClickListener(new View.OnLongClickListener() { + @Override + public boolean onLongClick(View v) { + Toast.makeText(getActivity(), R.string.actionbar_upload, Toast.LENGTH_SHORT).show(); + return true; + } + }); + } + + private void registerFabMkDirListeners() { + getFabMkdir().setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + CreateFolderDialogFragment dialog = + CreateFolderDialogFragment.newInstance(mFile); + dialog.show(getActivity().getSupportFragmentManager(), FileDisplayActivity.DIALOG_CREATE_FOLDER); + getFabMain().collapse(); + } + }); + + getFabMkdir().setOnLongClickListener(new View.OnLongClickListener() { + @Override + public boolean onLongClick(View v) { + Toast.makeText(getActivity(), R.string.actionbar_mkdir, Toast.LENGTH_SHORT).show(); + return true; + } + }); + } + + private void registerFabUploadFromAppListeners() { + getFabUploadFromApp().setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Intent action = new Intent(Intent.ACTION_GET_CONTENT); + action = action.setType("*/*").addCategory(Intent.CATEGORY_OPENABLE); + + //Intent.EXTRA_ALLOW_MULTIPLE is only supported on api level 18+, Jelly Bean + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) { + action.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true); + } + + getActivity().startActivityForResult( + Intent.createChooser(action, getString(R.string.upload_chooser_title)), + UploadSourceDialogFragment.ACTION_SELECT_CONTENT_FROM_APPS + ); + getFabMain().collapse(); + } + }); + + getFabUploadFromApp().setOnLongClickListener(new View.OnLongClickListener() { + @Override + public boolean onLongClick(View v) { + Toast.makeText(getActivity(), + R.string.actionbar_upload_from_apps, + Toast.LENGTH_SHORT).show(); + return true; + } + }); + } + private void registerLongClickListener() { getListView().setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { public boolean onItemLongClick(AdapterView arg0, View v,