/*
- * Copyright © 2016-2017 Soren Stoutner <soren@stoutner.com>.
+ * Copyright © 2016-2019 Soren Stoutner <soren@stoutner.com>.
*
* This file is part of Privacy Browser <https://www.stoutner.com/privacy-browser>.
*
package com.stoutner.privacybrowser.activities;
import android.os.Bundle;
-import android.support.design.widget.TabLayout;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentManager;
-import android.support.v4.app.FragmentPagerAdapter;
-import android.support.v4.view.ViewPager;
-import android.support.v7.app.ActionBar;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.Toolbar;
+import android.view.WindowManager;
+
+import androidx.appcompat.app.ActionBar;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.appcompat.widget.Toolbar; // The AndroidX toolbar must be used until the minimum API is >= 21.
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentManager;
+import androidx.fragment.app.FragmentPagerAdapter;
+import androidx.viewpager.widget.ViewPager;
+
+import com.google.android.material.tabs.TabLayout;
import com.stoutner.privacybrowser.fragments.GuideTabFragment;
import com.stoutner.privacybrowser.R;
public class GuideActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
+ // Disable screenshots if not allowed.
+ if (!MainWebViewActivity.allowScreenshots) {
+ getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
+ }
+
// Set the theme.
if (MainWebViewActivity.darkTheme) {
setTheme(R.style.PrivacyBrowserDark_SecondaryActivity);
// Run the default commands.
super.onCreate(savedInstanceState);
- // Set the content view according to the theme.
- if (MainWebViewActivity.darkTheme) {
- setContentView(R.layout.guide_coordinatorlayout_dark);
- } else {
- setContentView(R.layout.guide_coordinatorlayout_light);
- }
+ // Set the content view.
+ setContentView(R.layout.guide_coordinatorlayout);
+
+ // The AndroidX toolbar must be used until the minimum API is >= 21.
+ Toolbar toolbar = findViewById(R.id.guide_toolbar);
+ setSupportActionBar(toolbar);
+
+ // Get a handle for the action bar.
+ final ActionBar actionBar = getSupportActionBar();
- // We need to use `SupportActionBar` from `android.support.v7.app.ActionBar` until the minimum API is >= 21.
- Toolbar guideAppBar = (Toolbar) findViewById(R.id.guide_toolbar);
- setSupportActionBar(guideAppBar);
+ // Remove the incorrect lint warning that the action bar might be null.
+ assert actionBar != null;
- // Display the home arrow on `ppBar`.
- final ActionBar appBar = getSupportActionBar();
- assert appBar != null; // This assert removes the incorrect lint warning in Android Studio on the following line that `appBar` might be `null`.
- appBar.setDisplayHomeAsUpEnabled(true);
+ // Display the home arrow on the action bar.
+ actionBar.setDisplayHomeAsUpEnabled(true);
// Setup the ViewPager.
- ViewPager aboutViewPager = (ViewPager) findViewById(R.id.guide_viewpager);
+ ViewPager aboutViewPager = findViewById(R.id.guide_viewpager);
assert aboutViewPager != null; // This assert removes the incorrect warning in Android Studio on the following line that aboutViewPager might be null.
aboutViewPager.setAdapter(new guidePagerAdapter(getSupportFragmentManager()));
// Setup the TabLayout and connect it to the ViewPager.
- TabLayout aboutTabLayout = (TabLayout) findViewById(R.id.guide_tablayout);
+ TabLayout aboutTabLayout = findViewById(R.id.guide_tablayout);
assert aboutTabLayout != null; // This assert removes the incorrect warning in Android Studio on the following line that aboutTabLayout might be null.
aboutTabLayout.setupWithViewPager(aboutViewPager);
}
private class guidePagerAdapter extends FragmentPagerAdapter {
- private guidePagerAdapter(FragmentManager fm) {
- super(fm);
+ private guidePagerAdapter(FragmentManager fragmentManager) {
+ // Run the default commands.
+ super(fragmentManager);
}
@Override
// Get the count of the number of tabs.
public int getCount() {
- return 7;
+ return 10;
}
@Override
return getString(R.string.user_agent);
case 4:
- return getString(R.string.domain_settings);
+ return getString(R.string.requests);
case 5:
- return getString(R.string.tor);
+ return getString(R.string.domain_settings);
case 6:
+ return getString(R.string.ssl_certificates);
+
+ case 7:
+ return getString(R.string.tor);
+
+ case 8:
return getString(R.string.tracking_ids);
+ case 9:
+ return getString(R.string.bookmarks);
+
default:
return "";
}
return GuideTabFragment.createTab(tab);
}
}
-
}