17620644768ffc235607b3a94671e49518c18686fBryan Mawhinney/* 27620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * Copyright (C) 2010 ZXing authors 37620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * 47620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * Licensed under the Apache License, Version 2.0 (the "License"); 57620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * you may not use this file except in compliance with the License. 67620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * You may obtain a copy of the License at 77620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * 87620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * http://www.apache.org/licenses/LICENSE-2.0 97620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * 107620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * Unless required by applicable law or agreed to in writing, software 117620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * distributed under the License is distributed on an "AS IS" BASIS, 127620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 137620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * See the License for the specific language governing permissions and 147620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * limitations under the License. 157620644768ffc235607b3a94671e49518c18686fBryan Mawhinney */ 167620644768ffc235607b3a94671e49518c18686fBryan Mawhinney 177620644768ffc235607b3a94671e49518c18686fBryan Mawhinneypackage com.google.zxing.client.android; 187620644768ffc235607b3a94671e49518c18686fBryan Mawhinney 197620644768ffc235607b3a94671e49518c18686fBryan Mawhinneyimport android.app.Activity; 207620644768ffc235607b3a94671e49518c18686fBryan Mawhinneyimport android.content.DialogInterface; 217620644768ffc235607b3a94671e49518c18686fBryan Mawhinney 227620644768ffc235607b3a94671e49518c18686fBryan Mawhinney/** 237620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * Simple listener used to exit the app in a few cases. 247620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * 257620644768ffc235607b3a94671e49518c18686fBryan Mawhinney * @author Sean Owen 267620644768ffc235607b3a94671e49518c18686fBryan Mawhinney */ 277620644768ffc235607b3a94671e49518c18686fBryan Mawhinneypublic final class FinishListener 287620644768ffc235607b3a94671e49518c18686fBryan Mawhinney implements DialogInterface.OnClickListener, DialogInterface.OnCancelListener, Runnable { 297620644768ffc235607b3a94671e49518c18686fBryan Mawhinney 307620644768ffc235607b3a94671e49518c18686fBryan Mawhinney private final Activity activityToFinish; 317620644768ffc235607b3a94671e49518c18686fBryan Mawhinney 327620644768ffc235607b3a94671e49518c18686fBryan Mawhinney public FinishListener(Activity activityToFinish) { 337620644768ffc235607b3a94671e49518c18686fBryan Mawhinney this.activityToFinish = activityToFinish; 347620644768ffc235607b3a94671e49518c18686fBryan Mawhinney } 357620644768ffc235607b3a94671e49518c18686fBryan Mawhinney 367620644768ffc235607b3a94671e49518c18686fBryan Mawhinney public void onCancel(DialogInterface dialogInterface) { 377620644768ffc235607b3a94671e49518c18686fBryan Mawhinney run(); 387620644768ffc235607b3a94671e49518c18686fBryan Mawhinney } 397620644768ffc235607b3a94671e49518c18686fBryan Mawhinney 407620644768ffc235607b3a94671e49518c18686fBryan Mawhinney public void onClick(DialogInterface dialogInterface, int i) { 417620644768ffc235607b3a94671e49518c18686fBryan Mawhinney run(); 427620644768ffc235607b3a94671e49518c18686fBryan Mawhinney } 437620644768ffc235607b3a94671e49518c18686fBryan Mawhinney 447620644768ffc235607b3a94671e49518c18686fBryan Mawhinney public void run() { 457620644768ffc235607b3a94671e49518c18686fBryan Mawhinney activityToFinish.finish(); 467620644768ffc235607b3a94671e49518c18686fBryan Mawhinney } 477620644768ffc235607b3a94671e49518c18686fBryan Mawhinney 487620644768ffc235607b3a94671e49518c18686fBryan Mawhinney} 49