1
0
Fork 0

For #5334: disable notification for private custom tabs

master
Severin Rudie 2019-12-27 15:51:03 -08:00 committed by Mihai Adrian
parent a441f55d7a
commit a8c47c8805
2 changed files with 11 additions and 2 deletions

View File

@ -32,7 +32,9 @@ class NotificationSessionObserver(
}
override fun onSessionAdded(session: Session) {
if (session.private) {
// Custom tabs are meant to feel like part of the app that opened them, not Fenix, so we
// don't need to show a 'close tab' notification for them
if (session.private && !session.isCustomTabSession()) {
SessionNotificationService.start(context)
}
}

View File

@ -26,7 +26,14 @@ import org.mozilla.fenix.ext.metrics
import org.mozilla.fenix.ext.sessionsOfType
/**
* As long as a session is active this service will keep the notification (and our process) alive.
* Manages notifications for private tabs.
*
* Private tab notifications solve two problems for us:
* 1 - They allow users to interact with us from outside of the app (example: by closing all
* private tabs).
* 2 - The notification will keep our process alive, allowing us to keep private tabs in memory.
*
* As long as a session is active this service will keep its notification alive.
*/
class SessionNotificationService : Service() {