diff --git a/app/build.gradle b/app/build.gradle index 0903745..29de673 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -5,7 +5,7 @@ android { buildToolsVersion "24.0.3" defaultConfig { applicationId "horse.jaeil.microframe" - minSdkVersion 15 + minSdkVersion 23 targetSdkVersion 23 versionCode 1 versionName "1.0" @@ -17,10 +17,12 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } + productFlavors { + } } dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) + compile fileTree(include: ['*.jar'], dir: 'libs') androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) diff --git a/app/src/main/java/horse/jaeil/microframe/FrameWidgetConfigureActivity.java b/app/src/main/java/horse/jaeil/microframe/FrameWidgetConfigureActivity.java index 90dfe60..0d924e7 100644 --- a/app/src/main/java/horse/jaeil/microframe/FrameWidgetConfigureActivity.java +++ b/app/src/main/java/horse/jaeil/microframe/FrameWidgetConfigureActivity.java @@ -5,11 +5,17 @@ import android.appwidget.AppWidgetManager; import android.content.Context; import android.content.Intent; import android.graphics.Bitmap; +import android.graphics.drawable.BitmapDrawable; +import android.graphics.drawable.Drawable; import android.net.Uri; import android.os.Bundle; +import android.util.Log; import android.view.View; import android.widget.ImageView; +import java.io.FileNotFoundException; +import java.io.InputStream; + /** * The configuration screen for the {@link FrameWidget FrameWidget} AppWidget. */ @@ -17,6 +23,7 @@ public class FrameWidgetConfigureActivity extends Activity { // private static final String PREFS_NAME = "horse.jaeil.microframe.FrameWidget"; // private static final String PREF_PREFIX_KEY = "appwidget_"; + private static final String TAG = "FrameWidgetConfigure"; private static final int REQUEST_IMAGE_GET = 1; int mAppWidgetId = AppWidgetManager.INVALID_APPWIDGET_ID; View.OnClickListener mSelectClickListener = new View.OnClickListener() { @@ -30,8 +37,9 @@ public class FrameWidgetConfigureActivity extends Activity { .setType("image/*"); if (intent.resolveActivity(context.getPackageManager()) != null) { startActivityForResult(intent, REQUEST_IMAGE_GET); + Log.d(TAG, "Started selector activity"); } -// + // // When the button is clicked, store the string locally // String widgetText = mAppWidgetText.getText().toString(); // saveTitlePref(context, mAppWidgetId, widgetText); @@ -57,13 +65,29 @@ public class FrameWidgetConfigureActivity extends Activity { @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { + Log.d(TAG, "Received Activity result"); + if (requestCode == REQUEST_IMAGE_GET && resultCode == RESULT_OK) { - Bitmap thumbnail = data.getParcelableExtra("data"); +// Bitmap thumbnail = data.getParcelableExtra("data"); Uri fullPhotoUri = data.getData(); - // Set the preview image + Log.i(TAG, fullPhotoUri.toString()); + + Drawable drawable; + try { + InputStream inputStream = getContentResolver().openInputStream(fullPhotoUri); + drawable = Drawable.createFromStream(inputStream, fullPhotoUri.toString()); + } catch (FileNotFoundException e) { + Log.e(TAG, "Selected image was not found! Now it's going to crash..."); + drawable = null; + } + ImageView preview = (ImageView) findViewById(R.id.previewImageView); - preview.setImageBitmap(thumbnail); +// Drawable drawable = new BitmapDrawable(getResources(), thumbnail); +// drawable = Drawable.createFromPath(fullPhotoUri.getPath()); + preview.setImageDrawable(drawable); + + Log.d(TAG, "Set preview image"); } } diff --git a/app/src/main/res/drawable-nodpi/example_appwidget_preview2.png b/app/src/main/res/drawable-nodpi/example_appwidget_preview2.png new file mode 100644 index 0000000..62b7fc4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/example_appwidget_preview2.png differ diff --git a/app/src/main/res/layout/frame_widget_configure.xml b/app/src/main/res/layout/frame_widget_configure.xml index 9f846da..0e75b66 100644 --- a/app/src/main/res/layout/frame_widget_configure.xml +++ b/app/src/main/res/layout/frame_widget_configure.xml @@ -18,9 +18,11 @@ android:id="@+id/previewImageView" android:layout_width="wrap_content" android:layout_height="wrap_content" + android:maxHeight="300dp" + android:adjustViewBounds="true" android:layout_marginBottom="8dp" android:layout_gravity="center_horizontal" - app:srcCompat="@android:drawable/ic_menu_gallery" + android:src="@drawable/example_appwidget_preview" tools:ignore="ContentDescription" />