List of usage examples for android.app ProgressDialog findViewById
@Nullable public <T extends View> T findViewById(@IdRes int id)
From source file:com.mobicage.rogerthat.util.ui.UIUtils.java
public static ProgressDialog showProgressDialog(final Context context, CharSequence title, CharSequence message, boolean indeterminate, boolean cancelable, DialogInterface.OnCancelListener onCancelListener, int progressStyle, boolean show) { ProgressDialog dialog = new ProgressDialog(context); dialog.setTitle(title);/*from w ww .j a v a2s. com*/ dialog.setMessage(message); dialog.setIndeterminate(indeterminate); dialog.setCancelable(cancelable); dialog.setProgressNumberFormat(null); dialog.setProgressPercentFormat(null); dialog.setOnCancelListener(onCancelListener); dialog.setProgressStyle(progressStyle); dialog.setOnShowListener(new ProgressDialog.OnShowListener() { @Override public void onShow(DialogInterface dialog) { ProgressDialog progressDialog = (ProgressDialog) dialog; ProgressBar progressBar = (ProgressBar) progressDialog.findViewById(android.R.id.progress); UIUtils.setColors(context, progressBar); } }); if (show) { dialog.show(); } return dialog; }
From source file:com.synox.android.ui.dialog.IndeterminateProgressDialog.java
/** * {@inheritDoc}/*from ww w . ja va2s .c o m*/ */ @Override public Dialog onCreateDialog(Bundle savedInstanceState) { /// create indeterminate progress dialog final ProgressDialog progressDialog = new ProgressDialog(getActivity(), R.style.ProgressDialogTheme); progressDialog.setIndeterminate(true); progressDialog.setOnShowListener(new DialogInterface.OnShowListener() { @Override public void onShow(DialogInterface dialog) { ProgressBar v = (ProgressBar) progressDialog.findViewById(android.R.id.progress); v.getIndeterminateDrawable().setColorFilter(getResources().getColor(R.color.accent), android.graphics.PorterDuff.Mode.MULTIPLY); } }); /// set message int messageId = getArguments().getInt(ARG_MESSAGE_ID, R.string.placeholder_sentence); progressDialog.setMessage(getString(messageId)); /// set cancellation behavior boolean cancelable = getArguments().getBoolean(ARG_CANCELABLE, false); if (!cancelable) { progressDialog.setCancelable(false); // disable the back button OnKeyListener keyListener = new OnKeyListener() { @Override public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) { return keyCode == KeyEvent.KEYCODE_BACK; } }; progressDialog.setOnKeyListener(keyListener); } return progressDialog; }
From source file:com.cerema.cloud2.ui.dialog.IndeterminateProgressDialog.java
/** * {@inheritDoc}//w w w . j av a2 s . com */ @Override public Dialog onCreateDialog(Bundle savedInstanceState) { /// create indeterminate progress dialog final ProgressDialog progressDialog = new ProgressDialog(getActivity(), R.style.ProgressDialogTheme); progressDialog.setIndeterminate(true); progressDialog.setOnShowListener(new DialogInterface.OnShowListener() { @Override public void onShow(DialogInterface dialog) { ProgressBar v = (ProgressBar) progressDialog.findViewById(android.R.id.progress); v.getIndeterminateDrawable().setColorFilter(getResources().getColor(R.color.color_accent), android.graphics.PorterDuff.Mode.MULTIPLY); } }); /// set message int messageId = getArguments().getInt(ARG_MESSAGE_ID, R.string.placeholder_sentence); progressDialog.setMessage(getString(messageId)); /// set cancellation behavior boolean cancelable = getArguments().getBoolean(ARG_CANCELABLE, false); if (!cancelable) { progressDialog.setCancelable(false); // disable the back button OnKeyListener keyListener = new OnKeyListener() { @Override public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { return true; } return false; } }; progressDialog.setOnKeyListener(keyListener); } return progressDialog; }
From source file:org.fossasia.phimpme.share.nextcloud.IndeterminateProgressDialog.java
/** * {@inheritDoc}/*from w ww.ja va 2 s.com*/ */ @Override public Dialog onCreateDialog(Bundle savedInstanceState) { /// create indeterminate progress dialog final ProgressDialog progressDialog = new ProgressDialog(getActivity(), R.style.ProgressDialogTheme); progressDialog.setIndeterminate(true); progressDialog.setOnShowListener(new DialogInterface.OnShowListener() { @Override public void onShow(DialogInterface dialog) { ProgressBar v = (ProgressBar) progressDialog.findViewById(android.R.id.progress); v.getIndeterminateDrawable().setColorFilter(getResources().getColor(R.color.colorAccent), android.graphics.PorterDuff.Mode.MULTIPLY); } }); /// set message int messageId = getArguments().getInt(ARG_MESSAGE_ID, R.string.placeholder_sentence); progressDialog.setMessage(getString(messageId)); /// set cancellation behavior boolean cancelable = getArguments().getBoolean(ARG_CANCELABLE, false); if (!cancelable) { progressDialog.setCancelable(false); // disable the back button OnKeyListener keyListener = new OnKeyListener() { @Override public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { return true; } return false; } }; progressDialog.setOnKeyListener(keyListener); } return progressDialog; }
From source file:com.owncloud.android.ui.activity.Uploader.java
@Override protected Dialog onCreateDialog(final int id) { final AlertDialog.Builder builder = new Builder(this); switch (id) { case DIALOG_WAITING: final ProgressDialog pDialog = new ProgressDialog(this, R.style.ProgressDialogTheme); pDialog.setIndeterminate(false); pDialog.setCancelable(false);/* ww w. j a va 2s . c o m*/ pDialog.setMessage(getResources().getString(R.string.uploader_info_uploading)); pDialog.setOnShowListener(new DialogInterface.OnShowListener() { @Override public void onShow(DialogInterface dialog) { ProgressBar v = (ProgressBar) pDialog.findViewById(android.R.id.progress); v.getIndeterminateDrawable().setColorFilter(getResources().getColor(R.color.color_accent), android.graphics.PorterDuff.Mode.MULTIPLY); } }); return pDialog; case DIALOG_NO_ACCOUNT: builder.setIcon(android.R.drawable.ic_dialog_alert); builder.setTitle(R.string.uploader_wrn_no_account_title); builder.setMessage( String.format(getString(R.string.uploader_wrn_no_account_text), getString(R.string.app_name))); builder.setCancelable(false); builder.setPositiveButton(R.string.uploader_wrn_no_account_setup_btn_text, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { if (android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.ECLAIR_MR1) { // using string value since in API7 this // constatn is not defined // in API7 < this constatant is defined in // Settings.ADD_ACCOUNT_SETTINGS // and Settings.EXTRA_AUTHORITIES Intent intent = new Intent(android.provider.Settings.ACTION_ADD_ACCOUNT); intent.putExtra("authorities", new String[] { MainApp.getAuthTokenType() }); startActivityForResult(intent, REQUEST_CODE_SETUP_ACCOUNT); } else { // since in API7 there is no direct call for // account setup, so we need to // show our own AccountSetupAcricity, get // desired results and setup // everything for ourself Intent intent = new Intent(getBaseContext(), AccountAuthenticator.class); startActivityForResult(intent, REQUEST_CODE_SETUP_ACCOUNT); } } }); builder.setNegativeButton(R.string.uploader_wrn_no_account_quit_btn_text, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { finish(); } }); return builder.create(); case DIALOG_MULTIPLE_ACCOUNT: CharSequence ac[] = new CharSequence[mAccountManager .getAccountsByType(MainApp.getAccountType()).length]; for (int i = 0; i < ac.length; ++i) { ac[i] = DisplayUtils.convertIdn(mAccountManager.getAccountsByType(MainApp.getAccountType())[i].name, false); } builder.setTitle(R.string.common_choose_account); builder.setItems(ac, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { setAccount(mAccountManager.getAccountsByType(MainApp.getAccountType())[which]); onAccountSet(mAccountWasRestored); dialog.dismiss(); mAccountSelected = true; mAccountSelectionShowing = false; } }); builder.setCancelable(true); builder.setOnCancelListener(new OnCancelListener() { @Override public void onCancel(DialogInterface dialog) { mAccountSelectionShowing = false; dialog.cancel(); finish(); } }); return builder.create(); case DIALOG_NO_STREAM: builder.setIcon(android.R.drawable.ic_dialog_alert); builder.setTitle(R.string.uploader_wrn_no_content_title); builder.setMessage(R.string.uploader_wrn_no_content_text); builder.setCancelable(false); builder.setNegativeButton(R.string.common_cancel, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { finish(); } }); return builder.create(); default: throw new IllegalArgumentException("Unknown dialog id: " + id); } }
From source file:com.cerema.cloud2.ui.activity.Uploader.java
@Override protected Dialog onCreateDialog(final int id) { final AlertDialog.Builder builder = new Builder(this); switch (id) { case DIALOG_WAITING: final ProgressDialog pDialog = new ProgressDialog(this, R.style.ProgressDialogTheme); pDialog.setIndeterminate(false); pDialog.setCancelable(false);/*from www .j av a 2 s . c om*/ pDialog.setMessage(getResources().getString(R.string.uploader_info_uploading)); pDialog.setOnShowListener(new DialogInterface.OnShowListener() { @Override public void onShow(DialogInterface dialog) { ProgressBar v = (ProgressBar) pDialog.findViewById(android.R.id.progress); v.getIndeterminateDrawable().setColorFilter(getResources().getColor(R.color.color_accent), android.graphics.PorterDuff.Mode.MULTIPLY); } }); return pDialog; case DIALOG_NO_ACCOUNT: builder.setIcon(R.drawable.ic_warning); builder.setTitle(R.string.uploader_wrn_no_account_title); builder.setMessage( String.format(getString(R.string.uploader_wrn_no_account_text), getString(R.string.app_name))); builder.setCancelable(false); builder.setPositiveButton(R.string.uploader_wrn_no_account_setup_btn_text, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { if (android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.ECLAIR_MR1) { // using string value since in API7 this // constant is not defined // in API7 < this constant is defined in // Settings.ADD_ACCOUNT_SETTINGS // and Settings.EXTRA_AUTHORITIES Intent intent = new Intent(android.provider.Settings.ACTION_ADD_ACCOUNT); intent.putExtra("authorities", new String[] { MainApp.getAuthTokenType() }); startActivityForResult(intent, REQUEST_CODE_SETUP_ACCOUNT); } else { // since in API7 there is no direct call for // account setup, so we need to // show our own AccountSetupAcricity, get // desired results and setup // everything for ourself Intent intent = new Intent(getBaseContext(), AccountAuthenticator.class); startActivityForResult(intent, REQUEST_CODE_SETUP_ACCOUNT); } } }); builder.setNegativeButton(R.string.uploader_wrn_no_account_quit_btn_text, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { finish(); } }); return builder.create(); case DIALOG_MULTIPLE_ACCOUNT: CharSequence ac[] = new CharSequence[mAccountManager .getAccountsByType(MainApp.getAccountType()).length]; for (int i = 0; i < ac.length; ++i) { ac[i] = DisplayUtils.convertIdn(mAccountManager.getAccountsByType(MainApp.getAccountType())[i].name, false); } builder.setTitle(R.string.common_choose_account); builder.setItems(ac, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { setAccount(mAccountManager.getAccountsByType(MainApp.getAccountType())[which]); onAccountSet(mAccountWasRestored); dialog.dismiss(); mAccountSelected = true; mAccountSelectionShowing = false; } }); builder.setCancelable(true); builder.setOnCancelListener(new OnCancelListener() { @Override public void onCancel(DialogInterface dialog) { mAccountSelectionShowing = false; dialog.cancel(); finish(); } }); return builder.create(); case DIALOG_NO_STREAM: builder.setIcon(R.drawable.ic_warning); builder.setTitle(R.string.uploader_wrn_no_content_title); builder.setMessage(R.string.uploader_wrn_no_content_text); builder.setCancelable(false); builder.setNegativeButton(R.string.common_cancel, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { finish(); } }); return builder.create(); default: throw new IllegalArgumentException("Unknown dialog id: " + id); } }
From source file:com.synox.android.ui.activity.Uploader.java
@Override protected Dialog onCreateDialog(final int id) { final AlertDialog.Builder builder = new Builder(this); switch (id) { case DIALOG_WAITING: final ProgressDialog pDialog = new ProgressDialog(this, R.style.ProgressDialogTheme); pDialog.setIndeterminate(false); pDialog.setCancelable(false);// w w w .j a va 2 s . com pDialog.setMessage(getResources().getString(R.string.uploader_info_uploading)); pDialog.setOnShowListener(new DialogInterface.OnShowListener() { @Override public void onShow(DialogInterface dialog) { ProgressBar v = (ProgressBar) pDialog.findViewById(android.R.id.progress); v.getIndeterminateDrawable().setColorFilter(getResources().getColor(R.color.accent), android.graphics.PorterDuff.Mode.MULTIPLY); } }); return pDialog; case DIALOG_NO_ACCOUNT: builder.setIcon(android.R.drawable.ic_dialog_alert); builder.setTitle(R.string.uploader_wrn_no_account_title); builder.setMessage( String.format(getString(R.string.uploader_wrn_no_account_text), getString(R.string.app_name))); builder.setCancelable(false); builder.setPositiveButton(R.string.uploader_wrn_no_account_setup_btn_text, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { if (android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.ECLAIR_MR1) { // using string value since in API7 this // constatn is not defined // in API7 < this constatant is defined in // Settings.ADD_ACCOUNT_SETTINGS // and Settings.EXTRA_AUTHORITIES Intent intent = new Intent(android.provider.Settings.ACTION_ADD_ACCOUNT); intent.putExtra("authorities", new String[] { MainApp.getAuthTokenType() }); startActivityForResult(intent, REQUEST_CODE_SETUP_ACCOUNT); } else { // since in API7 there is no direct call for // account setup, so we need to // show our own AccountSetupAcricity, get // desired results and setup // everything for ourself Intent intent = new Intent(getBaseContext(), AccountAuthenticator.class); startActivityForResult(intent, REQUEST_CODE_SETUP_ACCOUNT); } } }); builder.setNegativeButton(R.string.uploader_wrn_no_account_quit_btn_text, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { finish(); } }); return builder.create(); case DIALOG_MULTIPLE_ACCOUNT: CharSequence ac[] = new CharSequence[mAccountManager .getAccountsByType(MainApp.getAccountType()).length]; for (int i = 0; i < ac.length; ++i) { ac[i] = DisplayUtils.convertIdn(mAccountManager.getAccountsByType(MainApp.getAccountType())[i].name, false); } builder.setTitle(R.string.common_choose_account); builder.setItems(ac, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { setAccount(mAccountManager.getAccountsByType(MainApp.getAccountType())[which]); onAccountSet(mAccountWasRestored); dialog.dismiss(); mAccountSelected = true; mAccountSelectionShowing = false; } }); builder.setCancelable(true); builder.setOnCancelListener(new OnCancelListener() { @Override public void onCancel(DialogInterface dialog) { mAccountSelectionShowing = false; dialog.cancel(); finish(); } }); return builder.create(); case DIALOG_NO_STREAM: builder.setIcon(android.R.drawable.ic_dialog_alert); builder.setTitle(R.string.uploader_wrn_no_content_title); builder.setMessage(R.string.uploader_wrn_no_content_text); builder.setCancelable(false); builder.setNegativeButton(R.string.common_cancel, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { finish(); } }); return builder.create(); default: throw new IllegalArgumentException("Unknown dialog id: " + id); } }
From source file:projekt.substratum.MainActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_activity); startService(new Intent(this, ThemeService.class)); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar);//w w w .j a v a 2 s .c o m getSupportActionBar().setDisplayHomeAsUpEnabled(true); getSupportActionBar().setHomeButtonEnabled(false); AccountHeader header = new AccountHeaderBuilder().withActivity(this) .withHeaderBackground(R.drawable.material_drawer_header_background).withProfileImagesVisible(false) .withSelectionListEnabledForSingleProfile(false).addProfiles(new ProfileDrawerItem() .withName(getString(R.string.drawer_name)).withEmail(BuildConfig.VERSION_NAME)) .withCurrentProfileHiddenInList(true).build(); final LibsSupportFragment fragment = new LibsBuilder().supportFragment(); if (References.checkOMS()) { drawer = new DrawerBuilder().withActivity(this).withToolbar(toolbar).withAccountHeader(header) .withSavedInstance(savedInstanceState).withActionBarDrawerToggleAnimated(true) .addDrawerItems( new PrimaryDrawerItem().withName(R.string.nav_home) .withIcon(R.drawable.nav_theme_packs), new PrimaryDrawerItem().withName(R.string.nav_overlays) .withIcon(R.drawable.nav_overlays), new PrimaryDrawerItem().withName(R.string.nav_bootanim) .withIcon(R.drawable.nav_bootanim), new PrimaryDrawerItem().withName(R.string.nav_fonts).withIcon(R.drawable.nav_fonts), new PrimaryDrawerItem().withName(R.string.nav_sounds).withIcon(R.drawable.nav_sounds), new SectionDrawerItem().withName(R.string.nav_section_header_utilities), new PrimaryDrawerItem().withName(R.string.nav_overlay_manager) .withIcon(R.drawable.nav_overlay_manager), new PrimaryDrawerItem().withName(R.string.nav_manage).withIcon(R.drawable.nav_manage), new PrimaryDrawerItem().withName(R.string.nav_priorities) .withIcon(R.drawable.nav_drawer_priorities), new PrimaryDrawerItem().withName(R.string.nav_backup_restore) .withIcon(R.drawable.nav_drawer_profiles), new SectionDrawerItem().withName(R.string.nav_section_header_more), new SecondaryDrawerItem().withName(R.string.nav_troubleshooting) .withIcon(R.drawable.nav_troubleshooting), new SecondaryDrawerItem().withName(R.string.nav_team) .withIcon(R.drawable.nav_drawer_team), new SecondaryDrawerItem().withName(getString(R.string.nav_opensource)) .withIcon(R.drawable.nav_drawer_licenses), new SecondaryDrawerItem().withName(R.string.nav_settings) .withIcon(R.drawable.nav_drawer_settings)) .withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() { @Override public boolean onItemClick(View view, int position, IDrawerItem drawerItem) { if (drawerItem != null) { switch (position) { case 1: if (drawerSelected != position) { switchFragment(((References.checkOMS()) ? getString(R.string.app_name) : getString(R.string.legacy_app_name)), "HomeFragment"); drawerSelected = 1; } break; case 2: if (drawerSelected != position) { switchFragment(getString(R.string.nav_overlays), "OverlaysFragment"); drawerSelected = 2; } break; case 3: if (drawerSelected != position) { switchFragment(getString(R.string.nav_bootanim), "BootAnimationsFragment"); drawerSelected = 3; } break; case 4: if (drawerSelected != position) { switchFragment(getString(R.string.nav_fonts), "FontsFragment"); drawerSelected = 4; } break; case 5: if (drawerSelected != position) { switchFragment(getString(R.string.nav_sounds), "SoundsFragment"); drawerSelected = 5; } break; case 7: switchFragment(getString(R.string.nav_overlay_manager), "AdvancedManagerFragment"); drawerSelected = 7; break; case 8: switchFragment(getString(R.string.nav_manage), "ManageFragment"); drawerSelected = 8; break; case 9: switchFragment(getString(R.string.nav_priorities), "PriorityLoaderFragment"); drawerSelected = 9; break; case 10: switchFragment(getString(R.string.nav_backup_restore), "ProfileFragment"); drawerSelected = 10; break; case 12: if (drawerSelected != position) { switchFragment(getString(R.string.nav_troubleshooting), "TroubleshootingFragment"); drawerSelected = 12; } break; case 13: if (drawerSelected != position) { switchFragment(getString(R.string.nav_team), "TeamFragment"); drawerSelected = 13; } break; case 14: switchFragmentToLicenses(getString(R.string.nav_opensource), fragment); drawerSelected = 14; break; case 15: if (drawerSelected != position) { switchFragment(getString(R.string.nav_settings), "SettingsFragment"); drawerSelected = 15; } break; } } return false; } }).withSelectedItem(1).withSelectedItemByPosition(1).build(); } else { drawer = new DrawerBuilder().withActivity(this).withToolbar(toolbar).withAccountHeader(header) .withSavedInstance(savedInstanceState).withActionBarDrawerToggleAnimated(true) .addDrawerItems( new PrimaryDrawerItem().withName(R.string.nav_home) .withIcon(R.drawable.nav_theme_packs), new PrimaryDrawerItem().withName(R.string.nav_overlays) .withIcon(R.drawable.nav_overlays), new PrimaryDrawerItem().withName(R.string.nav_sounds).withIcon(R.drawable.nav_sounds), new SectionDrawerItem().withName(R.string.nav_section_header_utilities), new PrimaryDrawerItem().withName(R.string.nav_overlay_manager) .withIcon(R.drawable.nav_overlay_manager), new PrimaryDrawerItem().withName(R.string.nav_manage).withIcon(R.drawable.nav_manage), new PrimaryDrawerItem().withName(R.string.nav_backup_restore) .withIcon(R.drawable.nav_drawer_profiles), new SectionDrawerItem().withName(R.string.nav_section_header_more), new SecondaryDrawerItem().withName(R.string.nav_troubleshooting) .withIcon(R.drawable.nav_troubleshooting), new SecondaryDrawerItem().withName(R.string.nav_team) .withIcon(R.drawable.nav_drawer_team), new SecondaryDrawerItem().withName(getString(R.string.nav_opensource)) .withIcon(R.drawable.nav_drawer_licenses), new SecondaryDrawerItem().withName(R.string.nav_settings) .withIcon(R.drawable.nav_drawer_settings)) .withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() { @Override public boolean onItemClick(View view, int position, IDrawerItem drawerItem) { if (drawerItem != null) { switch (position) { case 1: if (drawerSelected != position) { switchFragment(((References.checkOMS()) ? getString(R.string.app_name) : getString(R.string.legacy_app_name)), "HomeFragment"); drawerSelected = 1; } break; case 2: if (drawerSelected != position) { switchFragment(getString(R.string.nav_overlays), "OverlaysFragment"); drawerSelected = 2; } break; case 3: if (drawerSelected != position) { switchFragment(getString(R.string.nav_sounds), "SoundsFragment"); drawerSelected = 3; } break; case 5: switchFragment(getString(R.string.nav_overlay_manager), "AdvancedManagerFragment"); drawerSelected = 5; break; case 6: switchFragment(getString(R.string.nav_manage), "ManageFragment"); drawerSelected = 6; break; case 7: switchFragment(getString(R.string.nav_backup_restore), "ProfileFragment"); drawerSelected = 7; break; case 9: if (drawerSelected != position) { switchFragment(getString(R.string.nav_troubleshooting), "TroubleshootingFragment"); drawerSelected = 10; } break; case 10: if (drawerSelected != position) { switchFragment(getString(R.string.nav_team), "TeamFragment"); drawerSelected = 10; } break; case 11: switchFragmentToLicenses(getString(R.string.nav_opensource), fragment); drawerSelected = 11; break; case 12: if (drawerSelected != position) { switchFragment(getString(R.string.nav_settings), "SettingsFragment"); drawerSelected = 12; } break; } } return false; } }).withSelectedItem(1).withSelectedItemByPosition(1).build(); } if (!Root.requestRootAccess()) { final ProgressDialog mProgressDialog = new ProgressDialog(this, R.style.SubstratumBuilder_ActivityTheme); mProgressDialog.setIndeterminate(false); mProgressDialog.setCancelable(false); mProgressDialog.show(); mProgressDialog.setContentView(R.layout.root_rejected_loader); final float radius = 5; final View decorView = getWindow().getDecorView(); final View rootView = decorView.findViewById(android.R.id.content); final Drawable windowBackground = decorView.getBackground(); BlurView blurView = (BlurView) mProgressDialog.findViewById(R.id.blurView); blurView.setupWith(rootView).windowBackground(windowBackground) .blurAlgorithm(new RenderScriptBlur(this, true)).blurRadius(radius); final TextView textView = (TextView) mProgressDialog.findViewById(R.id.timer); CountDownTimer Count = new CountDownTimer(5000, 1000) { public void onTick(long millisUntilFinished) { if ((millisUntilFinished / 1000) > 1) { textView.setText(String.format(getString(R.string.root_rejected_timer_plural), (millisUntilFinished / 1000) + "")); } else { textView.setText(String.format(getString(R.string.root_rejected_timer_singular), (millisUntilFinished / 1000) + "")); } } public void onFinish() { mProgressDialog.dismiss(); finish(); } }; Count.start(); } permissionCheck = ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.WRITE_EXTERNAL_STORAGE); permissionCheck2 = ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.READ_PHONE_STATE); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { if (!Settings.System.canWrite(getApplicationContext())) { Intent intent = new Intent(android.provider.Settings.ACTION_MANAGE_WRITE_SETTINGS); intent.setData(Uri.parse("package:" + MainActivity.this.getPackageName())); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); } else { Log.d("SubstratumLogger", "Substratum was granted " + "'android.permission.WRITE_SETTINGS' " + "permissions for system runtime code execution."); } } if (permissionCheck == PackageManager.PERMISSION_GRANTED) { // permission already granted, allow the program to continue running File directory = new File(Environment.getExternalStorageDirectory(), "/.substratum/"); if (!directory.exists()) { directory.mkdirs(); } File cacheDirectory = new File(getCacheDir(), "/SubstratumBuilder/"); if (!cacheDirectory.exists()) { cacheDirectory.mkdirs(); } if (permissionCheck2 == PackageManager.PERMISSION_GRANTED) { // permission already granted, allow the program to continue running // Set the first option to start at app boot drawer.setSelectionAtPosition(1); } else { ActivityCompat.requestPermissions(this, new String[] { Manifest.permission.READ_PHONE_STATE }, PERMISSIONS_REQUEST_READ_PHONE_STATE); } } else { ActivityCompat.requestPermissions(this, new String[] { Manifest.permission.WRITE_EXTERNAL_STORAGE }, PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE); } // Now, let's grab root on the helper Intent rootIntent = new Intent(Intent.ACTION_MAIN); rootIntent.setAction("masquerade.substratum.INITIALIZE"); try { startActivity(rootIntent); } catch (RuntimeException re) { // Exception: At this point, Masquerade is not installed at all. } final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); if (References.checkOMS()) { if (!prefs.getBoolean("substratum_oms", true)) { Root.runCommand( "rm -r " + Environment.getExternalStorageDirectory().getAbsolutePath() + "/.substratum/"); Root.runCommand( "rm -r " + Environment.getExternalStorageDirectory().getAbsolutePath() + "/substratum/"); File directory = new File(Environment.getExternalStorageDirectory(), "/.substratum/"); if (!directory.exists()) { directory.mkdirs(); } } } else { if (prefs.getBoolean("substratum_oms", true)) { Root.runCommand( "rm -r " + Environment.getExternalStorageDirectory().getAbsolutePath() + "/.substratum/"); Root.runCommand( "rm -r " + Environment.getExternalStorageDirectory().getAbsolutePath() + "/substratum/"); File directory = new File(Environment.getExternalStorageDirectory(), "/.substratum/"); if (!directory.exists()) { directory.mkdirs(); } } } printFCMtoken(); }