1/*
2 * Copyright (C) 2014 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
5 * in compliance with the License. You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software distributed under the License
10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
11 * or implied. See the License for the specific language governing permissions and limitations under
12 * the License.
13 */
14package com.example.android.leanback;
15
16import android.app.Activity;
17import android.os.Bundle;
18
19public class DetailsActivity extends Activity
20{
21    public static final String EXTRA_ITEM = "item";
22    public static final String SHARED_ELEMENT_NAME = "hero";
23
24    private boolean useLegacyFragment() {
25        return (DetailsPresenterSelectionActivity.USE_LEGACY_PRESENTER
26                && !(this instanceof SearchDetailsActivity));
27    }
28
29    protected boolean hasBackgroundVideo() {
30        return false;
31    }
32
33    /** Called when the activity is first created. */
34    @Override
35    public void onCreate(Bundle savedInstanceState)
36    {
37        super.onCreate(savedInstanceState);
38        getFragmentManager().enableDebugLogging(true);
39        setContentView(R.layout.details_activity);
40        if (savedInstanceState == null) {
41            if (useLegacyFragment()) {
42                DetailsFragment fragment = new DetailsFragment();
43                fragment.setItem((PhotoItem) getIntent().getParcelableExtra(EXTRA_ITEM));
44                getFragmentManager().beginTransaction()
45                        .replace(R.id.details_fragment, fragment)
46                        .commit();
47            } else {
48                NewDetailsFragment fragment = new NewDetailsFragment();
49                fragment.setItem((PhotoItem) getIntent().getParcelableExtra(EXTRA_ITEM));
50                fragment.setBackgroundVideo(hasBackgroundVideo());
51                getFragmentManager().beginTransaction()
52                        .replace(R.id.details_fragment, fragment)
53                        .commit();
54            }
55        } else {
56            if (useLegacyFragment()) {
57                DetailsFragment fragment = (DetailsFragment) getFragmentManager()
58                        .findFragmentById(R.id.details_fragment);
59                fragment.setItem((PhotoItem) getIntent().getParcelableExtra(EXTRA_ITEM));
60            } else {
61                NewDetailsFragment fragment = (NewDetailsFragment) getFragmentManager()
62                        .findFragmentById(R.id.details_fragment);
63                fragment.setItem((PhotoItem) getIntent().getParcelableExtra(EXTRA_ITEM));
64            }
65        }
66    }
67}
68