1ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko/* 2ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * Copyright (C) 2015 The Android Open Source Project 3ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * 4ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * Licensed under the Apache License, Version 2.0 (the "License"); 5ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * you may not use this file except in compliance with the License. 6ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * You may obtain a copy of the License at 7ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * 8ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * http://www.apache.org/licenses/LICENSE-2.0 9ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * 10ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * Unless required by applicable law or agreed to in writing, software 11ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * distributed under the License is distributed on an "AS IS" BASIS, 12ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * See the License for the specific language governing permissions and 14ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * limitations under the License. 15ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko */ 16ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 17ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkopackage com.android.usbtuner.setup; 18ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 19ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport android.os.Bundle; 20ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport android.support.annotation.NonNull; 21ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport android.support.v17.leanback.widget.GuidanceStylist.Guidance; 22ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport android.support.v17.leanback.widget.GuidedAction; 23ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 24ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport com.android.tv.common.ui.setup.SetupGuidedStepFragment; 25ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport com.android.tv.common.ui.setup.SetupMultiPaneFragment; 26ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport com.android.usbtuner.R; 27ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 28ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport java.util.List; 29ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkoimport java.util.TimeZone; 30ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 31ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko/** 32ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko * A fragment for connection type selection. 33ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko */ 34ba5845f23b8fbc985890f892961abc8b39886611Nick Chalkopublic class ConnectionTypeFragment extends SetupMultiPaneFragment { 35ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko public static final String ACTION_CATEGORY = 36ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko "com.android.usbtuner.setup.ConnectionTypeFragment"; 37ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 38ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko @Override 39ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko protected SetupGuidedStepFragment onCreateContentFragment() { 40ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko return new ContentFragment(); 41ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko } 42ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 43ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko @Override 44ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko protected String getActionCategory() { 45ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko return ACTION_CATEGORY; 46ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko } 47ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 48ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko @Override 49ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko protected boolean needsDoneButton() { 50ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko return false; 51ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko } 52ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 53ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko public static class ContentFragment extends SetupGuidedStepFragment { 54ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 55ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko @NonNull 56ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko @Override 57ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko public Guidance onCreateGuidance(Bundle savedInstanceState) { 58ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko return new Guidance(getString(R.string.ut_connection_title), 59ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko getString(R.string.ut_connection_description), 60ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko getString(R.string.ut_setup_breadcrumb), null); 61ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko } 62ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 63ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko @Override 64ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko public void onCreateActions(@NonNull List<GuidedAction> actions, 65ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko Bundle savedInstanceState) { 66ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko String[] choices = getResources().getStringArray(R.array.ut_connection_choices); 67ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko int length = choices.length - 1; 68ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko int startOffset = 0; 69ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko for (int i = 0; i < length; ++i) { 70ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko actions.add(new GuidedAction.Builder(getActivity()) 71ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko .id(startOffset + i) 72ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko .title(choices[i]) 73ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko .build()); 74ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko } 75ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko } 76ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko 77ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko @Override 78ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko protected String getActionCategory() { 79ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko return ACTION_CATEGORY; 80ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko } 81ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko } 82ba5845f23b8fbc985890f892961abc8b39886611Nick Chalko} 83