org.mozilla.mozstumbler.client.subactivities.FirstRunFragment.java Source code

Java tutorial

Introduction

Here is the source code for org.mozilla.mozstumbler.client.subactivities.FirstRunFragment.java

Source

/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

package org.mozilla.mozstumbler.client.subactivities;

import android.app.Dialog;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.text.method.LinkMovementMethod;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;

import org.mozilla.mozstumbler.R;
import org.mozilla.mozstumbler.client.ClientPrefs;
import org.mozilla.mozstumbler.client.MainApp;
import org.mozilla.mozstumbler.svclocator.ServiceLocator;
import org.mozilla.mozstumbler.svclocator.services.log.ILogger;
import org.mozilla.mozstumbler.svclocator.services.log.LoggerUtil;

public class FirstRunFragment extends DialogFragment {

    private static ILogger Log = (ILogger) ServiceLocator.getInstance().getService(ILogger.class);
    private static final String LOG_TAG = LoggerUtil.makeLogTag(FirstRunFragment.class);
    private static FirstRunFragment mInstance;

    View root;

    public static void showInstance(FragmentManager fm) {
        if (mInstance == null) {
            mInstance = new FirstRunFragment();
            mInstance.show(fm, null);
        }
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        getDialog().setTitle(getActivity().getString(R.string.first_run_welcome_to_mozstumbler));
        getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(0xaa000000));
        getDialog().setCanceledOnTouchOutside(false);

        root = inflater.inflate(R.layout.fragment_first_run, container, false);

        TextView tv = (TextView) root.findViewById(R.id.textview2);
        tv.setMovementMethod(LinkMovementMethod.getInstance());

        Button button = (Button) root.findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                FragmentActivity thisActivity = getActivity();
                if (thisActivity == null) {
                    return;
                }
                MainApp theApp = (MainApp) thisActivity.getApplication();
                if (theApp == null) {
                    return;
                }
                theApp.startScanning();
                ClientPrefs.getInstance(getActivity()).setFirstRun(false);

                Dialog d = getDialog();
                if (d != null) {
                    dismiss();
                }
            }
        });

        return root;
    }
}