1f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project/*
2f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * Copyright (C) 2008 The Android Open Source Project
3f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project *
4f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
5f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * you may not use this file except in compliance with the License.
6f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * You may obtain a copy of the License at
7f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project *
8f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
9f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project *
10f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * Unless required by applicable law or agreed to in writing, software
11f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
12f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * See the License for the specific language governing permissions and
14f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * limitations under the License.
15f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project */
16f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project
17f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Projectpackage android.widget.cts;
18f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project
19f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Projectimport android.app.Activity;
20f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Projectimport android.app.cts.CTSResult;
21f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Projectimport android.os.Bundle;
22f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Projectimport android.os.Handler;
23f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Projectimport android.widget.TextView;
24f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project
25f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Projectpublic class ViewGroupStubActivity extends Activity {
26f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project
27f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    public static final String ACTION_INVALIDATE_CHILD = "invalidateChild";
28f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project
29f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    private final Handler mHandler = new Handler();
30f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    private static CTSResult sResult;
31f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    public static void setResult(CTSResult result) {
32f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project        sResult = result;
33f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    }
34f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project
35f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    @Override
36f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    protected void onCreate(Bundle savedInstanceState) {
37f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project        super.onCreate(savedInstanceState);
38f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project        setContentView(com.android.cts.stub.R.layout.viewgrouptest_stub);
39f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project        TextView textView = (TextView)findViewById(com.android.cts.stub.R.id.viewgrouptest_stub);
40f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project        textView.setText("test");
41f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    }
42f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project
43f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    @Override
44f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    protected void onResume() {
45f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project        super.onResume();
46f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project
47f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project        String action = getIntent().getAction();
48f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project        if (action.equals(ACTION_INVALIDATE_CHILD)) {
49f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project            mHandler.postDelayed(new Runnable() {
50f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project                public void run() {
51f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project                    MockLinearLayout mll =
52f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project                        (MockLinearLayout) findViewById(com.android.cts.stub.R.id.
53f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project                                                                        mocklinearlayout);
54f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project                    if (!mll.mIsInvalidateChildInParentCalled) {
55f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project                        fail();
56f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project                        return;
57f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project                    }
58f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project                    sResult.setResult(CTSResult.RESULT_OK);
59f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project                    finish();
60f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project                }
61f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project            }, 2000);
62f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project        }
63f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    }
64f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project
65f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    private void fail() {
66f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project        sResult.setResult(CTSResult.RESULT_FAIL);
67f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project        finish();
68f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project    }
69f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project}
70f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project
71