Closes #266 - Integrate feature-downloads component
parent
0e3965632a
commit
8ac32ee988
|
@ -94,6 +94,7 @@ dependencies {
|
|||
implementation Deps.mozilla_browser_toolbar
|
||||
|
||||
implementation Deps.mozilla_feature_awesomebar
|
||||
implementation Deps.mozilla_feature_downloads
|
||||
implementation Deps.mozilla_feature_intent
|
||||
implementation Deps.mozilla_feature_session
|
||||
implementation Deps.mozilla_feature_toolbar
|
||||
|
|
|
@ -2,6 +2,9 @@
|
|||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="org.mozilla.fenix">
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
||||
|
||||
<application
|
||||
android:allowBackup="true"
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
|
|
|
@ -12,6 +12,7 @@ import android.view.ViewGroup
|
|||
import android.view.accessibility.AccessibilityManager
|
||||
import androidx.fragment.app.Fragment
|
||||
import kotlinx.android.synthetic.main.fragment_browser.*
|
||||
import mozilla.components.feature.downloads.DownloadsFeature
|
||||
import mozilla.components.feature.session.SessionFeature
|
||||
import mozilla.components.feature.session.SessionUseCases
|
||||
import mozilla.components.support.ktx.android.arch.lifecycle.addObservers
|
||||
|
@ -22,6 +23,7 @@ import androidx.coordinatorlayout.widget.CoordinatorLayout
|
|||
|
||||
class BrowserFragment : Fragment() {
|
||||
|
||||
private lateinit var downloadsFeature: DownloadsFeature
|
||||
private lateinit var sessionFeature: SessionFeature
|
||||
|
||||
override fun onCreateView(
|
||||
|
@ -42,6 +44,15 @@ class BrowserFragment : Fragment() {
|
|||
|
||||
val sessionManager = requireComponents.core.sessionManager
|
||||
|
||||
downloadsFeature = DownloadsFeature(
|
||||
requireContext(),
|
||||
sessionManager = sessionManager,
|
||||
fragmentManager = childFragmentManager,
|
||||
onNeedToRequestPermissions = { permissions ->
|
||||
requestPermissions(permissions, REQUEST_CODE_DOWNLOAD_PERMISSIONS)
|
||||
}
|
||||
)
|
||||
|
||||
sessionFeature = SessionFeature(
|
||||
sessionManager,
|
||||
SessionUseCases(sessionManager),
|
||||
|
@ -65,5 +76,20 @@ class BrowserFragment : Fragment() {
|
|||
val layoutParams = toolbar.layoutParams as CoordinatorLayout.LayoutParams
|
||||
layoutParams.behavior = null
|
||||
}
|
||||
|
||||
lifecycle.addObservers(
|
||||
downloadsFeature,
|
||||
sessionFeature
|
||||
)
|
||||
}
|
||||
|
||||
override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<String>, grantResults: IntArray) {
|
||||
when (requestCode) {
|
||||
REQUEST_CODE_DOWNLOAD_PERMISSIONS -> downloadsFeature.onPermissionsResult(permissions, grantResults)
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
private const val REQUEST_CODE_DOWNLOAD_PERMISSIONS = 1
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@ private object Versions {
|
|||
const val androidx_appcompat = "1.0.2"
|
||||
const val androidx_constraint_layout = "2.0.0-alpha3"
|
||||
|
||||
const val mozilla_android_components = "0.40.0-SNAPSHOT"
|
||||
const val mozilla_android_components = "0.41.0-SNAPSHOT"
|
||||
|
||||
const val junit = "4.12"
|
||||
const val test_tools = "1.0.2"
|
||||
|
|
Loading…
Reference in New Issue