Migrate to gradle, appcompat as external dependency.
[mobilnebezpieczenstwo.git] / src / com / samsung / srpol / ui / MainActivity.java
diff --git a/src/com/samsung/srpol/ui/MainActivity.java b/src/com/samsung/srpol/ui/MainActivity.java
deleted file mode 100644 (file)
index 1d311c9..0000000
+++ /dev/null
@@ -1,352 +0,0 @@
-/*
-   Copyright (C) 2014  Samsung Electronics Polska Sp. z o.o.
-
-    This program is free software: you can redistribute it and/or modify
-    it under the terms of the GNU AFFERO General Public License as published by
-    the Free Software Foundation, either version 3 of the License, or
-    (at your option) any later version.
-    You may obtain a copy of the License at
-
-                http://www.gnu.org/licenses/agpl-3.0.txt
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-package com.samsung.srpol.ui;
-
-import java.util.List;
-
-import com.samsung.srpol.R;
-import com.samsung.srpol.loader.AppDetails;
-import com.samsung.srpol.loader.AppListLoader;
-import com.samsung.srpol.ui.drawer.MenuFragment;
-import com.samsung.srpol.ui.drawer.NavigationDrawerItemListener;
-import com.samsung.srpol.ui.tabpager.PageAdapter;
-
-import android.support.v7.app.ActionBarActivity;
-import android.support.v7.app.ActionBar;
-import android.support.v4.app.ActionBarDrawerToggle;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.content.Loader;
-import android.content.DialogInterface;
-import android.content.DialogInterface.OnDismissListener;
-import android.content.Intent;
-import android.content.SharedPreferences;
-import android.os.Bundle;
-import android.os.Handler;
-import android.preference.PreferenceManager;
-import android.util.Log;
-import android.view.Gravity;
-import android.view.Menu;
-import android.view.MenuItem;
-import android.view.View;
-import android.support.v4.view.GravityCompat;
-import android.support.v4.view.PagerTabStrip;
-import android.support.v4.view.ViewPager;
-import android.support.v4.widget.DrawerLayout;
-
-public class MainActivity extends ActionBarActivity implements
-        LoaderManager.LoaderCallbacks<List<AppDetails>> {
-    public static final String TAG = "MainActivity";
-
-    private static final String STATE_WELCOME_DIALOG_IS_OPEN = "welcome_dialog_is_open";
-    private static final String STATE_WELCOME_DIALOG_OPENED_FROM_MENU = "welcome_dialog_opened_from_menu";
-    private static final String STATE_DRAWER_MENU_IS_OPEN = "state_drawer_menu_is_open";
-
-    private MenuFragment mMenuFragment;
-
-    private WelcomeDialog mWelcomeDialog;
-    private ViewPager mViewPager;
-    private PageAdapter mFramePagerAdapter;
-    private boolean mDrawerOpenState = false;
-
-    @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setContentView(R.layout.activity_main);
-
-        if (savedInstanceState != null) {
-            boolean isWelcomeDialogOpen = savedInstanceState.getBoolean(
-                    STATE_WELCOME_DIALOG_IS_OPEN, false);
-            if (isWelcomeDialogOpen) {
-                boolean isOpenedFromMenu = savedInstanceState.getBoolean(
-                        STATE_WELCOME_DIALOG_OPENED_FROM_MENU, false);
-                showWelcomeDialog(isOpenedFromMenu);
-            }
-            mDrawerOpenState = savedInstanceState.getBoolean(STATE_DRAWER_MENU_IS_OPEN, false);
-        } else {
-            showWelcomeDialog(false);
-        }
-
-        getSupportLoaderManager().initLoader(0, null, this);
-
-        // if Loader was created then we have all data to create
-        // NavigationDrawer otherwise wait for loader to be created and then
-        // create NavigationDrawer
-        if (getSupportLoaderManager().getLoader(0) != null) {
-            initNavigationDrawer();
-        }
-
-        mFramePagerAdapter = new PageAdapter(getSupportFragmentManager(), getApplicationContext());
-        mViewPager = (ViewPager) findViewById(R.id.myviewpager);
-        mViewPager.setAdapter(mFramePagerAdapter);
-
-        PagerTabStrip pagerTabStrip = (PagerTabStrip) findViewById(R.id.titlestrip);
-        pagerTabStrip.setDrawFullUnderline(true);
-        pagerTabStrip.setTabIndicatorColor(getResources().getColor(R.color.tab_underline_color));
-    }
-
-    @Override
-    public void onSaveInstanceState(Bundle outState) {
-        super.onSaveInstanceState(outState);
-        if (mWelcomeDialog != null) {
-            outState.putBoolean(STATE_WELCOME_DIALOG_IS_OPEN,
-                    mWelcomeDialog.isShowing());
-            outState.putBoolean(STATE_WELCOME_DIALOG_OPENED_FROM_MENU,
-                    mWelcomeDialog.ismOpenedFromMenu());
-        }
-        if (isDrawerOpen() || (mDrawerOpenState && mDrawerLayout == null)) {
-            outState.putBoolean(STATE_DRAWER_MENU_IS_OPEN, true);
-        }
-    }
-
-    protected void onDestroy() {
-        if (mWelcomeDialog != null) {
-            if (mWelcomeDialog.isShowing()) {
-                mWelcomeDialog.dismiss();
-            }
-        }
-        super.onDestroy();
-    }
-
-    public void restoreActionBar() {
-        ActionBar actionBar = getSupportActionBar();
-        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
-        actionBar.setDisplayShowTitleEnabled(true);
-    }
-
-    @Override
-    protected boolean onPrepareOptionsPanel(View view, Menu menu) {
-        SharedPreferences sp = PreferenceManager
-                .getDefaultSharedPreferences(this);
-        boolean showSystemApp = sp.getBoolean(
-                AppListLoader.PREF_INCLUDE_SYSTEM_APPS,
-                true);
-        MenuItem menuItemSystem = menu.findItem(R.id.action_toggle_system_visibility);
-        if (menuItemSystem != null) {
-            if (showSystemApp) {
-                menuItemSystem.setTitle(R.string.hide_system_visibility);
-            } else {
-                menuItemSystem.setTitle(R.string.show_system_visibility);
-            }
-        }
-        return super.onPrepareOptionsPanel(view, menu);
-    }
-    
-    @Override
-    public boolean onCreateOptionsMenu(Menu menu) {
-        getMenuInflater().inflate(R.menu.main, menu);
-        restoreActionBar();
-        return true;
-    }
-
-    @Override
-    public void onBackPressed() {
-        if (isDrawerOpen()) {
-            closeDrawer();
-        } else {
-            super.onBackPressed();
-        }
-    }
-
-    @Override
-    public boolean onOptionsItemSelected(MenuItem item) {
-        if (mActionBarDrawerToggle != null
-                && mActionBarDrawerToggle.onOptionsItemSelected(item))
-            return true;
-        int id = item.getItemId();
-        switch (id) {
-            case R.id.action_about:
-                showWelcomeDialog(true);
-                return true;
-            case R.id.action_licence:
-                showLicense();
-                return true;
-            case R.id.action_toggle_system_visibility:
-                toggleSharedPrefences(AppListLoader.PREF_INCLUDE_SYSTEM_APPS);
-                refreshAfterChanges();
-                return true;
-        }
-        return super.onOptionsItemSelected(item);
-    }
-
-    public void toggleSharedPrefences(String preferenceName) {
-        SharedPreferences sp = PreferenceManager
-                .getDefaultSharedPreferences(this);
-        boolean actualValue = sp.getBoolean(preferenceName, true);
-        sp.edit().putBoolean(preferenceName, !actualValue).commit();
-    }
-
-    public void refreshAfterChanges() {
-        supportInvalidateOptionsMenu();
-        if (mFramePagerAdapter != null) {
-            mFramePagerAdapter.refreshAdapterNotify();
-            mFramePagerAdapter.notifyDataSetChanged();
-        }
-        if (mMenuFragment != null) {
-            mMenuFragment.notifyDataSetChanged();
-        }
-    }
-
-    @Override
-    public Loader<List<AppDetails>> onCreateLoader(int id, Bundle args) {
-        AppListLoader loader = new AppListLoader(this.getApplicationContext());
-        initNavigationDrawer();
-
-        return loader;
-    }
-
-    @Override
-    public void onLoadFinished(Loader<List<AppDetails>> loader,
-            List<AppDetails> data) {
-        Log.d(TAG, "onLoadFinished");
-
-        AppListLoader appLoader = (AppListLoader) loader;
-        if (appLoader.wasDataReloaded()) {
-            appLoader.resetWasDataReloaded();
-            mViewPager.setOffscreenPageLimit(AppListLoader.getCategories().size());
-            mFramePagerAdapter.refreshPages();
-        } else {
-            mFramePagerAdapter.refreshAdapterNotify();
-        }
-        if (mWelcomeDialog != null && mWelcomeDialog.isShowing()) {
-            mWelcomeDialog.loadingDone();
-        }
-        if (mMenuFragment != null) {
-            mMenuFragment.notifyDataSetChanged();
-        }
-    }
-
-    public void onLoaderReset(Loader<List<AppDetails>> arg0) {
-        mFramePagerAdapter.refreshAdapterNotify();
-    }
-
-    private void showWelcomeDialog(boolean fromMenu) {
-        Log.d(TAG, "showWelcomeActivity flag: " + fromMenu);
-        if (mWelcomeDialog == null) {
-            mWelcomeDialog = new WelcomeDialog(this, fromMenu);
-        }
-        if (!mWelcomeDialog.isShowing()) {
-            mWelcomeDialog.show(fromMenu);
-        }
-        if (!fromMenu) {
-            mWelcomeDialog.setOnDismissListener(new OnDismissListener() {
-
-                @Override
-                public void onDismiss(DialogInterface dialog) {
-                    openDrawerAnimate();
-                }
-            });
-        }
-    }
-
-    private void showLicense() {
-        Intent intent = new Intent(this, LicenseActivity.class);
-        startActivity(intent);
-    }
-
-    private DrawerLayout mDrawerLayout;
-    private View mFragmentContainerView;
-    private ActionBarDrawerToggle mActionBarDrawerToggle;
-
-    private void initNavigationDrawer() {
-        mMenuFragment = (MenuFragment) getSupportFragmentManager()
-                .findFragmentById(R.id.menu_container);
-        mMenuFragment.setDrawerItemListener(mDrawerItemListener);
-        mFragmentContainerView = findViewById(R.id.menu_container);
-        mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
-        setUp();
-        mMenuFragment.refresh();
-    }
-    
-    private NavigationDrawerItemListener mDrawerItemListener = new NavigationDrawerItemListener() {
-
-        public void onNavigationDrawerItemSelected(int position) {
-            if (mViewPager != null) {
-                mViewPager.setCurrentItem(position, true);
-                closeDrawer();
-            }
-        }
-    };
-
-    public void closeDrawer() {
-        if(mDrawerLayout != null){
-            mDrawerLayout.closeDrawer(Gravity.LEFT);
-            mDrawerOpenState=false;
-        }
-    }
-    
-    public boolean isDrawerOpen() {
-        return mDrawerLayout != null
-                && mDrawerLayout.isDrawerOpen(mFragmentContainerView);
-    }
-    
-    public void setUp() {
-        if (mDrawerLayout == null)
-            return;
-        mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow,
-                GravityCompat.START);
-        ActionBar actionBar = getSupportActionBar();
-        actionBar.setDisplayHomeAsUpEnabled(true);
-        actionBar.setHomeButtonEnabled(true);
-
-        mActionBarDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout,
-                R.drawable.ic_drawer, R.string.navigation_drawer_open,
-                R.string.navigation_drawer_close) {
-            @Override
-            public void onDrawerClosed(View drawerView) {
-                super.onDrawerClosed(drawerView);
-                supportInvalidateOptionsMenu();
-            }
-
-            @Override
-            public void onDrawerOpened(View drawerView) {
-                super.onDrawerOpened(drawerView);
-                supportInvalidateOptionsMenu(); 
-            }
-        };
-        mDrawerLayout.post(new Runnable() {
-            @Override
-            public void run() {
-                mActionBarDrawerToggle.syncState();
-            }
-        });
-        if (mDrawerOpenState && !isDrawerOpen()) {
-            mDrawerLayout.openDrawer(Gravity.LEFT);
-        }
-        mDrawerLayout.setDrawerListener(mActionBarDrawerToggle);
-    }
-
-    public void openDrawerAnimate() {
-        new Handler().post(new Runnable() {
-
-            @Override
-            public void run() {
-                if (mDrawerLayout != null) {
-                    mDrawerLayout.openDrawer(Gravity.LEFT);
-                    mDrawerOpenState = true;
-                }
-            }
-        });
-
-        if (mWelcomeDialog != null) {
-            mWelcomeDialog.setOnDismissListener(null);
-        }
-    }
-}