You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
iceraven-browser/app/src/main/java/org/mozilla/fenix/SecureFragment.kt

35 lines
1.0 KiB
Kotlin

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.fenix
import android.os.Bundle
import androidx.annotation.LayoutRes
import androidx.fragment.app.Fragment
import org.mozilla.fenix.ext.removeSecure
import org.mozilla.fenix.ext.secure
/**
* A [Fragment] implementation that can be used to secure screens displaying sensitive information
* by not allowing taking screenshots of their content.
*
* Fragments displaying such screens should extend [SecureFragment] instead of [Fragment] class.
*/
open class SecureFragment(@LayoutRes contentLayoutId: Int) : Fragment(contentLayoutId) {
constructor() : this(0) {
Fragment()
}
override fun onCreate(savedInstanceState: Bundle?) {
this.secure()
super.onCreate(savedInstanceState)
}
override fun onDestroy() {
this.removeSecure()
super.onDestroy()
}
}