Skip to content

Commit

Permalink
courses: smoother activity background thread (fixes #4640) (#4641)
Browse files Browse the repository at this point in the history
Co-authored-by: dogi <[email protected]>
  • Loading branch information
Okuro3499 and dogi authored Oct 15, 2024
1 parent b45cea6 commit 4554aa4
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 18 deletions.
4 changes: 2 additions & 2 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ android {
applicationId "org.ole.planet.myplanet"
minSdkVersion 26
targetSdkVersion 34
versionCode 2031
versionName "0.20.31"
versionCode 2032
versionName "0.20.32"
ndkVersion '21.3.6528147'
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,18 +35,17 @@ open class RealmCourseActivity : RealmObject() {
@JvmStatic
fun createActivity(realm: Realm, userModel: RealmUserModel?, course: RealmMyCourse?) {
if (!realm.isInTransaction) {
realm.beginTransaction()
realm.executeTransaction {
val activity = it.createObject(RealmCourseActivity::class.java, UUID.randomUUID().toString())
activity.type = "visit"
activity.title = course?.courseTitle
activity.courseId = course?.courseId
activity.time = Date().time
activity.parentCode = userModel?.parentCode
activity.createdOn = userModel?.planetCode
activity.user = userModel?.name
}
}
val activity = realm.createObject(RealmCourseActivity::class.java, UUID.randomUUID().toString())
activity.type = "visit"
activity.title = course?.courseTitle
activity.courseId = course?.courseId
activity.time = Date().time
activity.parentCode = userModel?.parentCode
activity.createdOn = userModel?.planetCode
activity.createdOn = userModel?.planetCode
activity.user = userModel?.name
realm.commitTransaction()
}

@JvmStatic
Expand All @@ -64,4 +63,4 @@ open class RealmCourseActivity : RealmObject() {
return ob
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ class TakeCourseFragment : Fragment(), ViewPager.OnPageChangeListener, View.OnCl
val i = getCurrentProgress(steps, mRealm, userModel?.id, courseId)
if (i < steps.size) fragmentTakeCourseBinding.courseProgress.secondaryProgress = i + 1
fragmentTakeCourseBinding.courseProgress.progress = i
fragmentTakeCourseBinding.tvStep.text = String.format(Locale.getDefault(),getString(R.string.step) + " %d/%d", position, steps.size)
fragmentTakeCourseBinding.tvStep.text = String.format(Locale.getDefault(),"${getString(R.string.step)} %d/%d", position, steps.size)
}

private fun changeNextButtonState(position: Int) {
Expand All @@ -157,7 +157,7 @@ class TakeCourseFragment : Fragment(), ViewPager.OnPageChangeListener, View.OnCl
override fun onPageScrollStateChanged(state: Int) {}

private fun onClickNext() {
fragmentTakeCourseBinding.tvStep.text = String.format(Locale.getDefault(),getString(R.string.step)+ " %d/%d", fragmentTakeCourseBinding.viewPager2.currentItem, currentCourse?.courseSteps?.size)
fragmentTakeCourseBinding.tvStep.text = String.format(Locale.getDefault(),"${getString(R.string.step)} %d/%d", fragmentTakeCourseBinding.viewPager2.currentItem, currentCourse?.courseSteps?.size)
if (fragmentTakeCourseBinding.viewPager2.currentItem == currentCourse?.courseSteps?.size) {
fragmentTakeCourseBinding.nextStep.setTextColor(ContextCompat.getColor(requireContext(), R.color.md_grey_500))
fragmentTakeCourseBinding.nextStep.visibility = View.GONE
Expand All @@ -166,7 +166,7 @@ class TakeCourseFragment : Fragment(), ViewPager.OnPageChangeListener, View.OnCl
}

private fun onClickPrevious() {
fragmentTakeCourseBinding.tvStep.text = String.format(Locale.getDefault(),getString(R.string.step) + " %d/%d", fragmentTakeCourseBinding.viewPager2.currentItem - 1, currentCourse?.courseSteps?.size)
fragmentTakeCourseBinding.tvStep.text = String.format(Locale.getDefault(),"${getString(R.string.step)} %d/%d", fragmentTakeCourseBinding.viewPager2.currentItem - 1, currentCourse?.courseSteps?.size)
if (fragmentTakeCourseBinding.viewPager2.currentItem - 1 == 0) {
fragmentTakeCourseBinding.previousStep.visibility = View.GONE
fragmentTakeCourseBinding.nextStep.visibility = View.VISIBLE
Expand Down Expand Up @@ -217,7 +217,6 @@ class TakeCourseFragment : Fragment(), ViewPager.OnPageChangeListener, View.OnCl
val realm = DatabaseService(requireActivity()).realmInstance
val user = UserProfileDbHandler(requireActivity()).userModel
val courseProgressMap = RealmCourseProgress.getCourseProgress(realm, user?.id)
// Extract the current progress for the specific courseId
val courseProgress = courseProgressMap[courseId]?.asJsonObject?.get("current")?.asInt
return courseProgress ?: 0
}
Expand Down

0 comments on commit 4554aa4

Please sign in to comment.