diff options
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/activities/WebOverlayActivity.kt')
-rw-r--r-- | app/src/main/kotlin/com/pitchedapps/frost/activities/WebOverlayActivity.kt | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/activities/WebOverlayActivity.kt b/app/src/main/kotlin/com/pitchedapps/frost/activities/WebOverlayActivity.kt index 756d5d35..e5452655 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/activities/WebOverlayActivity.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/activities/WebOverlayActivity.kt @@ -21,6 +21,7 @@ import com.pitchedapps.frost.contracts.ActivityWebContract import com.pitchedapps.frost.contracts.FileChooserContract import com.pitchedapps.frost.contracts.FileChooserDelegate import com.pitchedapps.frost.facebook.FbCookie +import com.pitchedapps.frost.facebook.USER_AGENT_BASIC import com.pitchedapps.frost.facebook.formattedFbUrl import com.pitchedapps.frost.utils.* import com.pitchedapps.frost.web.FrostWebView @@ -28,8 +29,31 @@ import com.pitchedapps.frost.web.FrostWebView /** * Created by Allan Wang on 2017-06-01. + * + * Collection of overlay activities for Frost + * + * Each one is largely the same layout, but is separated so they may run is separate single tasks + * All overlays support user switches */ -open class WebOverlayActivity : KauBaseActivity(), + +/** + * Used by notifications. Unlike the other overlays, this runs as a singleInstance + * Going back will bring you back to the previous app + */ +class FrostWebActivity : WebOverlayActivityBase(false) + +/** + * Variant that forces a basic user agent. This is largely internal, + * and is only necessary when we are launching from an existing [WebOverlayActivityBase] + */ +class WebOverlayBasicActivity : WebOverlayActivityBase(true) + +/** + * Internal overlay for the app; this is tied with the main task and is singleTop as opposed to singleInstance + */ +class WebOverlayActivity : WebOverlayActivityBase(false) + +open class WebOverlayActivityBase(val forceBasicAgent: Boolean) : KauBaseActivity(), ActivityWebContract, FileChooserContract by FileChooserDelegate() { val toolbar: Toolbar by bindView(R.id.overlay_toolbar) @@ -64,7 +88,10 @@ open class WebOverlayActivity : KauBaseActivity(), coordinator.setBackgroundColor(Prefs.bgColor.withAlpha(255)) frostWeb.setupWebview(url) + if (forceBasicAgent) + frostWeb.web.userAgentString = USER_AGENT_BASIC frostWeb.web.addTitleListener({ toolbar.title = it }) + Prefs.prevId = Prefs.userId if (userId != Prefs.userId) FbCookie.switchUser(userId) { frostWeb.web.loadBaseUrl() } else frostWeb.web.loadBaseUrl() if (Showcase.firstWebOverlay) { |