1499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler/*
2499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler * Copyright (C) 2014 The Android Open Source Project
3499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler *
4499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler * Licensed under the Apache License, Version 2.0 (the "License");
5499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler * you may not use this file except in compliance with the License.
6499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler * You may obtain a copy of the License at
7499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler *
8499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler *      http://www.apache.org/licenses/LICENSE-2.0
9499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler *
10499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler * Unless required by applicable law or agreed to in writing, software
11499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler * distributed under the License is distributed on an "AS IS" BASIS,
12499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler * See the License for the specific language governing permissions and
14499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler * limitations under the License.
15499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler */
16499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
17499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerpackage com.android.email.activity.setup;
18499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
19499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport android.os.Bundle;
20499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport android.view.LayoutInflater;
21499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport android.view.View;
22499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport android.view.ViewGroup;
23499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport android.widget.ArrayAdapter;
24499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport android.widget.CheckBox;
25499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport android.widget.Spinner;
26499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
27499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport com.android.email.R;
28499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport com.android.email.activity.UiUtilities;
29499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport com.android.email.service.EmailServiceUtils;
30499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport com.android.emailcommon.provider.Account;
31499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport com.android.emailcommon.provider.Policy;
32499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantlerimport com.android.emailcommon.service.SyncWindow;
33499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
3476472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantlerpublic class AccountSetupOptionsFragment extends AccountSetupFragment {
35499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    private Spinner mCheckFrequencyView;
36499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    private Spinner mSyncWindowView;
37e5ac64a1037d62d5cf8815f835fbcd38ad199e8dTony Mantler    private View mSyncwindowLabel;
38499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    private CheckBox mNotifyView;
39499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    private CheckBox mSyncContactsView;
40499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    private CheckBox mSyncCalendarView;
41499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    private CheckBox mSyncEmailView;
42499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    private CheckBox mBackgroundAttachmentsView;
43499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
44499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    /** Default sync window for new EAS accounts */
45499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    private static final int SYNC_WINDOW_EAS_DEFAULT = SyncWindow.SYNC_WINDOW_1_WEEK;
46499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
4776472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    public interface Callback extends AccountSetupFragment.Callback {
4876472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
4976472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    }
5076472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
5176472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    public static AccountSetupOptionsFragment newInstance() {
5276472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler        return new AccountSetupOptionsFragment();
5376472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler    }
5476472ae40cd55d17edb0420e8fc2a7bae60c50deTony Mantler
55499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    @Override
56499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    public View onCreateView(LayoutInflater inflater, ViewGroup container,
57499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            Bundle savedInstanceState) {
58ae980cd685a867b3fecfd38c876fd18d98b7c86bTony Mantler        final View view = inflateTemplatedView(inflater, container,
59ae980cd685a867b3fecfd38c876fd18d98b7c86bTony Mantler                R.layout.account_setup_options_fragment, R.string.account_setup_options_headline);
60499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
61499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mCheckFrequencyView = UiUtilities.getView(view, R.id.account_check_frequency);
62499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mSyncWindowView = UiUtilities.getView(view, R.id.account_sync_window);
63499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mNotifyView = UiUtilities.getView(view, R.id.account_notify);
64499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mNotifyView.setChecked(true);
65499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mSyncContactsView = UiUtilities.getView(view, R.id.account_sync_contacts);
66499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mSyncCalendarView = UiUtilities.getView(view, R.id.account_sync_calendar);
67499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mSyncEmailView = UiUtilities.getView(view, R.id.account_sync_email);
68499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mSyncEmailView.setChecked(true);
69499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mBackgroundAttachmentsView = UiUtilities.getView(view, R.id.account_background_attachments);
70499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mBackgroundAttachmentsView.setChecked(true);
71e5ac64a1037d62d5cf8815f835fbcd38ad199e8dTony Mantler        mSyncwindowLabel = UiUtilities.getView(view, R.id.account_sync_window_label);
72499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
73499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        return view;
74499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    }
75499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
76499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    @Override
77499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    public void onActivityCreated(Bundle savedInstanceState) {
78499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        super.onActivityCreated(savedInstanceState);
79499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
80499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        final View view = getView();
81499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
82064726d9f9fb7c38a252fc9c4fe2b7cf645eade0Tony Mantler        final SetupDataFragment setupData =
83064726d9f9fb7c38a252fc9c4fe2b7cf645eade0Tony Mantler                ((SetupDataFragment.SetupDataContainer) getActivity()).getSetupData();
84064726d9f9fb7c38a252fc9c4fe2b7cf645eade0Tony Mantler        final Account account = setupData.getAccount();
85499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
86499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        final EmailServiceUtils.EmailServiceInfo serviceInfo =
87064726d9f9fb7c38a252fc9c4fe2b7cf645eade0Tony Mantler                setupData.getIncomingServiceInfo(getActivity());
88499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
89499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        final CharSequence[] frequencyValues = serviceInfo.syncIntervals;
90499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        final CharSequence[] frequencyEntries = serviceInfo.syncIntervalStrings;
91499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
92499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        // Now create the array used by the sync interval Spinner
93499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        final SpinnerOption[] checkFrequencies = new SpinnerOption[frequencyEntries.length];
94499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        for (int i = 0; i < frequencyEntries.length; i++) {
95499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            checkFrequencies[i] = new SpinnerOption(
96499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                    Integer.valueOf(frequencyValues[i].toString()), frequencyEntries[i].toString());
97499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        }
98499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        final ArrayAdapter<SpinnerOption> checkFrequenciesAdapter =
99e5ac64a1037d62d5cf8815f835fbcd38ad199e8dTony Mantler                new ArrayAdapter<>(getActivity(), android.R.layout.simple_spinner_item,
100499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                        checkFrequencies);
101499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        checkFrequenciesAdapter
102499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
103499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mCheckFrequencyView.setAdapter(checkFrequenciesAdapter);
104499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        SpinnerOption.setSpinnerOptionValue(mCheckFrequencyView, account.getSyncInterval());
105499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
106499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        if (serviceInfo.offerLookback) {
107499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            enableLookbackSpinner(account);
108499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        }
109499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
110499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        if (serviceInfo.syncContacts) {
111499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            mSyncContactsView.setVisibility(View.VISIBLE);
112499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            mSyncContactsView.setChecked(true);
113499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            UiUtilities.setVisibilitySafe(view, R.id.account_sync_contacts_divider, View.VISIBLE);
114499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        }
115499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        if (serviceInfo.syncCalendar) {
116499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            mSyncCalendarView.setVisibility(View.VISIBLE);
117499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            mSyncCalendarView.setChecked(true);
118499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            UiUtilities.setVisibilitySafe(view, R.id.account_sync_calendar_divider, View.VISIBLE);
119499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        }
120499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
121499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        if (!serviceInfo.offerAttachmentPreload) {
122499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            mBackgroundAttachmentsView.setVisibility(View.GONE);
123499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            UiUtilities.setVisibilitySafe(view, R.id.account_background_attachments_divider,
124499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                    View.GONE);
125499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        }
126499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    }
127499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
128499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    /**
129499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler     * Enable an additional spinner using the arrays normally handled by preferences
130499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler     */
131499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    private void enableLookbackSpinner(Account account) {
132499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        // Show everything
133e5ac64a1037d62d5cf8815f835fbcd38ad199e8dTony Mantler        mSyncWindowView.setVisibility(View.VISIBLE);
134e5ac64a1037d62d5cf8815f835fbcd38ad199e8dTony Mantler        mSyncwindowLabel.setVisibility(View.VISIBLE);
135499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
136499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        // Generate spinner entries using XML arrays used by the preferences
137499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        final CharSequence[] windowValues = getResources().getTextArray(
138499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                R.array.account_settings_mail_window_values);
139499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        final CharSequence[] windowEntries = getResources().getTextArray(
140499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                R.array.account_settings_mail_window_entries);
141499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
142499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        // Find a proper maximum for email lookback, based on policy (if we have one)
143499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        int maxEntry = windowEntries.length;
144499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        final Policy policy = account.mPolicy;
145499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        if (policy != null) {
146499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            final int maxLookback = policy.mMaxEmailLookback;
147499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            if (maxLookback != 0) {
148499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                // Offset/Code   0      1      2      3      4        5
149499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                // Entries      auto, 1 day, 3 day, 1 week, 2 week, 1 month
150499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                // Lookback     N/A   1 day, 3 day, 1 week, 2 week, 1 month
151499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                // Since our test below is i < maxEntry, we must set maxEntry to maxLookback + 1
152499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                maxEntry = maxLookback + 1;
153499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            }
154499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        }
155499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
156499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        // Now create the array used by the Spinner
157499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        final SpinnerOption[] windowOptions = new SpinnerOption[maxEntry];
158499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        int defaultIndex = -1;
159499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        for (int i = 0; i < maxEntry; i++) {
160499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            final int value = Integer.valueOf(windowValues[i].toString());
161499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            windowOptions[i] = new SpinnerOption(value, windowEntries[i].toString());
162499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            if (value == SYNC_WINDOW_EAS_DEFAULT) {
163499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                defaultIndex = i;
164499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            }
165499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        }
166499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
167499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        final ArrayAdapter<SpinnerOption> windowOptionsAdapter =
168e5ac64a1037d62d5cf8815f835fbcd38ad199e8dTony Mantler                new ArrayAdapter<>(getActivity(), android.R.layout.simple_spinner_item,
169499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                        windowOptions);
170499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        windowOptionsAdapter
171499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler                .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
172499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        mSyncWindowView.setAdapter(windowOptionsAdapter);
173499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
174499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        SpinnerOption.setSpinnerOptionValue(mSyncWindowView, account.getSyncLookback());
175499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        if (defaultIndex >= 0) {
176499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            mSyncWindowView.setSelection(defaultIndex);
177499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        }
178499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    }
179499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
180499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    public boolean getBackgroundAttachmentsValue() {
181499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        return mBackgroundAttachmentsView.isChecked();
182499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    }
183499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
184499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    public Integer getCheckFrequencyValue() {
185499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        return (Integer)((SpinnerOption)mCheckFrequencyView.getSelectedItem()).value;
186499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    }
187499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
188499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    /**
189499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler     * @return Sync window value or null if view is hidden
190499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler     */
191499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    public Integer getAccountSyncWindowValue() {
192e5ac64a1037d62d5cf8815f835fbcd38ad199e8dTony Mantler        if (mSyncWindowView.getVisibility() != View.VISIBLE) {
193499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler            return null;
194499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        }
195499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        return (Integer)((SpinnerOption)mSyncWindowView.getSelectedItem()).value;
196499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    }
197499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
198499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    public boolean getSyncEmailValue() {
199499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        return mSyncEmailView.isChecked();
200499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    }
201499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
202499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    public boolean getSyncCalendarValue() {
203499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        return mSyncCalendarView.isChecked();
204499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    }
205499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
206499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    public boolean getSyncContactsValue() {
207499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        return mSyncContactsView.isChecked();
208499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    }
209499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler
210499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    public boolean getNotifyValue() {
211499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler        return mNotifyView.isChecked();
212499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler    }
213499ac7b063248efb3b4815d16f4063d68f558d3aTony Mantler}
214