10645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team/*
20645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team * Copyright (C) 2017 The Android Open Source Project
30645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team *
40645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team * Licensed under the Apache License, Version 2.0 (the "License");
50645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team * you may not use this file except in compliance with the License.
60645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team * You may obtain a copy of the License at
70645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team *
80645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team *      http://www.apache.org/licenses/LICENSE-2.0
90645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team *
100645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team * Unless required by applicable law or agreed to in writing, software
110645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team * distributed under the License is distributed on an "AS IS" BASIS,
120645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
130645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team * See the License for the specific language governing permissions and
140645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team * limitations under the License.
150645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team */
160645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team
170645b17e2818b69b996da48fd93731bc8a01f114Live Channels Teampackage com.example.partnersupportsampletvinput;
180645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team
190645b17e2818b69b996da48fd93731bc8a01f114Live Channels Teamimport android.app.FragmentManager;
200645b17e2818b69b996da48fd93731bc8a01f114Live Channels Teamimport android.os.Bundle;
210645b17e2818b69b996da48fd93731bc8a01f114Live Channels Teamimport android.support.annotation.NonNull;
220645b17e2818b69b996da48fd93731bc8a01f114Live Channels Teamimport android.support.v17.leanback.app.GuidedStepFragment;
230645b17e2818b69b996da48fd93731bc8a01f114Live Channels Teamimport android.support.v17.leanback.widget.GuidanceStylist;
240645b17e2818b69b996da48fd93731bc8a01f114Live Channels Teamimport android.support.v17.leanback.widget.GuidanceStylist.Guidance;
250645b17e2818b69b996da48fd93731bc8a01f114Live Channels Teamimport android.support.v17.leanback.widget.GuidedAction;
260645b17e2818b69b996da48fd93731bc8a01f114Live Channels Teamimport java.util.List;
270645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team
280645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team/** Welcome Fragment shows welcome information for users */
290645b17e2818b69b996da48fd93731bc8a01f114Live Channels Teampublic class WelcomeFragment extends GuidedStepFragment {
300645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team
310645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team    @NonNull
320645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team    @Override
330645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team    public GuidanceStylist.Guidance onCreateGuidance(Bundle savedInstanceState) {
340645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team        return new Guidance("WelcomeFragment Title", "WelcomeFragment Description", null, null);
350645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team    }
360645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team
370645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team    @Override
380645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team    public void onCreateActions(@NonNull List<GuidedAction> actions, Bundle savedInstanceState) {
390645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team        actions.add(
400645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                new GuidedAction.Builder(getActivity())
410645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                        .id(GuidedAction.ACTION_ID_NEXT)
420645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                        .title("NEXT")
430645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                        .build());
440645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team        actions.add(
450645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                new GuidedAction.Builder(getActivity())
460645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                        .id(GuidedAction.ACTION_ID_CANCEL)
470645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                        .title("CANCEL")
480645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                        .build());
490645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team    }
500645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team
510645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team    @Override
520645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team    public void onGuidedActionClicked(GuidedAction action) {
530645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team        if (action == null) {
540645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team            return;
550645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team        }
560645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team        FragmentManager fm = getFragmentManager();
570645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team        switch ((int) action.getId()) {
580645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team            case (int) GuidedAction.ACTION_ID_NEXT:
590645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                GuidedStepFragment.add(fm, new LocationFragment());
600645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                break;
610645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team            case (int) GuidedAction.ACTION_ID_CANCEL:
620645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                finishGuidedStepFragments();
630645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team                break;
640645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team            default:
650645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team        }
660645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team    }
670645b17e2818b69b996da48fd93731bc8a01f114Live Channels Team}
68