diff --git a/android/src/main/AndroidManifest.xml b/android/src/main/AndroidManifest.xml index 13193fb..1092eb1 100644 --- a/android/src/main/AndroidManifest.xml +++ b/android/src/main/AndroidManifest.xml @@ -14,7 +14,7 @@ android:supportsRtl="true" android:theme="@style/NameGameAppTheme"> diff --git a/android/src/main/java/org/reduxkotlin/namegame/AndroidNavigator.kt b/android/src/main/java/org/reduxkotlin/namegame/AndroidNavigator.kt index a496392..dd7a369 100644 --- a/android/src/main/java/org/reduxkotlin/namegame/AndroidNavigator.kt +++ b/android/src/main/java/org/reduxkotlin/namegame/AndroidNavigator.kt @@ -8,7 +8,7 @@ import androidx.navigation.findNavController import org.reduxkotlin.namegame.common.util.Logger import org.reduxkotlin.namegame.common.middleware.Navigator import org.reduxkotlin.namegame.common.middleware.Screen -import org.reduxkotlin.namegame.store.SettingsDialogFragment +import org.reduxkotlin.namegame.ui.SettingsDialogFragment import java.lang.Exception /** diff --git a/android/src/main/java/org/reduxkotlin/namegame/RoundedCornersTransformation.java b/android/src/main/java/org/reduxkotlin/namegame/RoundedCornersTransformation.java deleted file mode 100644 index 4de537c..0000000 --- a/android/src/main/java/org/reduxkotlin/namegame/RoundedCornersTransformation.java +++ /dev/null @@ -1,281 +0,0 @@ -package org.reduxkotlin.namegame; - -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapShader; -import android.graphics.Canvas; -import android.graphics.Color; -import android.graphics.Paint; -import android.graphics.RectF; -import android.graphics.Shader; - -import com.bumptech.glide.Glide; -import com.bumptech.glide.load.Transformation; -import com.bumptech.glide.load.engine.Resource; -import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; -import com.bumptech.glide.load.resource.bitmap.BitmapResource; - -import java.security.MessageDigest; - - -public class RoundedCornersTransformation implements Transformation { - - public enum CornerType { - ALL, - TOP_LEFT, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_RIGHT, - TOP, BOTTOM, LEFT, RIGHT, - OTHER_TOP_LEFT, OTHER_TOP_RIGHT, OTHER_BOTTOM_LEFT, OTHER_BOTTOM_RIGHT, - DIAGONAL_FROM_TOP_LEFT, DIAGONAL_FROM_TOP_RIGHT, BORDER - } - - private BitmapPool mBitmapPool; - private int mRadius; - private int mDiameter; - private int mMargin; - private CornerType mCornerType; - private String mColor; - private int mBorder; - - public RoundedCornersTransformation(Context context, int radius, int margin) { - this(context, radius, margin, CornerType.ALL); - } - - public RoundedCornersTransformation(Context context, int radius, int margin, String color, int border) { - this(context, radius, margin, CornerType.BORDER); - mColor = color; - mBorder = border; - } - - public RoundedCornersTransformation(BitmapPool pool, int radius, int margin) { - this(pool, radius, margin, CornerType.ALL); - } - - public RoundedCornersTransformation(Context context, int radius, int margin, - CornerType cornerType) { - this(Glide.get(context).getBitmapPool(), radius, margin, cornerType); - } - - public RoundedCornersTransformation(BitmapPool pool, int radius, int margin, - CornerType cornerType) { - mBitmapPool = pool; - mRadius = radius; - mDiameter = mRadius * 2; - mMargin = margin; - mCornerType = cornerType; - } - - @Override - public Resource transform(Context context, Resource resource, int outWidth, int outHeight) { - Bitmap source = resource.get(); - - int width = source.getWidth(); - int height = source.getHeight(); - - Bitmap bitmap = mBitmapPool.get(width, height, Bitmap.Config.ARGB_8888); - if (bitmap == null) { - bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); - } - - Canvas canvas = new Canvas(bitmap); - Paint paint = new Paint(); - paint.setAntiAlias(true); - paint.setShader(new BitmapShader(source, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP)); - drawRoundRect(canvas, paint, width, height); - return BitmapResource.obtain(bitmap, mBitmapPool); - } - - private void drawRoundRect(Canvas canvas, Paint paint, float width, float height) { - float right = width - mMargin; - float bottom = height - mMargin; - - switch (mCornerType) { - case ALL: - canvas.drawRoundRect(new RectF(mMargin, mMargin, right, bottom), mRadius, mRadius, paint); - break; - case TOP_LEFT: - drawTopLeftRoundRect(canvas, paint, right, bottom); - break; - case TOP_RIGHT: - drawTopRightRoundRect(canvas, paint, right, bottom); - break; - case BOTTOM_LEFT: - drawBottomLeftRoundRect(canvas, paint, right, bottom); - break; - case BOTTOM_RIGHT: - drawBottomRightRoundRect(canvas, paint, right, bottom); - break; - case TOP: - drawTopRoundRect(canvas, paint, right, bottom); - break; - case BOTTOM: - drawBottomRoundRect(canvas, paint, right, bottom); - break; - case LEFT: - drawLeftRoundRect(canvas, paint, right, bottom); - break; - case RIGHT: - drawRightRoundRect(canvas, paint, right, bottom); - break; - case OTHER_TOP_LEFT: - drawOtherTopLeftRoundRect(canvas, paint, right, bottom); - break; - case OTHER_TOP_RIGHT: - drawOtherTopRightRoundRect(canvas, paint, right, bottom); - break; - case OTHER_BOTTOM_LEFT: - drawOtherBottomLeftRoundRect(canvas, paint, right, bottom); - break; - case OTHER_BOTTOM_RIGHT: - drawOtherBottomRightRoundRect(canvas, paint, right, bottom); - break; - case DIAGONAL_FROM_TOP_LEFT: - drawDiagonalFromTopLeftRoundRect(canvas, paint, right, bottom); - break; - case DIAGONAL_FROM_TOP_RIGHT: - drawDiagonalFromTopRightRoundRect(canvas, paint, right, bottom); - break; - case BORDER: - drawBorder(canvas, paint, right, bottom); - break; - default: - canvas.drawRoundRect(new RectF(mMargin, mMargin, right, bottom), mRadius, mRadius, paint); - break; - } - } - - private void drawTopLeftRoundRect(Canvas canvas, Paint paint, float right, float bottom) { - canvas.drawRoundRect(new RectF(mMargin, mMargin, mMargin + mDiameter, mMargin + mDiameter), - mRadius, mRadius, paint); - canvas.drawRect(new RectF(mMargin, mMargin + mRadius, mMargin + mRadius, bottom), paint); - canvas.drawRect(new RectF(mMargin + mRadius, mMargin, right, bottom), paint); - } - - private void drawTopRightRoundRect(Canvas canvas, Paint paint, float right, float bottom) { - canvas.drawRoundRect(new RectF(right - mDiameter, mMargin, right, mMargin + mDiameter), mRadius, - mRadius, paint); - canvas.drawRect(new RectF(mMargin, mMargin, right - mRadius, bottom), paint); - canvas.drawRect(new RectF(right - mRadius, mMargin + mRadius, right, bottom), paint); - } - - private void drawBottomLeftRoundRect(Canvas canvas, Paint paint, float right, float bottom) { - canvas.drawRoundRect(new RectF(mMargin, bottom - mDiameter, mMargin + mDiameter, bottom), - mRadius, mRadius, paint); - canvas.drawRect(new RectF(mMargin, mMargin, mMargin + mDiameter, bottom - mRadius), paint); - canvas.drawRect(new RectF(mMargin + mRadius, mMargin, right, bottom), paint); - } - - private void drawBottomRightRoundRect(Canvas canvas, Paint paint, float right, float bottom) { - canvas.drawRoundRect(new RectF(right - mDiameter, bottom - mDiameter, right, bottom), mRadius, - mRadius, paint); - canvas.drawRect(new RectF(mMargin, mMargin, right - mRadius, bottom), paint); - canvas.drawRect(new RectF(right - mRadius, mMargin, right, bottom - mRadius), paint); - } - - private void drawTopRoundRect(Canvas canvas, Paint paint, float right, float bottom) { - canvas.drawRoundRect(new RectF(mMargin, mMargin, right, mMargin + mDiameter), mRadius, mRadius, - paint); - canvas.drawRect(new RectF(mMargin, mMargin + mRadius, right, bottom), paint); - } - - private void drawBottomRoundRect(Canvas canvas, Paint paint, float right, float bottom) { - canvas.drawRoundRect(new RectF(mMargin, bottom - mDiameter, right, bottom), mRadius, mRadius, - paint); - canvas.drawRect(new RectF(mMargin, mMargin, right, bottom - mRadius), paint); - } - - private void drawLeftRoundRect(Canvas canvas, Paint paint, float right, float bottom) { - canvas.drawRoundRect(new RectF(mMargin, mMargin, mMargin + mDiameter, bottom), mRadius, mRadius, - paint); - canvas.drawRect(new RectF(mMargin + mRadius, mMargin, right, bottom), paint); - } - - private void drawRightRoundRect(Canvas canvas, Paint paint, float right, float bottom) { - canvas.drawRoundRect(new RectF(right - mDiameter, mMargin, right, bottom), mRadius, mRadius, - paint); - canvas.drawRect(new RectF(mMargin, mMargin, right - mRadius, bottom), paint); - } - - private void drawOtherTopLeftRoundRect(Canvas canvas, Paint paint, float right, float bottom) { - canvas.drawRoundRect(new RectF(mMargin, bottom - mDiameter, right, bottom), mRadius, mRadius, - paint); - canvas.drawRoundRect(new RectF(right - mDiameter, mMargin, right, bottom), mRadius, mRadius, - paint); - canvas.drawRect(new RectF(mMargin, mMargin, right - mRadius, bottom - mRadius), paint); - } - - private void drawOtherTopRightRoundRect(Canvas canvas, Paint paint, float right, float bottom) { - canvas.drawRoundRect(new RectF(mMargin, mMargin, mMargin + mDiameter, bottom), mRadius, mRadius, - paint); - canvas.drawRoundRect(new RectF(mMargin, bottom - mDiameter, right, bottom), mRadius, mRadius, - paint); - canvas.drawRect(new RectF(mMargin + mRadius, mMargin, right, bottom - mRadius), paint); - } - - private void drawOtherBottomLeftRoundRect(Canvas canvas, Paint paint, float right, float bottom) { - canvas.drawRoundRect(new RectF(mMargin, mMargin, right, mMargin + mDiameter), mRadius, mRadius, - paint); - canvas.drawRoundRect(new RectF(right - mDiameter, mMargin, right, bottom), mRadius, mRadius, - paint); - canvas.drawRect(new RectF(mMargin, mMargin + mRadius, right - mRadius, bottom), paint); - } - - private void drawOtherBottomRightRoundRect(Canvas canvas, Paint paint, float right, - float bottom) { - canvas.drawRoundRect(new RectF(mMargin, mMargin, right, mMargin + mDiameter), mRadius, mRadius, - paint); - canvas.drawRoundRect(new RectF(mMargin, mMargin, mMargin + mDiameter, bottom), mRadius, mRadius, - paint); - canvas.drawRect(new RectF(mMargin + mRadius, mMargin + mRadius, right, bottom), paint); - } - - private void drawDiagonalFromTopLeftRoundRect(Canvas canvas, Paint paint, float right, - float bottom) { - canvas.drawRoundRect(new RectF(mMargin, mMargin, mMargin + mDiameter, mMargin + mDiameter), - mRadius, mRadius, paint); - canvas.drawRoundRect(new RectF(right - mDiameter, bottom - mDiameter, right, bottom), mRadius, - mRadius, paint); - canvas.drawRect(new RectF(mMargin, mMargin + mRadius, right - mDiameter, bottom), paint); - canvas.drawRect(new RectF(mMargin + mDiameter, mMargin, right, bottom - mRadius), paint); - } - - private void drawDiagonalFromTopRightRoundRect(Canvas canvas, Paint paint, float right, - float bottom) { - canvas.drawRoundRect(new RectF(right - mDiameter, mMargin, right, mMargin + mDiameter), mRadius, - mRadius, paint); - canvas.drawRoundRect(new RectF(mMargin, bottom - mDiameter, mMargin + mDiameter, bottom), - mRadius, mRadius, paint); - canvas.drawRect(new RectF(mMargin, mMargin, right - mRadius, bottom - mRadius), paint); - canvas.drawRect(new RectF(mMargin + mRadius, mMargin + mRadius, right, bottom), paint); - } - - private void drawBorder(Canvas canvas, Paint paint, float right, - float bottom) { - - // stroke - Paint strokePaint = new Paint(); - strokePaint.setStyle(Paint.Style.STROKE); - if (mColor != null) { - strokePaint.setColor(Color.parseColor(mColor)); - } else { - strokePaint.setColor(Color.BLACK); - } - strokePaint.setStrokeWidth(mBorder); - - canvas.drawRoundRect(new RectF(mMargin, mMargin, right, bottom), mRadius, mRadius, paint); - - // stroke - canvas.drawRoundRect(new RectF(mMargin, mMargin, right, bottom), mRadius, mRadius, strokePaint); - } - - - @Override - public void updateDiskCacheKey(MessageDigest messageDigest) { - - } - - public String getId() { - return "RoundedTransformation(radius=" + mRadius + ", margin=" + mMargin + ", diameter=" - + mDiameter + ", cornerType=" + mCornerType.name() + ")"; - } -} - diff --git a/android/src/main/java/org/reduxkotlin/namegame/Utils.kt b/android/src/main/java/org/reduxkotlin/namegame/Utils.kt index 4282403..d6e84ea 100644 --- a/android/src/main/java/org/reduxkotlin/namegame/Utils.kt +++ b/android/src/main/java/org/reduxkotlin/namegame/Utils.kt @@ -8,7 +8,7 @@ import com.bumptech.glide.load.DataSource import com.bumptech.glide.load.engine.GlideException import com.bumptech.glide.request.RequestListener import com.bumptech.glide.request.target.Target -import org.reduxkotlin.namegame.GlideRequest +import org.reduxkotlin.namegame.ui.GlideRequest val Int.dp: Int get() = (this / Resources.getSystem().displayMetrics.density).toInt() diff --git a/android/src/main/java/org/reduxkotlin/namegame/store/BaseNameGameViewFragment.kt b/android/src/main/java/org/reduxkotlin/namegame/ui/BaseNameGameViewFragment.kt similarity index 87% rename from android/src/main/java/org/reduxkotlin/namegame/store/BaseNameGameViewFragment.kt rename to android/src/main/java/org/reduxkotlin/namegame/ui/BaseNameGameViewFragment.kt index 1c60e19..26b9c3d 100644 --- a/android/src/main/java/org/reduxkotlin/namegame/store/BaseNameGameViewFragment.kt +++ b/android/src/main/java/org/reduxkotlin/namegame/ui/BaseNameGameViewFragment.kt @@ -1,4 +1,4 @@ -package org.reduxkotlin.namegame.store +package org.reduxkotlin.namegame.ui import android.os.Bundle import androidx.fragment.app.Fragment @@ -9,7 +9,6 @@ open class BaseNameGameViewFragment: Fragment(), GameBaseView { private val presenterObserver = PresenterLifecycleObserver(this) override fun onCreate(savedInstanceState: Bundle?) { - retainInstance = true lifecycle.addObserver(presenterObserver) super.onCreate(savedInstanceState) } diff --git a/android/src/main/java/org/reduxkotlin/namegame/store/GameResultsFragment.kt b/android/src/main/java/org/reduxkotlin/namegame/ui/GameResultsFragment.kt similarity index 90% rename from android/src/main/java/org/reduxkotlin/namegame/store/GameResultsFragment.kt rename to android/src/main/java/org/reduxkotlin/namegame/ui/GameResultsFragment.kt index fede85f..e733792 100644 --- a/android/src/main/java/org/reduxkotlin/namegame/store/GameResultsFragment.kt +++ b/android/src/main/java/org/reduxkotlin/namegame/ui/GameResultsFragment.kt @@ -1,4 +1,4 @@ -package org.reduxkotlin.namegame.store +package org.reduxkotlin.namegame.ui import android.os.Bundle import android.view.LayoutInflater @@ -7,11 +7,9 @@ import android.view.ViewGroup import org.reduxkotlin.namegame.common.middleware.UiActions import org.reduxkotlin.namegame.common.ui.GameResultsViewState import org.reduxkotlin.namegame.common.ui.GameResultsView -import org.reduxkotlin.namegame.MainActivity import org.reduxkotlin.namegame.R import org.reduxkotlin.namegame.dispatch import kotlinx.android.synthetic.main.fragment_game_results.* -import org.reduxkotlin.namegame.store.BaseNameGameViewFragment class GameResultsFragment : BaseNameGameViewFragment(), GameResultsView, MainActivity.IOnBackPressed { diff --git a/android/src/main/java/org/reduxkotlin/namegame/MainActivity.kt b/android/src/main/java/org/reduxkotlin/namegame/ui/MainActivity.kt similarity index 97% rename from android/src/main/java/org/reduxkotlin/namegame/MainActivity.kt rename to android/src/main/java/org/reduxkotlin/namegame/ui/MainActivity.kt index 8321733..f1a9e50 100644 --- a/android/src/main/java/org/reduxkotlin/namegame/MainActivity.kt +++ b/android/src/main/java/org/reduxkotlin/namegame/ui/MainActivity.kt @@ -1,4 +1,4 @@ -package org.reduxkotlin.namegame +package org.reduxkotlin.namegame.ui import android.os.Bundle import android.os.Handler @@ -11,6 +11,7 @@ import com.bumptech.glide.module.AppGlideModule import com.willowtreeapps.hyperion.core.Hyperion import kotlinx.android.synthetic.main.app_bar_main.* import kotlinx.android.synthetic.main.activity_main.* +import org.reduxkotlin.namegame.R @GlideModule diff --git a/android/src/main/java/org/reduxkotlin/namegame/store/QuestionFragment.kt b/android/src/main/java/org/reduxkotlin/namegame/ui/QuestionFragment.kt similarity index 99% rename from android/src/main/java/org/reduxkotlin/namegame/store/QuestionFragment.kt rename to android/src/main/java/org/reduxkotlin/namegame/ui/QuestionFragment.kt index 7697c83..0054894 100644 --- a/android/src/main/java/org/reduxkotlin/namegame/store/QuestionFragment.kt +++ b/android/src/main/java/org/reduxkotlin/namegame/ui/QuestionFragment.kt @@ -1,4 +1,4 @@ -package org.reduxkotlin.namegame.store +package org.reduxkotlin.namegame.ui import android.animation.AnimatorSet import android.animation.ObjectAnimator @@ -22,7 +22,6 @@ import androidx.interpolator.view.animation.FastOutSlowInInterpolator import org.reduxkotlin.namegame.common.util.Logger import org.reduxkotlin.namegame.common.middleware.UiActions import org.reduxkotlin.namegame.* -import org.reduxkotlin.namegame.MainActivity import org.reduxkotlin.namegame.dispatch import org.reduxkotlin.namegame.onComplete import java.util.* diff --git a/android/src/main/java/org/reduxkotlin/namegame/store/SettingsDialogFragment.kt b/android/src/main/java/org/reduxkotlin/namegame/ui/SettingsDialogFragment.kt similarity index 97% rename from android/src/main/java/org/reduxkotlin/namegame/store/SettingsDialogFragment.kt rename to android/src/main/java/org/reduxkotlin/namegame/ui/SettingsDialogFragment.kt index 75b3c92..79f490e 100644 --- a/android/src/main/java/org/reduxkotlin/namegame/store/SettingsDialogFragment.kt +++ b/android/src/main/java/org/reduxkotlin/namegame/ui/SettingsDialogFragment.kt @@ -1,4 +1,4 @@ -package org.reduxkotlin.namegame.store +package org.reduxkotlin.namegame.ui import android.Manifest import android.content.pm.PackageManager @@ -12,7 +12,6 @@ import org.reduxkotlin.namegame.common.middleware.UiActions //import com.google.firebase.auth.FirebaseAuth import org.reduxkotlin.namegame.common.ui.SettingsView import org.reduxkotlin.namegame.common.ui.SettingsViewState -import org.reduxkotlin.namegame.MainActivity import org.reduxkotlin.namegame.dispatch import kotlinx.android.synthetic.main.fragment_settings.* import org.reduxkotlin.PresenterLifecycleObserver diff --git a/android/src/main/java/org/reduxkotlin/namegame/store/StartFragment.kt b/android/src/main/java/org/reduxkotlin/namegame/ui/StartFragment.kt similarity index 92% rename from android/src/main/java/org/reduxkotlin/namegame/store/StartFragment.kt rename to android/src/main/java/org/reduxkotlin/namegame/ui/StartFragment.kt index c2063fa..ba911c2 100644 --- a/android/src/main/java/org/reduxkotlin/namegame/store/StartFragment.kt +++ b/android/src/main/java/org/reduxkotlin/namegame/ui/StartFragment.kt @@ -1,4 +1,4 @@ -package org.reduxkotlin.namegame.store +package org.reduxkotlin.namegame.ui import android.os.Bundle import android.view.LayoutInflater @@ -9,7 +9,6 @@ import org.reduxkotlin.namegame.common.ui.StartView import kotlinx.android.synthetic.main.fragment_start.* import org.reduxkotlin.namegame.R import org.reduxkotlin.namegame.dispatch -import org.reduxkotlin.namegame.store.BaseNameGameViewFragment class StartFragment : BaseNameGameViewFragment(), StartView { diff --git a/android/src/main/res/layout/app_bar_main.xml b/android/src/main/res/layout/app_bar_main.xml index edaaa26..131f754 100644 --- a/android/src/main/res/layout/app_bar_main.xml +++ b/android/src/main/res/layout/app_bar_main.xml @@ -11,7 +11,7 @@ android:id="@+id/rootContent" android:layout_width="match_parent" android:layout_height="match_parent" - tools:context=".MainActivity"> + tools:context=".ui.MainActivity"> + tools:context=".ui.MainActivity"> + tools:context=".ui.MainActivity"> + tools:context=".ui.MainActivity">