android.support.wearable.activity.ConfirmationActivity Java Examples

The following examples show how to use android.support.wearable.activity.ConfirmationActivity. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: MainActivity.java    From DronesWear with BSD 3-Clause "New" or "Revised" License 6 votes vote down vote up
private void onButtonClicked()
{
    PendingResult<DataApi.DataItemResult> pendingResult = Message.sendActionMessage(mGoogleApiClient);
    pendingResult.setResultCallback(new ResultCallback<DataApi.DataItemResult>() {
        @Override
        public void onResult(@NonNull DataApi.DataItemResult dataItemResult) {
            Message.emptyActionMessage(mGoogleApiClient);
        }
    });

    Intent intent = new Intent(this, ConfirmationActivity.class);
    intent.putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE,
            ConfirmationActivity.SUCCESS_ANIMATION);
    intent.putExtra(ConfirmationActivity.EXTRA_MESSAGE,
            getString(R.string.action_sent));
    startActivity(intent);
}
 
Example #2
Source File: ListenerService.java    From sms-ticket with Apache License 2.0 6 votes vote down vote up
@Override
public int onStartCommand(Intent intent, int flags, int startId) {

    if (intent != null && intent.getAction() != null) {
        if ("open_ticket".equals(intent.getAction())) {
            final Ticket t = (Ticket)intent.getExtras().getSerializable("ticket");
            sendMessage("openTicket/" + t.getId(), null);

            Intent confirmationIntent = new Intent(this, ConfirmationActivity.class);
            confirmationIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);
            confirmationIntent.putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE, ConfirmationActivity.OPEN_ON_PHONE_ANIMATION);
            startActivity(confirmationIntent);
        }
    }

    return super.onStartCommand(intent, flags, startId);
}
 
Example #3
Source File: ConfirmationNotificationActivity.java    From rnd-android-wear-tesla with MIT License 6 votes vote down vote up
@Override
public void onTimerFinished(View view) {
    Intent intent = new Intent(this, ConfirmationActivity.class);
    intent.putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE, ConfirmationActivity.SUCCESS_ANIMATION);
    switch (mActionMode) {
        case ACTION_MODE_CLOSE_SUNROOF:
            EventBus.getDefault().post(new ToHandHoldRequestEvent(WEAR_CLOSE_SUNROOF));
            intent.putExtra(ConfirmationActivity.EXTRA_MESSAGE, getString(R.string.notification_bad_weather_confirmation_done));
            break;
        case ACTION_MODE_LOCK_DOOR:
            EventBus.getDefault().post(new ToHandHoldRequestEvent(WEAR_ACTION_DOOR_LOCK));
            intent.putExtra(ConfirmationActivity.EXTRA_MESSAGE, getString(R.string.notification_car_unlocked_confirmation_done));
            break;
        case ACTION_MODE_START_CHARGING:
            EventBus.getDefault().post(new ToHandHoldRequestEvent(WEAR_ACTION_CHARGING_START));
            intent.putExtra(ConfirmationActivity.EXTRA_MESSAGE, getString(R.string.notification_unexpected_charge_stop_confirmation_done));
            break;
    }
    startActivity(intent);
    finish();
}
 
Example #4
Source File: NotificationListenerService.java    From wear-notify-for-reddit with Apache License 2.0 6 votes vote down vote up
private PendingIntent getOpenOnPhonePendingIntent(String permalink,
                                                  boolean openOnPhoneDismisses,
                                                  int notificationId) {
    Intent openOnPhone = new Intent(this, ActionReceiver.class);
    openOnPhone.putExtra(Constants.KEY_PATH, Constants.PATH_OPEN_ON_PHONE);
    openOnPhone.putExtra(Constants.KEY_CONFIRMATION_MESSAGE, getString(R.string.open_on_phone));
    openOnPhone.putExtra(Constants.KEY_CONFIRMATION_ANIMATION,
            ConfirmationActivity.SUCCESS_ANIMATION);
    openOnPhone.putExtra(Constants.KEY_POST_PERMALINK, permalink);
    openOnPhone.putExtra(Constants.KEY_DISMISS_AFTER_ACTION, openOnPhoneDismisses);
    openOnPhone.putExtra(Constants.KEY_NOTIFICATION_ID, notificationId);
    return PendingIntent.getBroadcast(this,
            REQUEST_CODE_OPEN_ON_PHONE + notificationId,
            openOnPhone,
            PendingIntent.FLAG_UPDATE_CURRENT);
}
 
Example #5
Source File: CheckInAndDeleteDataItemsService.java    From android-Geofencing with Apache License 2.0 5 votes vote down vote up
/**
 * Helper method to create confirmation animations on the wearable.
 * @param animationType Defined by constants in ConfirmationActivity.
 * @param message The message to display with the animation.
 */
private void startConfirmationActivity(int animationType, String message) {
    Intent confirmationActivity = new Intent(this, ConfirmationActivity.class)
            .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_NO_ANIMATION)
            .putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE, animationType)
            .putExtra(ConfirmationActivity.EXTRA_MESSAGE, message);
    startActivity(confirmationActivity);
}
 
Example #6
Source File: ActionReceiver.java    From wear-notify-for-reddit with Apache License 2.0 5 votes vote down vote up
private void showConfirmation(Context context, String message, int animation) {
    Intent confirmationActivity = new Intent(context, ConfirmationActivity.class).setFlags(
            Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_NO_ANIMATION)
            .putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE, animation)
            .putExtra(ConfirmationActivity.EXTRA_MESSAGE, message);
    context.startActivity(confirmationActivity);
}
 
Example #7
Source File: NotificationListenerService.java    From wear-notify-for-reddit with Apache License 2.0 5 votes vote down vote up
private PendingIntent getViewCommentsPendingIntent(Post post, int notificationId) {
    Intent intent = new Intent(this, ActionReceiver.class);
    intent.putExtra(Constants.KEY_PATH, Constants.PATH_COMMENTS);
    intent.putExtra(Constants.KEY_CONFIRMATION_MESSAGE, getString(R.string.getting_comments));
    intent.putExtra(Constants.KEY_CONFIRMATION_ANIMATION,
            ConfirmationActivity.SUCCESS_ANIMATION);
    intent.putExtra(Constants.KEY_POST_PERMALINK, post.getPermalink());
    return PendingIntent.getBroadcast(this,
            REQUEST_VIEW_COMMENTS + notificationId,
            intent,
            PendingIntent.FLAG_UPDATE_CURRENT);
}
 
Example #8
Source File: NotificationListenerService.java    From wear-notify-for-reddit with Apache License 2.0 5 votes vote down vote up
private PendingIntent getSaveToPocketPendingIntent(String permalink, int notificationId) {
    Intent saveToPocket = new Intent(this, ActionReceiver.class);
    saveToPocket.putExtra(Constants.KEY_PATH, Constants.PATH_SAVE_TO_POCKET);
    saveToPocket.putExtra(Constants.KEY_CONFIRMATION_MESSAGE,
            getString(R.string.save_to_pocket));
    saveToPocket.putExtra(Constants.KEY_CONFIRMATION_ANIMATION,
            ConfirmationActivity.SUCCESS_ANIMATION);
    saveToPocket.putExtra(Constants.KEY_POST_PERMALINK, permalink);
    return PendingIntent.getBroadcast(this,
            REQUEST_CODE_SAVE_TO_POCKET + notificationId,
            saveToPocket,
            PendingIntent.FLAG_UPDATE_CURRENT);
}
 
Example #9
Source File: NotificationListenerService.java    From wear-notify-for-reddit with Apache License 2.0 5 votes vote down vote up
private PendingIntent getVotePendingIntent(Post post, int voteDirection, int requestCode) {
    Intent vote = new Intent(this, ActionReceiver.class);
    vote.putExtra(Constants.KEY_PATH, Constants.PATH_VOTE);
    vote.putExtra(Constants.KEY_CONFIRMATION_MESSAGE, getString(R.string.vote));
    vote.putExtra(Constants.KEY_CONFIRMATION_ANIMATION, ConfirmationActivity.SUCCESS_ANIMATION);
    vote.putExtra(Constants.PATH_KEY_POST_FULLNAME, post.getFullname());
    vote.putExtra(Constants.KEY_POST_VOTE_DIRECTION, voteDirection);
    return PendingIntent.getBroadcast(this,
            requestCode,
            vote,
            PendingIntent.FLAG_UPDATE_CURRENT);
}
 
Example #10
Source File: MainActivity.java    From wear with MIT License 5 votes vote down vote up
private void showConfirmation() {
    Intent intent = new Intent(getApplicationContext(), ConfirmationActivity.class);
    intent.putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE,
            ConfirmationActivity.SUCCESS_ANIMATION);
    intent.putExtra(ConfirmationActivity.EXTRA_MESSAGE, "OK");
    startActivity(intent);
}
 
Example #11
Source File: DeleteService.java    From AndroidWearable-Samples with Apache License 2.0 5 votes vote down vote up
private void startConfirmationActivity(int animationType, String message) {
    Intent confirmationActivity = new Intent(this, ConfirmationActivity.class)
            .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_NO_ANIMATION)
            .putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE, animationType)
            .putExtra(ConfirmationActivity.EXTRA_MESSAGE, message);
    startActivity(confirmationActivity);
}
 
Example #12
Source File: DeleteService.java    From AndroidWearable-Samples with Apache License 2.0 5 votes vote down vote up
@Override
protected void onHandleIntent(Intent intent) {
    mGoogleApiClient.blockingConnect(TIME_OUT, TimeUnit.MILLISECONDS);
    Uri dataItemUri = intent.getData();
    if (Log.isLoggable(TAG, Log.VERBOSE)) {
        Log.v(TAG, "DeleteService.onHandleIntent=" + dataItemUri);
    }
    if (mGoogleApiClient.isConnected()) {
        DataApi.DeleteDataItemsResult result = Wearable.DataApi
                .deleteDataItems(mGoogleApiClient, dataItemUri).await();
        if (result.getStatus().isSuccess() && !intent.getBooleanExtra(EXTRA_SILENT, false)) {
            // Show the success animation on the watch unless Silent extra is true.
            startConfirmationActivity(ConfirmationActivity.SUCCESS_ANIMATION,
                                      getString(R.string.delete_successful));
        } else {
            if (Log.isLoggable(TAG, Log.VERBOSE)) {
                Log.v(TAG, "DeleteService.onHandleIntent: Failed to delete dataItem:"
                        + dataItemUri);
            }
            // Show the failure animation on the watch unless Silent extra is true.
            if (!intent.getBooleanExtra(EXTRA_SILENT, false)) {
                startConfirmationActivity(ConfirmationActivity.FAILURE_ANIMATION,
                                          getString(R.string.delete_unsuccessful));
            }
        }
    } else {
        Log.e(TAG, "Failed to delete data item: " + dataItemUri
                + " - Client disconnected from Google Play Services");
        // Show the failure animation on the watch unless Silent extra is true.
        if (!intent.getBooleanExtra(EXTRA_SILENT, false)) {
            startConfirmationActivity(ConfirmationActivity.FAILURE_ANIMATION,
                    getString(R.string.delete_unsuccessful));
        }
    }
    mGoogleApiClient.disconnect();
}
 
Example #13
Source File: CheckInAndDeleteDataItemsService.java    From AndroidWearable-Samples with Apache License 2.0 5 votes vote down vote up
/**
 * Helper method to create confirmation animations on the wearable.
 * @param animationType Defined by constants in ConfirmationActivity.
 * @param message The message to display with the animation.
 */
private void startConfirmationActivity(int animationType, String message) {
    Intent confirmationActivity = new Intent(this, ConfirmationActivity.class)
            .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_NO_ANIMATION)
            .putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE, animationType)
            .putExtra(ConfirmationActivity.EXTRA_MESSAGE, message);
    startActivity(confirmationActivity);
}
 
Example #14
Source File: CheckInAndDeleteDataItemsService.java    From AndroidWearable-Samples with Apache License 2.0 5 votes vote down vote up
@Override
protected void onHandleIntent(Intent intent) {
    if (ACTION_CHECK_IN.equals(intent.getAction())) {
        // In a real app, code for checking in would go here. For this sample, we will simply
        // display a success animation.
        startConfirmationActivity(ConfirmationActivity.SUCCESS_ANIMATION,
                getString(R.string.check_in_success));
        // Dismiss the check-in notification.
        ((NotificationManager) getSystemService(NOTIFICATION_SERVICE)).cancel(NOTIFICATION_ID);
    } else if (!ACTION_DELETE_DATA_ITEM.equals(intent.getAction())) {
        // The only possible actions should be checking in or dismissing the notification
        // (which causes an intent with ACTION_DELETE_DATA_ITEM).
        Log.e(TAG, "Unrecognized action: " + intent.getAction());
        return;
    }
    // Regardless of the action, delete the DataItem (we are only be handling intents
    // if the notification is dismissed or if the user has chosen to check in, either of which
    // would be completed at this point).
    mGoogleApiClient.blockingConnect(CONNECTION_TIME_OUT_MS, TimeUnit.MILLISECONDS);
    Uri dataItemUri = intent.getData();
    if (mGoogleApiClient.isConnected()) {
        DataApi.DeleteDataItemsResult result = Wearable.DataApi
                .deleteDataItems(mGoogleApiClient, dataItemUri).await();
        if (!result.getStatus().isSuccess()) {
            Log.e(TAG, "CheckInAndDeleteDataItemsService.onHandleIntent: "
                     + "Failed to delete dataItem: " + dataItemUri);
        } else if (Log.isLoggable(TAG, Log.DEBUG)) {
            Log.d(TAG, "Successfully deleted data item: " + dataItemUri);
        }
    } else {
        Log.e(TAG, "Failed to delete data item: " + dataItemUri
                 + " - Client disconnected from Google Play Services");
    }
    mGoogleApiClient.disconnect();
}
 
Example #15
Source File: CheckInAndDeleteDataItemsService.java    From android-Geofencing with Apache License 2.0 5 votes vote down vote up
@Override
protected void onHandleIntent(Intent intent) {
    if (ACTION_CHECK_IN.equals(intent.getAction())) {
        // In a real app, code for checking in would go here. For this sample, we will simply
        // display a success animation.
        startConfirmationActivity(ConfirmationActivity.SUCCESS_ANIMATION,
                getString(R.string.check_in_success));
        // Dismiss the check-in notification.
        ((NotificationManager) getSystemService(NOTIFICATION_SERVICE)).cancel(NOTIFICATION_ID);
    } else if (!ACTION_DELETE_DATA_ITEM.equals(intent.getAction())) {
        // The only possible actions should be checking in or dismissing the notification
        // (which causes an intent with ACTION_DELETE_DATA_ITEM).
        Log.e(TAG, "Unrecognized action: " + intent.getAction());
        return;
    }
    // Regardless of the action, delete the DataItem (we are only be handling intents
    // if the notification is dismissed or if the user has chosen to check in, either of which
    // would be completed at this point).
    mGoogleApiClient.blockingConnect(CONNECTION_TIME_OUT_MS, TimeUnit.MILLISECONDS);
    Uri dataItemUri = intent.getData();
    if (mGoogleApiClient.isConnected()) {
        DataApi.DeleteDataItemsResult result = Wearable.DataApi
                .deleteDataItems(mGoogleApiClient, dataItemUri).await();
        if (!result.getStatus().isSuccess()) {
            Log.e(TAG, "CheckInAndDeleteDataItemsService.onHandleIntent: "
                     + "Failed to delete dataItem: " + dataItemUri);
        } else if (Log.isLoggable(TAG, Log.DEBUG)) {
            Log.d(TAG, "Successfully deleted data item: " + dataItemUri);
        }
    } else {
        Log.e(TAG, "Failed to delete data item: " + dataItemUri
                 + " - Client disconnected from Google Play Services");
    }
    mGoogleApiClient.disconnect();
}
 
Example #16
Source File: AttractionsGridPagerAdapter.java    From io2015-codelabs with Apache License 2.0 5 votes vote down vote up
/**
 * Use the Wear Message API to execute an action. Clears local and remote notifications and
 * also runs a confirmation animation before finishing the Wear activity.
 *
 * @param attraction The attraction to start the action on
 * @param pathName The Wear Message API pathname
 * @param confirmAnimationType The confirmation animation type from ConfirmationActivity
 */
private void startAction(Attraction attraction, String pathName, int confirmAnimationType) {
    Intent intent = new Intent(mContext, ConfirmationActivity.class);
    intent.putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE, confirmAnimationType);
    mContext.startActivity(intent);

    UtilityService.clearNotification(mContext);
    UtilityService.clearRemoteNotifications(mContext);
    UtilityService.startDeviceActivity(mContext, pathName, attraction.name, attraction.city);

    ((Activity)mContext).finish();
}
 
Example #17
Source File: AttractionsGridPagerAdapter.java    From io2015-codelabs with Apache License 2.0 5 votes vote down vote up
/**
 * Use the Wear Message API to execute an action. Clears local and remote notifications and
 * also runs a confirmation animation before finishing the Wear activity.
 *
 * @param attraction The attraction to start the action on
 * @param pathName The Wear Message API pathname
 * @param confirmAnimationType The confirmation animation type from ConfirmationActivity
 */
private void startAction(Attraction attraction, String pathName, int confirmAnimationType) {
    Intent intent = new Intent(mActivity, ConfirmationActivity.class);
    intent.putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE, confirmAnimationType);
    mActivity.startActivity(intent);

    UtilityService.clearNotification(mActivity);
    UtilityService.clearRemoteNotifications(mActivity);
    UtilityService.startDeviceActivity(mActivity, pathName, attraction.name, attraction.city);

    ((Activity) mActivity).finish();
}
 
Example #18
Source File: ClimbConfirmation.java    From climb-tracker with Apache License 2.0 5 votes vote down vote up
@Override
public void onTimerFinished(View view) {
    // save only if user hasn't canceled
    if(!this.isFinishing()) {
        saveClimb();

        String savedString = getString(R.string.climb_saved, routeGradeLabelToSave);

        Intent intent = new Intent(this, ConfirmationActivity.class);
        intent.putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE, ConfirmationActivity.SUCCESS_ANIMATION);
        intent.putExtra(ConfirmationActivity.EXTRA_MESSAGE, savedString);
        startActivity(intent);
    }
    finish();
}
 
Example #19
Source File: CodeActivity.java    From WearPay with GNU General Public License v2.0 5 votes vote down vote up
@Override
public void onServiceConnected(ComponentName componentName, IBinder iBinder) {
    wearPayBinder = (WatchService.WearPayBinder) iBinder;
    wearPayBinder.addChangeListener(CodeActivity.this);
    wearPayBinder.setOnPaySuccessListener(new WatchService.OnPaySuccessListener() {
        @Override
        public void onPaySuccess() {
            Intent intent = new Intent(CodeActivity.this, ConfirmationActivity.class);
            intent.putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE, ConfirmationActivity.SUCCESS_ANIMATION);
            intent.putExtra(ConfirmationActivity.EXTRA_MESSAGE, getString(R.string.pay_success));
            startActivity(intent);
            finish();
        }
    });
}
 
Example #20
Source File: AttractionsGridPagerAdapter.java    From wear-os-samples with Apache License 2.0 5 votes vote down vote up
/**
 * Use the Wear Message API to execute an action. Clears local and remote notifications and
 * also runs a confirmation animation before finishing the Wear activity.
 *
 * @param attraction The attraction to start the action on
 * @param pathName The Wear Message API pathname
 * @param confirmAnimationType The confirmation animation type from ConfirmationActivity
 */
private void startAction(Attraction attraction, String pathName, int confirmAnimationType) {
    Intent intent = new Intent(mContext, ConfirmationActivity.class);
    intent.putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE, confirmAnimationType);
    intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
    mContext.startActivity(intent);

    UtilityService.clearNotification(mContext);
    UtilityService.clearRemoteNotifications(mContext);
    UtilityService.startDeviceActivity(mContext, pathName, attraction.name, attraction.city);

    ((Activity)mContext).finish();
}
 
Example #21
Source File: AttractionsGridPagerAdapter.java    From wear-os-samples with Apache License 2.0 4 votes vote down vote up
@Override
public Object instantiateItem(ViewGroup container, int row, final int column) {
    if (mAttractions != null && mAttractions.size() > 0) {
        final Attraction attraction = mAttractions.get(row);
        switch (column) {
            case PAGER_PRIMARY_IMAGE_COLUMN:
            case PAGER_SECONDARY_IMAGE_COLUMN:
                // Two pages of full screen images, one with the attraction name
                // and one with the distance to the attraction
                final View view = mLayoutInflater.inflate(
                        R.layout.gridpager_fullscreen_image, container, false);
                ImageView imageView = (ImageView) view.findViewById(R.id.imageView);
                TextView textView = (TextView) view.findViewById(R.id.textView);
                FrameLayout overlayTextLayout =
                        (FrameLayout) view.findViewById(R.id.overlaytext);

                mDelayedHide.add(overlayTextLayout);
                view.setOnClickListener(mDelayedHide);

                FrameLayout.LayoutParams params =
                        (FrameLayout.LayoutParams) textView.getLayoutParams();
                params.bottomMargin = params.bottomMargin + mInsets.bottom;
                params.leftMargin = mInsets.left;
                params.rightMargin = mInsets.right;
                textView.setLayoutParams(params);

                if (column == PAGER_PRIMARY_IMAGE_COLUMN) {
                    imageView.setImageBitmap(attraction.image);
                    textView.setText(attraction.name);
                } else {
                    imageView.setImageBitmap(attraction.secondaryImage);
                    if (TextUtils.isEmpty(attraction.distance)) {
                        overlayTextLayout.setVisibility(View.GONE);
                    } else {
                        textView.setText(mContext.getString(
                                R.string.map_caption, attraction.distance));
                    }
                }
                container.addView(view);
                return view;
            case PAGER_DESCRIPTION_COLUMN:
                // The description card page
                CardScrollView cardScrollView = (CardScrollView) mLayoutInflater.inflate(
                        R.layout.gridpager_card, container, false);
                TextView descTextView = (TextView) cardScrollView.findViewById(R.id.textView);
                descTextView.setText(attraction.description);
                cardScrollView.setCardGravity(Gravity.BOTTOM);
                cardScrollView.setExpansionEnabled(true);
                cardScrollView.setExpansionDirection(CardFrame.EXPAND_DOWN);
                cardScrollView.setExpansionFactor(10);
                container.addView(cardScrollView);
                return cardScrollView;
            case PAGER_NAVIGATE_ACTION_COLUMN:
                // The navigate action
                final ActionPage navActionPage = (ActionPage) mLayoutInflater.inflate(
                        R.layout.gridpager_action, container, false);

                navActionPage.setOnClickListener(getStartActionClickListener(
                        attraction, Constants.START_NAVIGATION_PATH,
                        ConfirmationActivity.SUCCESS_ANIMATION));
                navActionPage.setImageResource(R.drawable.ic_full_directions_walking);
                navActionPage.setText(mContext.getString(R.string.action_navigate));

                container.addView(navActionPage);
                return navActionPage;
            case PAGER_OPEN_ACTION_COLUMN:
                // The "open on device" action
                final ActionPage openActionPage = (ActionPage) mLayoutInflater.inflate(
                        R.layout.gridpager_action, container, false);

                openActionPage.setOnClickListener(getStartActionClickListener(
                        attraction, Constants.START_ATTRACTION_PATH,
                        ConfirmationActivity.OPEN_ON_PHONE_ANIMATION));
                openActionPage.setImageResource(R.drawable.ic_full_openonphone);
                openActionPage.setText(mContext.getString(R.string.action_open));

                container.addView(openActionPage);
                return openActionPage;
        }
    }
    return new View(mContext);
}