]> gitweb.stoutner.com Git - PrivacyBrowserAndroid.git/blobdiff - app/src/free/java/com/stoutner/privacybrowser/BannerAd.java
Fix loading of bookmarks from the Bookmarks Activity. https://redmine.stoutner.com...
[PrivacyBrowserAndroid.git] / app / src / free / java / com / stoutner / privacybrowser / BannerAd.java
index 6a50a0ad4174b4e72cdcf6a27a1fb686233f0b68..c9263c27dec9ebe5205a829976bae38a4dacc607 100644 (file)
@@ -1,5 +1,5 @@
-/**
- * Copyright 2016 Soren Stoutner <soren@stoutner.com>.
+/*
+ * Copyright © 2016-2017 Soren Stoutner <soren@stoutner.com>.
  *
  * This file is part of Privacy Browser <https://www.stoutner.com/privacy-browser>.
  *
 
 package com.stoutner.privacybrowser;
 
+import android.content.Context;
 import android.support.v7.app.AppCompatActivity;
 import android.view.View;
+import android.widget.RelativeLayout;
 
 import com.google.android.gms.ads.AdRequest;
+import com.google.android.gms.ads.AdSize;
 import com.google.android.gms.ads.AdView;
 
-class BannerAd extends AppCompatActivity{
+public class BannerAd extends AppCompatActivity{
     public static void requestAd(View view) {
         // Cast view to an AdView.
         AdView adView = (AdView) view;
@@ -35,8 +38,34 @@ class BannerAd extends AppCompatActivity{
         adView.loadAd(adRequest);
     }
 
+    public static void reloadAfterRotate (View view, Context applicationContext, String ad_id) {
+        // Cast `view` to an `AdView`.
+        AdView adView = (AdView) view;
+
+        // Save the layout parameters.
+        RelativeLayout.LayoutParams adViewLayoutParameters = (RelativeLayout.LayoutParams) adView.getLayoutParams();
+
+        // Remove the `AdView`.
+        RelativeLayout adViewParentLayout = (RelativeLayout) adView.getParent();
+        adViewParentLayout.removeView(adView);
+
+        // Setup the new `AdView`.
+        adView = new AdView(applicationContext);
+        adView.setAdSize(AdSize.SMART_BANNER);
+        adView.setAdUnitId(ad_id);
+        adView.setId(R.id.adview);
+        adView.setLayoutParams(adViewLayoutParameters);
+
+        // Display the new `AdView`.
+        adViewParentLayout.addView(adView);
+
+        // Request a new ad.
+        AdRequest adRequest = new AdRequest.Builder().build();
+        adView.loadAd(adRequest);
+    }
+
     public static void hideAd(View view) {
-        // Cast view to an AdView.
+        // Cast `view` to an `AdView`.
         AdView adView = (AdView) view;
 
         // Hide the ad.
@@ -44,10 +73,26 @@ class BannerAd extends AppCompatActivity{
     }
 
     public static void showAd(View view) {
-        // Cast view to an AdView.
+        // Cast `view` to an `AdView`.
         AdView adView = (AdView) view;
 
-        // Hide the ad.
+        // Show the ad.
         adView.setVisibility(View.VISIBLE);
     }
+
+    public static void pauseAd(View view) {
+        // Cast `view` to an `AdView`.
+        AdView adView = (AdView) view;
+
+        // Pause the `AdView`.
+        adView.pause();
+    }
+
+    public static void resumeAd(View view) {
+        // Cast `view` to an `AdView`.
+        AdView adView = (AdView) view;
+
+        // Resume the `AdView`.
+        adView.resume();
+    }
 }
\ No newline at end of file