diff --git a/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt b/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt index f5ade7c90..e49841dd2 100644 --- a/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt @@ -19,6 +19,7 @@ import org.mozilla.fenix.search.awesomebar.AwesomeBarAction import org.mozilla.fenix.search.awesomebar.AwesomeBarChange import org.mozilla.fenix.search.awesomebar.AwesomeBarComponent import org.mozilla.fenix.search.toolbar.SearchAction +import org.mozilla.fenix.search.toolbar.SearchState import org.mozilla.fenix.search.toolbar.ToolbarComponent import org.mozilla.fenix.search.toolbar.ToolbarUIView @@ -32,17 +33,12 @@ class SearchFragment : Fragment() { savedInstanceState: Bundle? ): View? { val view = inflater.inflate(R.layout.fragment_search, container, false) - toolbarComponent = ToolbarComponent(view.toolbar_wrapper, ActionBusFactory.get(this)) + toolbarComponent = ToolbarComponent(view.toolbar_wrapper, ActionBusFactory.get(this), SearchState("", isEditing = true)) awesomeBarComponent = AwesomeBarComponent(view.search_layout, ActionBusFactory.get(this)) ActionBusFactory.get(this).logMergedObservables() return view } - override fun onResume() { - super.onResume() - toolbarComponent.editMode() - } - @SuppressLint("CheckResult") override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) diff --git a/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarComponent.kt b/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarComponent.kt index 683448d5d..52088426f 100644 --- a/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarComponent.kt +++ b/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarComponent.kt @@ -17,7 +17,7 @@ import org.mozilla.fenix.mvi.ViewState class ToolbarComponent( private val container: ViewGroup, bus: ActionBusFactory, - override var initialState: SearchState = SearchState("") + override var initialState: SearchState = SearchState("", false) ) : UIComponent( bus.getManagedEmitter(SearchAction::class.java), @@ -34,12 +34,9 @@ class ToolbarComponent( init { render(reducer) } - - fun getView(): BrowserToolbar = uiView.toolbar - fun editMode() = getView().editMode() } -data class SearchState(val query: String) : ViewState +data class SearchState(val query: String, val isEditing: Boolean) : ViewState sealed class SearchAction : Action { data class UrlCommitted(val url: String) : SearchAction() diff --git a/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarUIView.kt b/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarUIView.kt index 07ee7a111..935a10c2b 100644 --- a/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarUIView.kt +++ b/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarUIView.kt @@ -70,6 +70,11 @@ class ToolbarUIView( } override fun updateView() = Consumer { + if (it.isEditing) { + view.editMode() + } else { + view.displayMode() + } } companion object {