diff --git a/kotlin-extensions/src/main/java/ru/touchin/extensions/Context.kt b/kotlin-extensions/src/main/java/ru/touchin/extensions/Context.kt index aa7b8a2..3699ce6 100644 --- a/kotlin-extensions/src/main/java/ru/touchin/extensions/Context.kt +++ b/kotlin-extensions/src/main/java/ru/touchin/extensions/Context.kt @@ -6,6 +6,7 @@ import android.content.Intent import android.net.Uri import android.os.Bundle import ru.touchin.roboswag.core.log.Lc +import android.provider.Browser fun Context.safeStartActivity(intent: Intent, options: Bundle? = null) = try { @@ -18,6 +19,18 @@ fun Context.openBrowser(url: String) = Intent(Intent.ACTION_VIEW) .setData(Uri.parse(url)) .let { intent -> safeStartActivity(intent) } +fun Context.openBrowserWithHeaders(url: String, headersMap: Map) = Intent(Intent.ACTION_VIEW) + .setData(Uri.parse(url)) + .let { intent -> + val bundle = Bundle().apply { + headersMap.forEach { (key, value) -> + putString(key, value) + } + } + intent.putExtra(Browser.EXTRA_HEADERS, bundle) + safeStartActivity(intent) + } + fun Context.callToPhoneNumber(phoneNumber: String) = Intent(Intent.ACTION_VIEW) .setData(Uri.parse("tel:$phoneNumber")) .let { intent -> safeStartActivity(intent) }