mirror of
https://github.com/clangen/musikcube.git
synced 2025-01-30 15:32:37 +00:00
Removed all the crazy android-specific dagger junk. Doesn't seem to do
anything useful and is super confusing.
This commit is contained in:
parent
c4cc06f236
commit
525fed1035
@ -75,10 +75,7 @@ dependencies {
|
|||||||
|
|
||||||
compileOnly 'org.glassfish:javax.annotation:10.0-b28'
|
compileOnly 'org.glassfish:javax.annotation:10.0-b28'
|
||||||
implementation 'com.google.dagger:dagger:2.11'
|
implementation 'com.google.dagger:dagger:2.11'
|
||||||
implementation 'com.google.dagger:dagger-android:2.11'
|
|
||||||
annotationProcessor 'com.google.dagger:dagger-android-processor:2.11'
|
|
||||||
annotationProcessor 'com.google.dagger:dagger-compiler:2.11'
|
annotationProcessor 'com.google.dagger:dagger-compiler:2.11'
|
||||||
kapt 'com.google.dagger:dagger-android-processor:2.11'
|
|
||||||
kapt 'com.google.dagger:dagger-compiler:2.11'
|
kapt 'com.google.dagger:dagger-compiler:2.11'
|
||||||
|
|
||||||
implementation 'com.neovisionaries:nv-websocket-client:1.31'
|
implementation 'com.neovisionaries:nv-websocket-client:1.31'
|
||||||
|
@ -51,7 +51,12 @@
|
|||||||
|
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
<activity android:name=".ui.activity.CategoryBrowseActivity"
|
<activity
|
||||||
|
android:name=".ui.activity.CategoryBrowseActivity"
|
||||||
|
android:screenOrientation="portrait"
|
||||||
|
android:windowSoftInputMode="adjustResize" />
|
||||||
|
|
||||||
|
<activity android:name=".ui.activity.ConnectionsActivity"
|
||||||
android:screenOrientation="portrait"
|
android:screenOrientation="portrait"
|
||||||
android:windowSoftInputMode="adjustResize" />
|
android:windowSoftInputMode="adjustResize" />
|
||||||
|
|
||||||
|
@ -1,12 +1,8 @@
|
|||||||
package io.casey.musikcube.remote
|
package io.casey.musikcube.remote
|
||||||
|
|
||||||
import android.app.Activity
|
|
||||||
import android.arch.persistence.room.Room
|
import android.arch.persistence.room.Room
|
||||||
import com.crashlytics.android.Crashlytics
|
import com.crashlytics.android.Crashlytics
|
||||||
import com.facebook.stetho.Stetho
|
import com.facebook.stetho.Stetho
|
||||||
import dagger.android.AndroidInjector
|
|
||||||
import dagger.android.DispatchingAndroidInjector
|
|
||||||
import dagger.android.HasActivityInjector
|
|
||||||
import io.casey.musikcube.remote.injection.DaggerMainComponent
|
import io.casey.musikcube.remote.injection.DaggerMainComponent
|
||||||
import io.casey.musikcube.remote.injection.MainComponent
|
import io.casey.musikcube.remote.injection.MainComponent
|
||||||
import io.casey.musikcube.remote.injection.MainModule
|
import io.casey.musikcube.remote.injection.MainModule
|
||||||
@ -14,18 +10,14 @@ import io.casey.musikcube.remote.offline.OfflineDb
|
|||||||
import io.casey.musikcube.remote.playback.StreamProxy
|
import io.casey.musikcube.remote.playback.StreamProxy
|
||||||
import io.casey.musikcube.remote.util.NetworkUtil
|
import io.casey.musikcube.remote.util.NetworkUtil
|
||||||
import io.fabric.sdk.android.Fabric
|
import io.fabric.sdk.android.Fabric
|
||||||
import javax.inject.Inject
|
|
||||||
|
|
||||||
class Application : android.app.Application(), HasActivityInjector {
|
|
||||||
@Inject lateinit var activityInjector: DispatchingAndroidInjector<Activity>
|
|
||||||
|
|
||||||
|
class Application : android.app.Application() {
|
||||||
override fun onCreate() {
|
override fun onCreate() {
|
||||||
instance = this
|
instance = this
|
||||||
|
|
||||||
super.onCreate()
|
super.onCreate()
|
||||||
|
|
||||||
mainComponent = DaggerMainComponent.builder().mainModule(MainModule()).build()
|
mainComponent = DaggerMainComponent.builder().mainModule(MainModule()).build()
|
||||||
mainComponent.inject(this)
|
|
||||||
|
|
||||||
if (BuildConfig.DEBUG) {
|
if (BuildConfig.DEBUG) {
|
||||||
Stetho.initializeWithDefaults(this)
|
Stetho.initializeWithDefaults(this)
|
||||||
@ -43,10 +35,6 @@ class Application : android.app.Application(), HasActivityInjector {
|
|||||||
"offline").build()
|
"offline").build()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun activityInjector(): AndroidInjector<Activity> {
|
|
||||||
return activityInjector
|
|
||||||
}
|
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
lateinit var mainComponent: MainComponent
|
lateinit var mainComponent: MainComponent
|
||||||
|
|
||||||
|
@ -4,7 +4,6 @@ import android.app.Dialog
|
|||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.content.SharedPreferences
|
import android.content.SharedPreferences
|
||||||
import android.graphics.drawable.Drawable
|
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.os.Handler
|
import android.os.Handler
|
||||||
@ -19,7 +18,6 @@ import android.widget.CheckBox
|
|||||||
import android.widget.CompoundButton
|
import android.widget.CompoundButton
|
||||||
import android.widget.SeekBar
|
import android.widget.SeekBar
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
import dagger.android.AndroidInjection
|
|
||||||
import io.casey.musikcube.remote.playback.PlaybackService
|
import io.casey.musikcube.remote.playback.PlaybackService
|
||||||
import io.casey.musikcube.remote.playback.PlaybackState
|
import io.casey.musikcube.remote.playback.PlaybackState
|
||||||
import io.casey.musikcube.remote.playback.RepeatMode
|
import io.casey.musikcube.remote.playback.RepeatMode
|
||||||
@ -62,7 +60,7 @@ class MainActivity : WebSocketActivityBase() {
|
|||||||
/* end views */
|
/* end views */
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
AndroidInjection.inject(this)
|
Application.mainComponent.inject(this)
|
||||||
|
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
|
||||||
|
@ -1,30 +0,0 @@
|
|||||||
package io.casey.musikcube.remote.injection
|
|
||||||
|
|
||||||
import dagger.Module
|
|
||||||
import dagger.android.ContributesAndroidInjector
|
|
||||||
import io.casey.musikcube.remote.MainActivity
|
|
||||||
import io.casey.musikcube.remote.ui.activity.*
|
|
||||||
|
|
||||||
@Module
|
|
||||||
abstract class ActivityModule {
|
|
||||||
@ContributesAndroidInjector
|
|
||||||
abstract fun mainActivityInjector(): MainActivity
|
|
||||||
|
|
||||||
@ContributesAndroidInjector
|
|
||||||
abstract fun baseActivityInject(): WebSocketActivityBase
|
|
||||||
|
|
||||||
@ContributesAndroidInjector
|
|
||||||
abstract fun settingsInjector(): SettingsActivity
|
|
||||||
|
|
||||||
@ContributesAndroidInjector
|
|
||||||
abstract fun albumBrowseInject(): AlbumBrowseActivity
|
|
||||||
|
|
||||||
@ContributesAndroidInjector
|
|
||||||
abstract fun categoryBrowseInject(): CategoryBrowseActivity
|
|
||||||
|
|
||||||
@ContributesAndroidInjector
|
|
||||||
abstract fun playQueueInject(): PlayQueueActivity
|
|
||||||
|
|
||||||
@ContributesAndroidInjector
|
|
||||||
abstract fun trackListInject(): TrackListActivity
|
|
||||||
}
|
|
@ -1,19 +1,28 @@
|
|||||||
package io.casey.musikcube.remote.injection
|
package io.casey.musikcube.remote.injection
|
||||||
|
|
||||||
import dagger.Component
|
import dagger.Component
|
||||||
import dagger.android.AndroidInjectionModule
|
import io.casey.musikcube.remote.MainActivity
|
||||||
import dagger.android.AndroidInjector
|
|
||||||
import io.casey.musikcube.remote.Application
|
|
||||||
import io.casey.musikcube.remote.offline.OfflineDb
|
import io.casey.musikcube.remote.offline.OfflineDb
|
||||||
import io.casey.musikcube.remote.playback.RemotePlaybackService
|
import io.casey.musikcube.remote.playback.RemotePlaybackService
|
||||||
import io.casey.musikcube.remote.playback.StreamingPlaybackService
|
import io.casey.musikcube.remote.playback.StreamingPlaybackService
|
||||||
|
import io.casey.musikcube.remote.ui.activity.*
|
||||||
import io.casey.musikcube.remote.ui.view.EmptyListView
|
import io.casey.musikcube.remote.ui.view.EmptyListView
|
||||||
import io.casey.musikcube.remote.ui.view.MainMetadataView
|
import io.casey.musikcube.remote.ui.view.MainMetadataView
|
||||||
import javax.inject.Singleton
|
import javax.inject.Singleton
|
||||||
|
|
||||||
@Singleton
|
@Singleton
|
||||||
@Component(modules = arrayOf(AndroidInjectionModule::class, MainModule::class, ActivityModule::class))
|
@Component(modules = arrayOf(MainModule::class))
|
||||||
interface MainComponent : AndroidInjector<Application> {
|
interface MainComponent {
|
||||||
|
/* activities */
|
||||||
|
fun inject(activity: ConnectionsActivity)
|
||||||
|
fun inject(activity: MainActivity)
|
||||||
|
fun inject(activity: WebSocketActivityBase)
|
||||||
|
fun inject(activity: SettingsActivity)
|
||||||
|
fun inject(activity: AlbumBrowseActivity)
|
||||||
|
fun inject(activity: CategoryBrowseActivity)
|
||||||
|
fun inject(activity: PlayQueueActivity)
|
||||||
|
fun inject(activity: TrackListActivity)
|
||||||
|
|
||||||
/* views */
|
/* views */
|
||||||
fun inject(view: EmptyListView)
|
fun inject(view: EmptyListView)
|
||||||
fun inject(view: MainMetadataView)
|
fun inject(view: MainMetadataView)
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
package io.casey.musikcube.remote.playback
|
package io.casey.musikcube.remote.playback
|
||||||
|
|
||||||
import android.content.Context
|
|
||||||
import android.os.Handler
|
import android.os.Handler
|
||||||
import io.casey.musikcube.remote.Application
|
import io.casey.musikcube.remote.Application
|
||||||
import io.casey.musikcube.remote.ui.model.TrackListSlidingWindow
|
import io.casey.musikcube.remote.ui.model.TrackListSlidingWindow
|
||||||
|
@ -4,6 +4,7 @@ import android.app.*
|
|||||||
import android.content.*
|
import android.content.*
|
||||||
import android.graphics.Bitmap
|
import android.graphics.Bitmap
|
||||||
import android.media.AudioManager
|
import android.media.AudioManager
|
||||||
|
import android.os.Build
|
||||||
import android.os.Handler
|
import android.os.Handler
|
||||||
import android.os.IBinder
|
import android.os.IBinder
|
||||||
import android.os.PowerManager
|
import android.os.PowerManager
|
||||||
@ -27,7 +28,6 @@ import io.casey.musikcube.remote.util.Debouncer
|
|||||||
import io.casey.musikcube.remote.util.Strings
|
import io.casey.musikcube.remote.util.Strings
|
||||||
import io.casey.musikcube.remote.websocket.Prefs
|
import io.casey.musikcube.remote.websocket.Prefs
|
||||||
import android.support.v4.app.NotificationCompat.Action as NotifAction
|
import android.support.v4.app.NotificationCompat.Action as NotifAction
|
||||||
import android.os.Build
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* a service used to interact with all of the system media-related components -- notifications,
|
* a service used to interact with all of the system media-related components -- notifications,
|
||||||
|
@ -10,6 +10,7 @@ import android.view.View
|
|||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
import com.pluscubed.recyclerfastscroll.RecyclerFastScroller
|
import com.pluscubed.recyclerfastscroll.RecyclerFastScroller
|
||||||
|
import io.casey.musikcube.remote.Application
|
||||||
import io.casey.musikcube.remote.R
|
import io.casey.musikcube.remote.R
|
||||||
import io.casey.musikcube.remote.playback.Metadata
|
import io.casey.musikcube.remote.playback.Metadata
|
||||||
import io.casey.musikcube.remote.ui.extension.*
|
import io.casey.musikcube.remote.ui.extension.*
|
||||||
@ -34,6 +35,7 @@ class AlbumBrowseActivity : WebSocketActivityBase(), Filterable {
|
|||||||
private lateinit var emptyView: EmptyListView
|
private lateinit var emptyView: EmptyListView
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
|
Application.mainComponent.inject(this)
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
|
||||||
categoryName = intent.getStringExtra(EXTRA_CATEGORY_NAME) ?: ""
|
categoryName = intent.getStringExtra(EXTRA_CATEGORY_NAME) ?: ""
|
||||||
|
@ -10,6 +10,7 @@ import android.view.View
|
|||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
import com.pluscubed.recyclerfastscroll.RecyclerFastScroller
|
import com.pluscubed.recyclerfastscroll.RecyclerFastScroller
|
||||||
|
import io.casey.musikcube.remote.Application
|
||||||
import io.casey.musikcube.remote.R
|
import io.casey.musikcube.remote.R
|
||||||
import io.casey.musikcube.remote.playback.Metadata
|
import io.casey.musikcube.remote.playback.Metadata
|
||||||
import io.casey.musikcube.remote.ui.extension.*
|
import io.casey.musikcube.remote.ui.extension.*
|
||||||
@ -41,6 +42,8 @@ class CategoryBrowseActivity : WebSocketActivityBase(), Filterable {
|
|||||||
private lateinit var emptyView: EmptyListView
|
private lateinit var emptyView: EmptyListView
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
|
Application.mainComponent.inject(this)
|
||||||
|
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
|
||||||
category = intent.getStringExtra(EXTRA_CATEGORY)
|
category = intent.getStringExtra(EXTRA_CATEGORY)
|
||||||
|
@ -0,0 +1,16 @@
|
|||||||
|
package io.casey.musikcube.remote.ui.activity
|
||||||
|
|
||||||
|
import android.os.Bundle
|
||||||
|
import android.support.v7.app.AppCompatActivity
|
||||||
|
import io.casey.musikcube.remote.Application
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by casey on 8/21/2017.
|
||||||
|
*/
|
||||||
|
|
||||||
|
class ConnectionsActivity : AppCompatActivity() {
|
||||||
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
|
Application.mainComponent.inject(this);
|
||||||
|
super.onCreate(savedInstanceState)
|
||||||
|
}
|
||||||
|
}
|
@ -9,6 +9,7 @@ import android.view.View
|
|||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
import com.pluscubed.recyclerfastscroll.RecyclerFastScroller
|
import com.pluscubed.recyclerfastscroll.RecyclerFastScroller
|
||||||
|
import io.casey.musikcube.remote.Application
|
||||||
import io.casey.musikcube.remote.R
|
import io.casey.musikcube.remote.R
|
||||||
import io.casey.musikcube.remote.playback.Metadata
|
import io.casey.musikcube.remote.playback.Metadata
|
||||||
import io.casey.musikcube.remote.playback.PlaybackService
|
import io.casey.musikcube.remote.playback.PlaybackService
|
||||||
@ -28,6 +29,8 @@ class PlayQueueActivity : WebSocketActivityBase() {
|
|||||||
private lateinit var emptyView: EmptyListView
|
private lateinit var emptyView: EmptyListView
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
|
Application.mainComponent.inject(this)
|
||||||
|
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
|
||||||
playback = playbackService
|
playback = playbackService
|
||||||
|
@ -12,7 +12,7 @@ import android.support.v7.app.AppCompatActivity
|
|||||||
import android.view.Menu
|
import android.view.Menu
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
import android.widget.*
|
import android.widget.*
|
||||||
import dagger.android.AndroidInjection
|
import io.casey.musikcube.remote.Application
|
||||||
import io.casey.musikcube.remote.R
|
import io.casey.musikcube.remote.R
|
||||||
import io.casey.musikcube.remote.playback.PlayerWrapper
|
import io.casey.musikcube.remote.playback.PlayerWrapper
|
||||||
import io.casey.musikcube.remote.playback.StreamProxy
|
import io.casey.musikcube.remote.playback.StreamProxy
|
||||||
@ -43,7 +43,7 @@ class SettingsActivity : AppCompatActivity() {
|
|||||||
@Inject lateinit var wss: WebSocketService
|
@Inject lateinit var wss: WebSocketService
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
AndroidInjection.inject(this)
|
Application.mainComponent.inject(this)
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
prefs = this.getSharedPreferences(Prefs.NAME, Context.MODE_PRIVATE)
|
prefs = this.getSharedPreferences(Prefs.NAME, Context.MODE_PRIVATE)
|
||||||
setContentView(R.layout.activity_settings)
|
setContentView(R.layout.activity_settings)
|
||||||
|
@ -10,6 +10,7 @@ import android.view.View
|
|||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
import com.pluscubed.recyclerfastscroll.RecyclerFastScroller
|
import com.pluscubed.recyclerfastscroll.RecyclerFastScroller
|
||||||
|
import io.casey.musikcube.remote.Application
|
||||||
import io.casey.musikcube.remote.R
|
import io.casey.musikcube.remote.R
|
||||||
import io.casey.musikcube.remote.playback.Metadata
|
import io.casey.musikcube.remote.playback.Metadata
|
||||||
import io.casey.musikcube.remote.ui.extension.*
|
import io.casey.musikcube.remote.ui.extension.*
|
||||||
@ -36,6 +37,8 @@ class TrackListActivity : WebSocketActivityBase(), Filterable {
|
|||||||
private var adapter = Adapter()
|
private var adapter = Adapter()
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
|
Application.mainComponent.inject(this)
|
||||||
|
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
|
||||||
val intent = intent
|
val intent = intent
|
||||||
|
@ -7,12 +7,10 @@ import android.os.Bundle
|
|||||||
import android.support.v7.app.AppCompatActivity
|
import android.support.v7.app.AppCompatActivity
|
||||||
import android.view.KeyEvent
|
import android.view.KeyEvent
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
|
|
||||||
import com.uacf.taskrunner.LifecycleDelegate
|
import com.uacf.taskrunner.LifecycleDelegate
|
||||||
import com.uacf.taskrunner.Runner
|
import com.uacf.taskrunner.Runner
|
||||||
import com.uacf.taskrunner.Task
|
import com.uacf.taskrunner.Task
|
||||||
import dagger.android.AndroidInjection
|
import io.casey.musikcube.remote.Application
|
||||||
|
|
||||||
import io.casey.musikcube.remote.playback.PlaybackService
|
import io.casey.musikcube.remote.playback.PlaybackService
|
||||||
import io.casey.musikcube.remote.playback.PlaybackServiceFactory
|
import io.casey.musikcube.remote.playback.PlaybackServiceFactory
|
||||||
import io.casey.musikcube.remote.websocket.Prefs
|
import io.casey.musikcube.remote.websocket.Prefs
|
||||||
@ -26,7 +24,7 @@ abstract class WebSocketActivityBase : AppCompatActivity(), Runner.TaskCallbacks
|
|||||||
@Inject lateinit var wss: WebSocketService
|
@Inject lateinit var wss: WebSocketService
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
AndroidInjection.inject(this)
|
Application.mainComponent.inject(this)
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
volumeControlStream = AudioManager.STREAM_MUSIC
|
volumeControlStream = AudioManager.STREAM_MUSIC
|
||||||
runnerDelegate = LifecycleDelegate(this, this, javaClass, null)
|
runnerDelegate = LifecycleDelegate(this, this, javaClass, null)
|
||||||
|
@ -21,7 +21,6 @@ import com.bumptech.glide.load.engine.DiskCacheStrategy
|
|||||||
import com.bumptech.glide.load.resource.drawable.GlideDrawable
|
import com.bumptech.glide.load.resource.drawable.GlideDrawable
|
||||||
import com.bumptech.glide.request.RequestListener
|
import com.bumptech.glide.request.RequestListener
|
||||||
import com.bumptech.glide.request.target.Target
|
import com.bumptech.glide.request.target.Target
|
||||||
import dagger.android.AndroidInjection
|
|
||||||
import io.casey.musikcube.remote.Application
|
import io.casey.musikcube.remote.Application
|
||||||
import io.casey.musikcube.remote.R
|
import io.casey.musikcube.remote.R
|
||||||
import io.casey.musikcube.remote.playback.*
|
import io.casey.musikcube.remote.playback.*
|
||||||
|
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:orientation="vertical" android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
</LinearLayout>
|
Loading…
x
Reference in New Issue
Block a user