Chromium Code Reviews| Index: demos/src/main/java/org/chromium/customtabsdemos/ActionBroadcastReceiver.java |
| diff --git a/demos/src/main/java/org/chromium/customtabsdemos/ActionBroadcastReceiver.java b/demos/src/main/java/org/chromium/customtabsdemos/ActionBroadcastReceiver.java |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..d5cbb3f5704adb588458b96a5dc5a2d0d6ba52b5 |
| --- /dev/null |
| +++ b/demos/src/main/java/org/chromium/customtabsdemos/ActionBroadcastReceiver.java |
| @@ -0,0 +1,53 @@ |
| +// Copyright 2015 Google Inc. All Rights Reserved. |
| +// |
| +// Licensed under the Apache License, Version 2.0 (the "License"); |
| +// you may not use this file except in compliance with the License. |
| +// You may obtain a copy of the License at |
| +// |
| +// http://www.apache.org/licenses/LICENSE-2.0 |
| +// |
| +// Unless required by applicable law or agreed to in writing, software |
| +// distributed under the License is distributed on an "AS IS" BASIS, |
| +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| +// See the License for the specific language governing permissions and |
| +// limitations under the License. |
| + |
| +package org.chromium.customtabsdemos; |
| + |
| +import android.content.BroadcastReceiver; |
| +import android.content.Context; |
| +import android.content.Intent; |
| +import android.widget.Toast; |
| + |
| +/** |
| + * A BroadcastReceiver that handles the Action Intent from the Custom Tab and shows the Url |
| + * in a Toast. |
| + */ |
| +public class ActionBroadcastReceiver extends BroadcastReceiver { |
| + public static final String KEY_ACTION_SOURCE = "org.chromium.customtabsdemos.ACTION_SOURCE"; |
| + public static final int ACTION_ACTION_BUTTON = 1; |
| + public static final int ACTION_MENU_ITEM = 2; |
| + public static final int ACTION_TOOLBAR = 3; |
| + |
| + @Override |
| + public void onReceive(Context context, Intent intent) { |
| + String url = intent.getDataString(); |
| + if (url != null) { |
| + String toastText = getToastText(context, intent.getIntExtra(KEY_ACTION_SOURCE, -1), url); |
|
pasko
2016/03/01 14:28:28
nit: line longer than 100 chars
andreban
2016/03/01 15:03:03
Done.
|
| + Toast.makeText(context, toastText, Toast.LENGTH_SHORT).show(); |
| + } |
| + } |
| + |
| + private String getToastText(Context context, int actionId, String url) { |
| + switch (actionId) { |
| + case ACTION_ACTION_BUTTON: |
| + return context.getString(R.string.action_button_toast_text, url); |
| + case ACTION_MENU_ITEM: |
| + return context.getString(R.string.menu_item_toast_text, url); |
| + case ACTION_TOOLBAR: |
| + return context.getString(R.string.toolbar_toast_text, url); |
| + default: |
| + return context.getString(R.string.unknown_toast_text, url); |
| + } |
| + } |
| +} |