1811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang/* 259a110ba7df2699b50328520a2b400bc74965915Justin Klaassen * Copyright (C) 2016 The Android Open Source Project 3811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * 4811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * Licensed under the Apache License, Version 2.0 (the "License"); you may not 5811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * use this file except in compliance with the License. You may obtain a copy of 6811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * the License at 7811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * 8811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * http://www.apache.org/licenses/LICENSE-2.0 9811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * 10811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * Unless required by applicable law or agreed to in writing, software 11811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 12811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 13811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * License for the specific language governing permissions and limitations under 14811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * the License. 15811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang */ 16811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang 17811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhangpackage com.android.deskclock.actionbarmenu; 18811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang 19811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhangimport android.app.Activity; 20811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhangimport android.view.Menu; 21811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhangimport android.view.MenuItem; 22811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang 23811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang/** 24811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * {@link MenuItemController} for handling navigation up button in actionbar. It is a special 25811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang * menu item because it's not inflated through menu.xml, and has its own predefined id. 26811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang */ 2759a110ba7df2699b50328520a2b400bc74965915Justin Klaassenpublic final class NavUpMenuItemController implements MenuItemController { 28811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang 29811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang private final Activity mActivity; 30811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang 31811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang public NavUpMenuItemController(Activity activity) { 32811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang mActivity = activity; 33811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang } 34811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang 35811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang @Override 36811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang public int getId() { 37811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang return android.R.id.home; 38811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang } 39811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang 40811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang @Override 4159a110ba7df2699b50328520a2b400bc74965915Justin Klaassen public void onCreateOptionsItem(Menu menu) { 4259a110ba7df2699b50328520a2b400bc74965915Justin Klaassen // "Home" option is automatically created by the Toolbar. 43811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang } 44811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang 45811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang @Override 4659a110ba7df2699b50328520a2b400bc74965915Justin Klaassen public void onPrepareOptionsItem(MenuItem item) { 4759a110ba7df2699b50328520a2b400bc74965915Justin Klaassen } 4859a110ba7df2699b50328520a2b400bc74965915Justin Klaassen 4959a110ba7df2699b50328520a2b400bc74965915Justin Klaassen @Override 5059a110ba7df2699b50328520a2b400bc74965915Justin Klaassen public boolean onOptionsItemSelected(MenuItem item) { 51811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang mActivity.finish(); 52811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang return true; 53811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang } 54811626f2f55a6bd88bcaed766f9c9911ccf6b7d8Fan Zhang} 55