protected void custom_tabs_activit_manager_CustomTabsServiceConnected ( Content.ComponentName name, CustomTabsClient client ) { builder = new CustomTabsIntent.Builder(custom_tabs_activit_manager.Session); builder.EnableUrlBarHiding(); if (CustomTabsConfiguration.IsWarmUpUsed) { long flags = -1; client.Warmup(flags); } if (CustomTabsConfiguration.AreAnimationsUsed) { builder.SetStartAnimations ( activity, Xamarin.Auth.Resource.Animation.slide_in_right, Xamarin.Auth.Resource.Animation.slide_out_left ); builder.SetExitAnimations ( activity, global::Android.Resource.Animation.SlideInLeft, global::Android.Resource.Animation.SlideOutRight ); } custom_tabs_activit_manager.LaunchUrl(uri.ToString(), builder.Build()); return; }
void OpenCustomTab() { string url = mUrlEditText.Text; int color = GetColor(mCustomTabColorEditText); int secondaryColor = GetColor(mCustomTabSecondaryColorEditText); CustomTabsIntent.Builder intentBuilder = new CustomTabsIntent.Builder(); intentBuilder.SetToolbarColor(color); intentBuilder.SetSecondaryToolbarColor(secondaryColor); if (mShowActionButtonCheckbox.Checked) { //Generally you do not want to decode bitmaps in the UI thread. Decoding it in the //UI thread to keep the example short. string actionLabel = GetString(Resource.String.label_action); Bitmap icon = BitmapFactory.DecodeResource(Resources, Android.Resource.Drawable.IcMenuShare); PendingIntent pendingIntent = CreatePendingIntent(ActionBroadcastReceiver.ACTION_ACTION_BUTTON); intentBuilder.SetActionButton(icon, actionLabel, pendingIntent); } if (mAddMenusCheckbox.Checked) { string menuItemTitle = GetString(Resource.String.menu_item_title); PendingIntent menuItemPendingIntent = CreatePendingIntent(ActionBroadcastReceiver.ACTION_MENU_ITEM); intentBuilder.AddMenuItem(menuItemTitle, menuItemPendingIntent); } if (mAddDefaultShareCheckbox.Checked) { intentBuilder.AddDefaultShareMenuItem(); } if (mToolbarItemCheckbox.Checked) { //Generally you do not want to decode bitmaps in the UI thread. Decoding it in the //UI thread to keep the example short. string actionLabel = GetString(Resource.String.label_action); Bitmap icon = BitmapFactory.DecodeResource(Resources, Android.Resource.Drawable.IcMenuShare); PendingIntent pendingIntent = CreatePendingIntent(ActionBroadcastReceiver.ACTION_TOOLBAR); intentBuilder.AddToolbarItem(TOOLBAR_ITEM_ID, icon, actionLabel, pendingIntent); } intentBuilder.SetShowTitle(mShowTitleCheckBox.Checked); if (mAutoHideAppBarCheckbox.Checked) { intentBuilder.EnableUrlBarHiding(); } if (mCustomBackButtonCheckBox.Checked) { intentBuilder.SetCloseButtonIcon(BitmapFactory.DecodeResource(Resources, Resource.Drawable.ic_arrow_back)); } intentBuilder.SetStartAnimations(this, Resource.Animation.slide_in_right, Resource.Animation.slide_out_left); intentBuilder.SetExitAnimations(this, Android.Resource.Animation.SlideInLeft, Android.Resource.Animation.SlideOutRight); CustomTabActivityHelper.OpenCustomTab( this, intentBuilder.Build(), Uri.Parse(url), new WebviewFallback()); }
public void OnClick(View view) { string url = mEditText.Text; bool success; switch (view.Id) { case Resource.Id.connect_button: BindCustomTabsService(); break; case Resource.Id.warmup_button: success = false; if (mClient != null) { success = mClient.Warmup(0); } mWarmupButton.Enabled &= success; break; case Resource.Id.may_launch_button: CustomTabsSession session = GetSession(); success = false; if (mClient != null) { success = session.MayLaunchUrl(Uri.Parse(url), null, null); } mMayLaunchButton.Enabled &= success; break; case Resource.Id.launch_button: var builder = new CustomTabsIntent.Builder(GetSession()); builder.SetToolbarColor(Color.ParseColor(TOOLBAR_COLOR)).SetShowTitle(true); PrepareMenuItems(builder); PrepareActionButton(builder); PrepareBottombar(builder); builder.SetStartAnimations(this, Resource.Animation.slide_in_right, Resource.Animation.slide_out_left); builder.SetExitAnimations(this, Resource.Animation.slide_in_left, Resource.Animation.slide_out_right); builder.SetCloseButtonIcon(BitmapFactory.DecodeResource(Resources, Resource.Drawable.ic_arrow_back)); CustomTabsIntent customTabsIntent = builder.Build(); CustomTabsHelper.AddKeepAliveExtra(this, customTabsIntent.Intent); customTabsIntent.LaunchUrl(this, Uri.Parse(url)); break; } }
protected void custom_tabs_activit_manager_CustomTabsServiceConnected ( Content.ComponentName name, CustomTabsClient client ) { custom_tabs_intent_builder = new CustomTabsIntent.Builder(custom_tabs_activity_manager.Session); custom_tabs_intent_builder.EnableUrlBarHiding(); if (CustomTabsConfiguration.IsWarmUpUsed) { System.Diagnostics.Debug.WriteLine("CustomTabsActivityManager.WarmUp()"); client.Warmup(0); //custom_tabs_activity_manager.Warmup(); } if (CustomTabsConfiguration.IsPrefetchUsed) { System.Diagnostics.Debug.WriteLine("CustomTabsActivityManager PREFETCH"); custom_tabs_activity_manager.MayLaunchUrl(uri.ToString(), null, null); } if (CustomTabsConfiguration.AreAnimationsUsed) { custom_tabs_intent_builder.SetStartAnimations ( activity, Xamarin.Auth.Resource.Animation.slide_in_right, Xamarin.Auth.Resource.Animation.slide_out_left ); custom_tabs_intent_builder.SetExitAnimations ( activity, global::Android.Resource.Animation.SlideInLeft, global::Android.Resource.Animation.SlideOutRight ); } custom_tabs_activity_manager.LaunchUrl(uri.ToString(), custom_tabs_intent_builder.Build()); return; }
void BeginLoadingInitialUrl() { var initalUri = state.Authenticator.GetInitialUrlAsync().Result; var mgr = new CustomTabsActivityManager(this); mgr.CustomTabsServiceConnected += delegate { var builder = new CustomTabsIntent.Builder(mgr.Session); builder.EnableUrlBarHiding(); builder.SetStartAnimations(this, Resource.Animation.slide_in_right, Resource.Animation.slide_out_left); builder.SetExitAnimations(this, global::Android.Resource.Animation.SlideInLeft, global::Android.Resource.Animation.SlideOutRight); mgr.LaunchUrl(initalUri.AbsoluteUri, builder.Build()); }; if (!mgr.BindService()) { var intent = new Intent(Intent.ActionView); intent.SetData(global::Android.Net.Uri.Parse(initalUri.AbsoluteUri)); StartActivity(intent); } }
public void OnClick(View v) { string url = mEditText.Text.ToString(); int viewId = v.Id; if (viewId == Resource.Id.connect_button) { BindCustomTabsService(); } else if (viewId == Resource.Id.warmup_button) { bool success = false; if (custom_tabs_client != null) { success = custom_tabs_client.Warmup(0); } if (!success) { mWarmupButton.Enabled = false; } } else if (viewId == Resource.Id.may_launch_button) { CustomTabsSession session = Session; bool success = false; if (custom_tabs_client != null) { success = session.MayLaunchUrl(Android.Net.Uri.Parse(url), null, null); } if (!success) { mMayLaunchButton.Enabled = false; } } else if (viewId == Resource.Id.launch_button) { CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder(Session); builder.SetToolbarColor(Color.ParseColor(TOOLBAR_COLOR)).SetShowTitle(true); PrepareMenuItems(builder); PrepareActionButton(builder); PrepareBottomBar(builder); builder.SetStartAnimations ( this, Resource.Animation.slide_in_right, Resource.Animation.slide_out_left ); builder.SetExitAnimations ( this, Android.Resource.Animation.SlideInLeft, Android.Resource.Animation.SlideOutRight ); builder.SetCloseButtonIcon(BitmapFactory.DecodeResource(Resources, Resource.Drawable.ic_arrow_back)); CustomTabsIntent customTabsIntent = builder.Build(); // derived class used - thus FQNS HolisticWare.Android.Support.CustomTabs.Chromium.SharedUtilities. CustomTabsHelper.AddKeepAliveExtra(this, customTabsIntent.Intent); try { customTabsIntent.LaunchUrl(this, Android.Net.Uri.Parse(url)); } catch (System.Exception exc) { StringBuilder sb = new StringBuilder(); sb.AppendLine("CustomTabsIntent.LaunchUrl Exception"); } return; } }