Skip to content

Commit

Permalink
API 21 below crush is fixed.
Browse files Browse the repository at this point in the history
  • Loading branch information
WrathChaos committed Mar 5, 2018
1 parent 8841ad2 commit c086714
Show file tree
Hide file tree
Showing 10 changed files with 50 additions and 14 deletions.
7 changes: 2 additions & 5 deletions app/build.gradle
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'

android {
Expand All @@ -26,13 +24,12 @@ android {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation"org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
implementation 'com.android.support:appcompat-v7:27.0.2'
implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.android.support:design:27.0.2'
implementation 'com.android.support:design:27.1.0'
// MediaPickerLib
compile project (":mediapickerlib")


testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
Expand Down
13 changes: 13 additions & 0 deletions app/src/main/java/com/coursion/mediapickerlib/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,13 @@ import android.support.v7.app.AppCompatActivity
import kotlinx.android.synthetic.main.activity_main.*
import android.app.Activity
import android.content.pm.PackageManager
import android.content.res.ColorStateList
import android.graphics.BitmapFactory
import android.net.Uri
import android.os.Build
import android.support.design.widget.FloatingActionButton
import android.support.v4.content.ContextCompat
import android.support.v4.view.ViewCompat
import android.util.Log
import com.coursion.freakycoder.mediapicker.galleries.Gallery
import kotlinx.android.synthetic.main.content_main.*
Expand All @@ -27,6 +31,7 @@ class MainActivity : AppCompatActivity() {
setContentView(R.layout.activity_main)
setSupportActionBar(toolbar)

setButtonTint(fab, ContextCompat.getColorStateList(applicationContext, R.color.fabColor)!!)
fab.setOnClickListener { view ->
if (!permissionIfNeeded()) {
val intent = Intent(this, Gallery::class.java)
Expand All @@ -40,6 +45,14 @@ class MainActivity : AppCompatActivity() {
}
}

fun setButtonTint(button: FloatingActionButton, tint: ColorStateList) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
button.backgroundTintList = tint
} else {
ViewCompat.setBackgroundTintList(button, tint)
}
}

private fun permissionIfNeeded(): Boolean {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE)
Expand Down
1 change: 0 additions & 1 deletion app/src/main/res/layout/activity_main.xml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="@dimen/fab_margin"
android:backgroundTint="@color/colorPrimary"
app:srcCompat="@drawable/ic_camera" />

</android.support.design.widget.CoordinatorLayout>
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
ext.kotlin_version = '1.2.21'
ext.kotlin_version = '1.2.30'
repositories {
google()
jcenter()
Expand Down
9 changes: 4 additions & 5 deletions mediapickerlib/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@ android {
minSdkVersion 19
targetSdkVersion 27
versionCode 1
versionName "1.0"

versionName "1.1"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

}
Expand All @@ -28,9 +27,9 @@ android {

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.0.2'
compile 'com.android.support:design:27.0.2'
compile 'com.android.support:support-v4:27.0.2'
implementation 'com.android.support:appcompat-v7:27.1.0'
compile 'com.android.support:design:27.1.0'
compile 'com.android.support:support-v4:27.1.0'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.github.bumptech.glide:glide:4.6.1'

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,14 @@ import android.support.design.widget.FloatingActionButton
import android.support.v4.app.Fragment
import android.support.v4.app.FragmentManager
import android.support.v4.app.FragmentPagerAdapter
import android.support.v4.content.ContextCompat
import android.support.v4.view.ViewPager
import android.support.v7.app.AppCompatActivity
import android.view.View
import android.view.WindowManager
import com.coursion.freakycoder.mediapicker.fragments.ImageFragment
import com.coursion.freakycoder.mediapicker.fragments.VideoFragment
import com.coursion.freakycoder.mediapicker.helper.Util
import com.coursion.mediapickerlib.R
import kotlinx.android.synthetic.main.activity_gallery.*
import java.util.ArrayList
Expand Down Expand Up @@ -40,6 +42,8 @@ class Gallery : AppCompatActivity() {
toolbar.setNavigationOnClickListener { onBackPressed() }

val fab = findViewById<View>(R.id.fab) as FloatingActionButton
val util = Util()
util.setButtonTint(fab, ContextCompat.getColorStateList(applicationContext, R.color.fabColor)!!)
fab.setOnClickListener { returnResult() }

title = intent.extras!!.getString("title")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
package com.coursion.freakycoder.mediapicker.galleries

import android.content.Context
import android.content.res.ColorStateList
import android.os.Build
import android.os.Bundle
import android.support.design.widget.FloatingActionButton
import android.support.v4.content.ContextCompat
import android.support.v4.view.ViewCompat
import android.support.v7.app.AppCompatActivity
import android.support.v7.widget.GridLayoutManager
import android.support.v7.widget.RecyclerView
Expand All @@ -14,6 +18,7 @@ import android.view.WindowManager
import com.coursion.freakycoder.mediapicker.adapters.MediaAdapter
import com.coursion.freakycoder.mediapicker.fragments.ImageFragment
import com.coursion.freakycoder.mediapicker.fragments.VideoFragment
import com.coursion.freakycoder.mediapicker.helper.Util
import com.coursion.mediapickerlib.R
import kotlinx.android.synthetic.main.activity_open_gallery.*
import kotlinx.android.synthetic.main.content_open_gallery.*
Expand All @@ -39,6 +44,8 @@ class OpenGallery : AppCompatActivity() {
fab = findViewById(R.id.fab)
setSupportActionBar(toolbar)
val fab = findViewById<View>(R.id.fab) as FloatingActionButton
val util = Util()
util.setButtonTint(fab, ContextCompat.getColorStateList(applicationContext, R.color.fabColor)!!)
fab.setOnClickListener { finish() }
toolbar.setNavigationIcon(R.drawable.arrow_back)
title = Gallery.title
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package com.coursion.freakycoder.mediapicker.helper

import android.content.res.ColorStateList
import android.os.Build
import android.support.design.widget.FloatingActionButton
import android.support.v4.view.ViewCompat

/**
* Created by WrathChaos on 5.03.2018.
*/
class Util{
fun setButtonTint(button: FloatingActionButton, tint: ColorStateList) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
button.backgroundTintList = tint
} else {
ViewCompat.setBackgroundTintList(button, tint)
}
}
}
1 change: 0 additions & 1 deletion mediapickerlib/src/main/res/layout/activity_gallery.xml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="16dp"
android:backgroundTint="@color/fabColor"
android:src="@drawable/ic_check_white_48dp" />

</android.support.design.widget.CoordinatorLayout>
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="16dp"
android:backgroundTint="@color/fabColor"
android:src="@drawable/ic_check_white_48dp" />

</android.support.design.widget.CoordinatorLayout>

0 comments on commit c086714

Please # to comment.