139e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov/*
239e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov * Copyright (C) 2016 The Android Open Source Project
339e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov *
439e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov * Licensed under the Apache License, Version 2.0 (the "License");
539e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov * you may not use this file except in compliance with the License.
639e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov * You may obtain a copy of the License at
739e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov *
839e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov *      http://www.apache.org/licenses/LICENSE-2.0
939e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov *
1039e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov * Unless required by applicable law or agreed to in writing, software
1139e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov * distributed under the License is distributed on an "AS IS" BASIS,
1239e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1339e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov * See the License for the specific language governing permissions and
1439e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov * limitations under the License.
1539e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov */
1639e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov
1739e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikovpackage android.support.v4;
1839e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov
1939e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikovimport android.app.Activity;
2039e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikovimport android.os.Bundle;
2139e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikovimport android.view.WindowManager;
2239e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov
2339e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikovpublic abstract class BaseTestActivity extends Activity {
2439e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov    @Override
2539e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov    protected void onCreate(Bundle savedInstanceState) {
2639e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov        super.onCreate(savedInstanceState);
2739e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov        getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
2839e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov        final int contentView = getContentViewLayoutResId();
2939e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov        if (contentView > 0) {
3039e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov            setContentView(contentView);
3139e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov        }
3239e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov        onContentViewSet();
3339e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov        getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
3439e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov    }
3539e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov
3639e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov    protected abstract int getContentViewLayoutResId();
3739e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov
3839e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov    protected void onContentViewSet() {}
3939e84476b45f10ed4929e307372d6f7a2103e9d5Kirill Grouchnikov}
40