1/*
2 * Copyright (C) 2015 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16package com.android.messaging.ui;
17
18import android.app.Fragment;
19import android.net.Uri;
20import android.os.Bundle;
21import android.view.MenuItem;
22
23import com.android.messaging.R;
24import com.android.messaging.util.Assert;
25
26/**
27 * An activity that hosts VCardDetailFragment that shows the content of a VCard that contains one
28 * or more contacts.
29 */
30public class VCardDetailActivity extends BugleActionBarActivity {
31    @Override
32    protected void onCreate(final Bundle savedInstanceState) {
33        super.onCreate(savedInstanceState);
34        setContentView(R.layout.vcard_detail_activity);
35        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
36    }
37
38    @Override
39    public void onAttachFragment(final Fragment fragment) {
40        Assert.isTrue(fragment instanceof VCardDetailFragment);
41        final Uri vCardUri = getIntent().getParcelableExtra(UIIntents.UI_INTENT_EXTRA_VCARD_URI);
42        Assert.notNull(vCardUri);
43        final VCardDetailFragment vCardDetailFragment = (VCardDetailFragment) fragment;
44        vCardDetailFragment.setVCardUri(vCardUri);
45    }
46
47    @Override
48    public boolean onOptionsItemSelected(final MenuItem item) {
49        switch (item.getItemId()) {
50            case android.R.id.home:
51                // Treat the home press as back press so that when we go back to
52                // ConversationActivity, it doesn't lose its original intent (conversation id etc.)
53                onBackPressed();
54                return true;
55
56            default:
57                return super.onOptionsItemSelected(item);
58        }
59    }
60}
61