From c4f37ea4dc29bec890856645d80ebb91a229dc6e Mon Sep 17 00:00:00 2001
From: Shubham Maheshwari <shub97@gmail.com>
Date: Wed, 19 Apr 2017 00:07:44 +0530
Subject: [PATCH] Added Browser history "get" function

---
 app/build.gradle                              |  1 +
 app/src/main/AndroidManifest.xml              |  1 +
 .../taskboxx/AyncTasks/BrowserDataGetter.java | 42 +++++++++++++++++++
 .../java/com/example/taskboxx/Dashboard.java  | 16 ++++---
 .../example/taskboxx/DashboardFragment.java   | 10 ++++-
 .../main/res/layout/activity_dashboard.xml    |  3 +-
 6 files changed, 65 insertions(+), 8 deletions(-)
 create mode 100644 app/src/main/java/com/example/taskboxx/AyncTasks/BrowserDataGetter.java

diff --git a/app/build.gradle b/app/build.gradle
index 388c229..8a9354e 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -27,6 +27,7 @@ dependencies {
 
     compile 'com.google.firebase:firebase-auth:10.2.1'
     compile 'com.google.firebase:firebase-database:10.2.1'
+    compile 'me.everything:providers-android:1.0.1'
     compile 'com.android.support:appcompat-v7:25.3.0'
     compile 'com.android.support:design:25.3.0'
     compile 'com.github.PhilJay:MPAndroidChart:v3.0.0-beta1'
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 976914c..da51be1 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -3,6 +3,7 @@
     package="com.example.taskboxx">
 
     <uses-permission android:name="android.permission.INTERNET" />
+    <uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"/>
 
     <application
         android:allowBackup="true"
diff --git a/app/src/main/java/com/example/taskboxx/AyncTasks/BrowserDataGetter.java b/app/src/main/java/com/example/taskboxx/AyncTasks/BrowserDataGetter.java
new file mode 100644
index 0000000..b75ca5e
--- /dev/null
+++ b/app/src/main/java/com/example/taskboxx/AyncTasks/BrowserDataGetter.java
@@ -0,0 +1,42 @@
+package com.example.taskboxx.AyncTasks;
+
+import android.app.ProgressDialog;
+import android.os.AsyncTask;
+import android.util.Log;
+
+import com.example.taskboxx.Dashboard;
+
+import java.util.List;
+
+import me.everything.providers.android.browser.BrowserProvider;
+
+import static com.example.taskboxx.LoginActivity.TAG;
+
+/**
+ * Created by Shubham Maheshwari on 18-04-2017.
+ */
+
+public class BrowserDataGetter extends AsyncTask<String,Boolean,Boolean>{
+
+    ProgressDialog pd = new ProgressDialog(Dashboard.getContext1());
+
+    @Override
+    protected void onPreExecute(){
+        pd.setMessage("Loading");
+        pd.show();
+    }
+
+    @Override
+    protected Boolean doInBackground(String... params) {
+        BrowserProvider browserProvider = new BrowserProvider(Dashboard.getContext1());
+        List list = browserProvider.getSearches().getList();
+        Log.d(TAG, "Browser Searches: " + list);
+        return true;
+    }
+
+    @Override
+    protected void onPostExecute(Boolean result){
+        pd.dismiss();
+    }
+
+}
diff --git a/app/src/main/java/com/example/taskboxx/Dashboard.java b/app/src/main/java/com/example/taskboxx/Dashboard.java
index d296159..37b2e3b 100644
--- a/app/src/main/java/com/example/taskboxx/Dashboard.java
+++ b/app/src/main/java/com/example/taskboxx/Dashboard.java
@@ -2,11 +2,8 @@ package com.example.taskboxx;
 
 import android.app.Fragment;
 import android.app.FragmentManager;
-import android.content.Intent;
+import android.content.Context;
 import android.os.Bundle;
-import android.support.design.widget.FloatingActionButton;
-import android.support.design.widget.Snackbar;
-import android.view.View;
 import android.support.design.widget.NavigationView;
 import android.support.v4.view.GravityCompat;
 import android.support.v4.widget.DrawerLayout;
@@ -16,13 +13,14 @@ import android.support.v7.widget.Toolbar;
 import android.view.Menu;
 import android.view.MenuItem;
 
-import com.github.mikephil.charting.charts.PieChart;
+import com.example.taskboxx.AyncTasks.BrowserDataGetter;
 import com.google.firebase.auth.FirebaseAuth;
 
 public class Dashboard extends AppCompatActivity
         implements NavigationView.OnNavigationItemSelectedListener {
 
     FirebaseAuth mAuth;
+    private static Context context;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -31,6 +29,8 @@ public class Dashboard extends AppCompatActivity
         Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
         setSupportActionBar(toolbar);
 
+        context = this;
+
         mAuth = FirebaseAuth.getInstance();
 
         DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
@@ -47,6 +47,12 @@ public class Dashboard extends AppCompatActivity
         Fragment dashboardFragment = new DashboardFragment();
         fragmentManager.beginTransaction().replace(R.id.content_frame,dashboardFragment).commit();
 
+        new BrowserDataGetter().execute("");
+
+    }
+
+    public static Context getContext1(){
+        return context;
     }
 
     @Override
diff --git a/app/src/main/java/com/example/taskboxx/DashboardFragment.java b/app/src/main/java/com/example/taskboxx/DashboardFragment.java
index df5cd69..d825b36 100644
--- a/app/src/main/java/com/example/taskboxx/DashboardFragment.java
+++ b/app/src/main/java/com/example/taskboxx/DashboardFragment.java
@@ -2,7 +2,6 @@ package com.example.taskboxx;
 
 import android.app.Fragment;
 import android.app.ProgressDialog;
-import android.content.Intent;
 import android.graphics.Color;
 import android.os.Bundle;
 import android.util.Log;
@@ -13,7 +12,6 @@ import android.widget.Toast;
 
 import com.github.mikephil.charting.animation.Easing;
 import com.github.mikephil.charting.charts.PieChart;
-import com.github.mikephil.charting.components.Legend;
 import com.github.mikephil.charting.data.Entry;
 import com.github.mikephil.charting.data.PieData;
 import com.github.mikephil.charting.data.PieDataSet;
@@ -43,6 +41,7 @@ public class DashboardFragment extends Fragment {
     private ArrayList<Float> yData = new ArrayList<>();
     private ArrayList<String> xData = new ArrayList<>();
     PieChart pieChart;
+    ProgressDialog pd;
 
     @Override
     public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
@@ -51,8 +50,12 @@ public class DashboardFragment extends Fragment {
 
         mAuth = FirebaseAuth.getInstance();
         mDatabase = FirebaseDatabase.getInstance().getReference();
+        pd = new ProgressDialog(Dashboard.getContext1());
+
 
         pieChart = (PieChart) rootView.findViewById(R.id.idPieChart);
+        pd.setMessage("Loading...");
+        pd.show();
 
         pieChart.setDescription(null);
         pieChart.setRotationEnabled(true);
@@ -109,6 +112,7 @@ public class DashboardFragment extends Fragment {
                 Toast.makeText(getActivity(), "You browse for " + type + "\n" + "for " + percent + "% of the time", Toast.LENGTH_LONG).show();
             }
 
+
             @Override
             public void onNothingSelected() {
 
@@ -142,6 +146,8 @@ public class DashboardFragment extends Fragment {
 
         pieDataSet.setColors(colors);
 
+        pd.dismiss();
+
         //create pie data object
         PieData pieData = new PieData(pieDataSet);
         pieChart.setData(pieData);
diff --git a/app/src/main/res/layout/activity_dashboard.xml b/app/src/main/res/layout/activity_dashboard.xml
index 0abac6a..ae15d12 100644
--- a/app/src/main/res/layout/activity_dashboard.xml
+++ b/app/src/main/res/layout/activity_dashboard.xml
@@ -6,7 +6,8 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:fitsSystemWindows="true"
-    tools:openDrawer="start">
+    tools:openDrawer="start"
+    tools:context="com.example.taskboxx.Dashboard">
 
     <include
         layout="@layout/app_bar_dashboard"
-- 
GitLab