openHPI / xikolo-android

📱 Android App of the HPI MOOC Platform
https://play.google.com/store/apps/dev?id=7185448023325736337
GNU General Public License v3.0
41 stars 15 forks source link

v3.2 Hotfixes #236

Closed bengelhaupt closed 4 years ago

bengelhaupt commented 4 years ago

Fixes the most critical and some extra bugs introduced with the latest version.

Fix for CachedFieldDescriptor.java line 80 The API v3 field Channel.slug was accessed in ChannelDao

Fix for VideoStreamPlayerFragment.kt line 602, 612, 618 The video player view was not released properly leading to callback events occurring after the fragment had been destroyed

Fix for LoginFragment.kt line 239 We had an own progress dialog and missed to check whether it has actually been shown when calling dismiss. We now use the NetworkStateHelper.showBlockingProgress implementation. Also, the showToast extension on Fragment was using the context of the fragment which led to crashes when the fragment had been destroyed. We now use the activity context.

Fix for MainActivity.kt line 285 In rare cases <user>.profile can be null (see #224 ). A call to profile.email would fail. Replaced with a safe call.

Fix for OsSharedRealm.java The way we handled the transaction was somewhat odd. We also did not update the database object. I changed it to the approach we usually use in our code. Don't know if this will fix it.

Fix for LoginFragment.kt line 272 Some users seem to not have an app installed to open https://openwho.org. An exception occurred trying to start an url intent. I added an openUrl() extension with proper error handling.

Fix for CourseListFragment.kt line 142 Course list observers were unregistered after the fragment had been destroyed, because the search text had been changed somehow (probably when hiding the view).

Fix for CourseListFragment.kt line 195 For devices without Play Services, the cast icon will not be inflated into the menu. Trying to hide it will fail because it's null. Simple safe calls fix this.