Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 10 additions & 3 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

452 changes: 452 additions & 0 deletions .idea/qaplug_profiles.xml

Large diffs are not rendered by default.

15 changes: 8 additions & 7 deletions app/app.iml
Original file line number Diff line number Diff line change
Expand Up @@ -61,20 +61,20 @@
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
Expand All @@ -97,6 +97,7 @@
</content>
<orderEntry type="jdk" jdkName="Android API 23 Platform" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" exported="" name="butterknife-7.0.1" level="project" />
<orderEntry type="library" exported="" name="recyclerview-v7-23.1.1" level="project" />
<orderEntry type="library" exported="" name="support-v4-23.1.1" level="project" />
<orderEntry type="library" exported="" name="support-annotations-23.1.1" level="project" />
Expand Down
5 changes: 3 additions & 2 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ android {
applicationId 'com.github.developerpaul123.filepickerlibrary'
minSdkVersion 16
targetSdkVersion 23
versionCode 2
versionName '3.0'
versionCode 3
versionName '3.5'
}
buildTypes {
release {
Expand All @@ -25,4 +25,5 @@ dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile project(':library')
compile 'com.github.DeveloperPaul123:MaterialLibrary:1.0.5'
compile 'com.jakewharton:butterknife:7.0.1'
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,159 +16,105 @@

package com.github.developerpaul123.filepickerlibrary.app;

import android.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;

import com.devpaul.filepicker.R;
import com.devpaul.materiallibrary.views.MaterialFlatButton;
import com.github.developerpaul123.filepickerlibrary.FilePicker;
import com.github.developerpaul123.filepickerlibrary.FilePickerActivity;
import com.github.developerpaul123.filepickerlibrary.FilePickerBuilder;
import com.github.developerpaul123.filepickerlibrary.enums.FileScopeType;
import com.github.developerpaul123.filepickerlibrary.enums.FileType;
import com.github.developerpaul123.filepickerlibrary.enums.MimeType;
import com.github.developerpaul123.filepickerlibrary.enums.Request;
import com.github.developerpaul123.filepickerlibrary.enums.Scope;
import com.github.developerpaul123.filepickerlibrary.enums.ThemeType;

import butterknife.Bind;
import butterknife.ButterKnife;
import butterknife.OnClick;


public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (savedInstanceState == null) {
getFragmentManager().beginTransaction()
.add(R.id.container, new MainActivity.PlaceholderFragment())
.commit();
}
static int REQUEST_FILE = 10;
static int REQUEST_DIRECTORY = 11;
@Bind(R.id.file_picker_activity)
MaterialFlatButton activitySample;
@Bind(R.id.file_picker_return_file_path)
MaterialFlatButton returnFilePathSample;
@Bind(R.id.file_picker_dialog)
MaterialFlatButton dialogSample;
@Bind(R.id.file_picker_mime_png)
MaterialFlatButton mimePngSample;
@Bind(R.id.new_file_picker_activity)
MaterialFlatButton materialSample;

@OnClick(R.id.file_picker_mime_png)
void mimePngSample() {
Intent filePicker = new Intent(this, FilePickerActivity.class);
filePicker.putExtra(FilePickerActivity.SCOPE, Scope.ALL);
filePicker.putExtra(FilePickerActivity.REQUEST, Request.FILE);
filePicker.putExtra(FilePickerActivity.INTENT_EXTRA_COLOR_ID, android.R.color.holo_green_dark);
filePicker.putExtra(FilePickerActivity.MIME_TYPE, MimeType.PNG);
startActivityForResult(filePicker, REQUEST_FILE);
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
@OnClick(R.id.new_file_picker_activity)
void materialSample() {
new FilePickerBuilder(this).withColor(android.R.color.holo_blue_bright)
.withRequest(Request.FILE)
.withScope(Scope.ALL)
.withMimeType(MimeType.JPEG)
.useMaterialActivity(true)
.launch(REQUEST_FILE);
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
@OnClick(R.id.file_picker_dialog)
void dialogSample() {
Intent filePickerDialogIntent = new Intent(this, FilePickerActivity.class);
filePickerDialogIntent.putExtra(FilePickerActivity.THEME_TYPE, ThemeType.DIALOG);
filePickerDialogIntent.putExtra(FilePickerActivity.REQUEST, Request.FILE);
startActivityForResult(filePickerDialogIntent, REQUEST_FILE);
}

/**
* A placeholder fragment containing a simple view.
*/
public static class PlaceholderFragment extends Fragment {

public PlaceholderFragment() {
}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {

if (requestCode == FilePickerActivity.REQUEST_DIRECTORY && resultCode == RESULT_OK) {
Toast.makeText(getActivity(), "File Selected: " + data
.getStringExtra(FilePickerActivity.FILE_EXTRA_DATA_PATH),
Toast.LENGTH_LONG).show();
} else if (requestCode == FilePickerActivity.REQUEST_FILE && resultCode == RESULT_OK) {
Toast.makeText(getActivity(), "File Selected: " + data
.getStringExtra(FilePickerActivity.FILE_EXTRA_DATA_PATH),
Toast.LENGTH_LONG).show();
}
super.onActivityResult(requestCode, resultCode, data);
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main, container, false);

MaterialFlatButton filePickerActivity = (MaterialFlatButton) rootView.findViewById(R.id.file_picker_activity);

filePickerActivity.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent filePickerActivity = new Intent(getActivity(), FilePickerActivity.class);
filePickerActivity.putExtra(FilePickerActivity.SCOPE_TYPE, FileScopeType.ALL);
filePickerActivity.putExtra(FilePickerActivity.REQUEST_CODE, FilePickerActivity.REQUEST_DIRECTORY);
filePickerActivity.putExtra(FilePickerActivity.INTENT_EXTRA_FAB_COLOR_ID, android.R.color.holo_green_dark);
startActivityForResult(filePickerActivity, FilePickerActivity.REQUEST_DIRECTORY);
}
});

MaterialFlatButton filePickerForFile = (MaterialFlatButton) rootView.findViewById(R.id.file_picker_return_file_path);

filePickerForFile.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent filePicker = new Intent(getActivity(), FilePickerActivity.class);
filePicker.putExtra(FilePickerActivity.SCOPE_TYPE, FileScopeType.ALL);
filePicker.putExtra(FilePickerActivity.REQUEST_CODE, FilePickerActivity.REQUEST_FILE);
filePicker.putExtra(FilePickerActivity.INTENT_EXTRA_COLOR_ID, android.R.color.holo_orange_dark);
startActivityForResult(filePicker, FilePickerActivity.REQUEST_FILE);
}
});

MaterialFlatButton filePickerDialog = (MaterialFlatButton) rootView.findViewById(R.id.file_picker_dialog);
filePickerDialog.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent filePickerDialogIntent = new Intent(getActivity(), FilePickerActivity.class);
filePickerDialogIntent.putExtra(FilePickerActivity.THEME_TYPE, ThemeType.DIALOG);
filePickerDialogIntent.putExtra(FilePickerActivity.REQUEST_CODE, FilePickerActivity.REQUEST_FILE);
startActivityForResult(filePickerDialogIntent, FilePickerActivity.REQUEST_FILE);
}
});

MaterialFlatButton filePickerMimePng = (MaterialFlatButton) rootView.findViewById(R.id.file_picker_mime_png);
filePickerMimePng.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent filePicker = new Intent(getActivity(), FilePickerActivity.class);
filePicker.putExtra(FilePickerActivity.SCOPE_TYPE, FileScopeType.ALL);
filePicker.putExtra(FilePickerActivity.REQUEST_CODE, FilePickerActivity.REQUEST_FILE);
filePicker.putExtra(FilePickerActivity.INTENT_EXTRA_COLOR_ID, android.R.color.holo_green_dark);
filePicker.putExtra(FilePickerActivity.MIME_TYPE, FileType.PNG);
startActivityForResult(filePicker, FilePickerActivity.REQUEST_FILE);
}
});
@OnClick(R.id.file_picker_activity)
void activitySample() {
Intent filePickerActivity = new Intent(this, FilePickerActivity.class);
filePickerActivity.putExtra(FilePickerActivity.SCOPE, Scope.ALL);
filePickerActivity.putExtra(FilePickerActivity.REQUEST, Request.DIRECTORY);
filePickerActivity.putExtra(FilePickerActivity.INTENT_EXTRA_FAB_COLOR_ID, android.R.color.holo_green_dark);
startActivityForResult(filePickerActivity, REQUEST_DIRECTORY);
}

MaterialFlatButton newFilePicker = (MaterialFlatButton) rootView.findViewById(R.id.new_file_picker_activity);
newFilePicker.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
@OnClick(R.id.file_picker_return_file_path)
void returnFilePathSample() {
Intent filePicker = new Intent(this, FilePickerActivity.class);
filePicker.putExtra(FilePickerActivity.SCOPE, Scope.ALL);
filePicker.putExtra(FilePickerActivity.REQUEST, Request.FILE);
filePicker.putExtra(FilePickerActivity.INTENT_EXTRA_COLOR_ID, android.R.color.holo_orange_dark);
startActivityForResult(filePicker, REQUEST_FILE);
}

new FilePickerBuilder(getActivity()).withColor(android.R.color.holo_blue_bright)
.withRequestCode(FilePicker.REQUEST_FILE)
.withScopeType(FileScopeType.ALL)
.withMimeType(FileType.JPEG)
.useMaterialActivity(true)
.launch();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
}

// Intent filePicker = new Intent(getActivity(), FilePicker.class);
// filePicker.putExtra(FilePicker.SCOPE_TYPE, FileScopeType.ALL);
// filePicker.putExtra(FilePicker.REQUEST_CODE, FilePicker.REQUEST_FILE);
// filePicker.putExtra(FilePicker.INTENT_EXTRA_COLOR_ID, android.R.color.holo_green_dark);
// filePicker.putExtra(FilePicker.MIME_TYPE, FileType.PNG);
// startActivityForResult(filePicker, FilePicker.REQUEST_FILE);
}
});
return rootView;
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);

if ((requestCode == REQUEST_DIRECTORY) && (resultCode == RESULT_OK)) {
Toast.makeText(this, "Directory Selected: " + data
.getStringExtra(FilePickerActivity.FILE_EXTRA_DATA_PATH),
Toast.LENGTH_LONG).show();
} else if ((requestCode == REQUEST_FILE) && (resultCode == RESULT_OK)) {
Toast.makeText(this, "File Selected: " + data
.getStringExtra(FilePickerActivity.FILE_EXTRA_DATA_PATH),
Toast.LENGTH_LONG).show();
}
}
}
63 changes: 56 additions & 7 deletions app/src/main/res/layout/activity_main.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,56 @@
<FrameLayout android:id="@+id/container"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.github.developerpaul123.filepickerlibrary.app.MainActivity"
tools:ignore="MergeRootFrame"/>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.github.developerpaul123.filepickerlibrary.app.MainActivity$PlaceholderFragment">

<com.devpaul.materiallibrary.views.MaterialFlatButton
android:id="@+id/file_picker_activity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:mat_flat_button_color="#303F9F"
app:mat_flat_button_text="@string/file_picker_activity"/>

<com.devpaul.materiallibrary.views.MaterialFlatButton
android:id="@+id/file_picker_return_file_path"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/file_picker_activity"
android:layout_marginTop="10dip"
app:mat_flat_button_color="#303F9F"
app:mat_flat_button_text="@string/return_file_path"/>

<com.devpaul.materiallibrary.views.MaterialFlatButton
android:id="@+id/file_picker_dialog"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/file_picker_return_file_path"
android:layout_marginTop="10dip"
app:mat_flat_button_color="#303F9F"
app:mat_flat_button_text="@string/file_picker_dialog"/>

<com.devpaul.materiallibrary.views.MaterialFlatButton
android:id="@+id/file_picker_mime_png"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/file_picker_dialog"
android:layout_marginTop="10dip"
app:mat_flat_button_color="#303F9F"
app:mat_flat_button_text="PNG Mime"/>

<com.devpaul.materiallibrary.views.MaterialFlatButton
android:id="@+id/new_file_picker_activity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/file_picker_mime_png"
android:layout_marginTop="10dip"
app:mat_flat_button_color="#303F9F"
app:mat_flat_button_text="Material"/>

</RelativeLayout>
Loading