Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ package org.mozilla.reference.browser

import android.app.Application
import mozilla.components.browser.session.Session
import mozilla.components.browser.state.action.SystemAction
import mozilla.components.concept.push.PushProcessor
import mozilla.components.feature.addons.update.GlobalAddonDependencyProvider
import mozilla.components.support.base.log.Log
Expand Down Expand Up @@ -84,7 +85,8 @@ open class BrowserApplication : Application() {
override fun onTrimMemory(level: Int) {
super.onTrimMemory(level)
runOnlyInMainProcess {
components.core.sessionManager.onTrimMemory(level)
components.core.store.dispatch(SystemAction.LowMemoryAction(level))
components.core.icons.onTrimMemory(level)
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,6 @@ abstract class BaseBrowserFragment : Fragment(), UserInteractionHandler {
feature = SessionFeature(
requireComponents.core.store,
requireComponents.useCases.sessionUseCases.goBack,
requireComponents.useCases.engineSessionUseCases,
engineView,
sessionId),
owner = this,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@ import android.content.Context
import android.content.SharedPreferences
import android.preference.PreferenceManager
import mozilla.components.browser.icons.BrowserIcons
import mozilla.components.browser.session.Session
import mozilla.components.browser.session.SessionManager
import mozilla.components.browser.session.engine.EngineMiddleware
import mozilla.components.browser.session.storage.SessionStorage
import mozilla.components.browser.state.store.BrowserStore
import mozilla.components.browser.storage.sync.PlacesHistoryStorage
Expand Down Expand Up @@ -85,10 +87,14 @@ class Core(private val context: Context) {
DownloadMiddleware(context, DownloadService::class.java),
ThumbnailsMiddleware(thumbnailStorage),
ReaderViewMiddleware()
)
) + EngineMiddleware.create(engine, ::findSessionById)
)
}

private fun findSessionById(tabId: String): Session? {
return sessionManager.findSessionById(tabId)
}

/**
* The [CustomTabsServiceStore] holds global custom tabs related data.
*/
Expand All @@ -106,7 +112,7 @@ class Core(private val context: Context) {
SessionManager(engine, store).apply {
sessionStorage.restore()?.let { snapshot -> restore(snapshot) }

sessionStorage.autoSave(this)
sessionStorage.autoSave(store)
.periodicallyInForeground(interval = 30, unit = TimeUnit.SECONDS)
.whenGoingToBackground()
.whenSessionsChange()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,8 @@ package org.mozilla.reference.browser.components
import android.content.Context
import mozilla.components.browser.search.SearchEngineManager
import mozilla.components.browser.session.SessionManager
import mozilla.components.browser.session.usecases.EngineSessionUseCases
import mozilla.components.browser.state.store.BrowserStore
import mozilla.components.concept.engine.Engine
import mozilla.components.concept.engine.EngineSession
import mozilla.components.feature.contextmenu.ContextMenuUseCases
import mozilla.components.feature.downloads.DownloadsUseCases
import mozilla.components.feature.pwa.WebAppShortcutManager
Expand All @@ -35,12 +33,7 @@ class UseCases(
/**
* Use cases that provide engine interactions for a given browser session.
*/
val sessionUseCases by lazy { SessionUseCases(sessionManager) }

/**
* Use cases for getting and creating [EngineSession] instances for tabs.
*/
val engineSessionUseCases by lazy { EngineSessionUseCases(sessionManager) }
val sessionUseCases by lazy { SessionUseCases(store, sessionManager) }

/**
* Use cases that provide tab management.
Expand All @@ -50,7 +43,7 @@ class UseCases(
/**
* Use cases that provide search engine integration.
*/
val searchUseCases by lazy { SearchUseCases(context, searchEngineManager, sessionManager) }
val searchUseCases by lazy { SearchUseCases(context, store, searchEngineManager, sessionManager) }

/**
* Use cases that provide settings management.
Expand Down
2 changes: 1 addition & 1 deletion buildSrc/src/main/java/AndroidComponents.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */

object AndroidComponents {
const val VERSION = "57.0.20200826130107"
const val VERSION = "57.0.20200827130040"
}