Corrections

This commit is contained in:
Kevin Gorham 2019-12-14 17:44:12 -05:00
parent 6d12ada9a5
commit 9b2e7b318b
No known key found for this signature in database
GPG Key ID: CCA55602DF49FC38
5 changed files with 28 additions and 36 deletions

View File

@ -37,7 +37,7 @@ class ZcashWalletApp : DaggerApplication() {
* Implement the HasActivityInjector behavior so that dagger knows which [AndroidInjector] to use.
*/
override fun applicationInjector(): AndroidInjector<out DaggerApplication> {
return DaggerAppComponent.builder().create(this)
return DaggerAppComponent.factory().create(this)
}
override fun attachBaseContext(base: Context) {

View File

@ -1,36 +1,8 @@
package cash.z.ecc.android.di
import cash.z.ecc.android.feedback.FeedbackConsole
import cash.z.ecc.android.feedback.FeedbackCoordinator
import cash.z.ecc.android.feedback.FeedbackFile
import cash.z.ecc.android.feedback.FeedbackMixpanel
import dagger.Binds
import dagger.Module
import dagger.multibindings.IntoSet
import javax.inject.Singleton
@Module
abstract class AppBindingModule {
//
// Feedback Observer Set
//
@Singleton
@Binds
@IntoSet
abstract fun provideFeedbackFile(implementation: FeedbackFile)
: FeedbackCoordinator.FeedbackObserver
@Singleton
@Binds
@IntoSet
abstract fun provideFeedbackConsole(implementation: FeedbackConsole)
: FeedbackCoordinator.FeedbackObserver
@Singleton
@Binds
@IntoSet
abstract fun provideFeedbackMixpanel(implementation: FeedbackMixpanel)
: FeedbackCoordinator.FeedbackObserver
}

View File

@ -8,6 +8,7 @@ import cash.z.ecc.android.ui.receive.ReceiveFragmentModule
import cash.z.ecc.android.ui.send.SendFragmentModule
import cash.z.ecc.android.ui.setup.BackupFragmentModule
import cash.z.ecc.android.ui.setup.LandingFragmentModule
import dagger.BindsInstance
import dagger.Component
import dagger.android.AndroidInjector
import dagger.android.support.AndroidSupportInjectionModule
@ -33,6 +34,9 @@ import javax.inject.Singleton
]
)
interface AppComponent : AndroidInjector<ZcashWalletApp> {
@Component.Builder
abstract class Builder : AndroidInjector.Builder<ZcashWalletApp>()
@Component.Factory
interface Factory {
fun create(@BindsInstance application: ZcashWalletApp): AppComponent
}
}

View File

@ -17,4 +17,23 @@ class AppModule {
@Singleton
fun provideFeedbackCoordinator(feedback: Feedback) = FeedbackCoordinator(feedback)
//
// Feedback Observer Set
//
@Singleton
@Provides
@IntoSet
fun provideFeedbackFile(): FeedbackCoordinator.FeedbackObserver = FeedbackFile()
@Singleton
@Provides
@IntoSet
fun provideFeedbackConsole(): FeedbackCoordinator.FeedbackObserver = FeedbackConsole()
@Singleton
@Provides
@IntoSet
fun provideFeedbackMixpanel(): FeedbackCoordinator.FeedbackObserver = FeedbackMixpanel()
}

View File

@ -6,8 +6,6 @@ import android.content.Context
import android.graphics.Color
import android.media.MediaPlayer
import android.os.Bundle
import android.os.FileObserver
import android.os.SystemClock
import android.os.Vibrator
import android.util.Log
import android.view.View
@ -21,13 +19,12 @@ import androidx.navigation.findNavController
import cash.z.ecc.android.R
import cash.z.ecc.android.ZcashWalletApp
import cash.z.ecc.android.di.annotation.ActivityScope
import cash.z.ecc.android.feedback.*
import cash.z.ecc.android.feedback.NonUserAction.FEEDBACK_STARTED
import cash.z.ecc.android.feedback.Feedback
import cash.z.ecc.android.feedback.LaunchMetric
import cash.z.ecc.android.feedback.NonUserAction.FEEDBACK_STOPPED
import dagger.Module
import dagger.android.ContributesAndroidInjector
import dagger.android.support.DaggerAppCompatActivity
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
import javax.inject.Inject