diff options
83 files changed, 737 insertions, 522 deletions
@@ -7,3 +7,4 @@ /build /captures .externalNativeBuild +**/public.xml
\ No newline at end of file diff --git a/.travis.yml b/.travis.yml index 22743c3..721eb72 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,9 +3,9 @@ jdk: - oraclejdk8 env: global: - - ANDROID_API=27 + - ANDROID_API=28 - EMULATOR_API=24 - - ANDROID_BUILD_TOOLS=27.0.3 + - ANDROID_BUILD_TOOLS=28.0.3 android: components: - tools @@ -44,9 +44,9 @@ Note that if you use any particular submodule, it will automatically include all ```gradle dependencies { - //All submodules extend this + // all submodules extend this implementation "ca.allanwang.kau:core:$KAU" - //All submodules with extensive ui extend this + // all submodules with extensive ui extend this implementation "ca.allanwang.kau:core-ui:$KAU" implementation "ca.allanwang.kau:about:$KAU" diff --git a/about/src/main/kotlin/ca/allanwang/kau/about/CollapsibleTextView.kt b/about/src/main/kotlin/ca/allanwang/kau/about/CollapsibleTextView.kt index 59ab39a..f010321 100644 --- a/about/src/main/kotlin/ca/allanwang/kau/about/CollapsibleTextView.kt +++ b/about/src/main/kotlin/ca/allanwang/kau/about/CollapsibleTextView.kt @@ -4,7 +4,6 @@ import android.content.Context import android.content.res.Configuration import android.support.v7.widget.AppCompatTextView import android.util.AttributeSet -import android.widget.TextView import ca.allanwang.kau.ui.views.CollapsibleView import ca.allanwang.kau.ui.views.CollapsibleViewDelegate diff --git a/about/src/main/res-public/values/public.xml b/about/src/main/res-public/values/public.xml deleted file mode 100644 index 2db68c4..0000000 --- a/about/src/main/res-public/values/public.xml +++ /dev/null @@ -1,4 +0,0 @@ -<resources xmlns:tools='http://schemas.android.com/tools' tools:ignore='ResourceName'> -<!-- AUTO-GENERATED FILE. DO NOT MODIFY. public.xml is generated by the generatepublicxml gradle task --> - <public name='Kau.About' type='style' /> -</resources>
\ No newline at end of file diff --git a/about/src/main/res/values-da-rDK/strings_about.xml b/about/src/main/res/values-da-rDK/strings_about.xml new file mode 100644 index 0000000..837d419 --- /dev/null +++ b/about/src/main/res/values-da-rDK/strings_about.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> +<resources> + <string name="kau_about_libraries_intro">Denne app vil ikke være mulig uden de følgende fantastiske biblioteker.</string> + <string name="kau_about_faq_intro">Ofte stillede spørgsmål</string> +</resources> diff --git a/about/src/main/res/values-in-rID/strings_about.xml b/about/src/main/res/values-in-rID/strings_about.xml index 8eed948..e2e83a7 100644 --- a/about/src/main/res/values-in-rID/strings_about.xml +++ b/about/src/main/res/values-in-rID/strings_about.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> <resources> - <string name="kau_about_libraries_intro">Aplikasi ini tidak mungkin dilakukan tanpa perpustakaan besar berikut ini.</string> - <string name="kau_about_faq_intro">FAQ</string> + <string name="kau_about_libraries_intro">Aplikasi ini tidak mungkin dilakukan tanpa perpustakaan besar berikut ini.</string> + <string name="kau_about_faq_intro">FAQ</string> </resources> diff --git a/about/src/main/res/values-pl-rPL/strings_about.xml b/about/src/main/res/values-pl-rPL/strings_about.xml index 4b25bff..cfdd1ef 100644 --- a/about/src/main/res/values-pl-rPL/strings_about.xml +++ b/about/src/main/res/values-pl-rPL/strings_about.xml @@ -1,5 +1,5 @@ -<?xml version="1.0" encoding="utf-8"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> <resources> - <string name="kau_about_faq_intro">FAQ</string> + <string name="kau_about_libraries_intro">Aplikacja nie byłaby możliwa bez następujących świetnych bibliotek.</string> + <string name="kau_about_faq_intro">FAQ</string> </resources> diff --git a/about/src/main/res/values-sv-rSE/strings_about.xml b/about/src/main/res/values-sv-rSE/strings_about.xml new file mode 100644 index 0000000..02f5417 --- /dev/null +++ b/about/src/main/res/values-sv-rSE/strings_about.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> +<resources> + <string name="kau_about_libraries_intro">Den här appen skulle inte varit möjlig utan följande bibliotek.</string> + <string name="kau_about_faq_intro">Vanliga frågor</string> +</resources> diff --git a/about/src/main/res/values-th-rTH/strings_about.xml b/about/src/main/res/values-th-rTH/strings_about.xml index 2e2d278..ab1863b 100644 --- a/about/src/main/res/values-th-rTH/strings_about.xml +++ b/about/src/main/res/values-th-rTH/strings_about.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> <resources> - <string name="kau_about_libraries_intro">แอพนี้จะไม่สามารถเกิดขึ้นได้ถ้าไม่ได้ไลบาลี้เหล่านี้</string> - <string name="kau_about_faq_intro">ถามตอบ</string> + <string name="kau_about_libraries_intro">แอพนี้จะไม่สามารถเกิดขึ้นได้ถ้าไม่ได้ไลบาลี้เหล่านี้</string> + <string name="kau_about_faq_intro">ถามตอบ</string> </resources> diff --git a/about/src/main/res/values-tr-rTR/strings_about.xml b/about/src/main/res/values-tr-rTR/strings_about.xml index d8c26db..b54bb6e 100644 --- a/about/src/main/res/values-tr-rTR/strings_about.xml +++ b/about/src/main/res/values-tr-rTR/strings_about.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> <resources> - <string name="kau_about_libraries_intro">Bu uygulama aşağıdaki büyük kütüphaneler olmadan mümkün olmayacaktır.</string> - <string name="kau_about_faq_intro">SSS</string> + <string name="kau_about_libraries_intro">Bu uygulama aşağıdaki büyük kütüphaneler olmadan mümkün olmayacaktır.</string> + <string name="kau_about_faq_intro">SSS</string> </resources> diff --git a/about/src/main/res/values-uk-rUA/strings_about.xml b/about/src/main/res/values-uk-rUA/strings_about.xml new file mode 100644 index 0000000..1ca3901 --- /dev/null +++ b/about/src/main/res/values-uk-rUA/strings_about.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> +<resources> + <string name="kau_about_libraries_intro">Цей додаток не був би можливим без використання великих бібліотек.</string> + <string name="kau_about_faq_intro">FAQ</string> +</resources> diff --git a/adapter/src/main/kotlin/ca/allanwang/kau/adapters/FastItemThemedAdapter.kt b/adapter/src/main/kotlin/ca/allanwang/kau/adapters/FastItemThemedAdapter.kt index c3a1c61..870861d 100644 --- a/adapter/src/main/kotlin/ca/allanwang/kau/adapters/FastItemThemedAdapter.kt +++ b/adapter/src/main/kotlin/ca/allanwang/kau/adapters/FastItemThemedAdapter.kt @@ -172,7 +172,8 @@ class ThemableIItemDelegate : ThemableIItem, ThemableIItemColors by ThemableIIte @RequiresApi(Build.VERSION_CODES.LOLLIPOP) override fun bindBackgroundRipple(vararg views: View?) { val background = backgroundColor ?: return - val foreground = accentColor ?: textColor ?: backgroundColor ?: return //default to normal background + val foreground = accentColor ?: textColor ?: backgroundColor + ?: return //default to normal background val ripple = createSimpleRippleDrawable(foreground, background) views.forEach { it?.background = ripple } } diff --git a/adapter/src/main/kotlin/ca/allanwang/kau/animators/KauAnimator.kt b/adapter/src/main/kotlin/ca/allanwang/kau/animators/KauAnimator.kt index 9e52aac..7b9b732 100644 --- a/adapter/src/main/kotlin/ca/allanwang/kau/animators/KauAnimator.kt +++ b/adapter/src/main/kotlin/ca/allanwang/kau/animators/KauAnimator.kt @@ -14,8 +14,7 @@ open class KauAnimator( val changeAnimator: KauAnimatorChange = FadeAnimatorChange() ) : BaseItemAnimator() { - open fun startDelay(holder: RecyclerView.ViewHolder, duration: Long, factor: Float) - = Math.max(0L, (holder.adapterPosition * duration * factor).toLong()) + open fun startDelay(holder: RecyclerView.ViewHolder, duration: Long, factor: Float) = Math.max(0L, (holder.adapterPosition * duration * factor).toLong()) override fun removeAnimation(holder: RecyclerView.ViewHolder): ViewPropertyAnimator { return holder.itemView.animate().apply { @@ -30,8 +29,7 @@ open class KauAnimator( holder.itemView.apply { removeAnimator.animationCleanup(holder)() } } - override fun getRemoveDelay(remove: Long, move: Long, change: Long): Long - = removeAnimator.getDelay(remove, move, change) + override fun getRemoveDelay(remove: Long, move: Long, change: Long): Long = removeAnimator.getDelay(remove, move, change) override fun addAnimationPrepare(holder: RecyclerView.ViewHolder) { holder.itemView.apply { addAnimator.animationPrepare(holder)() } @@ -50,8 +48,7 @@ open class KauAnimator( holder.itemView.apply { addAnimator.animationCleanup(holder)() } } - override fun getAddDelay(remove: Long, move: Long, change: Long): Long - = addAnimator.getDelay(remove, move, change) + override fun getAddDelay(remove: Long, move: Long, change: Long): Long = addAnimator.getDelay(remove, move, change) override fun changeOldAnimation(holder: RecyclerView.ViewHolder, changeInfo: ChangeInfo): ViewPropertyAnimator { return holder.itemView.animate().apply { diff --git a/adapter/src/main/kotlin/ca/allanwang/kau/iitems/KauIItem.kt b/adapter/src/main/kotlin/ca/allanwang/kau/iitems/KauIItem.kt index 196959c..5174503 100644 --- a/adapter/src/main/kotlin/ca/allanwang/kau/iitems/KauIItem.kt +++ b/adapter/src/main/kotlin/ca/allanwang/kau/iitems/KauIItem.kt @@ -21,6 +21,7 @@ open class KauIItem<Item, VH : RecyclerView.ViewHolder>( ) : AbstractItem<Item, VH>() where Item : IItem<*, *>, Item : IClickable<*> { @SuppressLint("ResourceType") final override fun getType(): Int = type + final override fun getViewHolder(v: View): VH = viewHolder(v) final override fun getLayoutRes(): Int = layoutRes }
\ No newline at end of file diff --git a/adapter/src/main/res-public/values/public.xml b/adapter/src/main/res-public/values/public.xml deleted file mode 100644 index cf14680..0000000 --- a/adapter/src/main/res-public/values/public.xml +++ /dev/null @@ -1,4 +0,0 @@ -<resources xmlns:tools='http://schemas.android.com/tools' tools:ignore='ResourceName'> -<!-- AUTO-GENERATED FILE. DO NOT MODIFY. public.xml is generated by the generatepublicxml gradle task --> - <public name='dummy' type='id' /> -</resources>
\ No newline at end of file diff --git a/artifacts.gradle b/artifacts.gradle index 12dd3fa..c0c344a 100644 --- a/artifacts.gradle +++ b/artifacts.gradle @@ -31,6 +31,8 @@ artifacts { // We assume resources within res-public are public task generatepublicxml { + println "Generating public XML" + def resDir = project.projectDir.absolutePath + "/src/main/res-public" def publicFolder = file(resDir + "/values") @@ -64,7 +66,7 @@ task generatepublicxml { ) { // Leave file comment destXmlMkp.yield "\r\n" - destXmlMkp.comment("AUTO-GENERATED FILE. DO NOT MODIFY. public.xml is generated by the generatepublicxml gradle task") + destXmlMkp.comment("AUTO-GENERATED FILE. DO NOT MODIFY. public.xml is generated by the generatepublicxml gradle task") if (tree.isEmpty()) "public"("name": "dummy", "type": "id") @@ -96,4 +98,6 @@ task generatepublicxml { } } } -}
\ No newline at end of file +} + +build.dependsOn generatepublicxml
\ No newline at end of file diff --git a/buildSrc/src/main/groovy/ca/allanwang/kau/Plugins.groovy b/buildSrc/src/main/groovy/ca/allanwang/kau/Plugins.groovy index 040e2a2..c1ecba6 100644 --- a/buildSrc/src/main/groovy/ca/allanwang/kau/Plugins.groovy +++ b/buildSrc/src/main/groovy/ca/allanwang/kau/Plugins.groovy @@ -6,8 +6,12 @@ package ca.allanwang.kau class Plugins { static def android = "com.android.tools.build:gradle:${Versions.gradlePlugin}" static def kotlin = "org.jetbrains.kotlin:kotlin-gradle-plugin:${Versions.kotlin}" - static def androidMaven = "com.github.dcendents:android-maven-gradle-plugin:${Versions.mavenPlugin}" - static def playPublisher = "com.github.triplet.gradle:play-publisher:${Versions.playPublishPlugin}" - static def dexCount = "com.getkeepsafe.dexcount:dexcount-gradle-plugin:${Versions.dexCountPlugin}" - static def gitVersion = "gradle.plugin.com.gladed.gradle.androidgitversion:gradle-android-git-version:${Versions.gitVersionPlugin}" + static + def androidMaven = "com.github.dcendents:android-maven-gradle-plugin:${Versions.mavenPlugin}" + static + def playPublisher = "com.github.triplet.gradle:play-publisher:${Versions.playPublishPlugin}" + static + def dexCount = "com.getkeepsafe.dexcount:dexcount-gradle-plugin:${Versions.dexCountPlugin}" + static + def gitVersion = "gradle.plugin.com.gladed.gradle.androidgitversion:gradle-android-git-version:${Versions.gitVersionPlugin}" }
\ No newline at end of file diff --git a/buildSrc/src/main/groovy/ca/allanwang/kau/Versions.groovy b/buildSrc/src/main/groovy/ca/allanwang/kau/Versions.groovy index 33da690..55fc646 100644 --- a/buildSrc/src/main/groovy/ca/allanwang/kau/Versions.groovy +++ b/buildSrc/src/main/groovy/ca/allanwang/kau/Versions.groovy @@ -6,7 +6,7 @@ class Versions { static def targetSdk = 28 // https://developer.android.com/studio/releases/build-tools - static def buildTools = '28.0.2' + static def buildTools = '28.0.3' // https://developer.android.com/topic/libraries/support-library/revisions static def supportLibs = '28.0.0' @@ -31,7 +31,7 @@ class Versions { static def fastAdapterCommons = fastAdapter // https://github.com/bumptech/glide/releases - static def glide = '4.7.1' + static def glide = '4.8.0' // https://github.com/mikepenz/Android-Iconics#1-provide-the-gradle-dependency static def iconics = '3.0.4' @@ -39,13 +39,14 @@ class Versions { static def iconicsMaterial = '2.2.0.4' static def iconicsCommunity = '2.0.46.1' + // https://github.com/afollestad/material-dialogs/releases static def materialDialog = '0.9.6.0' static def espresso = '3.0.1' static def junit = '4.12' static def testRunner = '1.0.1' - static def gradlePlugin = '3.2.0' + static def gradlePlugin = '3.2.1' static def mavenPlugin = '2.1' static def playPublishPlugin = '1.2.2' diff --git a/colorpicker/src/main/kotlin/ca/allanwang/kau/colorpicker/CircleView.kt b/colorpicker/src/main/kotlin/ca/allanwang/kau/colorpicker/CircleView.kt index fe7a7a6..310fd53 100644 --- a/colorpicker/src/main/kotlin/ca/allanwang/kau/colorpicker/CircleView.kt +++ b/colorpicker/src/main/kotlin/ca/allanwang/kau/colorpicker/CircleView.kt @@ -1,7 +1,5 @@ package ca.allanwang.kau.colorpicker -import android.animation.Animator -import android.animation.AnimatorListenerAdapter import android.animation.ValueAnimator import android.content.Context import android.content.res.ColorStateList diff --git a/colorpicker/src/main/res-public/values/public.xml b/colorpicker/src/main/res-public/values/public.xml deleted file mode 100644 index cf14680..0000000 --- a/colorpicker/src/main/res-public/values/public.xml +++ /dev/null @@ -1,4 +0,0 @@ -<resources xmlns:tools='http://schemas.android.com/tools' tools:ignore='ResourceName'> -<!-- AUTO-GENERATED FILE. DO NOT MODIFY. public.xml is generated by the generatepublicxml gradle task --> - <public name='dummy' type='id' /> -</resources>
\ No newline at end of file diff --git a/colorpicker/src/main/res/values-da-rDK/strings_colorpicker.xml b/colorpicker/src/main/res/values-da-rDK/strings_colorpicker.xml new file mode 100644 index 0000000..a5f7487 --- /dev/null +++ b/colorpicker/src/main/res/values-da-rDK/strings_colorpicker.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> +<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> + <string name="kau_md_color_palette">Farvepalette</string> + <string name="kau_md_presets">Forhåndsvalg</string> +</resources> diff --git a/colorpicker/src/main/res/values-de-rDE/strings_colorpicker.xml b/colorpicker/src/main/res/values-de-rDE/strings_colorpicker.xml index 3f26f0a..5dd7b38 100644 --- a/colorpicker/src/main/res/values-de-rDE/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-de-rDE/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Farbpalette</string> - <string name="kau_md_presets">Vorlagen</string> + <string name="kau_md_color_palette">Farbpalette</string> + <string name="kau_md_presets">Vorlagen</string> </resources> diff --git a/colorpicker/src/main/res/values-es-rES/strings_colorpicker.xml b/colorpicker/src/main/res/values-es-rES/strings_colorpicker.xml index a0d03a5..56148fd 100644 --- a/colorpicker/src/main/res/values-es-rES/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-es-rES/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Paleta de colores</string> - <string name="kau_md_presets">Ajustes preestablecidos</string> + <string name="kau_md_color_palette">Paleta de colores</string> + <string name="kau_md_presets">Ajustes preestablecidos</string> </resources> diff --git a/colorpicker/src/main/res/values-fr-rFR/strings_colorpicker.xml b/colorpicker/src/main/res/values-fr-rFR/strings_colorpicker.xml index 01441e8..a044e6e 100644 --- a/colorpicker/src/main/res/values-fr-rFR/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-fr-rFR/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Palette de couleurs</string> - <string name="kau_md_presets">Réglages prédéfinis</string> + <string name="kau_md_color_palette">Palette de couleurs</string> + <string name="kau_md_presets">Réglages prédéfinis</string> </resources> diff --git a/colorpicker/src/main/res/values-gl-rES/strings_colorpicker.xml b/colorpicker/src/main/res/values-gl-rES/strings_colorpicker.xml index 696e716..fbc1d90 100644 --- a/colorpicker/src/main/res/values-gl-rES/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-gl-rES/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Paleta de cores</string> - <string name="kau_md_presets">Axustes predefinidos</string> + <string name="kau_md_color_palette">Paleta de cores</string> + <string name="kau_md_presets">Axustes predefinidos</string> </resources> diff --git a/colorpicker/src/main/res/values-hu-rHU/strings_colorpicker.xml b/colorpicker/src/main/res/values-hu-rHU/strings_colorpicker.xml index c601e8e..42f3700 100644 --- a/colorpicker/src/main/res/values-hu-rHU/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-hu-rHU/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Színpaletta</string> - <string name="kau_md_presets">Sablonok</string> + <string name="kau_md_color_palette">Színpaletta</string> + <string name="kau_md_presets">Sablonok</string> </resources> diff --git a/colorpicker/src/main/res/values-in-rID/strings_colorpicker.xml b/colorpicker/src/main/res/values-in-rID/strings_colorpicker.xml index 13e9716..52e59bc 100644 --- a/colorpicker/src/main/res/values-in-rID/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-in-rID/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Palet warna</string> - <string name="kau_md_presets">Preset</string> + <string name="kau_md_color_palette">Palet warna</string> + <string name="kau_md_presets">Preset</string> </resources> diff --git a/colorpicker/src/main/res/values-it-rIT/strings_colorpicker.xml b/colorpicker/src/main/res/values-it-rIT/strings_colorpicker.xml index 40a0c89..4f3e282 100644 --- a/colorpicker/src/main/res/values-it-rIT/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-it-rIT/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Tavolozza dei colori</string> - <string name="kau_md_presets">Preimpostazioni</string> + <string name="kau_md_color_palette">Tavolozza dei colori</string> + <string name="kau_md_presets">Preimpostazioni</string> </resources> diff --git a/colorpicker/src/main/res/values-ko-rKR/strings_colorpicker.xml b/colorpicker/src/main/res/values-ko-rKR/strings_colorpicker.xml index 550fb00..7c65db1 100644 --- a/colorpicker/src/main/res/values-ko-rKR/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-ko-rKR/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">색상 팔레트</string> - <string name="kau_md_presets">사전 설정</string> + <string name="kau_md_color_palette">색상 팔레트</string> + <string name="kau_md_presets">사전 설정</string> </resources> diff --git a/colorpicker/src/main/res/values-no-rNO/strings_colorpicker.xml b/colorpicker/src/main/res/values-no-rNO/strings_colorpicker.xml index 3d0ed74..d79a6d8 100644 --- a/colorpicker/src/main/res/values-no-rNO/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-no-rNO/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Fargepalett</string> - <string name="kau_md_presets">Forhåndsinnstillinger</string> + <string name="kau_md_color_palette">Fargepalett</string> + <string name="kau_md_presets">Forhåndsinnstillinger</string> </resources> diff --git a/colorpicker/src/main/res/values-pl-rPL/strings_colorpicker.xml b/colorpicker/src/main/res/values-pl-rPL/strings_colorpicker.xml index 289dc3e..42cb6e0 100644 --- a/colorpicker/src/main/res/values-pl-rPL/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-pl-rPL/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Paleta kolorów</string> - <string name="kau_md_presets">Zdefiniowane</string> + <string name="kau_md_color_palette">Paleta kolorów</string> + <string name="kau_md_presets">Zdefiniowane</string> </resources> diff --git a/colorpicker/src/main/res/values-pt-rBR/strings_colorpicker.xml b/colorpicker/src/main/res/values-pt-rBR/strings_colorpicker.xml index 88e3562..0694ed4 100644 --- a/colorpicker/src/main/res/values-pt-rBR/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-pt-rBR/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Paleta de Cores</string> - <string name="kau_md_presets">Predefinições</string> + <string name="kau_md_color_palette">Paleta de Cores</string> + <string name="kau_md_presets">Predefinições</string> </resources> diff --git a/colorpicker/src/main/res/values-sv-rSE/strings_colorpicker.xml b/colorpicker/src/main/res/values-sv-rSE/strings_colorpicker.xml new file mode 100644 index 0000000..6b06ba9 --- /dev/null +++ b/colorpicker/src/main/res/values-sv-rSE/strings_colorpicker.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> +<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> + <string name="kau_md_color_palette">Färgpalett</string> + <string name="kau_md_presets">Förval</string> +</resources> diff --git a/colorpicker/src/main/res/values-th-rTH/strings_colorpicker.xml b/colorpicker/src/main/res/values-th-rTH/strings_colorpicker.xml index 27ffb4d..7fdf610 100644 --- a/colorpicker/src/main/res/values-th-rTH/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-th-rTH/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">ชุดสี</string> - <string name="kau_md_presets">ค่าที่ตั้งไว้</string> + <string name="kau_md_color_palette">ชุดสี</string> + <string name="kau_md_presets">ค่าที่ตั้งไว้</string> </resources> diff --git a/colorpicker/src/main/res/values-tr-rTR/strings_colorpicker.xml b/colorpicker/src/main/res/values-tr-rTR/strings_colorpicker.xml index cb07b8f..eddc8ad 100644 --- a/colorpicker/src/main/res/values-tr-rTR/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-tr-rTR/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Renk paleti</string> - <string name="kau_md_presets">Hazır ayarlar</string> + <string name="kau_md_color_palette">Renk paleti</string> + <string name="kau_md_presets">Hazır ayarlar</string> </resources> diff --git a/colorpicker/src/main/res/values-uk-rUA/strings_colorpicker.xml b/colorpicker/src/main/res/values-uk-rUA/strings_colorpicker.xml new file mode 100644 index 0000000..d114ba5 --- /dev/null +++ b/colorpicker/src/main/res/values-uk-rUA/strings_colorpicker.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> +<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> + <string name="kau_md_color_palette">Кольорова палітра</string> + <string name="kau_md_presets">Пресети</string> +</resources> diff --git a/colorpicker/src/main/res/values-vi-rVN/strings_colorpicker.xml b/colorpicker/src/main/res/values-vi-rVN/strings_colorpicker.xml index 5149c21..f14a044 100644 --- a/colorpicker/src/main/res/values-vi-rVN/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-vi-rVN/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">Bảng màu</string> - <string name="kau_md_presets">Cài đặt sẵn</string> + <string name="kau_md_color_palette">Bảng màu</string> + <string name="kau_md_presets">Cài đặt sẵn</string> </resources> diff --git a/colorpicker/src/main/res/values-zh-rCN/strings_colorpicker.xml b/colorpicker/src/main/res/values-zh-rCN/strings_colorpicker.xml index 6dc785c..9b117f5 100644 --- a/colorpicker/src/main/res/values-zh-rCN/strings_colorpicker.xml +++ b/colorpicker/src/main/res/values-zh-rCN/strings_colorpicker.xml @@ -1,6 +1,5 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> - <string name="kau_md_color_palette">调色板</string> - <string name="kau_md_presets">预设</string> + <string name="kau_md_color_palette">调色板</string> + <string name="kau_md_presets">预设</string> </resources> diff --git a/core-ui/src/main/kotlin/ca/allanwang/kau/ui/widgets/ElasticDragDismissFrameLayout.kt b/core-ui/src/main/kotlin/ca/allanwang/kau/ui/widgets/ElasticDragDismissFrameLayout.kt index 0c9f306..f357f79 100644 --- a/core-ui/src/main/kotlin/ca/allanwang/kau/ui/widgets/ElasticDragDismissFrameLayout.kt +++ b/core-ui/src/main/kotlin/ca/allanwang/kau/ui/widgets/ElasticDragDismissFrameLayout.kt @@ -250,7 +250,7 @@ class ElasticDragDismissFrameLayout @JvmOverloads constructor( fun addExitListener(activity: Activity, transitionBottom: Int = R.transition.kau_exit_slide_bottom, transitionTop: Int = R.transition.kau_exit_slide_top) { addListener(object : ElasticDragDismissFrameLayout.SystemChromeFader(activity) { override fun onDragDismissed() { - KL.v{"New transition"} + KL.v { "New transition" } activity.window.returnTransition = TransitionInflater.from(activity) .inflateTransition(if (translationY > 0) transitionBottom else transitionTop) activity.finishAfterTransition() diff --git a/core-ui/src/main/res-public/values-v21/styles.xml b/core-ui/src/main/res-public/values-v21/styles.xml index 782f9bb..e6c33c3 100644 --- a/core-ui/src/main/res-public/values-v21/styles.xml +++ b/core-ui/src/main/res-public/values-v21/styles.xml @@ -1,5 +1,6 @@ <?xml version="1.0" encoding="utf-8" standalone="no"?> <resources> + <style name="Kau.Translucent.SlideBottom"> <item name="android:windowEnterTransition">@transition/kau_enter_slide_bottom</item> <item name="android:windowReturnTransition">@transition/kau_exit_slide_bottom</item> diff --git a/core-ui/src/main/res/values/attr.xml b/core-ui/src/main/res/values/attr.xml index 271d132..a5f9907 100644 --- a/core-ui/src/main/res/values/attr.xml +++ b/core-ui/src/main/res/values/attr.xml @@ -1,39 +1,39 @@ <?xml version="1.0" encoding="utf-8" standalone="no"?> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName"> <declare-styleable name="BoundedCardView"> - <attr format="dimension" name="maxHeight"/> - <attr format="float" name="maxHeightPercent"/> + <attr format="dimension" name="maxHeight" /> + <attr format="float" name="maxHeightPercent" /> </declare-styleable> <declare-styleable name="CutoutView"> - <attr format="color" name="foregroundColor"/> - <attr name="android:text"/> - <attr name="android:drawable"/> - <attr name="android:minHeight"/> - <attr format="float" name="heightPercentageToScreen"/> - <attr name="font"/> + <attr format="color" name="foregroundColor" /> + <attr name="android:text" /> + <attr name="android:drawable" /> + <attr name="android:minHeight" /> + <attr format="float" name="heightPercentageToScreen" /> + <attr name="font" /> </declare-styleable> <declare-styleable name="ElasticDragDismissFrameLayout"> - <attr format="dimension" name="dragDismissDistance"/> - <attr format="float" name="dragDismissFraction"/> - <attr format="float" name="dragDismissScale"/> - <attr format="float" name="dragElasticity"/> + <attr format="dimension" name="dragDismissDistance" /> + <attr format="float" name="dragDismissFraction" /> + <attr format="float" name="dragDismissScale" /> + <attr format="float" name="dragElasticity" /> </declare-styleable> <declare-styleable name="InkPageIndicator"> - <attr format="dimension" name="dotDiameter"/> - <attr format="dimension" name="dotGap"/> - <attr format="integer" name="animationDuration"/> - <attr format="color" name="pageIndicatorColor"/> - <attr format="color" name="currentPageIndicatorColor"/> + <attr format="dimension" name="dotDiameter" /> + <attr format="dimension" name="dotGap" /> + <attr format="integer" name="animationDuration" /> + <attr format="color" name="pageIndicatorColor" /> + <attr format="color" name="currentPageIndicatorColor" /> </declare-styleable> <declare-styleable name="TextSlider"> <attr format="enum" name="animation_type"> - <enum name="none" value="1000"/> - <enum name="slide_horizontal" value="1001"/> - <enum name="slide_vertical" value="1002"/> + <enum name="none" value="1000" /> + <enum name="slide_horizontal" value="1001" /> + <enum name="slide_vertical" value="1002" /> </attr> </declare-styleable> </resources> diff --git a/core/src/androidTest/kotlin/ca/allanwang/kau/xml/FaqTest.kt b/core/src/androidTest/kotlin/ca/allanwang/kau/xml/FaqTest.kt index b396985..f9ce24b 100644 --- a/core/src/androidTest/kotlin/ca/allanwang/kau/xml/FaqTest.kt +++ b/core/src/androidTest/kotlin/ca/allanwang/kau/xml/FaqTest.kt @@ -3,7 +3,6 @@ package ca.allanwang.kau.xml import android.support.test.InstrumentationRegistry import android.support.test.filters.MediumTest import android.support.test.runner.AndroidJUnit4 -import ca.allanwang.kau.test.R import org.junit.Test import org.junit.runner.RunWith import kotlin.test.assertEquals diff --git a/core/src/main/kotlin/ca/allanwang/kau/kotlin/LazyResettable.kt b/core/src/main/kotlin/ca/allanwang/kau/kotlin/LazyResettable.kt index ceeaa30..979f7a7 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/kotlin/LazyResettable.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/kotlin/LazyResettable.kt @@ -14,7 +14,8 @@ internal object UNINITIALIZED fun <T : Any> lazyResettable(initializer: () -> T): LazyResettable<T> = LazyResettable<T>(initializer) class LazyResettable<T : Any>(private val initializer: () -> T, lock: Any? = null) : ILazyResettable<T>, Serializable { - @Volatile private var _value: Any = UNINITIALIZED + @Volatile + private var _value: Any = UNINITIALIZED private val lock = lock ?: this override fun invalidate() { @@ -69,8 +70,7 @@ class LazyResettableRegistry : ILazyResettableRegistry { var lazyRegistry: MutableList<LazyResettable<*>> = mutableListOf() - override fun <T : Any> lazy(initializer: () -> T): LazyResettable<T> - = add(lazyResettable(initializer)) + override fun <T : Any> lazy(initializer: () -> T): LazyResettable<T> = add(lazyResettable(initializer)) override fun <T : Any> add(resettable: LazyResettable<T>): LazyResettable<T> { lazyRegistry.add(resettable) diff --git a/core/src/main/kotlin/ca/allanwang/kau/kotlin/Utils.kt b/core/src/main/kotlin/ca/allanwang/kau/kotlin/Utils.kt index db28914..1ba1de6 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/kotlin/Utils.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/kotlin/Utils.kt @@ -3,4 +3,4 @@ package ca.allanwang.kau.kotlin /** * Created by Allan Wang on 07/04/18. */ -inline fun <reified T: Any> javaClass(): Class<T> = T::class.java
\ No newline at end of file +inline fun <reified T : Any> javaClass(): Class<T> = T::class.java
\ No newline at end of file diff --git a/core/src/main/kotlin/ca/allanwang/kau/kpref/KPrefSingleDelegate.kt b/core/src/main/kotlin/ca/allanwang/kau/kpref/KPrefSingleDelegate.kt index 6525305..ed30a44 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/kpref/KPrefSingleDelegate.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/kpref/KPrefSingleDelegate.kt @@ -14,7 +14,8 @@ fun KPref.kprefSingle(key: String) = KPrefSingleDelegate(key, this) */ class KPrefSingleDelegate internal constructor(private val key: String, private val pref: KPref, lock: Any? = null) : ILazyResettable<Boolean> { - @Volatile private var _value: Boolean? = null + @Volatile + private var _value: Boolean? = null private val lock = lock ?: this init { diff --git a/core/src/main/kotlin/ca/allanwang/kau/permissions/PermissionManager.kt b/core/src/main/kotlin/ca/allanwang/kau/permissions/PermissionManager.kt index 3b15e0b..36456ec 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/permissions/PermissionManager.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/permissions/PermissionManager.kt @@ -29,7 +29,8 @@ internal object PermissionManager { */ private val manifestPermission = lazyContext<Array<String>> { try { - it.packageManager.getPackageInfo(it.packageName, PackageManager.GET_PERMISSIONS)?.requestedPermissions ?: emptyArray() + it.packageManager.getPackageInfo(it.packageName, PackageManager.GET_PERMISSIONS)?.requestedPermissions + ?: emptyArray() } catch (e: Exception) { emptyArray() } @@ -47,7 +48,8 @@ internal object PermissionManager { } else KL.d { "Request is postponed since another one is still in progress; did you remember to override onRequestPermissionsResult?" } } - @Synchronized private fun requestPermissions(context: Context, permissions: Array<out String>) { + @Synchronized + private fun requestPermissions(context: Context, permissions: Array<out String>) { permissions.forEach { if (!manifestPermission(context).contains(it)) { KL.e { "Requested permission $it is not stated in the manifest" } @@ -55,7 +57,8 @@ internal object PermissionManager { //we'll let the request pass through so it can be denied and so the callback can be triggered } } - val activity = (context as? Activity) ?: throw KauException("Context is not an instance of an activity; cannot request permissions") + val activity = (context as? Activity) + ?: throw KauException("Context is not an instance of an activity; cannot request permissions") KL.i { "Requesting permissions ${permissions.contentToString()}" } ActivityCompat.requestPermissions(activity, permissions, 1) } diff --git a/core/src/main/kotlin/ca/allanwang/kau/permissions/Permissions.kt b/core/src/main/kotlin/ca/allanwang/kau/permissions/Permissions.kt index 4de6695..248e484 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/permissions/Permissions.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/permissions/Permissions.kt @@ -22,8 +22,7 @@ import android.support.annotation.RequiresApi /** * Hook that should be added inside all [Activity.onRequestPermissionsResult] so that the Permission manager can handle the responses */ -fun Activity.kauOnRequestPermissionsResult(permissions: Array<out String>, grantResults: IntArray) - = PermissionManager.onRequestPermissionsResult(this, permissions, grantResults) +fun Activity.kauOnRequestPermissionsResult(permissions: Array<out String>, grantResults: IntArray) = PermissionManager.onRequestPermissionsResult(this, permissions, grantResults) /** * Request a permission with a callback @@ -32,8 +31,7 @@ fun Activity.kauOnRequestPermissionsResult(permissions: Array<out String>, grant * The [callback] returns [granted], which is true if all permissions are granted * [deniedPerm] is the first denied permission, if granted is false */ -fun Context.kauRequestPermissions(vararg permissions: String, callback: (granted: Boolean, deniedPerm: String?) -> Unit) - = PermissionManager(this, permissions, callback) +fun Context.kauRequestPermissions(vararg permissions: String, callback: (granted: Boolean, deniedPerm: String?) -> Unit) = PermissionManager(this, permissions, callback) /** * See http://developer.android.com/guide/topics/security/permissions.html#normal-dangerous for a diff --git a/core/src/main/kotlin/ca/allanwang/kau/swipe/SwipeBackHelper.kt b/core/src/main/kotlin/ca/allanwang/kau/swipe/SwipeBackHelper.kt index 41cd2e0..018d7c7 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/swipe/SwipeBackHelper.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/swipe/SwipeBackHelper.kt @@ -16,8 +16,7 @@ internal object SwipeBackHelper { private val pageStack = Stack<SwipeBackPage>() - private operator fun get(activity: Activity): SwipeBackPage? - = pageStack.firstOrNull { it.activityRef.get() === activity } + private operator fun get(activity: Activity): SwipeBackPage? = pageStack.firstOrNull { it.activityRef.get() === activity } fun onCreate(activity: Activity, builder: SwipeBackContract.() -> Unit = {}) { val page = this[activity] ?: pageStack.push(SwipeBackPage(activity).apply { builder() }) diff --git a/core/src/main/kotlin/ca/allanwang/kau/swipe/SwipeBackPage.kt b/core/src/main/kotlin/ca/allanwang/kau/swipe/SwipeBackPage.kt index 7b6654d..4dba622 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/swipe/SwipeBackPage.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/swipe/SwipeBackPage.kt @@ -40,7 +40,8 @@ internal class SwipeBackPage(activity: Activity) : SwipeBackContractInternal by } private fun handleLayout() { - val activity = activityRef.get() ?: return KL.v { "KauSwipe activity ref gone during handleLayout" } + val activity = activityRef.get() + ?: return KL.v { "KauSwipe activity ref gone during handleLayout" } if (swipeEnabled) swipeBackLayout.attachToActivity(activity) else swipeBackLayout.removeFromActivity(activity) } diff --git a/core/src/main/kotlin/ca/allanwang/kau/utils/ColorUtils.kt b/core/src/main/kotlin/ca/allanwang/kau/utils/ColorUtils.kt index d0e1f8f..236f2ca 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/utils/ColorUtils.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/utils/ColorUtils.kt @@ -94,12 +94,10 @@ fun Int.blendWith(@ColorInt color: Int, @FloatRange(from = 0.0, to = 1.0) ratio: } @ColorInt -fun Int.withAlpha(@IntRange(from = 0L, to = 255L) alpha: Int): Int - = Color.argb(alpha, Color.red(this), Color.green(this), Color.blue(this)) +fun Int.withAlpha(@IntRange(from = 0L, to = 255L) alpha: Int): Int = Color.argb(alpha, Color.red(this), Color.green(this), Color.blue(this)) @ColorInt -fun Int.withMinAlpha(@IntRange(from = 0L, to = 255L) alpha: Int): Int - = Color.argb(Math.max(alpha, Color.alpha(this)), Color.red(this), Color.green(this), Color.blue(this)) +fun Int.withMinAlpha(@IntRange(from = 0L, to = 255L) alpha: Int): Int = Color.argb(Math.max(alpha, Color.alpha(this)), Color.red(this), Color.green(this), Color.blue(this)) @ColorInt fun Int.lighten(@FloatRange(from = 0.0, to = 1.0) factor: Float = 0.1f): Int { @@ -116,12 +114,10 @@ fun Int.darken(@FloatRange(from = 0.0, to = 1.0) factor: Float = 0.1f): Int { } @ColorInt -fun Int.colorToBackground(@FloatRange(from = 0.0, to = 1.0) factor: Float = 0.1f): Int - = if (isColorDark) darken(factor) else lighten(factor) +fun Int.colorToBackground(@FloatRange(from = 0.0, to = 1.0) factor: Float = 0.1f): Int = if (isColorDark) darken(factor) else lighten(factor) @ColorInt -fun Int.colorToForeground(@FloatRange(from = 0.0, to = 1.0) factor: Float = 0.1f): Int - = if (isColorDark) lighten(factor) else darken(factor) +fun Int.colorToForeground(@FloatRange(from = 0.0, to = 1.0) factor: Float = 0.1f): Int = if (isColorDark) lighten(factor) else darken(factor) @Throws(IllegalArgumentException::class) fun String.toColor(): Int { diff --git a/core/src/main/kotlin/ca/allanwang/kau/utils/FileUtils.kt b/core/src/main/kotlin/ca/allanwang/kau/utils/FileUtils.kt index b97f4aa..bfbc009 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/utils/FileUtils.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/utils/FileUtils.kt @@ -6,5 +6,4 @@ import java.io.InputStream /** * Created by Allan Wang on 2017-08-04. */ -fun File.copyFromInputStream(inputStream: InputStream) - = inputStream.use { input -> outputStream().use { output -> input.copyTo(output) } }
\ No newline at end of file +fun File.copyFromInputStream(inputStream: InputStream) = inputStream.use { input -> outputStream().use { output -> input.copyTo(output) } }
\ No newline at end of file diff --git a/core/src/main/kotlin/ca/allanwang/kau/utils/FontUtils.kt b/core/src/main/kotlin/ca/allanwang/kau/utils/FontUtils.kt index 05073c7..1db7694 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/utils/FontUtils.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/utils/FontUtils.kt @@ -17,7 +17,8 @@ object FontUtils { context.applicationContext.assets, "fonts/$font.ttf") sTypefaceCache.put(font, tf) } - return sTypefaceCache.get(font) ?: throw IllegalArgumentException("Font error; typeface does not exist at assets/fonts$font.ttf") + return sTypefaceCache.get(font) + ?: throw IllegalArgumentException("Font error; typeface does not exist at assets/fonts$font.ttf") } } diff --git a/core/src/main/kotlin/ca/allanwang/kau/utils/NotificationUtils.kt b/core/src/main/kotlin/ca/allanwang/kau/utils/NotificationUtils.kt index 23a8370..1eb0076 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/utils/NotificationUtils.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/utils/NotificationUtils.kt @@ -7,5 +7,4 @@ import android.support.v4.app.NotificationManagerCompat /** * Created by Allan Wang on 2017-08-04. */ -fun Context.cancelNotification(notifId: Int) - = NotificationManagerCompat.from(this).cancel(notifId)
\ No newline at end of file +fun Context.cancelNotification(notifId: Int) = NotificationManagerCompat.from(this).cancel(notifId)
\ No newline at end of file diff --git a/core/src/main/kotlin/ca/allanwang/kau/utils/ViewUtils.kt b/core/src/main/kotlin/ca/allanwang/kau/utils/ViewUtils.kt index 9a1e9b0..4e020bc 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/utils/ViewUtils.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/utils/ViewUtils.kt @@ -23,7 +23,6 @@ import android.view.ViewGroup import android.view.inputmethod.InputMethodManager import android.widget.EditText import android.widget.ImageView -import android.widget.TextView import ca.allanwang.kau.ui.createSimpleRippleDrawable import com.mikepenz.iconics.IconicsDrawable import com.mikepenz.iconics.typeface.IIcon @@ -33,34 +32,47 @@ import com.mikepenz.iconics.typeface.IIcon * Created by Allan Wang on 2017-05-31. */ -@KauUtils inline fun <T : View> T.visible(): T { +@KauUtils +inline fun <T : View> T.visible(): T { visibility = View.VISIBLE return this } -@KauUtils inline fun <T : View> T.invisible(): T { +@KauUtils +inline fun <T : View> T.invisible(): T { visibility = View.INVISIBLE return this } -@KauUtils inline fun <T : View> T.gone(): T { +@KauUtils +inline fun <T : View> T.gone(): T { visibility = View.GONE return this } -@KauUtils inline fun <T : View> T.invisibleIf(invisible: Boolean): T = if (invisible) invisible() else visible() +@KauUtils +inline fun <T : View> T.invisibleIf(invisible: Boolean): T = if (invisible) invisible() else visible() -@KauUtils inline fun <T : View> T.visibleIf(visible: Boolean): T = if (visible) visible() else gone() +@KauUtils +inline fun <T : View> T.visibleIf(visible: Boolean): T = if (visible) visible() else gone() -@KauUtils inline fun <T : View> T.goneIf(gone: Boolean): T = visibleIf(!gone) +@KauUtils +inline fun <T : View> T.goneIf(gone: Boolean): T = visibleIf(!gone) -@KauUtils inline val View.isVisible: Boolean get() = visibility == View.VISIBLE +@KauUtils +inline val View.isVisible: Boolean + get() = visibility == View.VISIBLE -@KauUtils inline val View.isInvisible: Boolean get() = visibility == View.INVISIBLE +@KauUtils +inline val View.isInvisible: Boolean + get() = visibility == View.INVISIBLE -@KauUtils inline val View.isGone: Boolean get() = visibility == View.GONE +@KauUtils +inline val View.isGone: Boolean + get() = visibility == View.GONE -@KauUtils inline fun View.setBackgroundColorRes(@ColorRes color: Int) = setBackgroundColor(context.color(color)) +@KauUtils +inline fun View.setBackgroundColorRes(@ColorRes color: Int) = setBackgroundColor(context.color(color)) fun View.snackbar(text: String, duration: Int = Snackbar.LENGTH_LONG, builder: Snackbar.() -> Unit = {}): Snackbar { val snackbar = Snackbar.make(this, text, duration) @@ -69,8 +81,7 @@ fun View.snackbar(text: String, duration: Int = Snackbar.LENGTH_LONG, builder: S return snackbar } -fun View.snackbar(@StringRes textId: Int, duration: Int = Snackbar.LENGTH_LONG, builder: Snackbar.() -> Unit = {}) - = snackbar(context.string(textId), duration, builder) +fun View.snackbar(@StringRes textId: Int, duration: Int = Snackbar.LENGTH_LONG, builder: Snackbar.() -> Unit = {}) = snackbar(context.string(textId), duration, builder) @KauUtils fun ImageView.setIcon(icon: IIcon?, sizeDp: Int = 24, @ColorInt color: Int = Color.WHITE, builder: IconicsDrawable.() -> Unit = {}) { @@ -78,7 +89,9 @@ fun ImageView.setIcon(icon: IIcon?, sizeDp: Int = 24, @ColorInt color: Int = Col setImageDrawable(icon.toDrawable(context, sizeDp = sizeDp, color = color, builder = builder)) } -@KauUtils inline val FloatingActionButton.isHidden get() = !isShown +@KauUtils +inline val FloatingActionButton.isHidden + get() = !isShown fun FloatingActionButton.showIf(show: Boolean) = if (show) show() else hide() @@ -133,7 +146,8 @@ fun View.setMargin(margin: Int) = setMargins(margin, KAU_ALL) * Base margin setter * returns true if setting is successful, false otherwise */ -@KauUtils private fun View.setMargins(margin: Int, flag: Int): Boolean { +@KauUtils +private fun View.setMargins(margin: Int, flag: Int): Boolean { val p = (layoutParams as? ViewGroup.MarginLayoutParams) ?: return false p.setMargins( if (flag and KAU_LEFT > 0) margin else p.leftMargin, @@ -189,7 +203,8 @@ fun View.setPadding(padding: Int) = setPadding(padding, KAU_ALL) /** * Base padding setter */ -@KauUtils private fun View.setPadding(padding: Int, flag: Int) { +@KauUtils +private fun View.setPadding(padding: Int, flag: Int) { setPadding( if (flag and KAU_LEFT > 0) padding else paddingLeft, if (flag and KAU_TOP > 0) padding else paddingTop, @@ -217,7 +232,9 @@ fun View.setRippleBackground(@ColorInt foregroundColor: Int, @ColorInt backgroun background = createSimpleRippleDrawable(foregroundColor, backgroundColor) } -@KauUtils inline val View.parentViewGroup: ViewGroup get() = parent as ViewGroup +@KauUtils +inline val View.parentViewGroup: ViewGroup + get() = parent as ViewGroup inline val EditText.value: String get() = text.toString().trim() diff --git a/core/src/main/kotlin/ca/allanwang/kau/xml/FAQ.kt b/core/src/main/kotlin/ca/allanwang/kau/xml/FAQ.kt index f804b70..7caf5d6 100644 --- a/core/src/main/kotlin/ca/allanwang/kau/xml/FAQ.kt +++ b/core/src/main/kotlin/ca/allanwang/kau/xml/FAQ.kt @@ -47,7 +47,8 @@ fun Context.kauParseFaq( } 1 -> { items.add(FaqItem(items.size + 1, - question ?: throw IllegalArgumentException("KAU FAQ answer found without a question"), + question + ?: throw IllegalArgumentException("KAU FAQ answer found without a question"), Html.fromHtml(parser.text.replace("\n", if (parseNewLine) "<br/>" else "")))) question = null flag = -1 diff --git a/core/src/main/res-public/values-da-rDK/strings_commons.xml b/core/src/main/res-public/values-da-rDK/strings_commons.xml new file mode 100644 index 0000000..5be1277 --- /dev/null +++ b/core/src/main/res-public/values-da-rDK/strings_commons.xml @@ -0,0 +1,69 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--><!-- +A collection of common string values +Most resources are verbatim and x represents a formatted item +--> +<resources> + <string name="kau_about_app">Om app</string> + <string name="kau_about_x">Om %s</string> + <string name="kau_add_account">Tilføj konto</string> + <string name="kau_back">Tilbage</string> + <string name="kau_cancel">Annuller</string> + <string name="kau_changelog">Ændringslog</string> + <string name="kau_close">Luk</string> + <string name="kau_contact_us">Kontakt os</string> + <string name="kau_copy">Kopier</string> + <string name="kau_custom">Tilpasset</string> + <string name="kau_dark">Mørk</string> + <string name="kau_default">Standard</string> + <string name="kau_do_not_show_again">Vis ikke igen</string> + <string name="kau_done">Færdig</string> + <string name="kau_error">Fejl</string> + <string name="kau_exit">Afslut</string> + <string name="kau_exit_confirmation">Er du sikker på, at du vil afslutte?</string> + <string name="kau_exit_confirmation_x">Er du sikker på, at du vil afslutte %s?</string> + <string name="kau_glass">Glas</string> + <string name="kau_got_it">Forstået</string> + <string name="kau_great">Fantastisk</string> + <string name="kau_hide">Skjul</string> + <string name="kau_light">Lys</string> + <string name="kau_login">Log på</string> + <string name="kau_logout">Log af</string> + <string name="kau_logout_confirm_as_x">Er du sikker på, at du vil logge %s af?</string> + <string name="kau_manage_account">Administrér konto</string> + <string name="kau_maybe">Måske</string> + <string name="kau_menu">Menu</string> + <string name="kau_no">Nej</string> + <string name="kau_no_results_found">Ingen resultater fundet</string> + <string name="kau_none">Ingen</string> + <string name="kau_ok">OK</string> + <string name="kau_play_store">Play Butik</string> + <string name="kau_rate">Bedøm</string> + <string name="kau_report_bug">Rapportér en fejl</string> + <string name="kau_search">Søg</string> + <string name="kau_send_feedback">Send feedback</string> + <string name="kau_send_via">Send med</string> + <string name="kau_settings">Indstillinger</string> + <string name="kau_share">Del</string> + <string name="kau_text_copied">Tekst kopieret til udklipsholder.</string> + <string name="kau_thank_you">Tak</string> + <string name="kau_uh_oh">Åh nej</string> + <string name="kau_warning">Advarsel</string> + <plurals name="kau_x_days"> + <item quantity="one">%d dag</item> + <item quantity="other">%d dage</item> + </plurals> + <plurals name="kau_x_hours"> + <item quantity="one">%d time</item> + <item quantity="other">%d timer</item> + </plurals> + <plurals name="kau_x_minutes"> + <item quantity="one">%d minut</item> + <item quantity="other">%d minutter</item> + </plurals> + <plurals name="kau_x_seconds"> + <item quantity="one">%d sekund</item> + <item quantity="other">%d sekunder</item> + </plurals> + <string name="kau_yes">Ja</string> + <string name="kau_permission_denied">Adgang nægtet</string> +</resources> diff --git a/core/src/main/res-public/values-in-rID/strings_commons.xml b/core/src/main/res-public/values-in-rID/strings_commons.xml index dc8d46a..b734377 100644 --- a/core/src/main/res-public/values-in-rID/strings_commons.xml +++ b/core/src/main/res-public/values-in-rID/strings_commons.xml @@ -1,67 +1,65 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> -<!-- +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--><!-- A collection of common string values Most resources are verbatim and x represents a formatted item --> <resources> - <string name="kau_about_app">Tentang Aplikasi</string> - <string name="kau_about_x">Tentang %s</string> - <string name="kau_add_account">Tambahkan Akun</string> - <string name="kau_back">Kembali</string> - <string name="kau_cancel">Batal</string> - <string name="kau_changelog">Log perubahan</string> - <string name="kau_close">Tutup</string> - <string name="kau_contact_us">Hubungi Kami</string> - <string name="kau_copy">Salin</string> - <string name="kau_custom">Adat</string> - <string name="kau_dark">Gelap</string> - <string name="kau_default">Standar</string> - <string name="kau_do_not_show_again">Jangan tampilkan lagi</string> - <string name="kau_done">Selesai</string> - <string name="kau_error">Kesalahan</string> - <string name="kau_exit">Keluar</string> - <string name="kau_exit_confirmation">Anda yakin ingin keluar?</string> - <string name="kau_exit_confirmation_x">Anda yakin ingin keluar %s?</string> - <string name="kau_glass">Kaca</string> - <string name="kau_got_it">Mengerti</string> - <string name="kau_great">Hebat</string> - <string name="kau_hide">Sembunyikan</string> - <string name="kau_light">Terang</string> - <string name="kau_login">Masuk</string> - <string name="kau_logout">Keluar</string> - <string name="kau_logout_confirm_as_x">Anda yakin ingin keluar sebagai %s?</string> - <string name="kau_manage_account">Kelola Akun</string> - <string name="kau_maybe">Mungkin</string> - <string name="kau_menu">Menu</string> - <string name="kau_no">Tidak</string> - <string name="kau_no_results_found">Tidak ada hasil yang ditemukan</string> - <string name="kau_none">Tidak ada</string> - <string name="kau_ok">Oke</string> - <string name="kau_play_store">Play Store</string> - <string name="kau_rate">Menilai</string> - <string name="kau_report_bug">Laporkan bug</string> - <string name="kau_search">Pencarian</string> - <string name="kau_send_feedback">Kirim Umpan balik</string> - <string name="kau_send_via">Kirim melalui</string> - <string name="kau_settings">Pengaturan</string> - <string name="kau_share">Bagikan</string> - <string name="kau_text_copied">Salin teks ke papan tulis.</string> - <string name="kau_thank_you">Terima Kasih</string> - <string name="kau_uh_oh">Uh Oh</string> - <string name="kau_warning">Peringatan</string> - <plurals name="kau_x_days"> - <item quantity="other">%d hari</item> - </plurals> - <plurals name="kau_x_hours"> - <item quantity="other">%d jam</item> - </plurals> - <plurals name="kau_x_minutes"> - <item quantity="other">%d menit</item> - </plurals> - <plurals name="kau_x_seconds"> - <item quantity="other">%d detik</item> - </plurals> - <string name="kau_yes">Iya</string> - <string name="kau_permission_denied">Izin ditolak</string> + <string name="kau_about_app">Tentang Aplikasi</string> + <string name="kau_about_x">Tentang %s</string> + <string name="kau_add_account">Tambahkan Akun</string> + <string name="kau_back">Kembali</string> + <string name="kau_cancel">Batal</string> + <string name="kau_changelog">Log perubahan</string> + <string name="kau_close">Tutup</string> + <string name="kau_contact_us">Hubungi Kami</string> + <string name="kau_copy">Salin</string> + <string name="kau_custom">Adat</string> + <string name="kau_dark">Gelap</string> + <string name="kau_default">Standar</string> + <string name="kau_do_not_show_again">Jangan tampilkan lagi</string> + <string name="kau_done">Selesai</string> + <string name="kau_error">Kesalahan</string> + <string name="kau_exit">Keluar</string> + <string name="kau_exit_confirmation">Anda yakin ingin keluar?</string> + <string name="kau_exit_confirmation_x">Anda yakin ingin keluar %s?</string> + <string name="kau_glass">Kaca</string> + <string name="kau_got_it">Mengerti</string> + <string name="kau_great">Hebat</string> + <string name="kau_hide">Sembunyikan</string> + <string name="kau_light">Terang</string> + <string name="kau_login">Masuk</string> + <string name="kau_logout">Keluar</string> + <string name="kau_logout_confirm_as_x">Anda yakin ingin keluar sebagai %s?</string> + <string name="kau_manage_account">Kelola Akun</string> + <string name="kau_maybe">Mungkin</string> + <string name="kau_menu">Menu</string> + <string name="kau_no">Tidak</string> + <string name="kau_no_results_found">Tidak ada hasil yang ditemukan</string> + <string name="kau_none">Tidak ada</string> + <string name="kau_ok">Oke</string> + <string name="kau_play_store">Play Store</string> + <string name="kau_rate">Menilai</string> + <string name="kau_report_bug">Laporkan bug</string> + <string name="kau_search">Pencarian</string> + <string name="kau_send_feedback">Kirim Umpan balik</string> + <string name="kau_send_via">Kirim melalui</string> + <string name="kau_settings">Pengaturan</string> + <string name="kau_share">Bagikan</string> + <string name="kau_text_copied">Salin teks ke papan tulis.</string> + <string name="kau_thank_you">Terima Kasih</string> + <string name="kau_uh_oh">Uh Oh</string> + <string name="kau_warning">Peringatan</string> + <plurals name="kau_x_days"> + <item quantity="other">%d hari</item> + </plurals> + <plurals name="kau_x_hours"> + <item quantity="other">%d jam</item> + </plurals> + <plurals name="kau_x_minutes"> + <item quantity="other">%d menit</item> + </plurals> + <plurals name="kau_x_seconds"> + <item quantity="other">%d detik</item> + </plurals> + <string name="kau_yes">Iya</string> + <string name="kau_permission_denied">Izin ditolak</string> </resources> diff --git a/core/src/main/res-public/values-pl-rPL/strings_commons.xml b/core/src/main/res-public/values-pl-rPL/strings_commons.xml index caac77f..248e409 100644 --- a/core/src/main/res-public/values-pl-rPL/strings_commons.xml +++ b/core/src/main/res-public/values-pl-rPL/strings_commons.xml @@ -1,55 +1,53 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> -<!-- +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--><!-- A collection of common string values Most resources are verbatim and x represents a formatted item --> <resources> - <string name="kau_about_app">O aplikacji</string> - <string name="kau_about_x">O %s</string> - <string name="kau_add_account">Dodaj konto</string> - <string name="kau_back">Wstecz</string> - <string name="kau_cancel">Anuluj</string> - <string name="kau_changelog">Lista zmian</string> - <string name="kau_close">Zamknij</string> - <string name="kau_contact_us">Skontaktuj się z nami</string> - <string name="kau_copy">Kopiuj</string> - <string name="kau_custom">Własny</string> - <string name="kau_dark">Ciemny</string> - <string name="kau_default">Domyślnie</string> - <string name="kau_do_not_show_again">Nie pokazuj ponownie</string> - <string name="kau_done">Gotowe</string> - <string name="kau_error">Błąd</string> - <string name="kau_exit">Wyjdź</string> - <string name="kau_exit_confirmation">Czy na pewno chcesz wyjść?</string> - <string name="kau_exit_confirmation_x">Czy na pewno chcesz wyjść %s?</string> - <string name="kau_glass">Szkło</string> - <string name="kau_got_it">Rozumiem</string> - <string name="kau_great">Świetnie</string> - <string name="kau_hide">Ukryj</string> - <string name="kau_light">Jasny</string> - <string name="kau_login">Zaloguj się</string> - <string name="kau_logout">Wyloguj się</string> - <string name="kau_logout_confirm_as_x">Czy na pewno chcesz się wylogować jako %s?</string> - <string name="kau_manage_account">Zarządzaj kontem</string> - <string name="kau_maybe">Może</string> - <string name="kau_menu">Menu</string> - <string name="kau_no">Nie</string> - <string name="kau_no_results_found">Nie znaleziono wyników</string> - <string name="kau_none">Żadne</string> - <string name="kau_ok">OK</string> - <string name="kau_play_store">Sklep Google Play</string> - <string name="kau_rate">Oceń</string> - <string name="kau_report_bug">Zgłoś błąd</string> - <string name="kau_search">Szukaj</string> - <string name="kau_send_feedback">Prześlij opinię</string> - <string name="kau_send_via">Wyślij przez</string> - <string name="kau_settings">Ustawienia</string> - <string name="kau_share">Udostępnij</string> - <string name="kau_text_copied">Tekst skopiowano do schowka.</string> - <string name="kau_thank_you">Dziękuję</string> - <string name="kau_uh_oh">Uh Oh</string> - <string name="kau_warning">Ostrzeżenie</string> - <string name="kau_yes">Tak</string> - <string name="kau_permission_denied">Odmowa uprawnienia</string> + <string name="kau_about_app">O aplikacji</string> + <string name="kau_about_x">O %s</string> + <string name="kau_add_account">Dodaj konto</string> + <string name="kau_back">Wstecz</string> + <string name="kau_cancel">Anuluj</string> + <string name="kau_changelog">Lista zmian</string> + <string name="kau_close">Zamknij</string> + <string name="kau_contact_us">Skontaktuj się z nami</string> + <string name="kau_copy">Kopiuj</string> + <string name="kau_custom">Własny</string> + <string name="kau_dark">Ciemny</string> + <string name="kau_default">Domyślnie</string> + <string name="kau_do_not_show_again">Nie pokazuj ponownie</string> + <string name="kau_done">Gotowe</string> + <string name="kau_error">Błąd</string> + <string name="kau_exit">Wyjdź</string> + <string name="kau_exit_confirmation">Czy na pewno chcesz wyjść?</string> + <string name="kau_exit_confirmation_x">Czy na pewno chcesz wyjść %s?</string> + <string name="kau_glass">Szkło</string> + <string name="kau_got_it">Rozumiem</string> + <string name="kau_great">Świetnie</string> + <string name="kau_hide">Ukryj</string> + <string name="kau_light">Jasny</string> + <string name="kau_login">Zaloguj się</string> + <string name="kau_logout">Wyloguj się</string> + <string name="kau_logout_confirm_as_x">Czy na pewno chcesz się wylogować jako %s?</string> + <string name="kau_manage_account">Zarządzaj kontem</string> + <string name="kau_maybe">Może</string> + <string name="kau_menu">Menu</string> + <string name="kau_no">Nie</string> + <string name="kau_no_results_found">Nie znaleziono wyników</string> + <string name="kau_none">Żadne</string> + <string name="kau_ok">OK</string> + <string name="kau_play_store">Sklep Google Play</string> + <string name="kau_rate">Oceń</string> + <string name="kau_report_bug">Zgłoś błąd</string> + <string name="kau_search">Szukaj</string> + <string name="kau_send_feedback">Prześlij opinię</string> + <string name="kau_send_via">Wyślij przez</string> + <string name="kau_settings">Ustawienia</string> + <string name="kau_share">Udostępnij</string> + <string name="kau_text_copied">Tekst skopiowano do schowka.</string> + <string name="kau_thank_you">Dziękuję</string> + <string name="kau_uh_oh">Uh Oh</string> + <string name="kau_warning">Ostrzeżenie</string> + <string name="kau_yes">Tak</string> + <string name="kau_permission_denied">Odmowa uprawnienia</string> </resources> diff --git a/core/src/main/res-public/values-sv-rSE/strings_commons.xml b/core/src/main/res-public/values-sv-rSE/strings_commons.xml new file mode 100644 index 0000000..6cc2bb3 --- /dev/null +++ b/core/src/main/res-public/values-sv-rSE/strings_commons.xml @@ -0,0 +1,69 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--><!-- +A collection of common string values +Most resources are verbatim and x represents a formatted item +--> +<resources> + <string name="kau_about_app">Om appen</string> + <string name="kau_about_x">Om %s</string> + <string name="kau_add_account">Lägg till konto</string> + <string name="kau_back">Tillbaka</string> + <string name="kau_cancel">Avbryt</string> + <string name="kau_changelog">Uppdateringslog</string> + <string name="kau_close">Stäng</string> + <string name="kau_contact_us">Kontakta oss</string> + <string name="kau_copy">Kopiera</string> + <string name="kau_custom">Anpassa</string> + <string name="kau_dark">Mörk</string> + <string name="kau_default">Standard</string> + <string name="kau_do_not_show_again">Visa inte igen</string> + <string name="kau_done">Klar</string> + <string name="kau_error">Fel</string> + <string name="kau_exit">Avsluta</string> + <string name="kau_exit_confirmation">Är du säker på att du vill avsluta?</string> + <string name="kau_exit_confirmation_x">Är du säker på att du vill avsluta %s?</string> + <string name="kau_glass">Glas</string> + <string name="kau_got_it">Jag förstår</string> + <string name="kau_great">Bra</string> + <string name="kau_hide">Dölj</string> + <string name="kau_light">Ljus</string> + <string name="kau_login">Logga in</string> + <string name="kau_logout">Logga ut</string> + <string name="kau_logout_confirm_as_x">Är du säker på att du vill logga ut %s?</string> + <string name="kau_manage_account">Hantera konto</string> + <string name="kau_maybe">Kanske</string> + <string name="kau_menu">Meny</string> + <string name="kau_no">Nej</string> + <string name="kau_no_results_found">Inga resultat hittades</string> + <string name="kau_none">Inga</string> + <string name="kau_ok">OK</string> + <string name="kau_play_store">Play Store</string> + <string name="kau_rate">Betygsätt</string> + <string name="kau_report_bug">Rapportera ett fel</string> + <string name="kau_search">Sök</string> + <string name="kau_send_feedback">Skicka Feedback</string> + <string name="kau_send_via">Skicka via</string> + <string name="kau_settings">Inställningar</string> + <string name="kau_share">Dela</string> + <string name="kau_text_copied">Text kopierad till urklipp.</string> + <string name="kau_thank_you">Tack så mycket</string> + <string name="kau_uh_oh">Uh-oh</string> + <string name="kau_warning">Varning</string> + <plurals name="kau_x_days"> + <item quantity="one">%d dag</item> + <item quantity="other">%d dagar</item> + </plurals> + <plurals name="kau_x_hours"> + <item quantity="one">%d timme</item> + <item quantity="other">%d timmar</item> + </plurals> + <plurals name="kau_x_minutes"> + <item quantity="one">%d minut</item> + <item quantity="other">%d minuter</item> + </plurals> + <plurals name="kau_x_seconds"> + <item quantity="one">%d sekund</item> + <item quantity="other">%d sekunder</item> + </plurals> + <string name="kau_yes">Ja</string> + <string name="kau_permission_denied">Åtkomst nekad</string> +</resources> diff --git a/core/src/main/res-public/values-th-rTH/strings_commons.xml b/core/src/main/res-public/values-th-rTH/strings_commons.xml index 33a54e0..2f4bdec 100644 --- a/core/src/main/res-public/values-th-rTH/strings_commons.xml +++ b/core/src/main/res-public/values-th-rTH/strings_commons.xml @@ -1,67 +1,65 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> -<!-- +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--><!-- A collection of common string values Most resources are verbatim and x represents a formatted item --> <resources> - <string name="kau_about_app">เกี่ยวกับแอพ</string> - <string name="kau_about_x">เกี่ยวกับ%s</string> - <string name="kau_add_account">เพิ่มบัญชี</string> - <string name="kau_back">กลับ</string> - <string name="kau_cancel">ยกเลิก</string> - <string name="kau_changelog">บันทึกการเปลี่ยนแปลง</string> - <string name="kau_close">ปิด</string> - <string name="kau_contact_us">ติดต่อเรา</string> - <string name="kau_copy">คัดลอก</string> - <string name="kau_custom">กำหนดเอง</string> - <string name="kau_dark">สีเข้ม</string> - <string name="kau_default">ค่าเริ่มต้น</string> - <string name="kau_do_not_show_again">ไม่ต้องแสดงอีก</string> - <string name="kau_done">เสร็จ</string> - <string name="kau_error">ข้อผิดพลาด</string> - <string name="kau_exit">ออก</string> - <string name="kau_exit_confirmation">แน่ใจหรือไม่ว่าคุณต้องการจะออก?</string> - <string name="kau_exit_confirmation_x">แน่ใจหรือไม่ว่าคุณต้องการจะออกจาก%s?</string> - <string name="kau_glass">แก้ว</string> - <string name="kau_got_it">เข้าใจแล้ว</string> - <string name="kau_great">ดีมาก</string> - <string name="kau_hide">ซ่อน</string> - <string name="kau_light">สว่าง</string> - <string name="kau_login">เข้าสู่ระบบ</string> - <string name="kau_logout">ออกจากระบบ</string> - <string name="kau_logout_confirm_as_x">คุณแน่ใจว่าต้องการให้%sออกจากระบบ?</string> - <string name="kau_manage_account">จัดการบัญชี</string> - <string name="kau_maybe">บางที</string> - <string name="kau_menu">เมนู</string> - <string name="kau_no">ไม่</string> - <string name="kau_no_results_found">ไม่พบผลลัพธ์</string> - <string name="kau_none">ไม่มี</string> - <string name="kau_ok">ตกลง</string> - <string name="kau_play_store">Play Store</string> - <string name="kau_rate">ให้คะแนน</string> - <string name="kau_report_bug">รายงานข้อบกพร่อง</string> - <string name="kau_search">ค้นหา</string> - <string name="kau_send_feedback">ส่งข้อเสนอแนะ</string> - <string name="kau_send_via">ส่งผ่านทาง</string> - <string name="kau_settings">ตั้งค่า</string> - <string name="kau_share">แชร์</string> - <string name="kau_text_copied">คัดลอกข้อความไปยังคลิปบอร์ดแล้ว</string> - <string name="kau_thank_you">ขอบคุณ</string> - <string name="kau_uh_oh">โอ้โห!</string> - <string name="kau_warning">คำเตือน</string> - <plurals name="kau_x_days"> - <item quantity="other">%d วัน</item> - </plurals> - <plurals name="kau_x_hours"> - <item quantity="other">%d ชั่วโมง</item> - </plurals> - <plurals name="kau_x_minutes"> - <item quantity="other">%d นาที</item> - </plurals> - <plurals name="kau_x_seconds"> - <item quantity="other">%d วินาที</item> - </plurals> - <string name="kau_yes">ใช่</string> - <string name="kau_permission_denied">สิทธิ์การใช้งานถูกปฏิเสธ!</string> + <string name="kau_about_app">เกี่ยวกับแอพ</string> + <string name="kau_about_x">เกี่ยวกับ%s</string> + <string name="kau_add_account">เพิ่มบัญชี</string> + <string name="kau_back">กลับ</string> + <string name="kau_cancel">ยกเลิก</string> + <string name="kau_changelog">บันทึกการเปลี่ยนแปลง</string> + <string name="kau_close">ปิด</string> + <string name="kau_contact_us">ติดต่อเรา</string> + <string name="kau_copy">คัดลอก</string> + <string name="kau_custom">กำหนดเอง</string> + <string name="kau_dark">สีเข้ม</string> + <string name="kau_default">ค่าเริ่มต้น</string> + <string name="kau_do_not_show_again">ไม่ต้องแสดงอีก</string> + <string name="kau_done">เสร็จ</string> + <string name="kau_error">ข้อผิดพลาด</string> + <string name="kau_exit">ออก</string> + <string name="kau_exit_confirmation">แน่ใจหรือไม่ว่าคุณต้องการจะออก?</string> + <string name="kau_exit_confirmation_x">แน่ใจหรือไม่ว่าคุณต้องการจะออกจาก%s?</string> + <string name="kau_glass">แก้ว</string> + <string name="kau_got_it">เข้าใจแล้ว</string> + <string name="kau_great">ดีมาก</string> + <string name="kau_hide">ซ่อน</string> + <string name="kau_light">สว่าง</string> + <string name="kau_login">เข้าสู่ระบบ</string> + <string name="kau_logout">ออกจากระบบ</string> + <string name="kau_logout_confirm_as_x">คุณแน่ใจว่าต้องการให้%sออกจากระบบ?</string> + <string name="kau_manage_account">จัดการบัญชี</string> + <string name="kau_maybe">บางที</string> + <string name="kau_menu">เมนู</string> + <string name="kau_no">ไม่</string> + <string name="kau_no_results_found">ไม่พบผลลัพธ์</string> + <string name="kau_none">ไม่มี</string> + <string name="kau_ok">ตกลง</string> + <string name="kau_play_store">Play Store</string> + <string name="kau_rate">ให้คะแนน</string> + <string name="kau_report_bug">รายงานข้อบกพร่อง</string> + <string name="kau_search">ค้นหา</string> + <string name="kau_send_feedback">ส่งข้อเสนอแนะ</string> + <string name="kau_send_via">ส่งผ่านทาง</string> + <string name="kau_settings">ตั้งค่า</string> + <string name="kau_share">แชร์</string> + <string name="kau_text_copied">คัดลอกข้อความไปยังคลิปบอร์ดแล้ว</string> + <string name="kau_thank_you">ขอบคุณ</string> + <string name="kau_uh_oh">โอ้โห!</string> + <string name="kau_warning">คำเตือน</string> + <plurals name="kau_x_days"> + <item quantity="other">%d วัน</item> + </plurals> + <plurals name="kau_x_hours"> + <item quantity="other">%d ชั่วโมง</item> + </plurals> + <plurals name="kau_x_minutes"> + <item quantity="other">%d นาที</item> + </plurals> + <plurals name="kau_x_seconds"> + <item quantity="other">%d วินาที</item> + </plurals> + <string name="kau_yes">ใช่</string> + <string name="kau_permission_denied">สิทธิ์การใช้งานถูกปฏิเสธ!</string> </resources> diff --git a/core/src/main/res-public/values-tr-rTR/strings_commons.xml b/core/src/main/res-public/values-tr-rTR/strings_commons.xml index d74981f..1e8395e 100644 --- a/core/src/main/res-public/values-tr-rTR/strings_commons.xml +++ b/core/src/main/res-public/values-tr-rTR/strings_commons.xml @@ -1,71 +1,69 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> -<!--Generated by crowdin.com--> -<!-- +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--><!-- A collection of common string values Most resources are verbatim and x represents a formatted item --> <resources> - <string name="kau_about_app">App Hakkında</string> - <string name="kau_about_x">Hakkında%s</string> - <string name="kau_add_account">Hesap eklemek</string> - <string name="kau_back">Geri</string> - <string name="kau_cancel">İptal etmek</string> - <string name="kau_changelog">Değişiklikler</string> - <string name="kau_close">Kapat</string> - <string name="kau_contact_us">Bize ulaşın</string> - <string name="kau_copy">Kopyala</string> - <string name="kau_custom">Özel</string> - <string name="kau_dark">Koyu</string> - <string name="kau_default">Varsayılan</string> - <string name="kau_do_not_show_again">Bir daha gösterme</string> - <string name="kau_done">Bitti</string> - <string name="kau_error">Hata</string> - <string name="kau_exit">Çıkış</string> - <string name="kau_exit_confirmation">Çıkmak istediğine emin misin?</string> - <string name="kau_exit_confirmation_x">Çıkmak istediğine emin misin? %s?</string> - <string name="kau_glass">Cam</string> - <string name="kau_got_it">Anladım</string> - <string name="kau_great">Güzel</string> - <string name="kau_hide">Gizle</string> - <string name="kau_light">Açık</string> - <string name="kau_login">Giriş yap</string> - <string name="kau_logout">Çıkış yap</string> - <string name="kau_logout_confirm_as_x">Çıkış yapmak istediğine emin misin %s?</string> - <string name="kau_manage_account">Hesabını yönet</string> - <string name="kau_maybe">Belki</string> - <string name="kau_menu">Menü</string> - <string name="kau_no">Hayır</string> - <string name="kau_no_results_found">Hiç bir sonuç bulunamadı</string> - <string name="kau_none">Hiçbir</string> - <string name="kau_ok">Tamam</string> - <string name="kau_play_store">Play Store</string> - <string name="kau_rate">Oran</string> - <string name="kau_report_bug">Bir hatayı bildir</string> - <string name="kau_search">Araştır</string> - <string name="kau_send_feedback">Geri bildirim gönder</string> - <string name="kau_send_via">Yoluyla Gönder</string> - <string name="kau_settings">Ayarlar</string> - <string name="kau_share">Paylaş</string> - <string name="kau_text_copied">Metin panoya kopyalandı.</string> - <string name="kau_thank_you">Teşekkür ederim</string> - <string name="kau_uh_oh">Ah ah</string> - <string name="kau_warning">Uyarı</string> - <plurals name="kau_x_days"> - <item quantity="one">%d gün</item> - <item quantity="other">%d gün</item> - </plurals> - <plurals name="kau_x_hours"> - <item quantity="one">Saat %d</item> - <item quantity="other">Saat %d</item> - </plurals> - <plurals name="kau_x_minutes"> - <item quantity="one">%d dakika</item> - <item quantity="other">%d dakika</item> - </plurals> - <plurals name="kau_x_seconds"> - <item quantity="one">%d saniye</item> - <item quantity="other">%d saniye</item> - </plurals> - <string name="kau_yes">Evet</string> - <string name="kau_permission_denied">İzin reddedildi</string> + <string name="kau_about_app">App Hakkında</string> + <string name="kau_about_x">Hakkında%s</string> + <string name="kau_add_account">Hesap eklemek</string> + <string name="kau_back">Geri</string> + <string name="kau_cancel">İptal etmek</string> + <string name="kau_changelog">Değişiklikler</string> + <string name="kau_close">Kapat</string> + <string name="kau_contact_us">Bize ulaşın</string> + <string name="kau_copy">Kopyala</string> + <string name="kau_custom">Özel</string> + <string name="kau_dark">Koyu</string> + <string name="kau_default">Varsayılan</string> + <string name="kau_do_not_show_again">Bir daha gösterme</string> + <string name="kau_done">Bitti</string> + <string name="kau_error">Hata</string> + <string name="kau_exit">Çıkış</string> + <string name="kau_exit_confirmation">Çıkmak istediğine emin misin?</string> + <string name="kau_exit_confirmation_x">Çıkmak istediğine emin misin? %s?</string> + <string name="kau_glass">Cam</string> + <string name="kau_got_it">Anladım</string> + <string name="kau_great">Güzel</string> + <string name="kau_hide">Gizle</string> + <string name="kau_light">Açık</string> + <string name="kau_login">Giriş yap</string> + <string name="kau_logout">Çıkış yap</string> + <string name="kau_logout_confirm_as_x">Çıkış yapmak istediğine emin misin %s?</string> + <string name="kau_manage_account">Hesabını yönet</string> + <string name="kau_maybe">Belki</string> + <string name="kau_menu">Menü</string> + <string name="kau_no">Hayır</string> + <string name="kau_no_results_found">Hiç bir sonuç bulunamadı</string> + <string name="kau_none">Hiçbir</string> + <string name="kau_ok">Tamam</string> + <string name="kau_play_store">Play Store</string> + <string name="kau_rate">Oran</string> + <string name="kau_report_bug">Bir hatayı bildir</string> + <string name="kau_search">Araştır</string> + <string name="kau_send_feedback">Geri bildirim gönder</string> + <string name="kau_send_via">Yoluyla Gönder</string> + <string name="kau_settings">Ayarlar</string> + <string name="kau_share">Paylaş</string> + <string name="kau_text_copied">Metin panoya kopyalandı.</string> + <string name="kau_thank_you">Teşekkür ederim</string> + <string name="kau_uh_oh">Ah ah</string> + <string name="kau_warning">Uyarı</string> + <plurals name="kau_x_days"> + <item quantity="one">%d gün</item> + <item quantity="other">%d gün</item> + </plurals> + <plurals name="kau_x_hours"> + <item quantity="one">Saat %d</item> + <item quantity="other">Saat %d</item> + </plurals> + <plurals name="kau_x_minutes"> + <item quantity="one">%d dakika</item> + <item quantity="other">%d dakika</item> + </plurals> + <plurals name="kau_x_seconds"> + <item quantity="one">%d saniye</item> + <item quantity="other">%d saniye</item> + </plurals> + <string name="kau_yes">Evet</string> + <string name="kau_permission_denied">İzin reddedildi</string> </resources> diff --git a/core/src/main/res-public/values-uk-rUA/strings_commons.xml b/core/src/main/res-public/values-uk-rUA/strings_commons.xml new file mode 100644 index 0000000..60ca520 --- /dev/null +++ b/core/src/main/res-public/values-uk-rUA/strings_commons.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?><!--Generated by crowdin.com--><!-- +A collection of common string values +Most resources are verbatim and x represents a formatted item +--> +<resources> + <string name="kau_about_app">Про додаток</string> + <string name="kau_about_x">Про %s</string> + <string name="kau_add_account">Додати обліковий запис</string> + <string name="kau_back">Назад</string> + <string name="kau_cancel">Скасувати</string> + <string name="kau_changelog">Історія змін</string> + <string name="kau_close">Закрити</string> + <string name="kau_contact_us">Зв\'яжіться з нами</string> + <string name="kau_copy">Скопіювати</string> + <string name="kau_custom">Користувальницький</string> + <string name="kau_dark">Темний</string> + <string name="kau_default">За замовчуванням</string> + <string name="kau_do_not_show_again">Не показувати знову</string> + <string name="kau_done">Готово</string> + <string name="kau_error">Помилка</string> + <string name="kau_exit">Вихід</string> + <string name="kau_exit_confirmation">Ви впевнені що хочете вийти?</string> + <string name="kau_exit_confirmation_x">Ви впевнені що хочете вийти %s?</string> + <string name="kau_glass">Скляна</string> + <string name="kau_got_it">Зрозуміло</string> + <string name="kau_great">Чудово</string> + <string name="kau_hide">Сховати</string> + <string name="kau_light">Світла</string> + <string name="kau_login">Увійти</string> + <string name="kau_logout">Вийти</string> + <string name="kau_logout_confirm_as_x">Ви впевнені, що хочете вийти з %s?</string> + <string name="kau_manage_account">Керування акаунтами</string> + <string name="kau_maybe">Можливо</string> + <string name="kau_menu">Меню</string> + <string name="kau_no">Ні</string> + <string name="kau_no_results_found">Нічого не знайдено</string> + <string name="kau_none">Жоден</string> + <string name="kau_ok">OK</string> + <string name="kau_play_store">Play Маркет</string> + <string name="kau_rate">Оцінити</string> + <string name="kau_report_bug">Повідомити про помилки</string> + <string name="kau_search">Пошук</string> + <string name="kau_send_feedback">Надіслати відгук</string> + <string name="kau_send_via">Надіслати через</string> + <string name="kau_settings">Налаштування</string> + <string name="kau_share">Поділитися</string> + <string name="kau_text_copied">Текст скопійовано до буфера обміну.</string> + <string name="kau_thank_you">Дякуємо Вам</string> + <string name="kau_uh_oh">Ой-ой</string> + <string name="kau_warning">Увага</string> + <string name="kau_yes">Так</string> + <string name="kau_permission_denied">У доступі відмовлено</string> +</resources> diff --git a/docs/Changelog.md b/docs/Changelog.md index a93b4c8..a5f24f4 100644 --- a/docs/Changelog.md +++ b/docs/Changelog.md @@ -4,8 +4,9 @@ * Update everything to Android Studio 3.1 * Fix new lint issues (see Migration for resource related methods) * :adapter: Add more IAdapter functions to help retrieve selections -* :core: Add deprecation warning to bindView for fragment based extensions; use bindViewResettable instead +* :core: Deprecate Kotterknife; use kotlin_android_extensions * :kpref-activity: Fix seekbar increment +* :core: Make KPref use Set<String> vs StringSet ## v3.7.1 * Update appcompat to 27.1.0 diff --git a/docs/Migration.md b/docs/Migration.md index ce27225..fe04270 100644 --- a/docs/Migration.md +++ b/docs/Migration.md @@ -6,13 +6,26 @@ Below are some highlights on major refactoring/breaking changes Along with the update to support Android Studio 3.1, a lot of changes have occurred with other dependencies and with lint. -* Resource ids can be negatives due to the bit overflow. Instead, `INVALID_ID` has been introduced to signify an unset or invalid id. +## Invalid Resource Id Equality + +Resource ids can be negatives due to the bit overflow. +Instead, `INVALID_ID` has been introduced to signify an unset or invalid id. Methods such as `Context.string(id, fallback)` now check against `INVALID_ID` through equality rather than using an inequality to address this. * Kotterknife has been deprecated in favour of `kotlin-android-extensions`. See [official docs](https://kotlinlang.org/docs/tutorials/android-plugin.html#view-binding). * `ProgressAnimator` has been completely rewritten to be an extension of `ValueAnimator`. This for the most part is not a breaking change, apart from the fact that creating an animator will not start it immediately. * KPref has been slightly refactored internally. Preferences backed by `StringSet` can now go back to `Set<String>` +## Deprecate Kotterknife + +Kotterknife has been deprecated in favour of `kotlin-android-extensions`. +See [official docs](https://kotlinlang.org/docs/tutorials/android-plugin.html#view-binding). + +## Update KPref + +KPref has been slightly refactored internally. +Preferences backed by `StringSet` can now go back to `Set<String>` + # v3.6.0 ## startActivity diff --git a/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/KPrefBinder.kt b/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/KPrefBinder.kt index a9e21ff..2cdeae2 100644 --- a/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/KPrefBinder.kt +++ b/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/KPrefBinder.kt @@ -53,60 +53,52 @@ class GlobalOptions(core: CoreAttributeContract, activity: KPrefActivityContract class KPrefAdapterBuilder(val globalOptions: GlobalOptions) { @KPrefMarker - fun header(@StringRes title: Int) - = list.add(KPrefHeader(KPrefItemCore.CoreBuilder(globalOptions, title))) + fun header(@StringRes title: Int) = list.add(KPrefHeader(KPrefItemCore.CoreBuilder(globalOptions, title))) @KPrefMarker fun checkbox(@StringRes title: Int, getter: (() -> Boolean), setter: ((value: Boolean) -> Unit), - builder: KPrefItemBase.BaseContract<Boolean>.() -> Unit = {}) - = list.add(KPrefCheckbox(KPrefItemBase.BaseBuilder(globalOptions, title, getter, setter) + builder: KPrefItemBase.BaseContract<Boolean>.() -> Unit = {}) = list.add(KPrefCheckbox(KPrefItemBase.BaseBuilder(globalOptions, title, getter, setter) .apply { builder() })) @KPrefMarker fun colorPicker(@StringRes title: Int, getter: (() -> Int), setter: ((value: Int) -> Unit), - builder: KPrefColorPicker.KPrefColorContract.() -> Unit = {}) - = list.add(KPrefColorPicker(KPrefColorPicker.KPrefColorBuilder(globalOptions, title, getter, setter) + builder: KPrefColorPicker.KPrefColorContract.() -> Unit = {}) = list.add(KPrefColorPicker(KPrefColorPicker.KPrefColorBuilder(globalOptions, title, getter, setter) .apply { builder() })) @KPrefMarker fun <T> text(@StringRes title: Int, getter: (() -> T), setter: ((value: T) -> Unit), - builder: KPrefText.KPrefTextContract<T>.() -> Unit = {}) - = list.add(KPrefText(KPrefText.KPrefTextBuilder(globalOptions, title, getter, setter) + builder: KPrefText.KPrefTextContract<T>.() -> Unit = {}) = list.add(KPrefText(KPrefText.KPrefTextBuilder(globalOptions, title, getter, setter) .apply { builder() })) @KPrefMarker fun subItems(@StringRes title: Int, itemBuilder: KPrefAdapterBuilder.() -> Unit, - builder: KPrefSubItems.KPrefSubItemsContract.() -> Unit) - = list.add(KPrefSubItems(KPrefSubItems.KPrefSubItemsBuilder(globalOptions, title, itemBuilder) + builder: KPrefSubItems.KPrefSubItemsContract.() -> Unit) = list.add(KPrefSubItems(KPrefSubItems.KPrefSubItemsBuilder(globalOptions, title, itemBuilder) .apply { builder() })) @KPrefMarker fun plainText(@StringRes title: Int, - builder: KPrefItemBase.BaseContract<Unit>.() -> Unit = {}) - = list.add(KPrefPlainText(KPrefPlainText.KPrefPlainTextBuilder(globalOptions, title) + builder: KPrefItemBase.BaseContract<Unit>.() -> Unit = {}) = list.add(KPrefPlainText(KPrefPlainText.KPrefPlainTextBuilder(globalOptions, title) .apply { builder() })) @KPrefMarker fun seekbar(@StringRes title: Int, getter: (() -> Int), setter: ((value: Int) -> Unit), - builder: KPrefSeekbar.KPrefSeekbarContract.() -> Unit = {}) - = list.add(KPrefSeekbar(KPrefSeekbar.KPrefSeekbarBuilder(globalOptions, title, getter, setter) + builder: KPrefSeekbar.KPrefSeekbarContract.() -> Unit = {}) = list.add(KPrefSeekbar(KPrefSeekbar.KPrefSeekbarBuilder(globalOptions, title, getter, setter) .apply { builder() })) @KPrefMarker fun timePicker(@StringRes title: Int, getter: (() -> Int), setter: ((value: Int) -> Unit), - builder: KPrefTimePicker.KPrefTimeContract.() -> Unit = {}) - = list.add(KPrefTimePicker(KPrefTimePicker.KPrefTimeBuilder(globalOptions, title, getter, setter) + builder: KPrefTimePicker.KPrefTimeContract.() -> Unit = {}) = list.add(KPrefTimePicker(KPrefTimePicker.KPrefTimeBuilder(globalOptions, title, getter, setter) .apply { builder() })) @KPrefMarker diff --git a/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/items/KPrefCheckbox.kt b/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/items/KPrefCheckbox.kt index 3e06f6a..f391747 100644 --- a/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/items/KPrefCheckbox.kt +++ b/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/items/KPrefCheckbox.kt @@ -4,7 +4,6 @@ import android.support.v7.widget.AppCompatCheckBox import android.widget.CheckBox import ca.allanwang.kau.kpref.activity.KClick import ca.allanwang.kau.kpref.activity.R -import ca.allanwang.kau.logging.KL import ca.allanwang.kau.utils.tint /** diff --git a/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/items/KPrefSeekbar.kt b/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/items/KPrefSeekbar.kt index 78f4f80..ce61e8f 100644 --- a/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/items/KPrefSeekbar.kt +++ b/kpref-activity/src/main/kotlin/ca/allanwang/kau/kpref/activity/items/KPrefSeekbar.kt @@ -15,14 +15,9 @@ import ca.allanwang.kau.utils.tint */ open class KPrefSeekbar(val builder: KPrefSeekbarContract) : KPrefItemBase<Int>(builder) { - protected val min = builder.min - protected val max = builder.max - protected val increment = builder.increments - - init { - if (increment <= 0) - throw IllegalArgumentException("Seekbar must increment by at least 1") - } + protected inline val min get() = builder.min + protected inline val max get() = builder.max + protected inline val increment get() = builder.increments override fun KClick<Int>.defaultOnClick() = Unit @@ -83,6 +78,11 @@ open class KPrefSeekbar(val builder: KPrefSeekbarContract) : KPrefItemBase<Int>( override var max: Int = 100 override var increments: Int = 1 + set(value) { + if (value <= 0) + throw IllegalArgumentException("Seekbar must increment by at least 1") + field = value + } override var toText: (Int) -> String = Int::toString diff --git a/kpref-activity/src/main/res-public/values/public.xml b/kpref-activity/src/main/res-public/values/public.xml deleted file mode 100644 index b5fb383..0000000 --- a/kpref-activity/src/main/res-public/values/public.xml +++ /dev/null @@ -1,19 +0,0 @@ -<resources xmlns:tools='http://schemas.android.com/tools' tools:ignore='ResourceName'> -<!-- AUTO-GENERATED FILE. DO NOT MODIFY. public.xml is generated by the generatepublicxml gradle task --> - <public name='kau_pref_barrier' type='id' /> - <public name='kau_pref_container' type='id' /> - <public name='kau_pref_desc' type='id' /> - <public name='kau_pref_icon' type='id' /> - <public name='kau_pref_inner_content' type='id' /> - <public name='kau_pref_inner_frame' type='id' /> - <public name='kau_pref_item_checkbox' type='id' /> - <public name='kau_pref_item_color_picker' type='id' /> - <public name='kau_pref_item_header' type='id' /> - <public name='kau_pref_item_plain_text' type='id' /> - <public name='kau_pref_item_seekbar' type='id' /> - <public name='kau_pref_item_sub_item' type='id' /> - <public name='kau_pref_item_text' type='id' /> - <public name='kau_pref_lower_content' type='id' /> - <public name='kau_pref_lower_frame' type='id' /> - <public name='kau_pref_title' type='id' /> -</resources>
\ No newline at end of file diff --git a/mediapicker/src/main/kotlin/ca/allanwang/kau/mediapicker/MediaPickerBinder.kt b/mediapicker/src/main/kotlin/ca/allanwang/kau/mediapicker/MediaPickerBinder.kt index 87f5a42..50fe7ae 100644 --- a/mediapicker/src/main/kotlin/ca/allanwang/kau/mediapicker/MediaPickerBinder.kt +++ b/mediapicker/src/main/kotlin/ca/allanwang/kau/mediapicker/MediaPickerBinder.kt @@ -39,6 +39,5 @@ internal const val MEDIA_PICKER_RESULT = "media_picker_result" internal const val ANIMATION_DURATION = 200L internal const val ANIMATION_SCALE = 0.95f -internal fun <T> RequestBuilder<T>.applyMediaOptions(context: Context) - = apply(RequestOptions().diskCacheStrategy(DiskCacheStrategy.RESOURCE).centerCrop().override(MediaPickerCore.viewSize(context))) +internal fun <T> RequestBuilder<T>.applyMediaOptions(context: Context) = apply(RequestOptions().diskCacheStrategy(DiskCacheStrategy.RESOURCE).centerCrop().override(MediaPickerCore.viewSize(context))) diff --git a/mediapicker/src/main/res-public/values/public.xml b/mediapicker/src/main/res-public/values/public.xml deleted file mode 100644 index ac608bb..0000000 --- a/mediapicker/src/main/res-public/values/public.xml +++ /dev/null @@ -1,7 +0,0 @@ -<resources xmlns:tools='http://schemas.android.com/tools' tools:ignore='ResourceName'> -<!-- AUTO-GENERATED FILE. DO NOT MODIFY. public.xml is generated by the generatepublicxml gradle task --> - <public name='kau_blurred_image_selection_overlay' type='color' /> - <public name='kau_image_minimum_size' type='dimen' /> - <public name='Kau.MediaPicker' type='style' /> - <public name='Kau.MediaPicker.Overlay' type='style' /> -</resources>
\ No newline at end of file diff --git a/mediapicker/src/main/res/values-da-rDK/strings_mediapicker.xml b/mediapicker/src/main/res/values-da-rDK/strings_mediapicker.xml new file mode 100644 index 0000000..d3636d3 --- /dev/null +++ b/mediapicker/src/main/res/values-da-rDK/strings_mediapicker.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> +<resources> + <string name="kau_no_items_found">Ingen elementer fundet</string> + <string name="kau_no_items_selected">Ingen elementer er valgt</string> + <string name="kau_no_items_loaded">Ingen elementer er indlæst</string> + <string name="kau_no_camera_found">Intet kamera fundet</string> + <string name="kau_no_camera_found_content">Installer venligst en kamera-app og prøv igen.</string> + <string name="kau_temp_file_creation_failed">Kunne ikke oprette en midlertidig fil.</string> + <string name="kau_select_media">Vælg medie</string> +</resources> diff --git a/mediapicker/src/main/res/values-in-rID/strings_mediapicker.xml b/mediapicker/src/main/res/values-in-rID/strings_mediapicker.xml index 2414c75..8f64d74 100644 --- a/mediapicker/src/main/res/values-in-rID/strings_mediapicker.xml +++ b/mediapicker/src/main/res/values-in-rID/strings_mediapicker.xml @@ -1,11 +1,10 @@ -<?xml version="1.0" encoding="utf-8"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> <resources> - <string name="kau_no_items_found">Item tidak ditemukan</string> - <string name="kau_no_items_selected">Tidak ada item yang dipilih</string> - <string name="kau_no_items_loaded">Tidak ada item yang dimuat</string> - <string name="kau_no_camera_found">Kamera tidak ditemukan</string> - <string name="kau_no_camera_found_content">Mohon pasang aplikasi kamera dan coba lagi.</string> - <string name="kau_temp_file_creation_failed">Gagal membuat file sementara.</string> - <string name="kau_select_media">Pilih Media</string> + <string name="kau_no_items_found">Item tidak ditemukan</string> + <string name="kau_no_items_selected">Tidak ada item yang dipilih</string> + <string name="kau_no_items_loaded">Tidak ada item yang dimuat</string> + <string name="kau_no_camera_found">Kamera tidak ditemukan</string> + <string name="kau_no_camera_found_content">Mohon pasang aplikasi kamera dan coba lagi.</string> + <string name="kau_temp_file_creation_failed">Gagal membuat file sementara.</string> + <string name="kau_select_media">Pilih Media</string> </resources> diff --git a/mediapicker/src/main/res/values-pl-rPL/strings_mediapicker.xml b/mediapicker/src/main/res/values-pl-rPL/strings_mediapicker.xml new file mode 100644 index 0000000..5aaaae1 --- /dev/null +++ b/mediapicker/src/main/res/values-pl-rPL/strings_mediapicker.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> +<resources> + <string name="kau_no_items_found">Brak pozycji</string> + <string name="kau_no_items_selected">Brak wybranych pozycji</string> + <string name="kau_no_items_loaded">Brak załadowanych pozycji</string> + <string name="kau_no_camera_found">Brak aparatu</string> + <string name="kau_no_camera_found_content">Zainstaluj aplikację aparatu i spróbuj ponownie.</string> + <string name="kau_temp_file_creation_failed">Nie udało się utworzyć tymczasowego pliku.</string> + <string name="kau_select_media">Wybierz media</string> +</resources> diff --git a/mediapicker/src/main/res/values-sv-rSE/strings_mediapicker.xml b/mediapicker/src/main/res/values-sv-rSE/strings_mediapicker.xml new file mode 100644 index 0000000..15f991f --- /dev/null +++ b/mediapicker/src/main/res/values-sv-rSE/strings_mediapicker.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> +<resources> + <string name="kau_no_items_found">Inga objekt hittades</string> + <string name="kau_no_items_selected">Inga objekt har valts</string> + <string name="kau_no_items_loaded">Inga objekt laddades</string> + <string name="kau_no_camera_found">Ingen kamera hittades</string> + <string name="kau_no_camera_found_content">Var snäll installera en kameraapp och försök igen.</string> + <string name="kau_temp_file_creation_failed">Kunde inte skapa en tillfällig fil.</string> + <string name="kau_select_media">Välj Media</string> +</resources> diff --git a/mediapicker/src/main/res/values-th-rTH/strings_mediapicker.xml b/mediapicker/src/main/res/values-th-rTH/strings_mediapicker.xml index 3c5340b..3e97c66 100644 --- a/mediapicker/src/main/res/values-th-rTH/strings_mediapicker.xml +++ b/mediapicker/src/main/res/values-th-rTH/strings_mediapicker.xml @@ -1,11 +1,10 @@ -<?xml version="1.0" encoding="utf-8"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> <resources> - <string name="kau_no_items_found">ไม่พบรายการ</string> - <string name="kau_no_items_selected">ยังไม่ได้เลือกรายการ</string> - <string name="kau_no_items_loaded">ไม่มีรายการ</string> - <string name="kau_no_camera_found">ไม่พบกล้อง</string> - <string name="kau_no_camera_found_content">กรุณาติดตั้งแอพกล้องแล้วลองอีกครั้ง</string> - <string name="kau_temp_file_creation_failed">ไม่สามารถสร้างไฟล์ชั่วคราวได้</string> - <string name="kau_select_media">เลือกสื่อ</string> + <string name="kau_no_items_found">ไม่พบรายการ</string> + <string name="kau_no_items_selected">ยังไม่ได้เลือกรายการ</string> + <string name="kau_no_items_loaded">ไม่มีรายการ</string> + <string name="kau_no_camera_found">ไม่พบกล้อง</string> + <string name="kau_no_camera_found_content">กรุณาติดตั้งแอพกล้องแล้วลองอีกครั้ง</string> + <string name="kau_temp_file_creation_failed">ไม่สามารถสร้างไฟล์ชั่วคราวได้</string> + <string name="kau_select_media">เลือกสื่อ</string> </resources> diff --git a/mediapicker/src/main/res/values-tr-rTR/strings_mediapicker.xml b/mediapicker/src/main/res/values-tr-rTR/strings_mediapicker.xml index 19114fe..55e90b4 100644 --- a/mediapicker/src/main/res/values-tr-rTR/strings_mediapicker.xml +++ b/mediapicker/src/main/res/values-tr-rTR/strings_mediapicker.xml @@ -1,11 +1,10 @@ -<?xml version="1.0" encoding="utf-8"?> -<!--Generated by crowdin.com--> +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> <resources> - <string name="kau_no_items_found">Hiç bir öge bulunamadı</string> - <string name="kau_no_items_selected">Hiç bir öge seçilmemişti</string> - <string name="kau_no_items_loaded">Hiç bir öge yüklenmedi</string> - <string name="kau_no_camera_found">Kamera bulunamadı</string> - <string name="kau_no_camera_found_content">Lütfen bir kamera uygulaması yükleyin ve tekrar deneyin.</string> - <string name="kau_temp_file_creation_failed">Geçici bir dosya oluşturulamadı.</string> - <string name="kau_select_media">Medya Seç</string> + <string name="kau_no_items_found">Hiç bir öge bulunamadı</string> + <string name="kau_no_items_selected">Hiç bir öge seçilmemişti</string> + <string name="kau_no_items_loaded">Hiç bir öge yüklenmedi</string> + <string name="kau_no_camera_found">Kamera bulunamadı</string> + <string name="kau_no_camera_found_content">Lütfen bir kamera uygulaması yükleyin ve tekrar deneyin.</string> + <string name="kau_temp_file_creation_failed">Geçici bir dosya oluşturulamadı.</string> + <string name="kau_select_media">Medya Seç</string> </resources> diff --git a/mediapicker/src/main/res/values-uk-rUA/strings_mediapicker.xml b/mediapicker/src/main/res/values-uk-rUA/strings_mediapicker.xml new file mode 100644 index 0000000..6dc767e --- /dev/null +++ b/mediapicker/src/main/res/values-uk-rUA/strings_mediapicker.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8"?><!--Generated by crowdin.com--> +<resources> + <string name="kau_no_items_found">Нічого не знайдено</string> + <string name="kau_no_items_selected">Жодного елементу не обрано</string> + <string name="kau_no_items_loaded">Немає елементів для завантаження</string> + <string name="kau_no_camera_found">Камери не знайдено</string> + <string name="kau_no_camera_found_content">Будь-ласка, встановіть додаток для камери та повторіть спробу.</string> + <string name="kau_temp_file_creation_failed">Не вдалося створити тимчасовий файл.</string> + <string name="kau_select_media">Оберіть медіафайл</string> +</resources> diff --git a/sample/src/main/kotlin/ca/allanwang/kau/sample/MediaPicker.kt b/sample/src/main/kotlin/ca/allanwang/kau/sample/MediaPicker.kt index 618ca07..42de62c 100644 --- a/sample/src/main/kotlin/ca/allanwang/kau/sample/MediaPicker.kt +++ b/sample/src/main/kotlin/ca/allanwang/kau/sample/MediaPicker.kt @@ -11,11 +11,9 @@ import java.io.File */ private fun actions(multiple: Boolean) = listOf(object : MediaActionCamera() { - override fun createFile(context: Context): File - = createMediaFile("KAU", ".jpg") + override fun createFile(context: Context): File = createMediaFile("KAU", ".jpg") - override fun createUri(context: Context, file: File): Uri - = FileProvider.getUriForFile(context, BuildConfig.APPLICATION_ID + ".provider", file) + override fun createUri(context: Context, file: File): Uri = FileProvider.getUriForFile(context, BuildConfig.APPLICATION_ID + ".provider", file) }, MediaActionGallery(multiple)) diff --git a/sample/src/main/res/xml/kau_changelog.xml b/sample/src/main/res/xml/kau_changelog.xml index e5ddad5..f6ec799 100644 --- a/sample/src/main/res/xml/kau_changelog.xml +++ b/sample/src/main/res/xml/kau_changelog.xml @@ -10,8 +10,10 @@ <item text="Update everything to Android Studio 3.1" /> <item text="Fix new lint issues (see Migration for resource related methods)" /> <item text=":adapter: Add more IAdapter functions to help retrieve selections" /> - <item text=":core: Add deprecation warning to bindView for fragment based extensions; use bindViewResettable instead" /> + <item text=":core: Deprecate Kotterknife; use kotlin_android_extensions" /> <item text=":kpref-activity: Fix seekbar increment" /> + <item text=":core: Make KPref use Set<String> vs StringSet" /> + <item text="" /> <version title="v3.7.1" /> <item text="Update appcompat to 27.1.0" /> diff --git a/searchview/src/main/res-public/values/public.xml b/searchview/src/main/res-public/values/public.xml deleted file mode 100644 index cf14680..0000000 --- a/searchview/src/main/res-public/values/public.xml +++ /dev/null @@ -1,4 +0,0 @@ -<resources xmlns:tools='http://schemas.android.com/tools' tools:ignore='ResourceName'> -<!-- AUTO-GENERATED FILE. DO NOT MODIFY. public.xml is generated by the generatepublicxml gradle task --> - <public name='dummy' type='id' /> -</resources>
\ No newline at end of file diff --git a/searchview/src/main/res/values/ids.xml b/searchview/src/main/res/values/ids.xml index 0c00109..adca7fe 100644 --- a/searchview/src/main/res/values/ids.xml +++ b/searchview/src/main/res/values/ids.xml @@ -1,16 +1,16 @@ <?xml version="1.0" encoding="utf-8" standalone="no"?> <resources> - <item name="kau_search_cardview" type="id"/> - <item name="kau_search_clear" type="id"/> - <item name="kau_search_desc" type="id"/> - <item name="kau_search_divider" type="id"/> - <item name="kau_search_edit_text" type="id"/> - <item name="kau_search_extra" type="id"/> - <item name="kau_search_icon" type="id"/> - <item name="kau_search_item_frame" type="id"/> - <item name="kau_search_nav" type="id"/> - <item name="kau_search_progress" type="id"/> - <item name="kau_search_recycler" type="id"/> - <item name="kau_search_shadow" type="id"/> - <item name="kau_search_title" type="id"/> + <item name="kau_search_cardview" type="id" /> + <item name="kau_search_clear" type="id" /> + <item name="kau_search_desc" type="id" /> + <item name="kau_search_divider" type="id" /> + <item name="kau_search_edit_text" type="id" /> + <item name="kau_search_extra" type="id" /> + <item name="kau_search_icon" type="id" /> + <item name="kau_search_item_frame" type="id" /> + <item name="kau_search_nav" type="id" /> + <item name="kau_search_progress" type="id" /> + <item name="kau_search_recycler" type="id" /> + <item name="kau_search_shadow" type="id" /> + <item name="kau_search_title" type="id" /> </resources> |