1
0
mirror of https://github.com/wulkanowy/wulkanowy.git synced 2024-09-20 03:29:08 -05:00

Fix injector of ErrorDialog (#780)

This commit is contained in:
Mikołaj Pich 2020-04-23 11:07:18 +02:00 committed by GitHub
parent 4894086d9d
commit 2c4c2d1f49
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 19 additions and 11 deletions

View File

@ -128,7 +128,7 @@ configurations.all {
} }
dependencies { dependencies {
implementation "io.github.wulkanowy:sdk:0.17.2" implementation "io.github.wulkanowy:sdk:b42fc85"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
implementation "androidx.core:core-ktx:1.2.0" implementation "androidx.core:core-ktx:1.2.0"

View File

@ -3,6 +3,7 @@ package io.github.wulkanowy.di
import dagger.Module import dagger.Module
import dagger.android.ContributesAndroidInjector import dagger.android.ContributesAndroidInjector
import io.github.wulkanowy.di.scopes.PerActivity import io.github.wulkanowy.di.scopes.PerActivity
import io.github.wulkanowy.ui.base.ErrorDialog
import io.github.wulkanowy.ui.modules.login.LoginActivity import io.github.wulkanowy.ui.modules.login.LoginActivity
import io.github.wulkanowy.ui.modules.login.LoginModule import io.github.wulkanowy.ui.modules.login.LoginModule
import io.github.wulkanowy.ui.modules.luckynumberwidget.LuckyNumberWidgetConfigureActivity import io.github.wulkanowy.ui.modules.luckynumberwidget.LuckyNumberWidgetConfigureActivity
@ -18,6 +19,9 @@ import io.github.wulkanowy.ui.modules.timetablewidget.TimetableWidgetProvider
@Module @Module
internal abstract class BindingModule { internal abstract class BindingModule {
@ContributesAndroidInjector
abstract fun bindErrorDialog(): ErrorDialog
@PerActivity @PerActivity
@ContributesAndroidInjector @ContributesAndroidInjector
abstract fun bindSplashActivity(): SplashActivity abstract fun bindSplashActivity(): SplashActivity

View File

@ -19,6 +19,7 @@ import io.github.wulkanowy.utils.getString
import io.github.wulkanowy.utils.openEmailClient import io.github.wulkanowy.utils.openEmailClient
import io.github.wulkanowy.utils.openInternetBrowser import io.github.wulkanowy.utils.openInternetBrowser
import kotlinx.android.synthetic.main.dialog_error.* import kotlinx.android.synthetic.main.dialog_error.*
import java.io.InterruptedIOException
import java.io.PrintWriter import java.io.PrintWriter
import java.io.StringWriter import java.io.StringWriter
import java.net.SocketTimeoutException import java.net.SocketTimeoutException
@ -76,6 +77,7 @@ class ErrorDialog : BaseDialogFragment() {
errorDialogMessage.text = resources.getString(error) errorDialogMessage.text = resources.getString(error)
errorDialogReport.isEnabled = when (error) { errorDialogReport.isEnabled = when (error) {
is UnknownHostException, is UnknownHostException,
is InterruptedIOException,
is SocketTimeoutException, is SocketTimeoutException,
is ServiceUnavailableException, is ServiceUnavailableException,
is FeatureDisabledException, is FeatureDisabledException,

View File

@ -7,7 +7,6 @@ import dagger.Provides
import dagger.android.ContributesAndroidInjector import dagger.android.ContributesAndroidInjector
import io.github.wulkanowy.R import io.github.wulkanowy.R
import io.github.wulkanowy.di.scopes.PerFragment import io.github.wulkanowy.di.scopes.PerFragment
import io.github.wulkanowy.ui.base.ErrorDialog
import io.github.wulkanowy.ui.modules.about.AboutFragment import io.github.wulkanowy.ui.modules.about.AboutFragment
import io.github.wulkanowy.ui.modules.about.contributor.ContributorFragment import io.github.wulkanowy.ui.modules.about.contributor.ContributorFragment
import io.github.wulkanowy.ui.modules.about.license.LicenseFragment import io.github.wulkanowy.ui.modules.about.license.LicenseFragment
@ -116,10 +115,6 @@ abstract class MainModule {
@ContributesAndroidInjector @ContributesAndroidInjector
abstract fun bindAccountDialog(): AccountDialog abstract fun bindAccountDialog(): AccountDialog
@PerFragment
@ContributesAndroidInjector
abstract fun bindErrorDialog(): ErrorDialog
@PerFragment @PerFragment
@ContributesAndroidInjector(modules = [MobileDeviceModule::class]) @ContributesAndroidInjector(modules = [MobileDeviceModule::class])
abstract fun bindMobileDevices(): MobileDeviceFragment abstract fun bindMobileDevices(): MobileDeviceFragment

View File

@ -5,14 +5,17 @@ import io.github.wulkanowy.R
import io.github.wulkanowy.sdk.exception.FeatureDisabledException import io.github.wulkanowy.sdk.exception.FeatureDisabledException
import io.github.wulkanowy.sdk.exception.FeatureNotAvailableException import io.github.wulkanowy.sdk.exception.FeatureNotAvailableException
import io.github.wulkanowy.sdk.exception.NotLoggedInException import io.github.wulkanowy.sdk.exception.NotLoggedInException
import io.github.wulkanowy.sdk.exception.PasswordChangeRequiredException
import io.github.wulkanowy.sdk.exception.ServiceUnavailableException import io.github.wulkanowy.sdk.exception.ServiceUnavailableException
import java.io.InterruptedIOException
import java.net.SocketTimeoutException import java.net.SocketTimeoutException
import java.net.UnknownHostException import java.net.UnknownHostException
fun Resources.getString(error: Throwable) = when (error) { fun Resources.getString(error: Throwable) = when (error) {
is UnknownHostException -> getString(R.string.error_no_internet) is UnknownHostException -> getString(R.string.error_no_internet)
is SocketTimeoutException -> getString(R.string.error_timeout) is SocketTimeoutException, is InterruptedIOException -> getString(R.string.error_timeout)
is NotLoggedInException -> getString(R.string.error_login_failed) is NotLoggedInException -> getString(R.string.error_login_failed)
is PasswordChangeRequiredException -> getString(R.string.error_password_change_required)
is ServiceUnavailableException -> getString(R.string.error_service_unavailable) is ServiceUnavailableException -> getString(R.string.error_service_unavailable)
is FeatureDisabledException -> getString(R.string.error_feature_disabled) is FeatureDisabledException -> getString(R.string.error_feature_disabled)
is FeatureNotAvailableException -> getString(R.string.error_feature_not_available) is FeatureNotAvailableException -> getString(R.string.error_feature_not_available)

View File

@ -34,6 +34,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:overScrollMode="ifContentScrolls" android:overScrollMode="ifContentScrolls"
android:paddingHorizontal="24dp"
app:layout_constrainedHeight="true" app:layout_constrainedHeight="true"
app:layout_constraintHeight_max="300dp" app:layout_constraintHeight_max="300dp"
app:layout_constraintHeight_min="200dp" app:layout_constraintHeight_min="200dp"
@ -41,10 +42,8 @@
<HorizontalScrollView <HorizontalScrollView
android:id="@+id/errorDialogHorizontalScroll" android:id="@+id/errorDialogHorizontalScroll"
android:layout_width="350dp" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content">
android:paddingLeft="24dp"
android:paddingRight="24dp">
<TextView <TextView
android:id="@+id/errorDialogContent" android:id="@+id/errorDialogContent"

View File

@ -381,6 +381,7 @@
<string name="error_no_internet">Keine Internetverbindung</string> <string name="error_no_internet">Keine Internetverbindung</string>
<string name="error_timeout">Das Zeitlimit für die Verbindung zum Klassenbuch ist abgelaufen</string> <string name="error_timeout">Das Zeitlimit für die Verbindung zum Klassenbuch ist abgelaufen</string>
<string name="error_login_failed">Anmeldung fehlgeschlagen. Versuchen Sie es noch einmal oder starten Sie die Anwendung neu.</string> <string name="error_login_failed">Anmeldung fehlgeschlagen. Versuchen Sie es noch einmal oder starten Sie die Anwendung neu.</string>
<string name="error_password_change_required">Passwortänderung erforderlich</string>
<string name="error_service_unavailable">Wartung im Gange UONET + Klassenbuch. Versuchen Sie es später noch einmal</string> <string name="error_service_unavailable">Wartung im Gange UONET + Klassenbuch. Versuchen Sie es später noch einmal</string>
<string name="error_unknown">Ein unerwarteter Fehler ist aufgetreten</string> <string name="error_unknown">Ein unerwarteter Fehler ist aufgetreten</string>
<string name="error_feature_disabled">Funktion, die von Ihrer Schule deaktiviert wurde</string> <string name="error_feature_disabled">Funktion, die von Ihrer Schule deaktiviert wurde</string>

View File

@ -418,6 +418,7 @@
<string name="error_no_internet">Brak połączenia z internetem</string> <string name="error_no_internet">Brak połączenia z internetem</string>
<string name="error_timeout">Upłynął limit czasu na połączenie z dziennikiem</string> <string name="error_timeout">Upłynął limit czasu na połączenie z dziennikiem</string>
<string name="error_login_failed">Logowanie nie powiodło się. Spróbuj ponownie lub zrestartuj aplikację</string> <string name="error_login_failed">Logowanie nie powiodło się. Spróbuj ponownie lub zrestartuj aplikację</string>
<string name="error_password_change_required">Wymagana zmiana hasła</string>
<string name="error_service_unavailable">Trwa przerwa techniczna dziennika UONET+. Spróbuj ponownie później</string> <string name="error_service_unavailable">Trwa przerwa techniczna dziennika UONET+. Spróbuj ponownie później</string>
<string name="error_unknown">Wystąpił nieoczekiwany błąd</string> <string name="error_unknown">Wystąpił nieoczekiwany błąd</string>
<string name="error_feature_disabled">Funkcja wyłączona przez szkołę</string> <string name="error_feature_disabled">Funkcja wyłączona przez szkołę</string>

View File

@ -406,6 +406,7 @@
<string name="error_no_internet">Нет интернет-подключения</string> <string name="error_no_internet">Нет интернет-подключения</string>
<string name="error_timeout">Слишком долгое ожидание соединения с дневником</string> <string name="error_timeout">Слишком долгое ожидание соединения с дневником</string>
<string name="error_login_failed">Авторизация не удалась. Пожалуйста, попробуйте ещё раз или перезапустите дневник</string> <string name="error_login_failed">Авторизация не удалась. Пожалуйста, попробуйте ещё раз или перезапустите дневник</string>
<string name="error_password_change_required">Требуется смена пароля</string>
<string name="error_service_unavailable">Технический перерыв в журнале UONET + продолжается. Попробуйте позже</string> <string name="error_service_unavailable">Технический перерыв в журнале UONET + продолжается. Попробуйте позже</string>
<string name="error_unknown">Произошла неожиданная ошибка</string> <string name="error_unknown">Произошла неожиданная ошибка</string>
<string name="error_feature_disabled">Функция была выключена школой</string> <string name="error_feature_disabled">Функция была выключена школой</string>

View File

@ -407,6 +407,7 @@
<string name="error_no_internet">Відсутнє інтернет-підключення</string> <string name="error_no_internet">Відсутнє інтернет-підключення</string>
<string name="error_timeout">Занадто довге очікування з\'єднання з щоденником</string> <string name="error_timeout">Занадто довге очікування з\'єднання з щоденником</string>
<string name="error_login_failed">Авторизація не відбулася. Будь ласка, авторизуйтеся знову або перезавантажте щоденник</string> <string name="error_login_failed">Авторизація не відбулася. Будь ласка, авторизуйтеся знову або перезавантажте щоденник</string>
<string name="error_password_change_required">Потрібно змінити пароль</string>
<string name="error_service_unavailable">Технічна перерва в журналі UONET + продовжується. Спробуйте пізніше</string> <string name="error_service_unavailable">Технічна перерва в журналі UONET + продовжується. Спробуйте пізніше</string>
<string name="error_unknown">Відбулася несподівана помилка</string> <string name="error_unknown">Відбулася несподівана помилка</string>
<string name="error_feature_disabled">Функція вимкнена школою</string> <string name="error_feature_disabled">Функція вимкнена школою</string>

View File

@ -403,6 +403,7 @@
<string name="error_no_internet">No internet connection</string> <string name="error_no_internet">No internet connection</string>
<string name="error_timeout">Connection to the register timed out</string> <string name="error_timeout">Connection to the register timed out</string>
<string name="error_login_failed">Login failed. Try again or restart the app</string> <string name="error_login_failed">Login failed. Try again or restart the app</string>
<string name="error_password_change_required">Password change required</string>
<string name="error_service_unavailable">Maintenance underway UONET + register. Try again later</string> <string name="error_service_unavailable">Maintenance underway UONET + register. Try again later</string>
<string name="error_unknown">An unexpected error occurred</string> <string name="error_unknown">An unexpected error occurred</string>
<string name="error_feature_disabled">Feature disabled by your school</string> <string name="error_feature_disabled">Feature disabled by your school</string>