From a836ab17d9923cf381b9e7b19fa8cd397948d768 Mon Sep 17 00:00:00 2001 From: Mykhailo Nester Date: Sat, 27 Feb 2021 14:36:44 +0200 Subject: [PATCH 1/2] - update jitpack publish configs; --- crowdin-controls/build.gradle | 6 +++--- crowdin-controls/maven.gradle | 4 ++-- crowdin/build.gradle | 4 ++-- crowdin/maven.gradle | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/crowdin-controls/build.gradle b/crowdin-controls/build.gradle index 2dfc50f..64f13dc 100644 --- a/crowdin-controls/build.gradle +++ b/crowdin-controls/build.gradle @@ -3,10 +3,10 @@ apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' ext { - libraryVersionCode = 2 - libraryVersionName = "1.0.1" + libraryVersionCode = 3 + libraryVersionName = "1.0.2" - publishedGroupId = 'com.crowdin.platform' + publishedGroupId = 'com.crowdin.control' libraryName = 'CrowdinControlsSdk' artifact = 'controls' diff --git a/crowdin-controls/maven.gradle b/crowdin-controls/maven.gradle index e99c43c..b888534 100755 --- a/crowdin-controls/maven.gradle +++ b/crowdin-controls/maven.gradle @@ -22,8 +22,8 @@ artifacts { publishing { publications { Publication(MavenPublication) { - artifact("$buildDir/outputs/aar/crowdin-release.aar") - groupId + artifact("$buildDir/outputs/aar/crowdin-controls-release.aar") + groupId publishedGroupId artifactId artifact version this.version diff --git a/crowdin/build.gradle b/crowdin/build.gradle index ec65556..3c2b8ce 100755 --- a/crowdin/build.gradle +++ b/crowdin/build.gradle @@ -4,8 +4,8 @@ apply plugin: 'kotlin-android-extensions' apply from: '../jacoco.gradle' ext { - libraryVersionCode = 17 - libraryVersionName = "1.4.1" + libraryVersionCode = 18 + libraryVersionName = "1.4.2" publishedGroupId = 'com.crowdin.platform' libraryName = 'CrowdinAndroidSdk' diff --git a/crowdin/maven.gradle b/crowdin/maven.gradle index e99c43c..51675e3 100755 --- a/crowdin/maven.gradle +++ b/crowdin/maven.gradle @@ -23,7 +23,7 @@ publishing { publications { Publication(MavenPublication) { artifact("$buildDir/outputs/aar/crowdin-release.aar") - groupId + groupId publishedGroupId artifactId artifact version this.version From 62709221dba659b9540d6327aa048683814025e5 Mon Sep 17 00:00:00 2001 From: Mykhailo Nester Date: Sat, 27 Feb 2021 15:57:15 +0200 Subject: [PATCH 2/2] - update jitpack publish configs; - gradle and library version updates; - remove deprecated kotlin extension plugin; - code clean up; --- build.gradle | 4 +- crowdin-controls/build.gradle | 9 ++-- crowdin-controls/maven.gradle | 2 +- crowdin/build.gradle | 50 +++++++++++-------- crowdin/maven.gradle | 2 +- .../com/crowdin/platform/auth/AuthActivity.kt | 7 ++- .../crowdin/platform/data/model/AuthInfo.kt | 2 +- crowdin/src/main/res/layout/auth_layout.xml | 4 +- example-info/build.gradle | 8 +-- example/build.gradle | 11 ++-- .../crowdin/platform/example/MainActivity.kt | 10 +++- .../platform/example/SettingsFragment.kt | 5 +- .../example/category/CategoryAdapter.kt | 7 ++- .../example/category/CategoryFragment.kt | 9 +++- .../platform/example/task/AddTaskActivity.kt | 32 ++++++++++-- .../platform/example/task/TaskAdapter.kt | 25 +++++----- .../task/fragment/DashboardFragment.kt | 9 +++- .../example/task/fragment/HistoryFragment.kt | 6 ++- .../src/main/res/layout/activity_add_task.xml | 10 ++-- .../src/main/res/layout/activity_splash.xml | 4 +- example/src/main/res/values/colors.xml | 1 - gradle/wrapper/gradle-wrapper.properties | 4 +- 22 files changed, 142 insertions(+), 79 deletions(-) diff --git a/build.gradle b/build.gradle index 881d0f2..b84836b 100755 --- a/build.gradle +++ b/build.gradle @@ -1,14 +1,14 @@ buildscript { ext { - kotlin_version = '1.4.10' + kotlin_version = '1.4.30' } repositories { google() jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:4.0.2' + classpath 'com.android.tools.build:gradle:4.1.2' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1' } diff --git a/crowdin-controls/build.gradle b/crowdin-controls/build.gradle index 64f13dc..7f159ca 100644 --- a/crowdin-controls/build.gradle +++ b/crowdin-controls/build.gradle @@ -1,6 +1,7 @@ -apply plugin: 'com.android.library' -apply plugin: 'kotlin-android' -apply plugin: 'kotlin-android-extensions' +plugins { + id 'com.android.library' + id 'kotlin-android' +} ext { libraryVersionCode = 3 @@ -64,7 +65,7 @@ dependencies { implementation 'androidx.core:core-ktx:1.3.2' implementation "androidx.constraintlayout:constraintlayout:2.0.4" - testImplementation 'junit:junit:4.13.1' + testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.2' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' diff --git a/crowdin-controls/maven.gradle b/crowdin-controls/maven.gradle index b888534..e684e3c 100755 --- a/crowdin-controls/maven.gradle +++ b/crowdin-controls/maven.gradle @@ -28,7 +28,7 @@ publishing { version this.version pom.withXml { - def dependenciesNode = asNode().getAt('dependencies')[0] ?: asNode().appendNode('dependencies') + def dependenciesNode = asNode()['dependencies'][0] ?: asNode().appendNode('dependencies') // Iterate over the implementation dependencies (we don't want the test ones), adding a node for each configurations.implementation.allDependencies.each { // Ensure dependencies such as fileTree are not included. diff --git a/crowdin/build.gradle b/crowdin/build.gradle index 3c2b8ce..bc58a58 100755 --- a/crowdin/build.gradle +++ b/crowdin/build.gradle @@ -1,6 +1,20 @@ -apply plugin: 'com.android.library' -apply plugin: 'kotlin-android' -apply plugin: 'kotlin-android-extensions' +buildscript { + + repositories { + mavenCentral() + jcenter() + } + + dependencies { + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.30" + } +} + +plugins { + id 'com.android.library' + id 'kotlin-android' +} + apply from: '../jacoco.gradle' ext { @@ -27,6 +41,8 @@ ext { allLicenses = ["MIT"] } +def STRING = 'String' + android { compileSdkVersion 29 @@ -36,6 +52,8 @@ android { versionCode libraryVersionCode versionName libraryVersionName + buildConfigField STRING, 'VERSION_NAME', "\"${libraryVersionName}\"" + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } @@ -65,30 +83,18 @@ android { } } -buildscript { - - repositories { - mavenCentral() - jcenter() - } - - dependencies { - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.10" - } -} - dependencies { implementation "androidx.appcompat:appcompat:1.2.0" - implementation "androidx.work:work-runtime-ktx:2.4.0" - implementation "com.google.android.material:material:1.2.1" + implementation "androidx.work:work-runtime-ktx:2.5.0" + implementation "com.google.android.material:material:1.3.0" implementation "com.squareup.retrofit2:retrofit:2.9.0" - implementation 'com.squareup.retrofit2:converter-gson:2.6.0' - implementation "com.google.code.gson:gson:2.8.5" - implementation "com.squareup.okhttp3:logging-interceptor:4.0.1" - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.10" + implementation 'com.squareup.retrofit2:converter-gson:2.7.1' + implementation "com.google.code.gson:gson:2.8.6" + implementation "com.squareup.okhttp3:logging-interceptor:4.2.1" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.30" implementation "androidx.constraintlayout:constraintlayout:2.0.4" - testImplementation 'junit:junit:4.13.1' + testImplementation 'junit:junit:4.13.2' testImplementation 'org.mockito:mockito-core:3.1.0' } diff --git a/crowdin/maven.gradle b/crowdin/maven.gradle index 51675e3..e6de265 100755 --- a/crowdin/maven.gradle +++ b/crowdin/maven.gradle @@ -28,7 +28,7 @@ publishing { version this.version pom.withXml { - def dependenciesNode = asNode().getAt('dependencies')[0] ?: asNode().appendNode('dependencies') + def dependenciesNode = asNode()['dependencies'][0] ?: asNode().appendNode('dependencies') // Iterate over the implementation dependencies (we don't want the test ones), adding a node for each configurations.implementation.allDependencies.each { // Ensure dependencies such as fileTree are not included. diff --git a/crowdin/src/main/java/com/crowdin/platform/auth/AuthActivity.kt b/crowdin/src/main/java/com/crowdin/platform/auth/AuthActivity.kt index 64e28c7..7c730c4 100644 --- a/crowdin/src/main/java/com/crowdin/platform/auth/AuthActivity.kt +++ b/crowdin/src/main/java/com/crowdin/platform/auth/AuthActivity.kt @@ -13,6 +13,7 @@ import android.view.View import android.webkit.WebChromeClient import android.webkit.WebView import android.webkit.WebViewClient +import android.widget.LinearLayout import android.widget.Toast import androidx.appcompat.app.AppCompatActivity import androidx.core.app.ActivityCompat @@ -25,10 +26,11 @@ import com.crowdin.platform.data.model.TokenRequest import com.crowdin.platform.data.remote.CrowdinRetrofitService import com.crowdin.platform.util.ThreadUtils import com.crowdin.platform.util.executeIO -import kotlinx.android.synthetic.main.auth_layout.* internal class AuthActivity : AppCompatActivity() { + private lateinit var webView: WebView + private lateinit var progressView: LinearLayout private lateinit var clientId: String private lateinit var clientSecret: String private var domain: String? = null @@ -52,6 +54,9 @@ internal class AuthActivity : AppCompatActivity() { super.onCreate(savedInstanceState) setContentView(R.layout.auth_layout) + webView = findViewById(R.id.webView) + progressView = findViewById(R.id.progressView) + if (Crowdin.isAuthorized()) { requestPermission() } else { diff --git a/crowdin/src/main/java/com/crowdin/platform/data/model/AuthInfo.kt b/crowdin/src/main/java/com/crowdin/platform/data/model/AuthInfo.kt index 57d0ac7..68d3efd 100644 --- a/crowdin/src/main/java/com/crowdin/platform/data/model/AuthInfo.kt +++ b/crowdin/src/main/java/com/crowdin/platform/data/model/AuthInfo.kt @@ -4,7 +4,7 @@ internal class AuthInfo(authResponse: AuthResponse) { var accessToken = authResponse.accessToken var refreshToken = authResponse.refreshToken - var expiresIn = System.currentTimeMillis() + (authResponse.expiresIn * 60) + private var expiresIn = System.currentTimeMillis() + (authResponse.expiresIn * 60) fun isExpired(): Boolean { return System.currentTimeMillis() > expiresIn diff --git a/crowdin/src/main/res/layout/auth_layout.xml b/crowdin/src/main/res/layout/auth_layout.xml index 7e4a761..12a359c 100644 --- a/crowdin/src/main/res/layout/auth_layout.xml +++ b/crowdin/src/main/res/layout/auth_layout.xml @@ -1,5 +1,5 @@ - @@ -31,4 +31,4 @@ android:textSize="16sp" android:textStyle="bold" /> - \ No newline at end of file + \ No newline at end of file diff --git a/example-info/build.gradle b/example-info/build.gradle index 8d0fd14..25cab60 100644 --- a/example-info/build.gradle +++ b/example-info/build.gradle @@ -36,10 +36,10 @@ dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" implementation 'androidx.core:core-ktx:1.3.2' - implementation "androidx.appcompat:appcompat:1.1.0" - implementation "com.google.android.material:material:1.1.0" - implementation "androidx.constraintlayout:constraintlayout:1.1.3" - testImplementation 'junit:junit:4.+' + implementation "androidx.appcompat:appcompat:1.2.0" + implementation "com.google.android.material:material:1.3.0" + implementation "androidx.constraintlayout:constraintlayout:2.0.4" + testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.2' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' } \ No newline at end of file diff --git a/example/build.gradle b/example/build.gradle index 8a24a1f..54fcd71 100755 --- a/example/build.gradle +++ b/example/build.gradle @@ -1,6 +1,7 @@ -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply plugin: 'kotlin-android-extensions' +plugins { + id 'com.android.application' + id 'kotlin-android' +} android { compileSdkVersion rootProject.ext.compileSdkVersion @@ -37,7 +38,7 @@ dependencies { implementation project(":example-info") implementation "androidx.appcompat:appcompat:1.2.0" - implementation "com.google.android.material:material:1.2.1" + implementation "com.google.android.material:material:1.3.0" implementation "androidx.constraintlayout:constraintlayout:2.0.4" - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.10" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.30" } \ No newline at end of file diff --git a/example/src/main/java/com/crowdin/platform/example/MainActivity.kt b/example/src/main/java/com/crowdin/platform/example/MainActivity.kt index d6a7a8d..d75cd2a 100644 --- a/example/src/main/java/com/crowdin/platform/example/MainActivity.kt +++ b/example/src/main/java/com/crowdin/platform/example/MainActivity.kt @@ -8,6 +8,7 @@ import android.view.Menu import android.view.MenuItem import android.widget.TextView import androidx.appcompat.app.ActionBarDrawerToggle +import androidx.appcompat.widget.Toolbar import androidx.core.view.GravityCompat import androidx.drawerlayout.widget.DrawerLayout import com.crowdin.platform.example.category.CategoryFragment @@ -15,14 +16,19 @@ import com.crowdin.platform.example.task.fragment.DashboardFragment import com.crowdin.platform.example.task.fragment.HistoryFragment import com.crowdin.platform.util.inflateWithCrowdin import com.google.android.material.navigation.NavigationView -import kotlinx.android.synthetic.main.activity_main.* -import kotlinx.android.synthetic.main.app_bar_main.* class MainActivity : BaseActivity(), NavigationView.OnNavigationItemSelectedListener { + private lateinit var toolbarMain: Toolbar + private lateinit var drawerLayout: DrawerLayout + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) + toolbarMain = findViewById(R.id.toolbarMain) + drawerLayout = findViewById(R.id.drawerLayout) + val navigationView = findViewById(R.id.navigationView) + setSupportActionBar(toolbarMain) val toggle = ActionBarDrawerToggle( diff --git a/example/src/main/java/com/crowdin/platform/example/SettingsFragment.kt b/example/src/main/java/com/crowdin/platform/example/SettingsFragment.kt index 9a5c801..6c17764 100644 --- a/example/src/main/java/com/crowdin/platform/example/SettingsFragment.kt +++ b/example/src/main/java/com/crowdin/platform/example/SettingsFragment.kt @@ -5,15 +5,17 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.ArrayAdapter +import android.widget.Spinner import androidx.fragment.app.Fragment import com.crowdin.platform.Crowdin import com.crowdin.platform.example.task.OnItemSelectedListener import com.crowdin.platform.example.utils.updateLocale -import kotlinx.android.synthetic.main.fragment_settings.* import java.util.Locale class SettingsFragment : Fragment(), OnItemSelectedListener.SpinnerItemListener { + private lateinit var spinnerLanguages: Spinner + override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, @@ -24,6 +26,7 @@ class SettingsFragment : Fragment(), OnItemSelectedListener.SpinnerItemListener override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + spinnerLanguages = view.findViewById(R.id.spinnerLanguages) loadDataInSpinner() } diff --git a/example/src/main/java/com/crowdin/platform/example/category/CategoryAdapter.kt b/example/src/main/java/com/crowdin/platform/example/category/CategoryAdapter.kt index f46feaf..8585ec0 100644 --- a/example/src/main/java/com/crowdin/platform/example/category/CategoryAdapter.kt +++ b/example/src/main/java/com/crowdin/platform/example/category/CategoryAdapter.kt @@ -10,7 +10,6 @@ import androidx.recyclerview.widget.RecyclerView import com.crowdin.platform.example.R import com.crowdin.platform.example.utils.dialogDeleteCategory import com.crowdin.platform.example.utils.dialogUpdateCategory -import kotlinx.android.synthetic.main.row_category.view.* class CategoryAdapter( private val mContext: Context, @@ -52,9 +51,9 @@ class CategoryAdapter( inner class ViewHolder(view: View) : RecyclerView.ViewHolder(view), CategoryUpdate, CategoryDelete { - private val categoryNameTv: TextView = view.txtCategoryName - private val editCategoryImg: ImageView = view.imgEditCategory - private val deleteCategoryImg: ImageView = view.imgDeleteCategory + private val categoryNameTv: TextView = view.findViewById(R.id.txtCategoryName) + private val editCategoryImg: ImageView = view.findViewById(R.id.imgEditCategory) + private val deleteCategoryImg: ImageView = view.findViewById(R.id.imgDeleteCategory) fun onBind(categoryModel: CategoryModel) { categoryNameTv.text = categoryModel.categoryName diff --git a/example/src/main/java/com/crowdin/platform/example/category/CategoryFragment.kt b/example/src/main/java/com/crowdin/platform/example/category/CategoryFragment.kt index 352b28b..e9f97cb 100644 --- a/example/src/main/java/com/crowdin/platform/example/category/CategoryFragment.kt +++ b/example/src/main/java/com/crowdin/platform/example/category/CategoryFragment.kt @@ -4,15 +4,19 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.TextView import androidx.fragment.app.Fragment import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView import com.crowdin.platform.example.R import com.crowdin.platform.example.utils.dialogAddCategory -import kotlinx.android.synthetic.main.fragment_category.* +import com.google.android.material.floatingactionbutton.FloatingActionButton import java.util.ArrayList class CategoryFragment : Fragment(), View.OnClickListener, CategoryAdd, CategoryIsEmpty { + private lateinit var addCategoryFAB: FloatingActionButton + private lateinit var emptyView: TextView private lateinit var categoryAdapter: CategoryAdapter private var categories: ArrayList = ArrayList() @@ -26,6 +30,9 @@ class CategoryFragment : Fragment(), View.OnClickListener, CategoryAdd, Category override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + addCategoryFAB = view.findViewById(R.id.addCategoryFAB) + emptyView = view.findViewById(R.id.emptyView) + val recyclerView = view.findViewById(R.id.recyclerView) recyclerView.setHasFixedSize(true) recyclerView.layoutManager = LinearLayoutManager(requireActivity()) addCategoryFAB.setOnClickListener(this) diff --git a/example/src/main/java/com/crowdin/platform/example/task/AddTaskActivity.kt b/example/src/main/java/com/crowdin/platform/example/task/AddTaskActivity.kt index a7bf33e..7e044cb 100644 --- a/example/src/main/java/com/crowdin/platform/example/task/AddTaskActivity.kt +++ b/example/src/main/java/com/crowdin/platform/example/task/AddTaskActivity.kt @@ -9,13 +9,17 @@ import android.view.Menu import android.view.MenuItem import android.view.View import android.widget.ArrayAdapter +import android.widget.EditText +import android.widget.ImageView +import android.widget.Spinner +import androidx.appcompat.widget.Toolbar +import androidx.constraintlayout.widget.ConstraintLayout import com.crowdin.platform.example.BaseActivity import com.crowdin.platform.example.R import com.crowdin.platform.example.category.CategoryAdd import com.crowdin.platform.example.category.DBManagerCategory import com.crowdin.platform.example.utils.dialogAddCategory import com.crowdin.platform.example.utils.toastMessage -import kotlinx.android.synthetic.main.activity_add_task.* import java.text.SimpleDateFormat import java.util.Calendar import java.util.Locale @@ -23,6 +27,15 @@ import java.util.Locale class AddTaskActivity : BaseActivity(), View.OnClickListener, CategoryAdd, OnItemSelectedListener.SpinnerItemListener { + private lateinit var edtTitle: EditText + private lateinit var edtTask: EditText + private lateinit var edtSetDate: EditText + private lateinit var edtSetTime: EditText + private lateinit var imgCancelDate: ImageView + private lateinit var imgCancelTime: ImageView + private lateinit var imgAddCategory: ImageView + private lateinit var spinnerCategory: Spinner + private lateinit var timeLayout: ConstraintLayout private lateinit var calendar: Calendar private lateinit var dateSetListener: DatePickerDialog.OnDateSetListener private lateinit var timeSetListener: TimePickerDialog.OnTimeSetListener @@ -35,6 +48,17 @@ class AddTaskActivity : BaseActivity(), View.OnClickListener, CategoryAdd, override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_add_task) + val toolbarAddTask = findViewById(R.id.toolbarAddTask) + edtTitle = findViewById(R.id.edtTitle) + edtTask = findViewById(R.id.edtTask) + edtSetDate = findViewById(R.id.edtSetDate) + edtSetTime = findViewById(R.id.edtSetTime) + imgCancelDate = findViewById(R.id.imgCancelDate) + imgCancelTime = findViewById(R.id.imgCancelTime) + imgAddCategory = findViewById(R.id.imgAddCategory) + spinnerCategory = findViewById(R.id.spinnerCategory) + timeLayout = findViewById(R.id.timeLayout) + setSupportActionBar(toolbarAddTask) supportActionBar!!.setDisplayHomeAsUpEnabled(true) supportActionBar!!.setDisplayShowHomeEnabled(true) @@ -159,8 +183,8 @@ class AddTaskActivity : BaseActivity(), View.OnClickListener, CategoryAdd, edtSetDate.setText("") date = "" imgCancelDate.visibility = View.GONE - if (relativeLayoutTime.visibility == View.VISIBLE) { - relativeLayoutTime.visibility = View.GONE + if (timeLayout.visibility == View.VISIBLE) { + timeLayout.visibility = View.GONE edtSetTime.setText("") time = "" imgCancelTime.visibility = View.GONE @@ -226,7 +250,7 @@ class AddTaskActivity : BaseActivity(), View.OnClickListener, CategoryAdd, val myFormat2 = "EEE, d MMM yyyy" val sdf2 = SimpleDateFormat(myFormat2, Locale.US) edtSetDate.setText(sdf2.format(calendar.time)) - relativeLayoutTime.visibility = View.VISIBLE + timeLayout.visibility = View.VISIBLE imgCancelDate.visibility = View.VISIBLE } diff --git a/example/src/main/java/com/crowdin/platform/example/task/TaskAdapter.kt b/example/src/main/java/com/crowdin/platform/example/task/TaskAdapter.kt index 352a632..c946738 100644 --- a/example/src/main/java/com/crowdin/platform/example/task/TaskAdapter.kt +++ b/example/src/main/java/com/crowdin/platform/example/task/TaskAdapter.kt @@ -4,13 +4,14 @@ import android.content.Context import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.TextView +import androidx.cardview.widget.CardView import androidx.recyclerview.widget.RecyclerView import com.crowdin.platform.example.R import com.crowdin.platform.example.task.model.TaskModel import com.crowdin.platform.example.utils.getFormatDate import com.crowdin.platform.example.utils.getFormatTime import com.crowdin.platform.example.utils.views.ItemTouchHelperAdapter -import kotlinx.android.synthetic.main.row_task.view.* import java.util.ArrayList import java.util.Collections import java.util.Random @@ -79,17 +80,17 @@ class TaskAdapter( inner class ViewHolder(view: View) : RecyclerView.ViewHolder(view) { - private val viewColor = view.viewColor - private val titleValueTv = view.titleValueTv - private val taskTextValueTv = view.taskTextValueTv - private val categoryTv = view.categoryTv - private val dateValueTv = view.dateValueTv - private val dateTitleTv = view.dateTitleTv - private val timeValueTv = view.timeValueTv - private val timeTitleTv = view.timeTitleTv - private val titleTv = view.titleTv - private val taskTitleTv = view.taskTitleTv - private val cardView = view.cardView + private val viewColor = view.findViewById(R.id.viewColor) + private val titleValueTv = view.findViewById(R.id.titleValueTv) + private val taskTextValueTv = view.findViewById(R.id.taskTextValueTv) + private val categoryTv = view.findViewById(R.id.categoryTv) + private val dateValueTv = view.findViewById(R.id.dateValueTv) + private val dateTitleTv = view.findViewById(R.id.dateTitleTv) + private val timeValueTv = view.findViewById(R.id.timeValueTv) + private val timeTitleTv = view.findViewById(R.id.timeTitleTv) + private val titleTv = view.findViewById(R.id.titleTv) + private val taskTitleTv = view.findViewById(R.id.taskTitleTv) + private val cardView = view.findViewById(R.id.cardView) fun onBind(taskModel: TaskModel) { val androidColors = context.resources.getIntArray(R.array.random_color) diff --git a/example/src/main/java/com/crowdin/platform/example/task/fragment/DashboardFragment.kt b/example/src/main/java/com/crowdin/platform/example/task/fragment/DashboardFragment.kt index 87030bb..40c1b7a 100644 --- a/example/src/main/java/com/crowdin/platform/example/task/fragment/DashboardFragment.kt +++ b/example/src/main/java/com/crowdin/platform/example/task/fragment/DashboardFragment.kt @@ -10,6 +10,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.TextView import androidx.core.content.ContextCompat import androidx.fragment.app.Fragment import androidx.recyclerview.widget.ItemTouchHelper @@ -23,7 +24,7 @@ import com.crowdin.platform.example.task.model.TaskModel import com.crowdin.platform.example.utils.DASHBOARD_RECYCLER_VIEW_REFRESH import com.crowdin.platform.example.utils.convertDpToPx import com.crowdin.platform.example.utils.views.OnStartDragListener -import kotlinx.android.synthetic.main.fragment_dashboard.* +import com.google.android.material.floatingactionbutton.FloatingActionButton import kotlin.math.abs class DashboardFragment : Fragment(), View.OnClickListener, OnStartDragListener { @@ -31,6 +32,9 @@ class DashboardFragment : Fragment(), View.OnClickListener, OnStartDragListener private lateinit var dbManager: DBManagerTask private lateinit var taskAdapter: TaskAdapter private lateinit var mItemTouchHelper: ItemTouchHelper + private lateinit var recyclerView: RecyclerView + private lateinit var fabAddTask: FloatingActionButton + private lateinit var emptyStateView: TextView private var taskList: ArrayList = ArrayList() override fun onCreateView( @@ -44,9 +48,12 @@ class DashboardFragment : Fragment(), View.OnClickListener, OnStartDragListener override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) requireActivity().setTitle(R.string.dashboard) + emptyStateView = view.findViewById(R.id.emptyStateView) + recyclerView = view.findViewById(R.id.recyclerView) recyclerView.setHasFixedSize(true) recyclerView.layoutManager = LinearLayoutManager(activity) + fabAddTask = view.findViewById(R.id.fabAddTask) fabAddTask.setOnClickListener(this) dbManager = DBManagerTask(requireActivity()) diff --git a/example/src/main/java/com/crowdin/platform/example/task/fragment/HistoryFragment.kt b/example/src/main/java/com/crowdin/platform/example/task/fragment/HistoryFragment.kt index 09e65d2..9adb12c 100644 --- a/example/src/main/java/com/crowdin/platform/example/task/fragment/HistoryFragment.kt +++ b/example/src/main/java/com/crowdin/platform/example/task/fragment/HistoryFragment.kt @@ -8,6 +8,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.TextView import androidx.core.content.ContextCompat import androidx.fragment.app.Fragment import androidx.recyclerview.widget.ItemTouchHelper @@ -19,7 +20,6 @@ import com.crowdin.platform.example.task.TaskAdapter import com.crowdin.platform.example.task.model.TaskModel import com.crowdin.platform.example.utils.convertDpToPx import com.crowdin.platform.example.utils.views.OnStartDragListener -import kotlinx.android.synthetic.main.fragment_history.* import java.util.ArrayList import kotlin.math.abs @@ -28,6 +28,8 @@ class HistoryFragment : Fragment(), OnStartDragListener { private var list: ArrayList = ArrayList() private lateinit var dbManager: DBManagerTask private lateinit var taskAdapter: TaskAdapter + private lateinit var recyclerViewHistory: RecyclerView + private lateinit var txtNoHistory: TextView private lateinit var mItemTouchHelper: ItemTouchHelper @@ -41,6 +43,8 @@ class HistoryFragment : Fragment(), OnStartDragListener { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + txtNoHistory = view.findViewById(R.id.txtNoHistory) + recyclerViewHistory = view.findViewById(R.id.recyclerViewHistory) recyclerViewHistory.setHasFixedSize(true) recyclerViewHistory.layoutManager = LinearLayoutManager(requireActivity()) diff --git a/example/src/main/res/layout/activity_add_task.xml b/example/src/main/res/layout/activity_add_task.xml index 14d779c..e87f55b 100644 --- a/example/src/main/res/layout/activity_add_task.xml +++ b/example/src/main/res/layout/activity_add_task.xml @@ -95,10 +95,10 @@ android:text="@string/add_to_category" android:textColor="?android:textColorPrimary" app:layout_constraintLeft_toLeftOf="parent" - app:layout_constraintTop_toBottomOf="@+id/relativeLayoutTime" /> + app:layout_constraintTop_toBottomOf="@+id/timeLayout" /> + app:layout_constraintTop_toBottomOf="@+id/layoutDate"> - @@ -9,4 +9,4 @@ android:layout_height="100dp" android:layout_gravity="center" android:src="@drawable/ic_crowdin_logo_icon" /> - + diff --git a/example/src/main/res/values/colors.xml b/example/src/main/res/values/colors.xml index dc9a141..c00450d 100755 --- a/example/src/main/res/values/colors.xml +++ b/example/src/main/res/values/colors.xml @@ -7,7 +7,6 @@ #388E3C #D32F2F #a1a1a1 - #F2F2F7 #8E8E93 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 596e7af..d5a4d72 100755 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Mon Oct 26 11:43:43 EET 2020 +#Sat Feb 27 14:50:24 EET 2021 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip