Skip to content

Commit dbd3db2

Browse files
author
Patrick Jackson
committed
working
1 parent f572c4e commit dbd3db2

File tree

3 files changed

+8
-11
lines changed

3 files changed

+8
-11
lines changed

common/src/commonMain/kotlin/com/willowtreeapps/common/external/PresenterInjecter.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,17 @@ data class ClearView(val view: Any)
1414
* All views implement this interface. The PresenterFactory handles setting and removing references
1515
* to the dispatch() and a selectorBuilder.
1616
*/
17-
interface View<S: Any> {
17+
interface View {
1818
//// var dispatch: Dispatcher
1919
//// var selectorBuilder: SelectorSubscriberBuilder<S>?
2020
}
2121

2222

2323
interface PresenterProvider<S: Any> {
24-
fun presenter(): Presenter<View<S>> = throw NotImplementedError("Must implement this method to provide a presenterBuilder for ${this::class}")
24+
fun presenter(): Presenter<View> = throw NotImplementedError("Must implement this method to provide a presenterBuilder for ${this::class}")
2525
}
2626

27-
interface ViewWithProvider<S: Any> : View<S>, PresenterProvider<S>
27+
interface ViewWithProvider<S: Any> : View, PresenterProvider<S>
2828

2929
enum class ViewLifecycle {
3030
ATTACHED,
@@ -145,7 +145,7 @@ typealias PresenterBuilderWithViewArg<State, View> = ((View) -> (((SelectorSubsc
145145
* @return a Presenter function
146146
*
147147
*/
148-
fun <State : Any, V : View<State>> createGenericPresenter(actions: PresenterBuilder<State, V>): Presenter<V> {
148+
fun <State : Any, V : View> createGenericPresenter(actions: PresenterBuilder<State, V>): Presenter<V> {
149149
return { view: V, coroutineScope ->
150150
{ store: Store ->
151151
val actions2 = actions(view)

common/src/commonMain/kotlin/com/willowtreeapps/common/ui/Presenter.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ import com.willowtreeapps.common.AppState
44
import com.willowtreeapps.common.external.*
55

66
//a Presenter typed to our app's State type for convenience
7-
fun <V: LibraryView> presenter(actions: PresenterBuilder<AppState, V>): Presenter<View<AppState>> {
8-
return createGenericPresenter(actions) as Presenter<View<AppState>>
7+
fun <V: LibraryView> presenter(actions: PresenterBuilder<AppState, V>): Presenter<View> {
8+
return createGenericPresenter(actions) as Presenter<View>
99
}
1010

11-
fun <V: LibraryView> presenterWithViewArg(actions: PresenterBuilderWithViewArg<AppState, V>): Presenter<View<AppState>> {
12-
return createGenericPresenter(actions) as Presenter<View<AppState>>
11+
fun <V: LibraryView> presenterWithViewArg(actions: PresenterBuilderWithViewArg<AppState, V>): Presenter<View> {
12+
return createGenericPresenter(actions) as Presenter<View>
1313
}

common/src/commonMain/kotlin/com/willowtreeapps/common/ui/SearchView.kt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
package com.willowtreeapps.common.ui
22

3-
import com.willowtreeapps.common.external.PresenterProvider
4-
import com.willowtreeapps.common.external.ViewWithProvider
5-
63

74
interface SearchView : LibraryView {
85
fun showLoading()

0 commit comments

Comments
 (0)