1edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller/*
2edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller * Copyright (C) 2010 The Android Open Source Project
3edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller *
4edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller * Licensed under the Apache License, Version 2.0 (the "License");
5edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller * you may not use this file except in compliance with the License.
6edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller * You may obtain a copy of the License at
7edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller *
8edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller *      http://www.apache.org/licenses/LICENSE-2.0
9edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller *
10edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller * Unless required by applicable law or agreed to in writing, software
11edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller * distributed under the License is distributed on an "AS IS" BASIS,
12edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller * See the License for the specific language governing permissions and
14edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller * limitations under the License.
15edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller */
16edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller
17edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerpackage com.android.settings;
18edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller
19edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerimport android.app.Fragment;
20edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerimport android.content.ContentResolver;
21edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerimport android.os.Bundle;
228666b9e170c23a9595d611a49b7c8262e357ced1Amith Yamasaniimport android.os.UserHandle;
23edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerimport android.provider.Settings;
24edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerimport android.view.LayoutInflater;
25edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerimport android.view.View;
26edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerimport android.view.ViewGroup;
27edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerimport android.widget.CheckBox;
28edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerimport android.widget.CompoundButton;
29edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerimport android.widget.EditText;
30edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Millerimport android.widget.CompoundButton.OnCheckedChangeListener;
31edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller
32bd8e69733821d6761a7c8946cd8cebb15a44babdJim Millerpublic class OwnerInfoSettings extends Fragment {
33edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    private View mView;
34edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    private CheckBox mCheckbox;
35edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    private EditText mEditText;
36edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller
37edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    @Override
38edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    public View onCreateView(LayoutInflater inflater, ViewGroup container,
39edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller            Bundle savedInstanceState) {
40edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        mView = inflater.inflate(R.layout.ownerinfo, container, false);
41edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        initView(mView);
42edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        return mView;
43edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    }
44edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller
45edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    private void initView(View view) {
46edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        final ContentResolver res = getActivity().getContentResolver();
47edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        String info = Settings.Secure.getString(res, Settings.Secure.LOCK_SCREEN_OWNER_INFO);
48edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        int enabled = Settings.Secure.getInt(res,
49edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller                Settings.Secure.LOCK_SCREEN_OWNER_INFO_ENABLED, 1);
50edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        mCheckbox = (CheckBox) mView.findViewById(R.id.show_owner_info_on_lockscreen_checkbox);
51edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        mEditText = (EditText) mView.findViewById(R.id.owner_info_edit_text);
52edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        mEditText.setText(info);
53edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        mEditText.setEnabled(enabled != 0);
54edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        mCheckbox.setChecked(enabled != 0);
558666b9e170c23a9595d611a49b7c8262e357ced1Amith Yamasani        if (UserHandle.myUserId() != UserHandle.USER_OWNER) {
568666b9e170c23a9595d611a49b7c8262e357ced1Amith Yamasani            mCheckbox.setText(R.string.show_user_info_on_lockscreen_label);
578666b9e170c23a9595d611a49b7c8262e357ced1Amith Yamasani        }
58edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        mCheckbox.setOnCheckedChangeListener(new OnCheckedChangeListener() {
59edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
60edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller                Settings.Secure.putInt(res, Settings.Secure.LOCK_SCREEN_OWNER_INFO_ENABLED,
61edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller                        isChecked ? 1 : 0);
62edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller                mEditText.setEnabled(isChecked); // disable text field if not enabled
63edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller            }
64edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        });
65edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    }
66edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller
67edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    @Override
68edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    public void onPause() {
69edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        super.onPause();
70edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        saveToDb();
71edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    }
72edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller
73edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    void saveToDb() {
74edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        ContentResolver res = getActivity().getContentResolver();
75edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        String info = mEditText.getText().toString();
76edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller        Settings.Secure.putString(res, Settings.Secure.LOCK_SCREEN_OWNER_INFO, info);
77edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller    }
78edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller
79edfaaeaed7e7329620b8e9d62a62aa41f09ad787Jim Miller}
80