14e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
24e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
34e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// found in the LICENSE file.
44e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)package org.chromium.chrome.browser.infobar;
54e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
64e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)import android.content.Context;
74e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)import android.widget.TextView;
84e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
94e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)import org.chromium.chrome.R;
104e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
114e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)/**
124e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) * Never panel shown in the translate infobar
134e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) */
144e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)public class TranslateNeverPanel implements TranslateSubPanel {
154e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
164e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    private final TranslateOptions mOptions;
174e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    private final SubPanelListener mListener;
184e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
194e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    public TranslateNeverPanel(SubPanelListener listener, TranslateOptions options) {
204e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        mOptions = options;
214e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        mListener = listener;
224e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    }
234e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
244e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    @Override
254e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    public void createContent(Context context, InfoBarLayout layout) {
264e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        String changeLanguage = context.getString(
274e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)                R.string.translate_never_translate_message_text, mOptions.sourceLanguage());
284e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
294e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        TextView panelMessage = (TextView) layout.findViewById(R.id.infobar_message);
304e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        panelMessage.setText(changeLanguage);
314e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
324e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        layout.addButtons(
334e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)                context.getString(R.string.translate_never_translate_site),
344e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)                context.getString(R.string.translate_never_translate_language,
354e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)                        mOptions.sourceLanguage()));
364e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    }
374e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
384e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    @Override
394e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    public void onButtonClicked(boolean primary) {
404e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        if (primary) {
414e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)            mOptions.toggleNeverTranslateDomainState(true);
424e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        } else {
434e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)            mOptions.toggleNeverTranslateLanguageState(true);
444e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        }
454e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        mListener.onPanelClosed(InfoBar.ACTION_TYPE_NONE);
464e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    }
474e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)}
48