diff --git a/app/src/main/assets/pages/AboutPage.html b/app/src/main/assets/pages/AboutPage.html
index 2f939e238..f857fa716 100644
--- a/app/src/main/assets/pages/AboutPage.html
+++ b/app/src/main/assets/pages/AboutPage.html
@@ -94,7 +94,7 @@
info
Version
- 1.4.9 (W)
+ 1.5.0 (W)
@@ -178,7 +178,7 @@ AndroidInterface.updateStatusBarColor(theme);
document.getElementById('checkUpdatesBtn').addEventListener('click', async function() {
- const currentVersion = 'v1.4.9';
+ const currentVersion = 'v1.5.0';
const githubRepo = 'PranshulGG/WeatherMaster';
const releasesUrl = `https://api.github.com/repos/${githubRepo}/releases/latest`;
diff --git a/app/src/main/assets/pages/radar.html b/app/src/main/assets/pages/radar.html
new file mode 100644
index 000000000..66feb50b8
--- /dev/null
+++ b/app/src/main/assets/pages/radar.html
@@ -0,0 +1,310 @@
+
+
+
+
+
+
+
Live rader
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ play_arrow
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/assets/ui-files/ui.css b/app/src/main/assets/ui-files/ui.css
index 6a4ee111b..fd07afe21 100644
--- a/app/src/main/assets/ui-files/ui.css
+++ b/app/src/main/assets/ui-files/ui.css
@@ -1505,74 +1505,6 @@ height: 100%;
color: rgb(255, 255, 255);
}
-.liveMapScreen{
- width: 100%;
- height: 100%;
- background-color: var(--Surface);
- z-index: 99;
- position: fixed;
- top: 0;
- left: 0;
- animation: liveMapScreen 0.3s cubic-bezier(1,0,0,1);
- transition:all 0.3s cubic-bezier(1,0,0,1);
-
- overflow: hidden;
-}
-
-@keyframes liveMapScreen{
- 0%{
- opacity: 0;
- height: 0;
- }
- 100%{
- opacity: 1;
- height: 100%;
- }
-}
-
-.liveMapScreen .liveMapHolder #livemap{
- /* height: calc(100% - 60px); */
- height: 100%;
- /* border-radius: 20px; */
- width: 100%;
- z-index: 1;
-}
-
-
-.liveMapHolder{
- display: flex;
- background-color: var(--Surface);
- height: calc(100% - 65px);
- overflow: hidden;
- flex-direction: column;
-}
-
-.liveMapScreen .topLiveMapActions{
- display: flex;
- padding: 10px;
- height: 45px;
- background-color: var(--Surface);
- display: flex;
- align-items: center;
- justify-content: space-between;
-}
-
-.liveMapScreen .topLiveMapActions div{
- display: flex;
- align-items: center;
- gap: 10px;
-}
-
-.liveMapScreen .topLiveMapActions div p{
- font-size: 20px;
-}
-
-
-
-.map_Type{
- padding: 10px;
- padding-bottom: 20px;
-}
.moonSideWrap{
display: flex;
diff --git a/app/src/main/java/com/example/weathermaster/LiveRadar.java b/app/src/main/java/com/example/weathermaster/LiveRadar.java
new file mode 100644
index 000000000..2771d417d
--- /dev/null
+++ b/app/src/main/java/com/example/weathermaster/LiveRadar.java
@@ -0,0 +1,213 @@
+package com.example.weathermaster;
+
+
+import android.animation.ArgbEvaluator;
+import android.animation.ObjectAnimator;
+import android.annotation.SuppressLint;
+import android.content.Intent;
+import android.graphics.Color;
+import android.net.Uri;
+import android.os.Build;
+import android.os.Bundle;
+import android.os.Handler;
+import android.view.View;
+import android.view.WindowManager;
+import android.webkit.JavascriptInterface;
+import android.webkit.WebSettings;
+import android.webkit.WebView;
+import android.webkit.WebViewClient;
+import android.widget.ProgressBar;
+import android.widget.Toast;
+
+
+import androidx.annotation.RequiresApi;
+import androidx.appcompat.app.AppCompatActivity;
+
+public class LiveRadar extends AppCompatActivity {
+
+ private WebView webview;
+
+ public void onBackPressed() {
+ super.onBackPressed();
+ }
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+
+
+
+ setContentView(R.layout.activity_main);
+
+
+
+ // Webview stuff
+ webview = findViewById(R.id.webView);
+ WebSettings webSettings = webview.getSettings();
+ webSettings.setJavaScriptEnabled(true);
+ webSettings.setDomStorageEnabled(true);
+ webSettings.setAllowFileAccessFromFileURLs(true);
+ webSettings.setAllowUniversalAccessFromFileURLs(true);
+ webSettings.setAllowContentAccess(true);
+ webview.setVerticalScrollBarEnabled(true);
+ webview.setHorizontalScrollBarEnabled(false);
+ webview.setOverScrollMode(WebView.OVER_SCROLL_NEVER);
+ webview.setWebViewClient(new WebViewClientDemo());
+ AndroidInterface androidInterface = new AndroidInterface(this);
+ webview.addJavascriptInterface(androidInterface, "AndroidInterface");
+ webview.setBackgroundColor(getResources().getColor(R.color.RadarPage));
+
+ webview.loadUrl("file:///android_asset/pages/radar.html");
+
+ }
+
+
+
+
+ public class AndroidInterface {
+ private LiveRadar aActivity;
+
+ AndroidInterface(LiveRadar activity) {
+ aActivity = activity;
+ }
+
+ @JavascriptInterface
+ public void updateStatusBarColor(final String color) {
+ aActivity.runOnUiThread(new Runnable() {
+ @SuppressLint("ResourceType")
+ @RequiresApi(api = Build.VERSION_CODES.O)
+ @Override
+ public void run() {
+ int statusBarColor;
+ int navigationBarColor;
+ int systemUiVisibilityFlags = View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR | View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR;
+
+
+ if(color.equals("Scrolled")){
+ statusBarColor = 0xFF415161;
+ navigationBarColor = 0xFF334151;
+ systemUiVisibilityFlags = 0;
+
+ } else if (color.equals("ScrollFalse")) {
+ statusBarColor = 0xFF334151;
+ navigationBarColor = 0xFF334151;
+ systemUiVisibilityFlags = 0;
+
+ } else if (color.equals("GoBack")){
+ back();
+ return;
+ } else if (color.equals("OpenTermsConditions")){
+
+ return;
+ } else if (color.equals("OpenPrivacyPolicy")){
+
+ return;
+ } else if (color.equals("OpenLicenses")){
+
+ return;
+
+ } else if (color.equals("bluesetDef")) {
+
+ return;
+ } else if (color.equals("keepiton")) {
+ getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
+ return;
+ } else if (color.equals("keepitoff")) {
+ getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
+ return;
+ } else if (color.equals("itsOn")) {
+ Toast.makeText(aActivity, "Your device will stay awake", Toast.LENGTH_SHORT).show();
+ return;
+ } else if (color.equals("ItsOff")) {
+ Toast.makeText(aActivity, "Your device will go to sleep at the default time", Toast.LENGTH_SHORT).show();
+ return;
+
+
+ } else {
+ Toast.makeText(aActivity, "not found", Toast.LENGTH_SHORT).show();
+ return;
+ }
+
+
+ int currentStatusBarColor = aActivity.getWindow().getStatusBarColor();
+ int currentNavigationBarColor = aActivity.getWindow().getNavigationBarColor();
+
+ ObjectAnimator statusBarAnimator = ObjectAnimator.ofObject(
+ aActivity.getWindow(),
+ "statusBarColor",
+ new ArgbEvaluator(),
+ currentStatusBarColor,
+ statusBarColor
+ );
+
+ statusBarAnimator.setDuration(200);
+ statusBarAnimator.start();
+
+ ObjectAnimator navBarAnimator = ObjectAnimator.ofObject(
+ aActivity.getWindow(),
+ "navigationBarColor",
+ new ArgbEvaluator(),
+ currentNavigationBarColor,
+ navigationBarColor
+ );
+
+ navBarAnimator.setDuration(200);
+ navBarAnimator.start();
+
+ aActivity.getWindow().setNavigationBarColor(navigationBarColor);
+
+ View decorView = aActivity.getWindow().getDecorView();
+ decorView.setSystemUiVisibility(systemUiVisibilityFlags);
+
+
+ }
+ });
+ }
+
+
+
+ }
+
+ public void back() {
+ onBackPressed();
+ }
+
+
+
+ private static class WebViewClientDemo extends WebViewClient {
+
+ @Override
+ public boolean shouldOverrideUrlLoading(WebView view, String url) {
+ if (shouldOpenInBrowser(url)) {
+ Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
+ view.getContext().startActivity(intent);
+ return true;
+
+ } else {
+ view.loadUrl(url);
+ return true;
+
+
+ }
+
+
+ }
+
+ private boolean shouldOpenInBrowser(String url) {
+ return url.startsWith("https://fonts.google.com/specimen/Outfit?query=outfit") ||
+ url.startsWith("https://openweathermap.org/") ||
+ url.startsWith("https://fonts.google.com/specimen/Poppins?query=poppins") ||
+ url.startsWith("https://github.com/material-components/material-web") ||
+ url.startsWith("https://app-privacy-policy-generator.nisrulz.com/") ||
+ url.startsWith("https://github.com/PranshulGG/WeatherMaster") ||
+ url.startsWith("mailto:pranshul.devmain@gmail.com")||
+ url.startsWith("https://github.com/PranshulGG/WeatherMaster/releases")||
+ url.startsWith("https://leafletjs.com/");
+
+
+ }
+
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/weathermaster/MainActivity.java b/app/src/main/java/com/example/weathermaster/MainActivity.java
index f81198ddf..7f5778943 100644
--- a/app/src/main/java/com/example/weathermaster/MainActivity.java
+++ b/app/src/main/java/com/example/weathermaster/MainActivity.java
@@ -361,6 +361,9 @@ public class MainActivity extends AppCompatActivity {
} else if (color.equals("OpenAboutPage")){
openAboutPage();
return;
+ } else if (color.equals("OpenRadar")){
+ openLiveRadarPage();
+ return;
} else if (color.equals("GoBack")){
back();
return;
@@ -447,6 +450,10 @@ public class MainActivity extends AppCompatActivity {
Intent intent = new Intent(mActivity, AboutPage.class);
mActivity.startActivity(intent);
}
+ public void openLiveRadarPage() {
+ Intent intent = new Intent(mActivity, LiveRadar.class);
+ mActivity.startActivity(intent);
+ }
}
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 1463b7c6a..02a213725 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -27,6 +27,7 @@
#121317
#2b226f
#334151
+
#003353
#0e1d2a
\ No newline at end of file
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml
index 05f318e56..cbf8e2df7 100644
--- a/app/src/main/res/values/themes.xml
+++ b/app/src/main/res/values/themes.xml
@@ -31,6 +31,13 @@
+
+