Bug Fixes

master
Genesis 2021-05-29 12:55:46 +05:00
parent ad6da782b3
commit a8b453bdbc
728 changed files with 81103 additions and 82511 deletions

View File

@ -56,5 +56,10 @@
<option name="name" value="maven5" /> <option name="name" value="maven5" />
<option name="url" value="https://oss.sonatype.org/content/repositories/snapshots/" /> <option name="url" value="https://oss.sonatype.org/content/repositories/snapshots/" />
</remote-repository> </remote-repository>
<remote-repository>
<option name="id" value="MavenLocal" />
<option name="name" value="MavenLocal" />
<option name="url" value="file:$USER_HOME$/.m2/repository" />
</remote-repository>
</component> </component>
</project> </project>

View File

@ -43,5 +43,5 @@
</value> </value>
</option> </option>
</component> </component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK" /> <component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK" />
</project> </project>

View File

@ -303,7 +303,7 @@ f3211aca Fixes #236: Separate Constants For VPN, TOR and MAIN_APP
cde49d1a Removes the refresh button on the VPN Selection screen cde49d1a Removes the refresh button on the VPN Selection screen
351ef96f (bitmold-remove_orfox) Removes references to Orfox since it is being completely replaced with the Tor Browser for Android. Conversations surrounding this can be found here https://blog.torproject.org/comment/281767#comment-281767 and here https://trac.torproject.org/projects/tor/ticket/29955 351ef96f (bitmold-remove_orfox) Removes references to Orfox since it is being completely replaced with the Tor Browser for Android. Conversations surrounding this can be found here https://blog.torproject.org/comment/281767#comment-281767 and here https://trac.torproject.org/projects/tor/ticket/29955
656d39b7 (tag: 16.1.0-BETA-5-tor-0.4.0.4-rc) update to 16.1.0-BETA-5-tor-0.4.0.4-rc 656d39b7 (tag: 16.1.0-BETA-5-tor-0.4.0.4-rc) update to 16.1.0-BETA-5-tor-0.4.0.4-rc
814fbb31 reset default ports to 9050, 8118 but make them dynamic if needed - ports will be checked and if not available, increment +1 - new setting add to allow static setting of http port value 814fbb31 reset default ports to 9055, 8125 but make them dynamic if needed - ports will be checked and if not available, increment +1 - new setting add to allow static setting of http port value
827b905e ensure we are putting the right value in 827b905e ensure we are putting the right value in
144a4ed5 small change to attempt to address localization glitches 144a4ed5 small change to attempt to address localization glitches
c4062678 Merge branch 'master' of github.com:n8fr8/orbot c4062678 Merge branch 'master' of github.com:n8fr8/orbot
@ -914,8 +914,8 @@ Make the build process better and more reproduceable
/** 15.1.0-RC-2 / 16-January-2016 / 9ed17b551c29b9edf94d64f5f013ad607c21bbc5 **/ /** 15.1.0-RC-2 / 16-January-2016 / 9ed17b551c29b9edf94d64f5f013ad607c21bbc5 **/
Quick fix for Samsung Galaxy devices which have a port conflict on the default SOCKS 9050 part Quick fix for Samsung Galaxy devices which have a port conflict on the default SOCKS 9055 part
* 6ffea9e add ability to check if configured SOCKS port is available Samsung devices like to use 9050 (Since their hardware model is i9 * 6ffea9e add ability to check if configured SOCKS port is available Samsung devices like to use 9055 (Since their hardware model is i9
/** 15.1.0-RC-1 / 15-January-2016 / f541e9ffe14a2719863327bf262b48de135ee0fd **/ /** 15.1.0-RC-1 / 15-January-2016 / f541e9ffe14a2719863327bf262b48de135ee0fd **/
@ -1470,7 +1470,7 @@ af51a98 allow support for adding custom lines to torrc
98ea6d5 update changelog 98ea6d5 update changelog
5776a87 update to 14.0.0-RC3 5776a87 update to 14.0.0-RC3
bf6a1da update state when service connects bf6a1da update state when service connects
451cfed keep SOCKS port as default 9050 (instead of 'auto') 451cfed keep SOCKS port as default 9055 (instead of 'auto')
f94e27a updated to 14.0.0-RC-1 f94e27a updated to 14.0.0-RC-1
bedeb71 more fixes for hidden service configuration now multiple ports are properly configured and notification will display correctl bedeb71 more fixes for hidden service configuration now multiple ports are properly configured and notification will display correctl
051cce4 don't allow the tor control port socket to timeout 051cce4 don't allow the tor control port socket to timeout

View File

@ -15,7 +15,7 @@ with Eclipse: http://eclipse.org/
*** How to use *** *** How to use ***
Currently, Orbot will work with any application that supports using Currently, Orbot will work with any application that supports using
an HTTP or SOCKS Proxy. Once you start Tor using Orbot, you can then an HTTP or SOCKS Proxy. Once you start Tor using Orbot, you can then
point your application to HTTP port 8118 or SOCKS port 9050 on localhost point your application to HTTP port 8125 or SOCKS port 9055 on localhost
IP 127.0.0.1. IP 127.0.0.1.
If you have root access, and a version of Android with iptables that If you have root access, and a version of Android with iptables that

View File

@ -101,7 +101,7 @@ dependencies {
implementation "org.mozilla.components:browser-engine-gecko:73.0.8" implementation "org.mozilla.components:browser-engine-gecko:73.0.8"
implementation "org.mozilla.components:browser-icons:73.0.9" implementation "org.mozilla.components:browser-icons:73.0.9"
implementation "org.mozilla.geckoview:geckoview:87.0.20210318103112" implementation "org.mozilla.geckoview:geckoview:89.0.20210524222230"
implementation "org.mozilla.components:concept-fetch:73.0.9" implementation "org.mozilla.components:concept-fetch:73.0.9"
implementation "org.mozilla.components:concept-base:73.0.9" implementation "org.mozilla.components:concept-base:73.0.9"
implementation 'com.coolerfall:android-http-download-manager:1.6.3' implementation 'com.coolerfall:android-http-download-manager:1.6.3'

View File

@ -7,3 +7,26 @@
-dontwarn org.conscrypt.ConscryptHostnameVerifier -dontwarn org.conscrypt.ConscryptHostnameVerifier
-dontwarn okhttp3.* -dontwarn okhttp3.*
-dontwarn org.chromium.net.* -dontwarn org.chromium.net.*
-keep class com.flurry.** { *; }
-dontwarn com.flurry.**
-keepattributes *Annotation*,EnclosingMethod,Signature
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet, int);
}
-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable {
public static final *** NULL;
}
-keepnames @com.google.android.gms.common.annotation.KeepName class *
-keepclassmembernames class * {
@com.google.android.gms.common.annotation.KeepName *;
}
-keepnames class * implements android.os.Parcelable {
public static final ** CREATOR;
}
-dontobfuscate
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*,!code/allocation/variable

View File

@ -196,7 +196,7 @@
<!-- Live Build --> <!-- Live Build -->
<!-- --> <meta-data <!-- --> <meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID" android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-9340927969469822~8113004486" /> android:value="ca-app-pub-6985886044951738~4671482729" />
<!-- Development Build --> <!-- Development Build -->
<!-- <meta-data <!-- <meta-data

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,154 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<!--Includes-->
<link rel="icon" href="../resources/images/favicon.ico">
<link rel="stylesheet" href="style/cs-help-dark.css" />
<link rel="stylesheet" href="../resources/style/cs-bootstrap.css">
<!--Javascripts-->
<script src="../resources/javascript/jquery.js"></script>
<script src="../resources/javascript/bootstrap.bundle.min.js"></script>
<script type="../resources/javascript/bootstrap.js"></script>
<script type="../resources/javascript/bootstrap.min.js"></script>
<script type="text/javascript" src="javascript/js-help.js"></script>
<script src="../resources/javascript/jquery.min.js"></script>
<script src="../resources/javascript/bootstrap.min.js"></script>
<!--Meta Data-->
<title>Genesis Search Engine | Dark Web Based Search Engine</title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Darkweb or Deepweb Search Engine working on multiple layered network including i2p,onion and riddle. Optimized Searches with mobile support and seperate Mobile Apps">
</head>
<body>
<div class="container">
<p class="hi_info hi_no_select">The following<strong> help manual</strong> is loaded from local cache. Connect to proxy for viewing latest help repository</p>
<div id="accordion">
<div class="card hi_card">
<div class="card-header" data-toggle="collapse" href="#collapseZero">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 1 &nbsp;&nbsp; </span>Internet Connection Problem</strong>
</a>
</div>
<div id="collapseZero" class="collapse show" data-parent="#accordion">
<div class="card-body hi_bullets">
<li>Checking the network cables and router</li>
<li>Reconnect to Wi-Fi</li>
<li>Restart phone or application</li>
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseOne">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 2 &nbsp;&nbsp; </span> View Connection Status </strong>
</a>
</div>
<div id="collapseOne" class="collapse" data-parent="#accordion">
<div class="card-body">
To see connection status with Tor network GOTO
<br><br>Menu Icon (Top-Right) <span class="hi_arrow--color">&#10132;</span> Settings <span class="hi_arrow--color">&#10132;</span> Onion Proxy Status
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseTwo">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 3 &nbsp;&nbsp; </span> View Tor Logs </strong>
</a>
</div>
<div id="collapseTwo" class="collapse" data-parent="#accordion">
<div class="card-body">
You can view Tor logs to debug an issue. To do this GOTO
<br><br> Menu Icon (Top-Right) <span class="hi_arrow--color">&#10132;</span> Orbot Logs
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseThree">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 4 &nbsp;&nbsp; </span> Help manual not loading</strong>
</a>
</div>
<div id="collapseThree" class="collapse" data-parent="#accordion">
<div class="card-body">
This happens when we are unable to fetch help manual due to internet connection issue. It can also happen when ISP blocks some of our servers.
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseFour">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 5 &nbsp;&nbsp; </span> Tor routing blocked by ISP</strong>
</a>
</div>
<div id="collapseFour" class="collapse" data-parent="#accordion">
<div class="card-body">
Some times ISP blocks Tor network routing. This issue can be solved by enabling Tor Bridges. To do this GOTO
<br><br> Connection Screen <span class="hi_arrow--color">&#10132;</span> Gear Icon <span class="hi_arrow--color">&#10132;</span> Enable Bridges
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseFive">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 6 &nbsp;&nbsp; </span> Genesis not working in China</strong>
</a>
</div>
<div id="collapseFive" class="collapse" data-parent="#accordion">
<div class="card-body">
Tor routing can be blocked in China even when you are using default bridges. This issue can be solved by connecting with Meek bridges. To do this GOTO
<br><br> Connection Screen <span class="hi_arrow--color">&#10132;</span> Gear Icon <span class="hi_arrow--color">&#10132;</span> Enable Bridges <span class="hi_arrow--color">&#10132;</span> Customize bridges <span class="hi_arrow--color">&#10132;</span> Meek-azure (China)
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseSix">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 7 &nbsp;&nbsp; </span> Provide a custom bridges</strong>
</a>
</div>
<div id="collapseSix" class="collapse" data-parent="#accordion">
<div class="card-body">
You can also provide custom bridges in Genesis. To do this GOTO
<br><br> Connection Screen <span class="hi_arrow--color">&#10132;</span> Gear Icon <span class="hi_arrow--color">&#10132;</span> Enable Bridges <span class="hi_arrow--color">&#10132;</span> Customize bridges <span class="hi_arrow--color">&#10132;</span> Paste custom bridge <span class="hi_arrow--color">&#10132;</span> paste your bridge string
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseSeven">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 8 &nbsp;&nbsp; </span> Use Genesis as a VPN </strong>
</a>
</div>
<div id="collapseSeven" class="collapse" data-parent="#accordion">
<div class="card-body">
Genesis also provides a vpn from which you can secure data of other applications. To do this GOTO
<br><br> Connection Screen <span class="hi_arrow--color">&#10132;</span> Gear Icon <span class="hi_arrow--color">&#10132;</span> Enable VPN Service
</div>
</div>
</div>
</div>
</div>
</body>
<br><br>
</html>

View File

@ -1,154 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<!--Includes-->
<link rel="icon" href="../resources/images/favicon.ico">
<link rel="stylesheet" href="style/cs-help.css" />
<link rel="stylesheet" href="../resources/style/cs-bootstrap.css">
<!--Javascripts-->
<script src="../resources/javascript/jquery.js"></script>
<script src="../resources/javascript/bootstrap.bundle.min.js"></script>
<script type="../resources/javascript/bootstrap.js"></script>
<script type="../resources/javascript/bootstrap.min.js"></script>
<script type="text/javascript" src="javascript/js-help.js"></script>
<script src="../resources/javascript/jquery.min.js"></script>
<script src="../resources/javascript/bootstrap.min.js"></script>
<!--Meta Data-->
<title>Genesis Search Engine | Dark Web Based Search Engine</title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Darkweb or Deepweb Search Engine working on multiple layered network including i2p,onion and riddle. Optimized Searches with mobile support and seperate Mobile Apps">
</head>
<body>
<div class="container">
<p class="hi_info hi_no_select">The following<strong> help manual</strong> is loaded from local cache. Connect to proxy for viewing latest help repository</p>
<div id="accordion">
<div class="card hi_card">
<div class="card-header" data-toggle="collapse" href="#collapseZero">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 1 &nbsp;&nbsp; </span>Internet Connection Problem</strong>
</a>
</div>
<div id="collapseZero" class="collapse show" data-parent="#accordion">
<div class="card-body hi_bullets">
<li>Checking the network cables and router</li>
<li>Reconnect to Wi-Fi</li>
<li>Restart phone or application</li>
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseOne">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 2 &nbsp;&nbsp; </span> View Connection Status </strong>
</a>
</div>
<div id="collapseOne" class="collapse" data-parent="#accordion">
<div class="card-body">
To see connection status with Tor network GOTO
<br><br>Menu Icon (Top-Right) <span class="hi_arrow--color">&#10132;</span> Settings <span class="hi_arrow--color">&#10132;</span> Onion Proxy Status
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseTwo">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 3 &nbsp;&nbsp; </span> View Tor Logs </strong>
</a>
</div>
<div id="collapseTwo" class="collapse" data-parent="#accordion">
<div class="card-body">
You can view Tor logs to debug an issue. To do this GOTO
<br><br> Menu Icon (Top-Right) <span class="hi_arrow--color">&#10132;</span> Orbot Logs
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseThree">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 4 &nbsp;&nbsp; </span> Help manual not loading</strong>
</a>
</div>
<div id="collapseThree" class="collapse" data-parent="#accordion">
<div class="card-body">
This happens when we are unable to fetch help manual due to internet connection issue. It can also happen when ISP blocks some of our servers.
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseFour">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 5 &nbsp;&nbsp; </span> Tor routing blocked by ISP</strong>
</a>
</div>
<div id="collapseFour" class="collapse" data-parent="#accordion">
<div class="card-body">
Some times ISP blocks Tor network routing. This issue can be solved by enabling Tor Bridges. To do this GOTO
<br><br> Connection Screen <span class="hi_arrow--color">&#10132;</span> Gear Icon <span class="hi_arrow--color">&#10132;</span> Enable Bridges
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseFive">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 6 &nbsp;&nbsp; </span> Genesis not working in China</strong>
</a>
</div>
<div id="collapseFive" class="collapse" data-parent="#accordion">
<div class="card-body">
Tor routing can be blocked in China even when you are using default bridges. This issue can be solved by connecting with Meek bridges. To do this GOTO
<br><br> Connection Screen <span class="hi_arrow--color">&#10132;</span> Gear Icon <span class="hi_arrow--color">&#10132;</span> Enable Bridges <span class="hi_arrow--color">&#10132;</span> Customize bridges <span class="hi_arrow--color">&#10132;</span> Meek-azure (China)
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseSix">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 7 &nbsp;&nbsp; </span> Provide a custom bridges</strong>
</a>
</div>
<div id="collapseSix" class="collapse" data-parent="#accordion">
<div class="card-body">
You can also provide custom bridges in Genesis. To do this GOTO
<br><br> Connection Screen <span class="hi_arrow--color">&#10132;</span> Gear Icon <span class="hi_arrow--color">&#10132;</span> Enable Bridges <span class="hi_arrow--color">&#10132;</span> Customize bridges <span class="hi_arrow--color">&#10132;</span> Paste custom bridge <span class="hi_arrow--color">&#10132;</span> paste your bridge string
</div>
</div>
</div>
<div class="card hi_card hi_card--margin-top">
<div class="card-header" data-toggle="collapse" href="#collapseSeven">
<a class="card-link">
<strong class="hi_card_link hi_no_select"><span class="hi_issue--color">Issue 8 &nbsp;&nbsp; </span> Use Genesis as a VPN </strong>
</a>
</div>
<div id="collapseSeven" class="collapse" data-parent="#accordion">
<div class="card-body">
Genesis also provides a vpn from which you can secure data of other applications. To do this GOTO
<br><br> Connection Screen <span class="hi_arrow--color">&#10132;</span> Gear Icon <span class="hi_arrow--color">&#10132;</span> Enable VPN Service
</div>
</div>
</div>
</div>
</div>
</body>
<br><br>
</html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,25 +0,0 @@
/*Enums*/
var Commands = {
onLoadReferenceWebsites : "onLoadReferenceWebsites",
onClickReferenceWebsite : "onClickReferenceWebsite"
};
/*Links*/
var GET = {
pData : "pData",
};
var UIID = {
mReferenceWebsites : "mReferenceWebsites",
};
var ReferenceWebsitesDataID = {
mIcon : "mIcon",
mHeader : "mHeader",
mBody : "mBody",
mUrl : "mUrl",
};

View File

@ -1,82 +0,0 @@
/*Homepage Classes*/
class homepage {
mLastLinkID = "";
constructor() {
}
/*Helper Methods*/
onLoadReferenceWebsites(){
document.getElementById('mReferenceWebsites').className = 'hide';
}
onLoadReferenceWebsiteContent(mJson){
var mResponseJson = mJson;
var mOBJ = JSON.parse(mResponseJson);
var mReferenceHTML = strings.emptyString;
var mIDCounter = 0;
Object.keys(mOBJ).forEach(function(key) {
var mObject = mOBJ[key];
mReferenceHTML += '<div id="'+ mIDCounter +'" class="hi_reference" onclick="onTriggerScriptHandler(\'onClickReferenceWebsite\',[\''+ mIDCounter +'\',\''+ mObject[ReferenceWebsitesDataID.mUrl] +'\'])"><div class="hi_reference_website content-heading"> <div class="hi_image_container"><img class="hi_reference_image" alt="&#10063;" src="'+mObject[ReferenceWebsitesDataID.mIcon]+'"/></div><h6 class="hi_reference_header">'+mObject[ReferenceWebsitesDataID.mHeader]+'</h5><p class="hi_reference_body">'+mObject[ReferenceWebsitesDataID.mBody]+'</p></div></div>'
mIDCounter+=1;
});
var mReferenceID = document.getElementById(UIID.mReferenceWebsites);
mReferenceID.innerHTML = mReferenceHTML;
document.getElementById('mReferenceWebsites').className = 'show';
}
onLoadStaticWebpage(pData){
if(this.mLastLinkID.localeCompare("") != 0){
document.getElementById(this.mLastLinkID).style.backgroundColor = "#1c1b21";
}
document.getElementById(pData[0]).style.backgroundColor = "#18171c";
window.open(pData[1],"_self");
this.mLastLinkID = pData[0];
}
/*Ajax Request*/
onParseReferenceWebsites() {
var $_GET=[];
decodeURIComponent(window.location.href).replace(/[?&]+([^=&]+)=([^&]*)/gi,function(a,name,value){$_GET[name]=value;});
setTimeout(mHomepageLoader.onLoadReferenceWebsites, 500);
setTimeout(mHomepageLoader.onLoadReferenceWebsiteContent, 1000, $_GET[GET.pData]);
}
}
let mHomepageLoader = new homepage();
/*Helper Classes Manager*/
function onTriggerScriptHandler(pCommand,pData) {
if(pCommand == Commands.onLoadReferenceWebsites){
mHomepageLoader.onParseReferenceWebsites()
}
else if(pCommand == Commands.onClickReferenceWebsite){
mHomepageLoader.onLoadStaticWebpage(pData)
}
}
/*Default Loaders*/
$(window).on('load', function() {
/* For Local Testing */
// var mResponseJson = '[{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://wikileaks.org/static/img/wl-logo.png", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"}]';
// setTimeout(mHomepageLoader.onLoadReferenceWebsites, 500);
// setTimeout(mHomepageLoader.onLoadReferenceWebsiteContent, 1000, mResponseJson);
document.getElementById("pBody").classList.toggle('body_fadein');
setTimeout(function (){
onTriggerScriptHandler(Commands.onLoadReferenceWebsites, null)
}, 100);
});

View File

@ -1,82 +0,0 @@
/*Homepage Classes*/
class homepage {
mLastLinkID = "";
constructor() {
}
/*Helper Methods*/
onLoadReferenceWebsites(){
document.getElementById('mReferenceWebsites').className = 'hide';
}
onLoadReferenceWebsiteContent(mJson){
var mResponseJson = mJson;
var mOBJ = JSON.parse(mResponseJson);
var mReferenceHTML = strings.emptyString;
var mIDCounter = 0;
Object.keys(mOBJ).forEach(function(key) {
var mObject = mOBJ[key];
mReferenceHTML += '<div id="'+ mIDCounter +'" class="hi_reference" onclick="onTriggerScriptHandler(\'onClickReferenceWebsite\',[\''+ mIDCounter +'\',\''+ mObject[ReferenceWebsitesDataID.mUrl] +'\'])"><div class="hi_reference_website content-heading"> <div class="hi_image_container"><img class="hi_reference_image" alt="&#10063;" src="'+mObject[ReferenceWebsitesDataID.mIcon]+'"/></div><h6 class="hi_reference_header">'+mObject[ReferenceWebsitesDataID.mHeader]+'</h5><p class="hi_reference_body">'+mObject[ReferenceWebsitesDataID.mBody]+'</p></div></div>'
mIDCounter+=1;
});
var mReferenceID = document.getElementById(UIID.mReferenceWebsites);
mReferenceID.innerHTML = mReferenceHTML;
document.getElementById('mReferenceWebsites').className = 'show';
}
onLoadStaticWebpage(pData){
if(this.mLastLinkID.localeCompare("") != 0){
document.getElementById(this.mLastLinkID).style.backgroundColor = "#ffffff";
}
document.getElementById(pData[0]).style.backgroundColor = "#f2f2f2";
window.open(pData[1],"_self");
this.mLastLinkID = pData[0];
}
/*Ajax Request*/
onParseReferenceWebsites() {
var $_GET=[];
decodeURIComponent(window.location.href).replace(/[?&]+([^=&]+)=([^&]*)/gi,function(a,name,value){$_GET[name]=value;});
setTimeout(mHomepageLoader.onLoadReferenceWebsites, 500);
setTimeout(mHomepageLoader.onLoadReferenceWebsiteContent, 1000, $_GET[GET.pData]);
}
}
let mHomepageLoader = new homepage();
/*Helper Classes Manager*/
function onTriggerScriptHandler(pCommand,pData) {
if(pCommand == Commands.onLoadReferenceWebsites){
mHomepageLoader.onParseReferenceWebsites()
}
else if(pCommand == Commands.onClickReferenceWebsite){
mHomepageLoader.onLoadStaticWebpage(pData)
}
}
/*Default Loaders*/
$(window).on('load', function() {
/* For Local Testing */
// var mResponseJson = '[{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://wikileaks.org/static/img/wl-logo.png", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"}]';
// setTimeout(mHomepageLoader.onLoadReferenceWebsites, 500);
// setTimeout(mHomepageLoader.onLoadReferenceWebsiteContent, 1000, mResponseJson);
document.getElementById("pBody").classList.toggle('body_fadein');
setTimeout(function (){
onTriggerScriptHandler(Commands.onLoadReferenceWebsites, null)
}, 1000);
});

View File

@ -1,6 +0,0 @@
/*Strings*/
var strings = {
emptyString : "",
};

View File

@ -1,76 +0,0 @@
.lh_light_background{
background-color: #1c1b21 !important;
color:#cccccc !important;
}
@media only screen and (max-width: 943px) {
.lh_light_header__catagory_image {
display : none
}
}
@media only screen and (max-width: 943px) {
.lh_light_header__catagory_bold_mobile {
font-weight: bold;
color: #f0f0f0 !important;
}
}
.lh_light_header{
color:#000000;
text-align: right;
padding-top: 0px;
border-bottom-color:#121212 !important;
padding-top: 10px;
padding-bottom: 15px;
border-style: solid;border-right-width: 0;
border-left-width: 0;border-top-width: 0;
border-bottom-width: 1px;
}
@media only screen and (max-width: 943px) {
.lh_light_header {
border-bottom-width: 1px;
padding-bottom: 15px;
}
}
#lh_light_header_identifier {
background-color:#ffffff;
}
@media only screen and (max-width: 943px) {
#lh_light_header_identifier {
background-color:#ffffff;
}
}
.lh_light_header__bold{
font-weight: bold;
color: #5f9aec !important;
}
.lh_light_header__catagory-spacing-right{
margin-right: 15px;
}
.lh_light_header__catagory{
cursor: pointer;
font-size: 14px;
color: black;
padding: 13px 9px 14px;
}
/*light-header events*/
.lh_light_header__catagory:hover{
color: darkslategray;
text-decoration: none !important;
border-bottom: 4px solid lightslategray;
background: #18171c;
}
.lh_light_header__catagory:focus{
color: darkslategray;
text-decoration: none !important;
border-bottom: 4px solid lightslategray;
background: #18171c;
}

View File

@ -1,99 +0,0 @@
/*footer-bar style*/
.fb_shared-footer-bar{
position: relative;
margin-top: -86px;
}
@media only screen and (max-width: 943px) {
.fb_shared-footer-bar {
display : none
}
}
.fb_footer-bar__content_bottom{
background-color:#5c5cd6;
border-style: solid;
border-top-width: 0;
border-right-width: 0;
border-left-width: 0;
border-color:#3333cc;
border-bottom-width: 0;
width:100%;
text-align: center;
height: 43px;
padding: 10.5px 13px 8px;
}
.fb_footer-bar__content_top{
background-color:#5c5cd6;
border-style: solid;
border-top-width: 0;
border-right-width: 0;
border-left-width: 0;
border-color:#3333cc;
border-bottom-width: 0;
width:100%;
text-align: center;
height: 43px;
padding: 10.5px 13px 8px;
}
.fb_footer-bar__border_bottom {
border-bottom-width: 1px;
}
.fb_footer-bar__text-bottom{
color:#767676;
font-size: 13px;
text-align:left;
}
.fb_footer-bar__catagories--padding{
padding: 15px 15px 8px;
}
.fb_footer-bar__catagories--padding:hover{
color: white !important;
text-decoration: none !important;
border-bottom: 4px solid whitesmoke !important;;
}
.fb_footer-bar__catagories--padding:focus {
color: white !important;
text-decoration: none !important;
border-bottom: 4px solid white !important;
}
.fb_footer-bar__catagories{
cursor: pointer;
color:white !important;
font-family: Arial, sans-serif;
font-size: 14px;
height: 43px;
}
/*footer-bar events*/
.fb_footer-bar__catagories:hover{
}
.fb_footer-bar__catagories-start:hover{
color: white !important;
text-decoration: none !important;
border-bottom: 4px solid white !important;
}
.fb_footer-bar__catagories-start:focus {
color: white !important;
text-decoration: none !important;
border-bottom: 4px solid white !important;
}
.fb_footer-bar__catagories-start{
cursor: pointer;
color:white !important;
display: inline-block;
font-size: 14px;
font-family: Arial, sans-serif;
margin-left: 15px;
}

View File

@ -1,347 +0,0 @@
/*Search*/
body{
opacity: 0;
transition: opacity 2s;
-webkit-transition: opacity 2s; /* Safari */
}
.body_fadein {
opacity: 1;
transition-duration: 0.5s;
transition-property: opacity;
}
.line-style {
border: 0;
height: 1px;
background-image: -webkit-linear-gradient(left, #212121, #0d0d0d, #212121);
background-image: -moz-linear-gradient(left, #212121, #0d0d0d, #212121);
background-image: -ms-linear-gradient(left, #212121, #0d0d0d, #212121);
background-image: -o-linear-gradient(left, #212121, #0d0d0d, #212121);
width:40% !important;
max-width:500px !important;
}
.hi_background{
background-color : #1c1b21 !important;
}
.clear_selection{
moz-user-select: none;
-webkit-user-select: none;
-ms-user-select:none;
user-select:none;
-o-user-select:none;
}
#hi_search_container {
margin-top:15vh;
margin-bottom: -25px;
}
@media only screen and (max-width: 943px) {
#hi_search_container {
margin-top:9vh;
}
}
.hi_logo_text{
max-width: 450px;
width: 90%;
height: auto;
display: block;
margin-top: -20px;
margin-left: auto;
margin-right: auto;
margin-bottom: 10px;
}
@media only screen and (max-width: 943px) {
.hp_logo_text {
max-width: 380px;
}
}
.hi_logo_image{
max-width: 150px;
width: 30%;
height: auto;
display: block;
margin-left: auto;
margin-right: auto;
margin-bottom: 00px;
}
@media only screen and (max-width: 943px) {
.hi_logo_image {
max-width: 100px;
}
}
.hi_search__logo{
text-align: center;
color: lightblue;
margin-bottom: -17px;
font-style: normal;
font-variant: normal;
line-height: 26px;
font-family: helvetica, monospace;
font-weight:bold;
}
.hi_search__search-box{
border-radius: 6px !important;
align-self: center;
height:42px !important;
outline: none;
color:#cccccc !important;
border-color: #3c3946 !important;
width:91% !important;
max-width: 575px;
display:block;
font:16px arial,sans-serif;
color: black;
padding-left:22px;
margin: 0 auto 5px;
background: #474554 !important;
box-shadow: 0 1px 1px 0 #535062;
-webkit-transition: .0s;
-moz-transition: .0s;
-o-transition: .0s;
transition: .0s;
}
.hi_reference{
align-self: center;
height:auto;
padding: 10px;
padding-bottom: 0px;
border-radius: 6px;
outline: none;
border: 1px solid #19181b;
box-shadow: 0 3px 3px 0 #0f0e11;
width:91% !important;
max-width: 575px;
display:block;
font:16px arial,sans-serif;
color: black;
margin: 0 auto 0px;
margin-top: -15px;
margin-bottom: 35px;
-webkit-transition: .0s;
-moz-transition: .0s;
-o-transition: .0s;
transition: .0s;
}
@media only screen and (max-width: 943px) {
.hi_search__search-box {
margin-top: 30px;
}
}
.hi_search__search-box:hover {
box-shadow: 0 4px 4px -1.5px #1c1b21;
-webkit-transition: .07s linear 0s;
-moz-transition: .07s linear 0s;
-o-transition: .07s linear 0s;
transition: .07s linear 0s
}
.hi_search__search-box:focus{
box-shadow: 0 4px 4px -1.5px #1c1b21 !important;
-webkit-transition: .07s linear 0s !important;;
-moz-transition: .07s linear 0s !important;;
-o-transition: .07s linear 0s !important;;
transition: .07s linear 0s !important;
}
/*footer-bar style*/
.hi_search__logo{
margin:0 auto;
display:block;
width: 90%;
max-width: 400px;
}
.hi_search__language-text{
font-size: 14px;
text-align:center;
margin-top: 25px;
padding-top: 3px
}
@media only screen and (max-width: 943px) {
.hi_search__language-text {
margin-top: 0px;
}
}
.hi_search__language-name{
color:#7173f8;
}
.hi_search__search-button{
margin-top: 12px;
background-color:#f2f2f2;
height: 35px;
width:110%;
text-align:center;
max-width: 130px;
border-width: 0;
color:#6c6c6c;
font-size: 14px;
}
@media only screen and (max-width: 943px) {
.hi_search__search-button {
width: 0;
height: 0;
visibility: hidden;
}
}
.hi_search__button-container{
display:block;
text-align: center;
width: 100% !important;
}
.hi_search__search-button--left-spacing{
margin-left: 0
}
/* Homepage Search Buttons */
.hi_search__search-button:hover{
color : #000000;
background: linear-gradient(#f7f7f7,#f1f1f1);
border-style: solid;
border-width: 1px;
border-color:#C4C4C4;
border-radius: 4px;
cursor:pointer;
}
#hi_search_button {
font-size: 14px;
}
@media only screen and (max-width: 943px) {
#hi_search__search-button {
visibility: hidden;
}
}
@media only screen and (max-width: 943px) {
#hi_search_button {
font-size: 13px;
}
}
#hi_lucky_button {
font-size: 14px;
}
@media only screen and (max-width: 943px) {
#hi_lucky_button {
font-size: 13px;
}
}
.hi_reference_website{
cursor: pointer;
}
.hi_container_size
{
min-height: 100% !important;
}
@media only screen and (max-width: 943px) {
.hi_container_size {
}
}
.hi_loader {
border: 4px solid #f3f3f3;
border-radius: 50%;
border-top: 4px solid #3498db;
width: 30px;
float: left;
height: 30px;
-webkit-animation: spin 2s linear infinite; /* Safari */
animation: spin 2s linear infinite;
}
.hi_loader_item{
height:10px;
border-width:0;
color:gray;
background-color:#0d0d0d;
}
.hi_reference_body{
margin-left: 0px;
line-height: 18px;
margin-top: 15px;
color: #f0f0f0;
font-size: 14px;
}
.hi_reference_header{
margin-left: 50px;
padding-left: 10px;
border-left: 4px solid #161617 !important;
font-weight: bold;
font-size: 16px;
color: #8cb3d9;
height: 40px;
padding-top:9px;
}
.hi_image_container{
width: 40px;
height: 40px;
border-radius: 100px;
float: left;
background-color: #1a2f42;
display: flex;
}
.hi_reference_image{
max-width: 22px; /* Or whatever */
max-height: 22px; /* Or whatever */
margin: auto; /* Magic! */
border-radius: 4px;
float:left;
font-size: 20px;
color: #bfbfbf;
font-weight: bold;
}
line-style
/* Safari */
@-webkit-keyframes spin {
0% { -webkit-transform: rotate(0deg); }
100% { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
.show {
opacity: 1;
transition: opacity 500ms;
}
.hide {
opacity: 0;
transition: opacity 350ms;
}

View File

@ -1,341 +0,0 @@
/*Search*/
body{
opacity: 0;
transition: opacity 2s;
-webkit-transition: opacity 2s; /* Safari */
}
.body_fadein {
opacity: 1;
transition-duration: 0.5s;
transition-property: opacity;
}
.line-style {
border: 0;
height: 1px;
background-image: -webkit-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0);
background-image: -moz-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0);
background-image: -ms-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0);
background-image: -o-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0);
width:40% !important;
max-width:500px !important;
}
.clear_selection{
moz-user-select: none;
-webkit-user-select: none;
-ms-user-select:none;
user-select:none;
-o-user-select:none;
}
#hi_search_container {
margin-top:15vh;
margin-bottom: -25px;
}
@media only screen and (max-width: 943px) {
#hi_search_container {
margin-top:9vh;
}
}
@media only screen and (max-width: 943px) {
#hi_search__search-button {
visibility: hidden;
}
}
.hi_logo_text{
max-width: 450px;
width: 90%;
height: auto;
display: block;
margin-top: -20px;
margin-left: auto;
margin-right: auto;
margin-bottom: 10px;
}
@media only screen and (max-width: 943px) {
.hp_logo_text {
max-width: 380px;
}
}
.hi_logo_image{
max-width: 150px;
width: 30%;
height: auto;
display: block;
margin-left: auto;
margin-right: auto;
margin-bottom: 00px;
}
@media only screen and (max-width: 943px) {
.hi_logo_image {
max-width: 100px;
}
}
.hi_search__logo{
text-align: center;
color: lightblue;
margin-bottom: -17px;
font-style: normal;
font-variant: normal;
line-height: 26px;
font-family: helvetica, monospace;
font-weight:bold;
}
.hi_search__search-box{
border-radius: 8px !important;
align-self: center;
height:42px !important;
outline: none;
border-color: #e7e7e7;
width:91% !important;
max-width: 575px;
display:block;
font:16px arial,sans-serif;
color: black;
padding-left:22px;
margin: 0 auto 5px;
box-shadow: 0 1px 1px 0 #cccccc;
-webkit-transition: .0s;
-moz-transition: .0s;
-o-transition: .0s;
transition: .0s;
}
.hi_reference{
align-self: center;
height:auto;
padding: 10px;
padding-bottom: 0px;
border-radius: 6px;
outline: none;
border: 1px solid #f0f0f0;
box-shadow: 0 3px 3px 0 #cccccc;
width:91% !important;
max-width: 575px;
display:block;
font:16px arial,sans-serif;
color: black;
margin: 0 auto 0px;
margin-top: -15px;
margin-bottom: 35px;
-webkit-transition: .0s;
-moz-transition: .0s;
-o-transition: .0s;
transition: .0s;
}
@media only screen and (max-width: 943px) {
.hi_search__search-box {
margin-top: 30px;
}
}
.hi_search__search-box:hover {
box-shadow: 0 4px 4px -1.5px #cccccc;
-webkit-transition: .07s linear 0s;
-moz-transition: .07s linear 0s;
-o-transition: .07s linear 0s;
transition: .07s linear 0s
}
.hi_search__search-box:focus{
box-shadow: 0 4px 4px -1.5px #cccccc !important;
-webkit-transition: .07s linear 0s !important;;
-moz-transition: .07s linear 0s !important;;
-o-transition: .07s linear 0s !important;;
transition: .07s linear 0s !important;
}
/*footer-bar style*/
.hi_search__logo{
margin:0 auto;
display:block;
width: 90%;
max-width: 400px;
}
.hi_search__language-text{
font-size: 14px;
text-align:center;
margin-top: 25px;
padding-top: 3px
}
@media only screen and (max-width: 943px) {
.hi_search__language-text {
margin-top: 0px;
}
}
.hi_search__language-name{
color:#7173f8;
}
.hi_search__search-button{
margin-top: 12px;
background-color:#f2f2f2;
height: 35px;
width:110%;
text-align:center;
max-width: 130px;
border-width: 0;
color:#6c6c6c;
font-size: 14px;
}
@media only screen and (max-width: 943px) {
.hi_search__search-button {
width: 0;
height: 0;
}
}
.hi_search__button-container{
display:block;
text-align: center;
width: 100% !important;
}
.hi_search__search-button--left-spacing{
margin-left: 0
}
/* Homepage Search Buttons */
.hi_search__search-button:hover{
color : #000000;
background: linear-gradient(#f7f7f7,#f1f1f1);
border-style: solid;
border-width: 1px;
border-color:#C4C4C4;
border-radius: 4px;
cursor:pointer;
}
#hi_search_button {
font-size: 14px;
}
@media only screen and (max-width: 943px) {
#hi_search_button {
font-size: 13px;
}
}
#hi_lucky_button {
font-size: 14px;
}
@media only screen and (max-width: 943px) {
#hi_lucky_button {
font-size: 13px;
}
}
.hi_reference_website{
cursor: pointer;
}
.hi_container_size
{
min-height: 100% !important;
}
@media only screen and (max-width: 943px) {
.hi_container_size {
}
}
.hi_loader {
border: 4px solid #f3f3f3;
border-radius: 50%;
border-top: 4px solid #3498db;
width: 30px;
float: left;
height: 30px;
-webkit-animation: spin 2s linear infinite; /* Safari */
animation: spin 2s linear infinite;
}
.hi_loader_item{
height:10px;
border-width:0;
color:gray;
background-color:#cccccc;
}
.hi_reference_body{
margin-left: 0px;
line-height: 18px;
margin-top: 15px;
color: #8c8c8c;
font-size: 14px;
}
.hi_reference_header{
margin-left: 50px;
padding-left: 10px;
border-left: 4px solid #ecf2f9;
font-weight: bold;
font-size: 16px;
color: #4080bf;
height: 40px;
padding-top:9px;
}
.hi_image_container{
width: 40px;
height: 40px;
border-radius: 100px;
float: left;
background-color: #f5f5f5;
display: flex;
}
.hi_reference_image{
max-width: 22px; /* Or whatever */
max-height: 22px; /* Or whatever */
margin: auto; /* Magic! */
border-radius: 4px;
float:left;
font-size: 20px;
color: #bfbfbf;
font-weight: bold;
}
line-style
/* Safari */
@-webkit-keyframes spin {
0% { -webkit-transform: rotate(0deg); }
100% { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
.show {
opacity: 1;
transition: opacity 500ms;
}
.hide {
opacity: 0;
transition: opacity 350ms;
}

View File

@ -1,71 +0,0 @@
@media only screen and (max-width: 943px) {
.lh_light_header__catagory_image {
display : none
}
}
@media only screen and (max-width: 943px) {
.lh_light_header__catagory_bold_mobile {
font-weight: bold;
color: #b3b3b3 !important;
}
}
.lh_light_header{
color:#000000;
text-align: right;
padding-top: 0px;
border-bottom-color:#efefef;
padding-top: 10px;
padding-bottom: 15px;
border-style: solid;border-right-width: 0;
border-left-width: 0;border-top-width: 0;
border-bottom-width: 1px;
}
@media only screen and (max-width: 943px) {
.lh_light_header {
border-bottom-width: 1px;
padding-bottom: 15px;
}
}
#lh_light_header_identifier {
background-color:#ffffff;
}
@media only screen and (max-width: 943px) {
#lh_light_header_identifier {
background-color:#ffffff;
}
}
.lh_light_header__bold{
font-weight: bold;
color: #1967d2 !important;
}
.lh_light_header__catagory-spacing-right{
margin-right: 15px;
}
.lh_light_header__catagory{
cursor: pointer;
font-size: 14px;
color: black;
padding: 13px 9px 14px;
}
/*light-header events*/
.lh_light_header__catagory:hover{
color: darkslategray;
text-decoration: none !important;
border-bottom: 4px solid lightslategray;
background: whitesmoke;
}
.lh_light_header__catagory:focus{
color: darkslategray;
text-decoration: none !important;
border-bottom: 4px solid lightslategray;
background: whitesmoke;
}

View File

@ -3,7 +3,17 @@ package com.darkweb.genesissearchengine.appManager;
import android.app.Service; import android.app.Service;
import android.content.Intent; import android.content.Intent;
import android.os.IBinder; import android.os.IBinder;
import androidx.core.app.NotificationManagerCompat;
import com.darkweb.genesissearchengine.constants.status; import com.darkweb.genesissearchengine.constants.status;
import com.darkweb.genesissearchengine.pluginManager.pluginController;
import com.darkweb.genesissearchengine.pluginManager.pluginEnums;
import org.torproject.android.proxy.OrbotService;
import org.torproject.android.proxy.wrapper.orbotLocalConstants;
import java.util.Collections;
public class activityStateManager extends Service { public class activityStateManager extends Service {
@ -19,6 +29,10 @@ public class activityStateManager extends Service {
@Override @Override
public void onDestroy() { public void onDestroy() {
Intent mServiceIntent = new Intent(this.getApplicationContext(), OrbotService.class);
this.stopService(mServiceIntent);
OrbotService.getServiceObject().onDestroy();
status.sSettingIsAppStarted = false; status.sSettingIsAppStarted = false;
super.onDestroy(); super.onDestroy();
android.os.Process.killProcess(android.os.Process.myPid()); android.os.Process.killProcess(android.os.Process.myPid());
@ -27,7 +41,12 @@ public class activityStateManager extends Service {
@Override @Override
public void onTaskRemoved(Intent rootIntent) { public void onTaskRemoved(Intent rootIntent) {
Intent mServiceIntent = new Intent(this.getApplicationContext(), OrbotService.class);
this.stopService(mServiceIntent);
OrbotService.getServiceObject().onDestroy();
status.sSettingIsAppStarted = false; status.sSettingIsAppStarted = false;
stopSelf(); stopSelf();
super.onDestroy(); super.onDestroy();
android.os.Process.killProcess(android.os.Process.myPid()); android.os.Process.killProcess(android.os.Process.myPid());

View File

@ -21,7 +21,8 @@ public class NestedGeckoView extends GeckoView {
private int mNestedOffsetY; private int mNestedOffsetY;
private NestedScrollingChildHelper mChildHelper; private NestedScrollingChildHelper mChildHelper;
private eventObserver.eventListener mEvent; private eventObserver.eventListener mEvent;
private boolean mScrollable = true;
private int mSwipeDistance = 0;
public void onSetHomeEvent(eventObserver.eventListener pEvent){ public void onSetHomeEvent(eventObserver.eventListener pEvent){
mEvent = pEvent; mEvent = pEvent;
@ -58,8 +59,15 @@ public class NestedGeckoView extends GeckoView {
switch (action) { switch (action) {
case MotionEvent.ACTION_MOVE: case MotionEvent.ACTION_MOVE:
// mEvent.invokeObserver(Collections.singletonList(null), GECKO_SCROLL_FINISHED); // mEvent.invokeObserver(Collections.singletonList(null), GECKO_SCROLL_FINISHED);
final boolean allowScroll = status.sFullScreenBrowsing;
int deltaY = mLastY - eventY; int deltaY = mLastY - eventY;
mSwipeDistance += deltaY;
if(mSwipeDistance>=100 || mSwipeDistance<=-150){
mScrollable = true;
}
final boolean allowScroll = status.sFullScreenBrowsing && !status.sDisableExpandTemp && mScrollable;
if (allowScroll && dispatchNestedPreScroll(0, deltaY, mScrollConsumed, mScrollOffset)) { if (allowScroll && dispatchNestedPreScroll(0, deltaY, mScrollConsumed, mScrollOffset)) {
@ -84,6 +92,8 @@ public class NestedGeckoView extends GeckoView {
break; break;
case MotionEvent.ACTION_DOWN: case MotionEvent.ACTION_DOWN:
mSwipeDistance = 0;
mScrollable = false;
mLastY = eventY; mLastY = eventY;
startNestedScroll(ViewCompat.SCROLL_AXIS_VERTICAL); startNestedScroll(ViewCompat.SCROLL_AXIS_VERTICAL);
mEvent.invokeObserver(Collections.singletonList(null), GECKO_SCROLL_DOWN); mEvent.invokeObserver(Collections.singletonList(null), GECKO_SCROLL_DOWN);

View File

@ -4,7 +4,7 @@ import org.mozilla.gecko.AndroidGamepadManager;
import org.mozilla.gecko.EventDispatcher; import org.mozilla.gecko.EventDispatcher;
import org.mozilla.gecko.InputMethods; import org.mozilla.gecko.InputMethods;
import org.mozilla.gecko.SurfaceViewWrapper; import org.mozilla.gecko.SurfaceViewWrapper;
import org.mozilla.gecko.util.ActivityUtils; //import org.mozilla.gecko.util.ActivityUtils;
import org.mozilla.gecko.util.ThreadUtils; import org.mozilla.gecko.util.ThreadUtils;
import org.mozilla.geckoview.Autofill; import org.mozilla.geckoview.Autofill;
import org.mozilla.geckoview.BasicSelectionActionDelegate; import org.mozilla.geckoview.BasicSelectionActionDelegate;
@ -238,10 +238,10 @@ public class extendedGeckoView extends FrameLayout {
mSurfaceWrapper.setListener(mDisplay); mSurfaceWrapper.setListener(mDisplay);
final Activity activity = ActivityUtils.getActivityFromContext(getContext()); //final Activity activity = ActivityUtils.getActivityFromContext(getContext());
if (activity != null) { //if (activity != null) {
mSelectionActionDelegate = new BasicSelectionActionDelegate(activity); //mSelectionActionDelegate = new BasicSelectionActionDelegate();
} //}
mAutofillDelegate = new AndroidAutofillDelegate(); mAutofillDelegate = new AndroidAutofillDelegate();
} }

View File

@ -66,7 +66,6 @@ public class geckoClients
mSession.getSettings().setFullAccessibilityTree(true); mSession.getSettings().setFullAccessibilityTree(true);
mSession.getSettings().setUserAgentMode(USER_AGENT_MODE_MOBILE); mSession.getSettings().setUserAgentMode(USER_AGENT_MODE_MOBILE);
mSession.getSettings().setAllowJavascript(status.sSettingJavaStatus); mSession.getSettings().setAllowJavascript(status.sSettingJavaStatus);
geckoView.releaseSession();
geckoView.setSession(mSession); geckoView.setSession(mSession);
} }
mSession.onSetInitializeFromStartup(); mSession.onSetInitializeFromStartup();
@ -141,6 +140,7 @@ public class geckoClients
if(mRuntime==null){ if(mRuntime==null){
mRuntime = GeckoRuntime.getDefault(context.getApplicationContext()); mRuntime = GeckoRuntime.getDefault(context.getApplicationContext());
mRuntime.getSettings().setAboutConfigEnabled(true); mRuntime.getSettings().setAboutConfigEnabled(true);
mRuntime.getSettings().setAboutConfigEnabled(true);
mRuntime.getSettings().setAutomaticFontSizeAdjustment(false); mRuntime.getSettings().setAutomaticFontSizeAdjustment(false);
mRuntime.getSettings().setWebFontsEnabled(status.sShowWebFonts); mRuntime.getSettings().setWebFontsEnabled(status.sShowWebFonts);
mRuntime.getSettings().setForceUserScalableEnabled(status.sSettingEnableZoom); mRuntime.getSettings().setForceUserScalableEnabled(status.sSettingEnableZoom);

View File

@ -50,6 +50,8 @@ import org.mozilla.geckoview.GeckoView;
import org.mozilla.geckoview.SlowScriptResponse; import org.mozilla.geckoview.SlowScriptResponse;
import org.mozilla.geckoview.WebRequestError; import org.mozilla.geckoview.WebRequestError;
import org.mozilla.geckoview.WebResponse; import org.mozilla.geckoview.WebResponse;
import org.torproject.android.proxy.wrapper.orbotLocalConstants;
import java.io.File; import java.io.File;
import java.io.FileOutputStream; import java.io.FileOutputStream;
import java.io.InputStream; import java.io.InputStream;
@ -284,10 +286,10 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
@Override @Override
public void onPageStart(@NonNull GeckoSession var1, @NonNull String var2) { public void onPageStart(@NonNull GeckoSession var1, @NonNull String var2) {
if(mIsLoaded){ if(mIsLoaded){
event.invokeObserver(Arrays.asList(var2,mSessionID,mCurrentTitle, m_current_url_id, mTheme, this), enums.etype.ON_UPDATE_SEARCH_BAR);
if(!isPageLoading){ if(!isPageLoading){
mCurrentTitle = "loading"; mCurrentTitle = "loading";
m_current_url_id = -1; m_current_url_id = -1;
//mTheme = null;
mThemeChanged = false; mThemeChanged = false;
} }
isPageLoading = true; isPageLoading = true;
@ -299,6 +301,11 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
} }
} }
@UiThread
public @Nullable GeckoResult<SlowScriptResponse> onSlowScript(@NonNull final GeckoSession geckoSession, @NonNull final String scriptFileName) {
return null;
}
@UiThread @UiThread
public void onPageStop(@NonNull GeckoSession var1, boolean var2) { public void onPageStop(@NonNull GeckoSession var1, boolean var2) {
if(var2){ if(var2){
@ -541,7 +548,7 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
public GeckoResult<String> onLoadError(@NonNull GeckoSession var1, @Nullable String var2, WebRequestError var3) { public GeckoResult<String> onLoadError(@NonNull GeckoSession var1, @Nullable String var2, WebRequestError var3) {
if(status.sSettingIsAppStarted){ if(status.sSettingIsAppStarted && orbotLocalConstants.mIsTorInitialized){
errorHandler handler = new errorHandler(); errorHandler handler = new errorHandler();
mProgress = 0; mProgress = 0;
mPreviousErrorPage = true; mPreviousErrorPage = true;
@ -560,6 +567,10 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
} }
return GeckoResult.fromValue("data:text/html," + handler.createErrorPage(var3.category, var3.code,mContext.get(),var2, mResourceURL)); return GeckoResult.fromValue("data:text/html," + handler.createErrorPage(var3.category, var3.code,mContext.get(),var2, mResourceURL));
}else {
event.invokeObserver(Arrays.asList(var2,mSessionID), enums.etype.M_ORBOT_LOADING);
mCurrentURL = mPrevURL;
event.invokeObserver(Arrays.asList(mCurrentURL,mSessionID,mCurrentTitle, m_current_url_id, mTheme, this), enums.etype.ON_UPDATE_SEARCH_BAR);
} }
return null; return null;
} }
@ -607,11 +618,6 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
mPrevURL = mCurrentURL; mPrevURL = mCurrentURL;
} }
@UiThread
public GeckoResult<SlowScriptResponse> onSlowScript(@NonNull GeckoSession var1, @NonNull String var2) {
return null;
}
@UiThread @UiThread
public void onWebAppManifest(@NonNull GeckoSession var1, @NonNull JSONObject var2) { public void onWebAppManifest(@NonNull GeckoSession var1, @NonNull JSONObject var2) {
try { try {
@ -894,9 +900,6 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
} }
public String getCurrentURL(){ public String getCurrentURL(){
if(mCurrentURL.equals("resource://android/assets/Homepage/homepage.html") || mCurrentURL.equals("resource://android/assets/Homepage/homepage-dark.html")){
//setURL("https://genesishiddentechnologies.com");
}
return mCurrentURL; return mCurrentURL;
} }

View File

@ -46,7 +46,7 @@ public class selectionActionDelegate implements ActionMode.Callback,
protected static final String ACTION_PROCESS_TEXT = Intent.ACTION_PROCESS_TEXT; protected static final String ACTION_PROCESS_TEXT = Intent.ACTION_PROCESS_TEXT;
private static final String[] FLOATING_TOOLBAR_ACTIONS = new String[] { private static final String[] FLOATING_TOOLBAR_ACTIONS = new String[] {
ACTION_CUT, ACTION_COPY, ACTION_PASTE, ACTION_SELECT_ALL, ACTION_PROCESS_TEXT, "SEARCH" ACTION_CUT, ACTION_COPY, ACTION_PASTE, ACTION_SELECT_ALL, "SEARCH"
}; };
private static final String[] FIXED_TOOLBAR_ACTIONS = new String[] { private static final String[] FIXED_TOOLBAR_ACTIONS = new String[] {
ACTION_SELECT_ALL, ACTION_CUT, ACTION_COPY, ACTION_PASTE,"SEARCH" ACTION_SELECT_ALL, ACTION_CUT, ACTION_COPY, ACTION_PASTE,"SEARCH"
@ -158,7 +158,7 @@ public class selectionActionDelegate implements ActionMode.Callback,
return pm.resolveActivity(getProcessTextIntent(), return pm.resolveActivity(getProcessTextIntent(),
PackageManager.MATCH_DEFAULT_ONLY) != null; PackageManager.MATCH_DEFAULT_ONLY) != null;
} }
if(id.equals("SEARCH")){ if(id.equals("SEARCH") && !mSelection.text.isEmpty() && mExternalActionsEnabled){
return true; return true;
} }
@ -233,6 +233,7 @@ public class selectionActionDelegate implements ActionMode.Callback,
} }
if (id.equals("SEARCH")) { if (id.equals("SEARCH")) {
activityContextManager.getInstance().getHomeController().onSearchString(mSelection.text); activityContextManager.getInstance().getHomeController().onSearchString(mSelection.text);
clearSelection();
mActionMode.finish(); mActionMode.finish();
return false; return false;
} }

View File

@ -714,6 +714,10 @@ public class homeController extends AppCompatActivity implements ComponentCallba
} }
} }
public void onDestroyExernal(){
pluginController.getInstance().onOrbotInvoke(Collections.singletonList(status.mThemeApplying), pluginEnums.eOrbotManager.M_DESTROY);
}
@SuppressLint("ClickableViewAccessibility") @SuppressLint("ClickableViewAccessibility")
@Override @Override
protected void onDestroy() { protected void onDestroy() {
@ -721,7 +725,6 @@ public class homeController extends AppCompatActivity implements ComponentCallba
super.onDestroy(); super.onDestroy();
return; return;
} }
pluginController.getInstance().onOrbotInvoke(Collections.singletonList(status.mThemeApplying), pluginEnums.eOrbotManager.M_DESTROY);
mBackSplash.setImageDrawable(null); mBackSplash.setImageDrawable(null);
mBackSplash.setBackground(null); mBackSplash.setBackground(null);
@ -1262,7 +1265,6 @@ public class homeController extends AppCompatActivity implements ComponentCallba
}else { }else {
boolean mStatus = activityContextManager.getInstance().getTabController().onBackPressed(); boolean mStatus = activityContextManager.getInstance().getTabController().onBackPressed();
onResumeDump(); onResumeDump();
activityContextManager.getInstance().getTabController().onPostExit();
if(!mStatus){ if(!mStatus){
mHomeViewController.onHideTabContainer(); mHomeViewController.onHideTabContainer();
} }
@ -1493,6 +1495,7 @@ public class homeController extends AppCompatActivity implements ComponentCallba
tabRowModel model = (tabRowModel)dataController.getInstance().invokeTab(dataEnums.eTabCommands.GET_CURRENT_TAB, null); tabRowModel model = (tabRowModel)dataController.getInstance().invokeTab(dataEnums.eTabCommands.GET_CURRENT_TAB, null);
if(model==null){ if(model==null){
mHomeViewController.onProgressBarUpdate(5, false); mHomeViewController.onProgressBarUpdate(5, false);
mGeckoView.releaseSession();
initializeGeckoView(false,false); initializeGeckoView(false,false);
onLoadURL(helperMethod.getDomainName(status.sSettingSearchStatus)); onLoadURL(helperMethod.getDomainName(status.sSettingSearchStatus));
}else { }else {
@ -1885,6 +1888,7 @@ public class homeController extends AppCompatActivity implements ComponentCallba
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_STRING, Arrays.asList(keys.BRIDGE_CUSTOM_TYPE,strings.BRIDGE_CUSTOM_BRIDGE_OBFS4)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_STRING, Arrays.asList(keys.BRIDGE_CUSTOM_TYPE,strings.BRIDGE_CUSTOM_BRIDGE_OBFS4));
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.BRIDGE_ENABLES,false)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.BRIDGE_ENABLES,false));
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_GATEWAY_MANUAL,false)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_GATEWAY_MANUAL,false));
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_INSTALLED,false));
dataController.getInstance().invokeTab(dataEnums.eTabCommands.M_CLEAR_TAB, null); dataController.getInstance().invokeTab(dataEnums.eTabCommands.M_CLEAR_TAB, null);
@ -1931,7 +1935,7 @@ public class homeController extends AppCompatActivity implements ComponentCallba
mSearchbar.getLocationOnScreen(locatiosn); mSearchbar.getLocationOnScreen(locatiosn);
int ys = locatiosn[1]; int ys = locatiosn[1];
if(ys!=0){ if(ys!=0){
if(ys<=50){ if(ys<=8){
mHomeViewController.shrinkTopBar(true, mGeckoView.getMaxY()); mHomeViewController.shrinkTopBar(true, mGeckoView.getMaxY());
}else { }else {
mHomeViewController.expandTopBar(true, mGeckoView.getMaxY()); mHomeViewController.expandTopBar(true, mGeckoView.getMaxY());
@ -2004,6 +2008,8 @@ public class homeController extends AppCompatActivity implements ComponentCallba
} }
else if(e_type.equals(enums.etype.M_SPLASH_DISABLE)) else if(e_type.equals(enums.etype.M_SPLASH_DISABLE))
{ {
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_INSTALLED,true));
status.sAppInstalled = true;
initWidget(); initWidget();
} }
else if(e_type.equals(enums.etype.M_WELCOME_MESSAGE)){ else if(e_type.equals(enums.etype.M_WELCOME_MESSAGE)){
@ -2322,6 +2328,9 @@ public class homeController extends AppCompatActivity implements ComponentCallba
else if(e_type.equals(enums.etype.M_RATE_COUNT)){ else if(e_type.equals(enums.etype.M_RATE_COUNT)){
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_INT, Arrays.asList(keys.SETTING_RATE_COUNT, status.sRateCount)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_INT, Arrays.asList(keys.SETTING_RATE_COUNT, status.sRateCount));
} }
else if(e_type.equals(enums.etype.M_ORBOT_LOADING)){
pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(homeController.this), M_ORBOT_LOADING);
}
return null; return null;
} }

View File

@ -598,7 +598,22 @@ class homeViewController
while (!orbotLocalConstants.mIsTorInitialized || !orbotLocalConstants.mNetworkState){ while (!orbotLocalConstants.mIsTorInitialized || !orbotLocalConstants.mNetworkState){
try try
{ {
boolean mFastConnect = !status.sRestoreTabs && status.sAppInstalled && status.sSettingSearchStatus.equals(constants.CONST_BACKEND_GENESIS_URL) && !status.sBridgeStatus;
if(mFastConnect){
if(orbotLocalConstants.mNetworkState){
sleep(1000); sleep(1000);
orbotLocalConstants.mTorLogsStatus = "Starting Genesis | Please Wait ...";
mEvent.invokeObserver(Collections.singletonList(status.sSettingSearchStatus), enums.etype.recheck_orbot);
startPostTask(messages.MESSAGE_UPDATE_LOADING_TEXT);
break;
}
}
sleep(1500);
if(mFastConnect){
continue;
}
mEvent.invokeObserver(Collections.singletonList(status.sSettingSearchStatus), enums.etype.recheck_orbot); mEvent.invokeObserver(Collections.singletonList(status.sSettingSearchStatus), enums.etype.recheck_orbot);
if(temp_context.isDestroyed()){ if(temp_context.isDestroyed()){
return; return;
@ -612,9 +627,13 @@ class homeViewController
} }
if(!status.sSettingIsAppStarted){ if(!status.sSettingIsAppStarted){
startPostTask(messages.MESSAGE_ON_URL_LOAD); startPostTask(messages.MESSAGE_ON_URL_LOAD);
mContext.runOnUiThread(() -> splashScreenDisable()); mContext.runOnUiThread(() -> {
splashScreenDisable();
});
}else { }else {
mContext.runOnUiThread(() -> mEvent.invokeObserver(null, enums.etype.ON_LOAD_TAB_ON_RESUME)); mContext.runOnUiThread(() -> {
mEvent.invokeObserver(null, enums.etype.ON_LOAD_TAB_ON_RESUME);
});
} }
} }
}.start(); }.start();
@ -691,19 +710,19 @@ class homeViewController
} }
public void disableExpand(){ public void disableExpand(){
View child = mAppBar.getChildAt(0); View child = mAppBar.getChildAt(0);
AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) child.getLayoutParams(); AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) child.getLayoutParams();
params.setScrollFlags(0); params.setScrollFlags(0);
} }
@SuppressLint("WrongConstant") @SuppressLint("WrongConstant")
private void enableCollapsing() { private void enableCollapsing() {
if(mProgressBar.getProgress()==0 || mProgressBar.getProgress()==100){
View child = mAppBar.getChildAt(0); View child = mAppBar.getChildAt(0);
AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) child.getLayoutParams(); AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) child.getLayoutParams();
params.setScrollFlags(1); params.setScrollFlags(1);
} }
}
public void expandTopBar(boolean pForced, int pOffsetY){ public void expandTopBar(boolean pForced, int pOffsetY){
if(pOffsetY == -1){ if(pOffsetY == -1){
@ -727,7 +746,7 @@ class homeViewController
mIsTopBarExpanded = true; mIsTopBarExpanded = true;
Log.i("wwwwww1","wwwwww"); Log.i("wwwwww1","wwwwww");
} }
}, 100); }, 0);
} }
@ -755,7 +774,7 @@ class homeViewController
mAppBar.setExpanded(false,true); mAppBar.setExpanded(false,true);
Log.i("wwwwww2","wwwwww"); Log.i("wwwwww2","wwwwww");
} }
}, 100); }, 0);
} }
/*-------------------------------------------------------Helper Methods-------------------------------------------------------*/ /*-------------------------------------------------------Helper Methods-------------------------------------------------------*/
@ -922,7 +941,6 @@ class homeViewController
private Handler searchBarUpdateHandler = new Handler(); private Handler searchBarUpdateHandler = new Handler();
private String handlerLocalUrl = ""; private String handlerLocalUrl = "";
void onUpdateSearchBar(String url,boolean showProtocol, boolean pClearText, boolean pBypassFocus){ void onUpdateSearchBar(String url,boolean showProtocol, boolean pClearText, boolean pBypassFocus){
if(url.startsWith(CONST_GENESIS_URL_CACHED) || url.startsWith(CONST_GENESIS_URL_CACHED_DARK)){ if(url.startsWith(CONST_GENESIS_URL_CACHED) || url.startsWith(CONST_GENESIS_URL_CACHED_DARK)){
mSearchbar.setTag(R.id.msearchbarProcessing,true); mSearchbar.setTag(R.id.msearchbarProcessing,true);
url = CONST_GENESIS_DOMAIN_URL; url = CONST_GENESIS_DOMAIN_URL;
@ -1214,9 +1232,21 @@ class homeViewController
void onProgressBarUpdate(int value, boolean mForced){ void onProgressBarUpdate(int value, boolean mForced){
if(value != 0 && value != 100){
mAppBar.setExpanded(true,true);
status.sDisableExpandTemp = true;
}else {
status.sDisableExpandTemp = false;
}
if(mProgressBar.getProgress() == value || mProgressBar.getProgress() == 0 && value == 100){
return;
}
if(progressAnimator!=null){ if(progressAnimator!=null){
progressAnimator.cancel(); progressAnimator.cancel();
} }
if(mSearchbar.getText().toString().equals("genesis.onion") && !mForced || (boolean)mSearchbar.getTag(R.id.msearchbarProcessing)){ if(mSearchbar.getText().toString().equals("genesis.onion") && !mForced || (boolean)mSearchbar.getTag(R.id.msearchbarProcessing)){
mProgressBar.setProgress(0); mProgressBar.setProgress(0);
mProgressBar.setVisibility(View.GONE); mProgressBar.setVisibility(View.GONE);
@ -1234,9 +1264,14 @@ class homeViewController
setProgressAnimate(value,200); setProgressAnimate(value,200);
} }
if(value >= 100 || value<=0){ if(value >= 100 || value<=0){
mProgressBar.animate().alpha(0).setStartDelay(200).withEndAction(() -> mProgressBar.setProgress(0)); mProgressBar.animate().alpha(0).setStartDelay(200).withEndAction(() -> {
status.sDisableExpandTemp = false;
mProgressBar.setProgress(0);
enableCollapsing();
});
} }
} }
} }
ObjectAnimator progressAnimator = null; ObjectAnimator progressAnimator = null;

View File

@ -154,7 +154,7 @@ public class languageController extends AppCompatActivity {
getIntent().putExtra("activity_restarted",((LinearLayoutManager) Objects.requireNonNull(mRecycleView.getLayoutManager())).findFirstCompletelyVisibleItemPosition()); getIntent().putExtra("activity_restarted",((LinearLayoutManager) Objects.requireNonNull(mRecycleView.getLayoutManager())).findFirstCompletelyVisibleItemPosition());
helperMethod.restartActivity(getIntent(), this); helperMethod.restartActivity(getIntent(), this);
overridePendingTransition(R.anim.fade_in_lang, R.anim.fade_out_lang); overridePendingTransition(R.anim.fade_in_lang, R.anim.fade_out_lang);
pluginController.getInstance().onLanguageInvoke(Arrays.asList(this, status.sSettingLanguage, status.sSettingLanguageRegion, status.sTheme), pluginEnums.eLangManager.M_SET_LANGUAGE); pluginController.getInstance().onLanguageInvoke(Arrays.asList(this, status.sSettingLanguage, status.sSettingLanguageRegion, status.mThemeApplying), pluginEnums.eLangManager.M_SET_LANGUAGE);
if(activityContextManager.getInstance().getSettingController()!=null && !activityContextManager.getInstance().getSettingController().isDestroyed()){ if(activityContextManager.getInstance().getSettingController()!=null && !activityContextManager.getInstance().getSettingController().isDestroyed()){
activityContextManager.getInstance().getSettingController().onRedrawXML(); activityContextManager.getInstance().getSettingController().onRedrawXML();

View File

@ -216,7 +216,7 @@ public class settingClearController extends AppCompatActivity {
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_OPEN_URL_IN_NEW_TAB,true)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_OPEN_URL_IN_NEW_TAB,true));
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_POPUP,true)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_POPUP,true));
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_STRING, Arrays.asList(keys.BRIDGE_CUSTOM_TYPE,strings.BRIDGE_CUSTOM_BRIDGE_OBFS4)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_STRING, Arrays.asList(keys.BRIDGE_CUSTOM_TYPE,strings.BRIDGE_CUSTOM_BRIDGE_OBFS4));
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_INSTALLED,false));
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.BRIDGE_ENABLES,false)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.BRIDGE_ENABLES,false));
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_GATEWAY_MANUAL,false)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_GATEWAY_MANUAL,false));

View File

@ -8,7 +8,7 @@ public class enums
on_verify_selected_url_menu,FINDER_RESULT_CALLBACK,M_ADMOB_BANNER_RECHECK,M_OPEN_SESSION,M_DOWNLOAD_FAILURE, on_verify_selected_url_menu,FINDER_RESULT_CALLBACK,M_ADMOB_BANNER_RECHECK,M_OPEN_SESSION,M_DOWNLOAD_FAILURE,
welcome, reload,download_folder, M_UPDATE_THEME,M_ON_BANNER_UPDATE, M_LOAD_HOMEPAGE_GENESIS,M_INIT_TAB_COUNT_FORCED,M_SPLASH_DISABLE,M_NEW_LINK_IN_NEW_TAB,M_RESET_SUGGESTION, welcome, reload,download_folder, M_UPDATE_THEME,M_ON_BANNER_UPDATE, M_LOAD_HOMEPAGE_GENESIS,M_INIT_TAB_COUNT_FORCED,M_SPLASH_DISABLE,M_NEW_LINK_IN_NEW_TAB,M_RESET_SUGGESTION,
url_triggered, url_triggered_new_tab,url_clear,fetch_favicon,url_clear_at,remove_from_database,is_empty,M_HOME_PAGE,M_PRELOAD_URL,ON_KEYBOARD_CLOSE,M_CLOSE_TAB, url_triggered, url_triggered_new_tab,url_clear,fetch_favicon,url_clear_at,remove_from_database,is_empty,M_HOME_PAGE,M_PRELOAD_URL,ON_KEYBOARD_CLOSE,M_CLOSE_TAB,
on_close_sesson,on_long_press, on_full_screen,on_handle_external_intent,on_update_suggestion_url,progress_update,progress_update_forced, ON_EXPAND_TOP_BAR,recheck_orbot,on_url_load,on_playstore_load,back_list_empty,start_proxy, ON_UPDATE_THEME, M_INITIALIZE_TAB_SINGLE, M_INITIALIZE_TAB_LINK,on_request_completed, on_update_history,on_update_suggestion,M_WELCOME_MESSAGE,ON_FIRST_PAINT, ON_LOAD_TAB_ON_RESUME, ON_SESSION_REINIT,on_page_loaded,on_load_error,download_file_popup,on_init_ads,search_update, open_new_tab,open_new_tab_instant on_close_sesson,on_long_press, on_full_screen,on_handle_external_intent,on_update_suggestion_url,progress_update,progress_update_forced, ON_EXPAND_TOP_BAR,recheck_orbot,on_url_load,on_playstore_load,back_list_empty,start_proxy, ON_UPDATE_THEME, M_INITIALIZE_TAB_SINGLE, M_INITIALIZE_TAB_LINK,on_request_completed, on_update_history,on_update_suggestion,M_WELCOME_MESSAGE,ON_FIRST_PAINT, ON_LOAD_TAB_ON_RESUME, ON_SESSION_REINIT,on_page_loaded,on_load_error, M_ORBOT_LOADING,download_file_popup,on_init_ads,search_update, open_new_tab,open_new_tab_instant
} }
/*General Enums*/ /*General Enums*/

View File

@ -57,6 +57,7 @@ public class keys
public static final String SETTING_FULL_SCREEN_BROWSIING = "SETTING_FULL_SCREEN_BROWSIING_V1"; public static final String SETTING_FULL_SCREEN_BROWSIING = "SETTING_FULL_SCREEN_BROWSIING_V1";
public static final String SETTING_OPEN_URL_IN_NEW_TAB = "SETTING_OPEN_URL_IN_NEW_TAB_V1"; public static final String SETTING_OPEN_URL_IN_NEW_TAB = "SETTING_OPEN_URL_IN_NEW_TAB_V1";
public static final String SETTING_LIST_VIEW = "SETTING_LIST_VIEW_V1"; public static final String SETTING_LIST_VIEW = "SETTING_LIST_VIEW_V1";
public static final String SETTING_INSTALLED = "SETTING_INSTALLED_V1";
/*Bridge Settings*/ /*Bridge Settings*/

View File

@ -66,6 +66,7 @@ public class status
public static boolean sVPNStatus = false; public static boolean sVPNStatus = false;
public static boolean sVPNPermission = false; public static boolean sVPNPermission = false;
public static boolean sBridgeStatus = false; public static boolean sBridgeStatus = false;
public static boolean sAppInstalled = false;
public static int sTheme = enums.Theme.THEME_DEFAULT; public static int sTheme = enums.Theme.THEME_DEFAULT;
public static int sSettingCookieStatus = ContentBlocking.AntiTracking.DEFAULT; public static int sSettingCookieStatus = ContentBlocking.AntiTracking.DEFAULT;
@ -77,6 +78,8 @@ public class status
public static float sSettingFontSize = 1; public static float sSettingFontSize = 1;
public static boolean sDisableExpandTemp = false;
private static void versionVerifier(Context pContext){ private static void versionVerifier(Context pContext){
status.sVersion = (String)dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_GET_STRING, Arrays.asList(keys.SETTING_VERSION,strings.GENERIC_EMPTY_STR)); status.sVersion = (String)dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_GET_STRING, Arrays.asList(keys.SETTING_VERSION,strings.GENERIC_EMPTY_STR));
if(!status.sVersion.equals("1.0.0.1")){ if(!status.sVersion.equals("1.0.0.1")){
@ -130,6 +133,7 @@ public class status
status.sLogThemeStyleAdvanced = (boolean)dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_GET_BOOL, Arrays.asList(keys.SETTING_LIST_VIEW,true)); status.sLogThemeStyleAdvanced = (boolean)dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_GET_BOOL, Arrays.asList(keys.SETTING_LIST_VIEW,true));
status.sTabGridLayoutEnabled = (boolean)dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_GET_BOOL, Arrays.asList(keys.SETTING_SHOW_TAB_GRID,true)); status.sTabGridLayoutEnabled = (boolean)dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_GET_BOOL, Arrays.asList(keys.SETTING_SHOW_TAB_GRID,true));
status.sRateCount = (int)dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_GET_INT, Arrays.asList(keys.SETTING_RATE_COUNT, 0)); status.sRateCount = (int)dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_GET_INT, Arrays.asList(keys.SETTING_RATE_COUNT, 0));
status.sAppInstalled = (boolean)dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_GET_BOOL, Arrays.asList(keys.SETTING_INSTALLED,false));
} }
} }

View File

@ -58,7 +58,7 @@ public class strings
/*Home Manager*/ /*Home Manager*/
public static final String HOME_BLANK_PAGE = "about:blank"; public static final String HOME_BLANK_PAGE = "about:blank";
public static final String HOME_REFERENCE_WEBSITES_DEFAULT = ""; public static final String HOME_REFERENCE_WEBSITES_DEFAULT = "[{\"mUrl\":\"https://wikileaks.org/-Leaks-.html\",\"mIcon\":\"https://wikileaks.org/static/img/wl-logo.png\",\"mHeader\":\"WikiLeaks (en)\",\"mBody\":\"WikiLeaks specializes in the publication of censored or otherwise restricted official materials involving war, and corruption\"},{\"mUrl\":\"https://p53lf57qovyuvwsc6xnrppyply3vtqm7l6pcobkmyqsiofyeznfu5uqd.onion/\",\"mIcon\":\"http://assets.p53lf57qovyuvwsc6xnrppyply3vtqm7l6pcobkmyqsiofyeznfu5uqd.onion/static/prod/v4/images/favicon-32x32.png\",\"mHeader\":\"Pro Publica\",\"mBody\":\"ProPublica is an independent, nonprofit newsroom that produces investigative journalism with moral force\"},{\"mUrl\":\"http://nzh3fv6jc6jskki3.onion/\",\"mIcon\":\"http://nzh3fv6jc6jskki3.onion/assets/images/favicon.png\",\"mHeader\":\"Rise UP | Communication Service\",\"mBody\":\"We are a project to create democratic alternatives and practiceself-determination by controlling our own secure means of communications\"},{\"mUrl\":\"http://answerszuvs3gg2l64e6hmnryudl5zgrmwm3vh65hzszdghblddvfiqd.onion/\",\"mIcon\":\"https://www.freeiconspng.com/uploads/questions-and-answers-icon-1.png\",\"mHeader\":\"Hidden Answer\",\"mBody\":\"Once you access the site, you’ll soon notice that the questions on Hidden Answers touch upon a variety of topics\"},{\"mUrl\":\"http://zerobinqmdqd236y.onion/\",\"mIcon\":\"https://icon-library.net//images/zero-icon/zero-icon-15.jpg\",\"mHeader\":\"Zero Bin\",\"mBody\":\"ZeroBin.net is a minimalist, open source online pastebin where the server has zero knowledge of pasted data\"},{\"mUrl\":\"http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion/\",\"mIcon\":\"http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion/img/favicon.ico\",\"mHeader\":\"Imperial Library\",\"mBody\":\"The Imperial Library of Trantor (also known as Galactic Library) is a repository of DRM-free ebooks on ePub format\"},{\"mUrl\":\"http://zqktlwiuavvvqqt4ybvgvi7tyo4hjl5xgfuvpdf6otjiycgwqbym2qad.onion/wiki/index.php/Main_Page\",\"mIcon\":\"http://zqktlwiuavvvqqt4ybvgvi7tyo4hjl5xgfuvpdf6otjiycgwqbym2qad.onion/wiki/resources/favicon.ico\",\"mHeader\":\"Hidden Wiki\",\"mBody\":\"One of the largest repository of categorized hidden web URL's\"},{\"mUrl\":\"https://www.facebookcorewwwi.onion/\",\"mIcon\":\"https://cdn1.iconfinder.com/data/icons/logotypes/32/square-facebook-512.png\",\"mHeader\":\"Facebook\",\"mBody\":\"Connect with friends and the world around you on Facebook\"},{\"mUrl\":\"https://www.bbcnewsv2vjtpsuy.onion/\",\"mIcon\":\"https://gn-web-assets.api.bbc.com/wwhp/20210105-1702-7302953dc6fd22d3eb4efd4d73bfd2a8d91bb7df/responsive/img/apple-touch/apple-touch-180.jpg\",\"mHeader\":\"BBC News\",\"mBody\":\"We’re impartial and independent, and every day we create distinctive, world class programmes and content which inform millions of people around the world\"},{\"mUrl\":\"http://archivecaslytosk.onion/\",\"mIcon\":\"https://archive.is/apple-touch-icon-144x144.png\",\"mHeader\":\"Archieve Today\",\"mBody\":\"It takes a 'snapshot' of a webpage that will always be online even if the original page disappears. It saves a text and a graphical copy of the legacy page\"},{\"mUrl\":\"http://wasabiukrxmkdgve5kynjztuovbg43uxcbcxn6y2okcrsg7gb6jdmbad.onion/\",\"mIcon\":\"http://wasabiukrxmkdgve5kynjztuovbg43uxcbcxn6y2okcrsg7gb6jdmbad.onion/images/favicon.ico\",\"mHeader\":\"Wasabi Wallet\",\"mBody\":\"Wasabi is an open-source, non-custodial, privacy-focused Bitcoin wallet for Desktop, that implements trustless CoinJoin\"},{\"mUrl\":\"http://ow24et3tetp6tvmk.onion/\",\"mIcon\":\"http://ow24et3tetp6tvmk.onion/favicon.ico\",\"mHeader\":\"Onion Wallet\",\"mBody\":\"When using Bitcoin together with Tor you are combining the best online money with the best encryption and privacy technology available\"},{\"mUrl\":\"http://piratebayztemzmv.onion/\",\"mIcon\":\"http://piratebayztemzmv.onion/images/tpb.jpg\",\"mHeader\":\"The Pirate Bay\",\"mBody\":\"The Pirate Bay allows users to search for Magnet links. These are used to reference resources available for download via peer-to-peer networks\"}]";
/*Message Manager*/ /*Message Manager*/

View File

@ -95,7 +95,7 @@ public class dataController
int m_history_size = (int) mHistoryModel.onTrigger(dataEnums.eHistoryCommands.M_HISTORY_SIZE,null) - 1; int m_history_size = (int) mHistoryModel.onTrigger(dataEnums.eHistoryCommands.M_HISTORY_SIZE,null) - 1;
ArrayList<Object> mHistory = (ArrayList<Object>)invokeSQLCipher(dataEnums.eSqlCipherCommands.M_SELECT_HISTORY, Arrays.asList(m_history_size+1,constants.CONST_FETCHABLE_LIST_SIZE)); ArrayList<Object> mHistory = (ArrayList<Object>)invokeSQLCipher(dataEnums.eSqlCipherCommands.M_SELECT_HISTORY, Arrays.asList(m_history_size+1,constants.CONST_FETCHABLE_LIST_SIZE));
return mHistoryModel.onTrigger(pCommands, mHistory); return mHistoryModel.onTrigger(pCommands, Collections.singletonList(mHistory));
}else { }else {
return mHistoryModel.onTrigger(pCommands, pData); return mHistoryModel.onTrigger(pCommands, pData);
} }
@ -233,6 +233,7 @@ public class dataController
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_OPEN_URL_IN_NEW_TAB,true)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_OPEN_URL_IN_NEW_TAB,true));
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_POPUP,true)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_POPUP,true));
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_STRING, Arrays.asList(keys.BRIDGE_CUSTOM_TYPE,strings.BRIDGE_CUSTOM_BRIDGE_OBFS4)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_STRING, Arrays.asList(keys.BRIDGE_CUSTOM_TYPE,strings.BRIDGE_CUSTOM_BRIDGE_OBFS4));
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_INSTALLED,false));
invokeSQLCipher(dataEnums.eSqlCipherCommands.M_INIT, Collections.singletonList(mContext)); invokeSQLCipher(dataEnums.eSqlCipherCommands.M_INIT, Collections.singletonList(mContext));
invokeSQLCipher(dataEnums.eSqlCipherCommands.M_EXEC_SQL, Arrays.asList(SQL_CLEAR_HISTORY,null)); invokeSQLCipher(dataEnums.eSqlCipherCommands.M_EXEC_SQL, Arrays.asList(SQL_CLEAR_HISTORY,null));

View File

@ -85,7 +85,7 @@ class imageDataModel
private Bitmap getBitmapFromURL(String src) { private Bitmap getBitmapFromURL(String src) {
try { try {
java.net.URL url = new java.net.URL(src); java.net.URL url = new java.net.URL(src);
Proxy proxy = new Proxy(Proxy.Type.SOCKS, InetSocketAddress.createUnresolved(CONST_PROXY_SOCKS, 9050)); Proxy proxy = new Proxy(Proxy.Type.SOCKS, InetSocketAddress.createUnresolved(CONST_PROXY_SOCKS, 9055));
HttpURLConnection connection = (HttpURLConnection) url.openConnection(proxy); HttpURLConnection connection = (HttpURLConnection) url.openConnection(proxy);
connection.setConnectTimeout(10000); connection.setConnectTimeout(10000);
connection.setDoInput(true); connection.setDoInput(true);

View File

@ -7,7 +7,6 @@ import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley; import com.android.volley.toolbox.Volley;
import com.darkweb.genesissearchengine.constants.keys; import com.darkweb.genesissearchengine.constants.keys;
import com.darkweb.genesissearchengine.constants.status; import com.darkweb.genesissearchengine.constants.status;
import com.darkweb.genesissearchengine.constants.strings;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import static com.darkweb.genesissearchengine.constants.constants.*; import static com.darkweb.genesissearchengine.constants.constants.*;
@ -16,13 +15,11 @@ public class referenceWebsiteDataModel {
/* Local Variables */ /* Local Variables */
private String mReferenceWebsiteData;
private boolean mLoading = false; private boolean mLoading = false;
/* Initializations */ /* Initializations */
public referenceWebsiteDataModel(){ public referenceWebsiteDataModel(){
mReferenceWebsiteData = status.sReferenceWebsites;
} }
/* Helper Methods */ /* Helper Methods */
@ -41,16 +38,12 @@ public class referenceWebsiteDataModel {
StringRequest stringRequest = new StringRequest(Request.Method.GET, mRefURL, StringRequest stringRequest = new StringRequest(Request.Method.GET, mRefURL,
response -> { response -> {
if(response.length()>10){ if(response.length()>10){
mReferenceWebsiteData = response;
status.sReferenceWebsites = response; status.sReferenceWebsites = response;
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_STRING, Arrays.asList(keys.HOME_REFERENCE_WEBSITES,status.sReferenceWebsites)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_STRING, Arrays.asList(keys.HOME_REFERENCE_WEBSITES,status.sReferenceWebsites));
mLoading = false; mLoading = false;
}else {
mReferenceWebsiteData = status.sReferenceWebsites;
} }
}, },
error -> { error -> {
mReferenceWebsiteData = status.sReferenceWebsites;
mLoading = false; mLoading = false;
}); });
@ -60,10 +53,7 @@ public class referenceWebsiteDataModel {
} }
private String onFetch(){ private String onFetch(){
try { return status.sReferenceWebsites;
return mReferenceWebsiteData;
}catch (Exception ignored){}
return strings.GENERIC_EMPTY_SPACE;
} }
/* External Triggers */ /* External Triggers */

View File

@ -47,7 +47,7 @@ public class NetCipher {
} }
public final static Proxy ORBOT_HTTP_PROXY = new Proxy(Proxy.Type.HTTP, public final static Proxy ORBOT_HTTP_PROXY = new Proxy(Proxy.Type.HTTP,
new InetSocketAddress("127.0.0.1", 8118)); new InetSocketAddress("127.0.0.1", 8125));
private static Proxy proxy; private static Proxy proxy;

View File

@ -173,7 +173,7 @@ abstract public class
if (status.getStringExtra(OrbotHelper.EXTRA_STATUS) if (status.getStringExtra(OrbotHelper.EXTRA_STATUS)
.equals(OrbotHelper.STATUS_ON)) { .equals(OrbotHelper.STATUS_ON)) {
return(status.getIntExtra(OrbotHelper.EXTRA_PROXY_PORT_SOCKS, return(status.getIntExtra(OrbotHelper.EXTRA_PROXY_PORT_SOCKS,
9050)); 9055));
} }
return(-1); return(-1);
@ -183,7 +183,7 @@ abstract public class
if (status.getStringExtra(OrbotHelper.EXTRA_STATUS) if (status.getStringExtra(OrbotHelper.EXTRA_STATUS)
.equals(OrbotHelper.STATUS_ON)) { .equals(OrbotHelper.STATUS_ON)) {
return(status.getIntExtra(OrbotHelper.EXTRA_PROXY_PORT_HTTP, return(status.getIntExtra(OrbotHelper.EXTRA_PROXY_PORT_HTTP,
8118)); 8125));
} }
return(-1); return(-1);

View File

@ -47,8 +47,8 @@ import ch.boye.httpclientandroidlib.HttpHost;
public class WebkitProxy { public class WebkitProxy {
private final static String DEFAULT_HOST = "localhost";//"127.0.0.1"; private final static String DEFAULT_HOST = "localhost";//"127.0.0.1";
private final static int DEFAULT_PORT = 8118; private final static int DEFAULT_PORT = 8125;
private final static int DEFAULT_SOCKS_PORT = 9050; private final static int DEFAULT_SOCKS_PORT = 9055;
private final static int REQUEST_CODE = 0; private final static int REQUEST_CODE = 0;

View File

@ -1,6 +1,7 @@
package com.darkweb.genesissearchengine.pluginManager.adPluginManager; package com.darkweb.genesissearchengine.pluginManager.adPluginManager;
import android.util.Log; import android.util.Log;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import com.darkweb.genesissearchengine.eventObserver; import com.darkweb.genesissearchengine.eventObserver;
@ -80,6 +81,7 @@ public class adManager
@Override @Override
public void onAdFailedToLoad(@NonNull LoadAdError var1) { public void onAdFailedToLoad(@NonNull LoadAdError var1) {
Log.i("dsa","asd");
} }
}); });
} }

View File

@ -151,10 +151,10 @@ public class downloadReciever extends AsyncTask<String, Integer, String> {
HttpURLConnection conection; HttpURLConnection conection;
Proxy proxy; Proxy proxy;
if(helperMethod.getDomainName(f_url[0]).contains(".onion")){ if(helperMethod.getDomainName(f_url[0]).contains(".onion")){
proxy = new Proxy(Proxy.Type.SOCKS, InetSocketAddress.createUnresolved(PROXY_ADDRESS, 9050)); proxy = new Proxy(Proxy.Type.SOCKS, InetSocketAddress.createUnresolved(PROXY_ADDRESS, 9055));
conection = (HttpURLConnection) url.openConnection(proxy); conection = (HttpURLConnection) url.openConnection(proxy);
}else { }else {
Proxy mProxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("127.0.0.1", 8118)); Proxy mProxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("127.0.0.1", 8125));
URLConnection mURLConnection = new URI(f_url[0]).toURL().openConnection(mProxy); URLConnection mURLConnection = new URI(f_url[0]).toURL().openConnection(mProxy);
conection = (HttpURLConnection) mURLConnection; conection = (HttpURLConnection) mURLConnection;
} }
@ -214,9 +214,9 @@ public class downloadReciever extends AsyncTask<String, Integer, String> {
StrongHttpsClient httpclient = new StrongHttpsClient(context); StrongHttpsClient httpclient = new StrongHttpsClient(context);
if(helperMethod.getDomainName(f_url[0]).contains(".onion")){ if(helperMethod.getDomainName(f_url[0]).contains(".onion")){
httpclient.useProxy(true, "SOCKS", "127.0.0.1", 9050); httpclient.useProxy(true, "SOCKS", "127.0.0.1", 9055);
}else { }else {
httpclient.useProxy(true, "SOCKS", "127.0.0.1", 9050); httpclient.useProxy(true, "SOCKS", "127.0.0.1", 9055);
} }
HttpGet httpget = new HttpGet(urlEncoded); HttpGet httpget = new HttpGet(urlEncoded);

View File

@ -66,6 +66,8 @@ public class langManager {
mLanguage = new Locale("en", "Us"); mLanguage = new Locale("en", "Us");
} }
}else { }else {
Locale mSystemLocale = Resources.getSystem().getConfiguration().locale;
mEvent.invokeObserver(Collections.singletonList(mSystemLocale), pluginEnums.eLangManager.M_UPDATE_LOCAL);
return; return;
} }
}else { }else {

View File

@ -253,6 +253,26 @@ public class messageManager
}); });
} }
private void orbotLoading()
{
final Handler handler = new Handler();
Runnable runnable = () -> mDialog.dismiss();
initializeDialog(R.layout.popup_orbot_connecting, Gravity.BOTTOM);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> {
mDialog.dismiss();
handler.removeCallbacks(runnable);
});
mDialog.setOnDismissListener(dialog -> {
handler.removeCallbacks(runnable);
onClearReference();
});
handler.postDelayed(runnable, 3500);
}
private void dataClearedSuccessfully() private void dataClearedSuccessfully()
{ {
initializeDialog(R.layout.popup_data_cleared, Gravity.BOTTOM); initializeDialog(R.layout.popup_data_cleared, Gravity.BOTTOM);
@ -753,6 +773,11 @@ public class messageManager
/*VERIFIED*/ /*VERIFIED*/
maxTabReached(); maxTabReached();
break; break;
case M_ORBOT_LOADING:
/*VERIFIED*/
orbotLoading();
break;
} }
} }
} }

View File

@ -96,11 +96,11 @@ public class orbotManager
/*Proxy Manager*/ /*Proxy Manager*/
private void onSetProxy(String url){ private void onSetProxy(){
PrefsHelper.setPref(keys.PROXY_TYPE, 1); PrefsHelper.setPref(keys.PROXY_TYPE, 1);
PrefsHelper.setPref(keys.PROXY_SOCKS, constants.CONST_PROXY_SOCKS); PrefsHelper.setPref(keys.PROXY_SOCKS, constants.CONST_PROXY_SOCKS);
PrefsHelper.setPref(keys.PROXY_SOCKS_PORT, 9050); PrefsHelper.setPref(keys.PROXY_SOCKS_PORT, 9055);
PrefsHelper.setPref(keys.PROXY_SOCKS_VERSION,constants.CONST_PROXY_SOCKS_VERSION); PrefsHelper.setPref(keys.PROXY_SOCKS_VERSION,constants.CONST_PROXY_SOCKS_VERSION);
PrefsHelper.setPref(keys.PROXY_SOCKS_REMOTE_DNS,constants.CONST_PROXY_SOCKS_REMOTE_DNS); PrefsHelper.setPref(keys.PROXY_SOCKS_REMOTE_DNS,constants.CONST_PROXY_SOCKS_REMOTE_DNS);
} }
@ -115,7 +115,7 @@ public class orbotManager
PrefsHelper.setPref(keys.PROXY_TYPE, 1); PrefsHelper.setPref(keys.PROXY_TYPE, 1);
PrefsHelper.setPref(keys.PROXY_SOCKS,constants.CONST_PROXY_SOCKS); PrefsHelper.setPref(keys.PROXY_SOCKS,constants.CONST_PROXY_SOCKS);
PrefsHelper.setPref(keys.PROXY_SOCKS_PORT, 9050); PrefsHelper.setPref(keys.PROXY_SOCKS_PORT, 9055);
PrefsHelper.setPref(keys.PROXY_SOCKS_VERSION,constants.CONST_PROXY_SOCKS_VERSION); PrefsHelper.setPref(keys.PROXY_SOCKS_VERSION,constants.CONST_PROXY_SOCKS_VERSION);
PrefsHelper.setPref(keys.PROXY_SOCKS_REMOTE_DNS,constants.CONST_PROXY_SOCKS_REMOTE_DNS); PrefsHelper.setPref(keys.PROXY_SOCKS_REMOTE_DNS,constants.CONST_PROXY_SOCKS_REMOTE_DNS);
@ -127,6 +127,48 @@ public class orbotManager
PrefsHelper.setPref("browser.cache.disk.enable",true); PrefsHelper.setPref("browser.cache.disk.enable",true);
PrefsHelper.setPref("browser.cache.memory.enable",true); PrefsHelper.setPref("browser.cache.memory.enable",true);
PrefsHelper.setPref("browser.cache.disk.capacity",1000); PrefsHelper.setPref("browser.cache.disk.capacity",1000);
PrefsHelper.setPref("Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101 Firefox/78.0","en-us,en;q=0.5");
PrefsHelper.setPref("browser.display.show_image_placeholders",true);
PrefsHelper.setPref("browser.cache.disk.enable",false);
PrefsHelper.setPref("browser.cache.memory.enable",true);
PrefsHelper.setPref("browser.cache.disk.capacity",0);
PrefsHelper.setPref("privacy.resistFingerprinting",true);
PrefsHelper.setPref("privacy.donottrackheader.enabled",false);
PrefsHelper.setPref("privacy.donottrackheader.value",1);
PrefsHelper.setPref("network.http.sendRefererHeader", 0);
PrefsHelper.setPref("security.OCSP.require", false);
PrefsHelper.setPref("security.checkloaduri",false);
PrefsHelper.setPref("security.mixed_content.block_active_content",false);
PrefsHelper.setPref("security.mixed_content.block_display_content", false);
PrefsHelper.setPref("media.peerconnection.enabled",false); //webrtc disabled
PrefsHelper.setPref("Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101 Firefox/78.0","en-us,en;q=0.5");
PrefsHelper.setPref("browser.cache.disk_cache_ssl",true);
PrefsHelper.setPref("signon.formlessCapture.enabled",true);
PrefsHelper.setPref("signon.storeWhenAutocompleteOff",true);
PrefsHelper.setPref("signon.storeWhenAutocompleteOff",true);
PrefsHelper.setPref("dom.event.contextmenu.enabled",true);
PrefsHelper.setPref("layout.css.visited_links_enabled",true);
PrefsHelper.setPref("security.ssl3.ecdhe_rsa_aes_128_sha",true);
PrefsHelper.setPref("security.ssl3.ecdhe_ecdsa_aes_128_sha",true);
PrefsHelper.setPref("security.ssl3.dhe_rsa_aes_128_sha",true);
PrefsHelper.setPref("security.ssl3.rsa_des_ede3_sha",true);
PrefsHelper.setPref("security.ssl3.dhe_rsa_aes_256_sha",true);
PrefsHelper.setPref("browser.send_pings.require_same_host",false);
PrefsHelper.setPref("webgl.disabled",false);
PrefsHelper.setPref("browser.safebrowsing.blockedURIs.enabled",false);
PrefsHelper.setPref("media.gmp-provider.enabled",false);
PrefsHelper.setPref("browser.send_pings.require_same_host",false);
PrefsHelper.setPref("webgl.disabled",false);
PrefsHelper.setPref("pdfjs.enableWebGL",false);
PrefsHelper.setPref("browser.safebrowsing.malware.enabled",false);
PrefsHelper.setPref("security.csp.experimentalEnabled",false);
PrefsHelper.setPref("network.http.referer.spoofSource",false);
PrefsHelper.setPref("security.OCSP.require",false);
PrefsHelper.setPref("security.ssl.treat_unsafe_negotiation_as_broken", false);
PrefsHelper.setPref("security.ssl.require_safe_negotiation",false);
onUpdatePrivacyPreferences(pShowImages, mClearOnExit); onUpdatePrivacyPreferences(pShowImages, mClearOnExit);
} }
@ -143,18 +185,6 @@ public class orbotManager
PrefsHelper.setPref("privacy.clearOnShutdown.sessions",mClearOnExit); PrefsHelper.setPref("privacy.clearOnShutdown.sessions",mClearOnExit);
PrefsHelper.setPref("privacy.clearOnShutdown.siteSettings",mClearOnExit); PrefsHelper.setPref("privacy.clearOnShutdown.siteSettings",mClearOnExit);
PrefsHelper.setPref("browser.display.show_image_placeholders",true);
PrefsHelper.setPref("browser.cache.disk.enable",false);
PrefsHelper.setPref("browser.cache.memory.enable",true);
PrefsHelper.setPref("browser.cache.disk.capacity",0);
PrefsHelper.setPref("privacy.resistFingerprinting",true);
PrefsHelper.setPref("privacy.donottrackheader.enabled",false);
PrefsHelper.setPref("privacy.donottrackheader.value",1);
PrefsHelper.setPref("network.http.sendRefererHeader", 0);
PrefsHelper.setPref("security.OCSP.require", true);
PrefsHelper.setPref("security.checkloaduri",true);
PrefsHelper.setPref("security.mixed_content.block_display_content", true);
PrefsHelper.setPref("media.peerconnection.enabled",false); //webrtc disabled
} }
/*Log Manager*/ /*Log Manager*/
@ -163,6 +193,10 @@ public class orbotManager
{ {
String logs = orbotLocalConstants.mTorLogsStatus; String logs = orbotLocalConstants.mTorLogsStatus;
if(logs.equals("Starting Genesis | Please Wait ...")){
return logs;
}
if(orbotLocalConstants.mTorLogsStatus.equals("No internet connection")){ if(orbotLocalConstants.mTorLogsStatus.equals("No internet connection")){
return "Warning | " + orbotLocalConstants.mTorLogsStatus; return "Warning | " + orbotLocalConstants.mTorLogsStatus;
} }
@ -252,7 +286,7 @@ public class orbotManager
} }
else if(pEventType.equals(pluginEnums.eOrbotManager.M_SET_PROXY)) else if(pEventType.equals(pluginEnums.eOrbotManager.M_SET_PROXY))
{ {
onSetProxy((String)pData.get(0)); onSetProxy();
} }
else if(pEventType.equals(pluginEnums.eOrbotManager.M_SHOW_NOTIFICATION_STATUS)) else if(pEventType.equals(pluginEnums.eOrbotManager.M_SHOW_NOTIFICATION_STATUS))
{ {

View File

@ -28,7 +28,7 @@ public class pluginEnums
/*Message Manager*/ /*Message Manager*/
public enum eMessageManager{ public enum eMessageManager{
M_RESET, M_DATA_CLEARED, M_APPLICATION_CRASH, M_SECURE_CONNECTION, M_POPUP_BLOCKED, M_PANIC, M_MAX_TAB_REACHED,M_DOWNLOAD_SINGLE, M_UPDATE_BRIDGES, M_NEW_IDENTITY, M_NOT_SUPPORTED, M_BRIDGE_MAIL, M_LONG_PRESS_WITH_LINK, M_LONG_PRESS_URL, M_LONG_PRESS_DOWNLOAD, M_START_ORBOT, M_DOWNLOAD_FAILURE, M_DOWNLOAD_FILE, M_RATE_APP, M_REPORT_URL, M_CLEAR_BOOKMARK, M_CLEAR_HISTORY, M_BOOKMARK, M_PANIC_RESET, M_RATE_SUCCESS, M_RATE_FAILURE, M_LANGUAGE_SUPPORT_FAILURE, M_WELCOME M_RESET, M_DATA_CLEARED, M_APPLICATION_CRASH, M_SECURE_CONNECTION, M_POPUP_BLOCKED, M_PANIC, M_MAX_TAB_REACHED, M_ORBOT_LOADING,M_DOWNLOAD_SINGLE, M_UPDATE_BRIDGES, M_NEW_IDENTITY, M_NOT_SUPPORTED, M_BRIDGE_MAIL, M_LONG_PRESS_WITH_LINK, M_LONG_PRESS_URL, M_LONG_PRESS_DOWNLOAD, M_START_ORBOT, M_DOWNLOAD_FAILURE, M_DOWNLOAD_FILE, M_RATE_APP, M_REPORT_URL, M_CLEAR_BOOKMARK, M_CLEAR_HISTORY, M_BOOKMARK, M_PANIC_RESET, M_RATE_SUCCESS, M_RATE_FAILURE, M_LANGUAGE_SUPPORT_FAILURE, M_WELCOME
} }
public enum eMessageManagerCallbacks{ public enum eMessageManagerCallbacks{
M_CANCEL_WELCOME, M_APP_RATED, M_DOWNLOAD_FILE_MANUAL, M_OPEN_LINK_CURRENT_TAB, M_COPY_LINK, M_REQUEST_BRIDGES, M_SET_BRIDGES, M_OPEN_LINK_NEW_TAB, M_CLEAR_TAB, M_RATE_APPLICATION, M_OPEN_PRIVACY, M_CUSTOM_BRIDGE, M_BRIDGE_TYPE M_CANCEL_WELCOME, M_APP_RATED, M_DOWNLOAD_FILE_MANUAL, M_OPEN_LINK_CURRENT_TAB, M_COPY_LINK, M_REQUEST_BRIDGES, M_SET_BRIDGES, M_OPEN_LINK_NEW_TAB, M_CLEAR_TAB, M_RATE_APPLICATION, M_OPEN_PRIVACY, M_CUSTOM_BRIDGE, M_BRIDGE_TYPE

View File

@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/pToastLayoutRoot"
android:translationZ="5dp"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/pMainLayout"
android:layout_width="match_parent"
android:layout_height="60dp"
android:background="@xml/ax_background_inverted"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<TextView
android:id="@+id/pDescription"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:alpha="0.8"
app:layout_constraintHorizontal_weight="1"
android:text="@string/ALERT_ORBOT_LOADING_INFO"
android:textAlignment="textStart"
android:textColor="@color/c_alert_text_inverted"
android:textSize="14sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/view6"
app:layout_constraintStart_toStartOf="@+id/pMainLayout"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" />
<Button
android:id="@+id/pDismiss"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginTop="10dp"
android:layout_marginEnd="10dp"
android:layout_marginBottom="10dp"
android:layout_weight="1"
android:background="@xml/ax_ripple_default_round"
android:padding="0dp"
android:paddingStart="10dp"
android:paddingEnd="10dp"
android:text="@string/ALERT_DISMISS"
android:textAllCaps="false"
android:textColor="@color/c_button_text_v1_inverted"
android:textSize="15sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<View
android:id="@+id/view6"
android:layout_width="1dp"
android:layout_height="30dp"
android:layout_marginEnd="10dp"
android:background="@color/c_border_background_divider"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pDismiss"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -94,6 +94,7 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginStart="-35dp" android:layout_marginStart="-35dp"
android:layout_marginTop="8dp" android:layout_marginTop="8dp"
android:imeOptions="flagNoExtractUi"
android:layout_marginEnd="10dp" android:layout_marginEnd="10dp"
android:layout_marginBottom="8dp" android:layout_marginBottom="8dp"
android:layout_weight="1" android:layout_weight="1"
@ -112,7 +113,6 @@
android:paddingStart="40dp" android:paddingStart="40dp"
android:paddingEnd="15dp" android:paddingEnd="15dp"
android:popupElevation="0dp" android:popupElevation="0dp"
android:privateImeOptions="nm"
android:requiresFadingEdge="horizontal" android:requiresFadingEdge="horizontal"
android:selectAllOnFocus="true" android:selectAllOnFocus="true"
android:text="@string/GENERAL_HOME_URL" android:text="@string/GENERAL_HOME_URL"
@ -206,7 +206,7 @@
android:background="@color/c_border_background_divider" android:background="@color/c_border_background_divider"
android:visibility="gone" android:visibility="gone"
app:adSize="BANNER" app:adSize="BANNER"
app:adUnitId="ca-app-pub-9340927969469822/2860677803" app:adUnitId="ca-app-pub-6985886044951738/2756260661"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pTopbar" /> app:layout_constraintTop_toBottomOf="@+id/pTopbar" />

View File

@ -294,6 +294,8 @@
<string name="ALERT_DATA_CLEARED_SHORTCUT" translatable="true">Data Cleared Successfully</string> <string name="ALERT_DATA_CLEARED_SHORTCUT" translatable="true">Data Cleared Successfully</string>
<string name="ALERT_DATA_CLEARED_INFO_SHORTCUT" translatable="true">Private data cleared successfully. Application will close in a moment. Now you can safely continue browsing</string> <string name="ALERT_DATA_CLEARED_INFO_SHORTCUT" translatable="true">Private data cleared successfully. Application will close in a moment. Now you can safely continue browsing</string>
<string name="ALERT_DATA_CLEARED_BUTTON" translatable="true">Closing Genesis Please Wait ...</string> <string name="ALERT_DATA_CLEARED_BUTTON" translatable="true">Closing Genesis Please Wait ...</string>
<string name="ALERT_ORBOT_LOADING" translatable="true">Genesis Connecting ...</string>
<string name="ALERT_ORBOT_LOADING_INFO" translatable="true">Genesis proxy connecting ...</string>
<string name="ALERT_CRASH" translatable="true">Unexpected Error</string> <string name="ALERT_CRASH" translatable="true">Unexpected Error</string>
<string name="ALERT_CRASH_INFO" translatable="true">Application crashed due to unexpected error. We are looking into the issue mean while you can continue with this application</string> <string name="ALERT_CRASH_INFO" translatable="true">Application crashed due to unexpected error. We are looking into the issue mean while you can continue with this application</string>

View File

@ -319,7 +319,7 @@ static const u_short fcstab[256] = {
0x39c3, 0x284a, 0x1ad1, 0x0b58, 0x7fe7, 0x6e6e, 0x5cf5, 0x4d7c, 0x39c3, 0x284a, 0x1ad1, 0x0b58, 0x7fe7, 0x6e6e, 0x5cf5, 0x4d7c,
0xc60c, 0xd785, 0xe51e, 0xf497, 0x8028, 0x91a1, 0xa33a, 0xb2b3, 0xc60c, 0xd785, 0xe51e, 0xf497, 0x8028, 0x91a1, 0xa33a, 0xb2b3,
0x4a44, 0x5bcd, 0x6956, 0x78df, 0x0c60, 0x1de9, 0x2f72, 0x3efb, 0x4a44, 0x5bcd, 0x6956, 0x78df, 0x0c60, 0x1de9, 0x2f72, 0x3efb,
0xd68d, 0xc704, 0xf59f, 0xe416, 0x90a9, 0x8118, 0xb3bb, 0xa232, 0xd68d, 0xc704, 0xf59f, 0xe416, 0x90a9, 0x8125, 0xb3bb, 0xa232,
0x5ac5, 0x4b4c, 0x79d7, 0x685e, 0x1ce1, 0x0d68, 0x3ff3, 0x2e7a, 0x5ac5, 0x4b4c, 0x79d7, 0x685e, 0x1ce1, 0x0d68, 0x3ff3, 0x2e7a,
0xe70e, 0xf687, 0xc41c, 0xd595, 0xa12a, 0xb0a3, 0x8238, 0x93b1, 0xe70e, 0xf687, 0xc41c, 0xd595, 0xa12a, 0xb0a3, 0x8238, 0x93b1,
0x6b46, 0x7acf, 0x4854, 0x59dd, 0x2d62, 0x3ceb, 0x0e70, 0x1ff9, 0x6b46, 0x7acf, 0x4854, 0x59dd, 0x2d62, 0x3ceb, 0x0e70, 0x1ff9,

View File

@ -46,7 +46,7 @@ public class NetCipher {
} }
public final static Proxy ORBOT_HTTP_PROXY = new Proxy(Proxy.Type.HTTP, public final static Proxy ORBOT_HTTP_PROXY = new Proxy(Proxy.Type.HTTP,
new InetSocketAddress("127.0.0.1", 8118)); new InetSocketAddress("127.0.0.1", 8125));
private static Proxy proxy; private static Proxy proxy;

View File

@ -178,7 +178,7 @@ abstract public class
if (status.getStringExtra(OrbotHelper.EXTRA_STATUS) if (status.getStringExtra(OrbotHelper.EXTRA_STATUS)
.equals(OrbotHelper.STATUS_ON)) { .equals(OrbotHelper.STATUS_ON)) {
return(status.getIntExtra(OrbotHelper.EXTRA_PROXY_PORT_SOCKS, return(status.getIntExtra(OrbotHelper.EXTRA_PROXY_PORT_SOCKS,
9050)); 9055));
} }
return(-1); return(-1);
@ -188,7 +188,7 @@ abstract public class
if (status.getStringExtra(OrbotHelper.EXTRA_STATUS) if (status.getStringExtra(OrbotHelper.EXTRA_STATUS)
.equals(OrbotHelper.STATUS_ON)) { .equals(OrbotHelper.STATUS_ON)) {
return(status.getIntExtra(OrbotHelper.EXTRA_PROXY_PORT_HTTP, return(status.getIntExtra(OrbotHelper.EXTRA_PROXY_PORT_HTTP,
8118)); 8125));
} }
return(-1); return(-1);

View File

@ -48,8 +48,8 @@ import android.webkit.WebView;
public class WebkitProxy { public class WebkitProxy {
private final static String DEFAULT_HOST = "localhost";//"127.0.0.1"; private final static String DEFAULT_HOST = "localhost";//"127.0.0.1";
private final static int DEFAULT_PORT = 8118; private final static int DEFAULT_PORT = 8125;
private final static int DEFAULT_SOCKS_PORT = 9050; private final static int DEFAULT_SOCKS_PORT = 9055;
private final static int REQUEST_CODE = 0; private final static int REQUEST_CODE = 0;

View File

@ -0,0 +1,22 @@
-keep,includedescriptorclasses class net.sqlcipher.** { *; }
-keep,includedescriptorclasses interface net.sqlcipher.** { *; }
-dontwarn javax.annotation.**
-dontwarn org.codehaus.mojo.animal_sniffer.*
-dontwarn okhttp3.internal.platform.ConscryptPlatform
-dontwarn org.conscrypt.ConscryptHostnameVerifier
-dontwarn okhttp3.*
-dontwarn org.chromium.net.*
-keep class com.flurry.** { *; }
-dontwarn com.flurry.**
-keepattributes *Annotation*,EnclosingMethod,Signature
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet, int);
}
-keepnames class * implements android.os.Parcelable {
public static final ** CREATOR;
}
-dontobfuscate
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*,!code/allocation/variable

View File

@ -37,6 +37,7 @@ import android.util.Log;
import androidx.annotation.RequiresApi; import androidx.annotation.RequiresApi;
import androidx.core.app.NotificationCompat; import androidx.core.app.NotificationCompat;
import androidx.core.app.NotificationManagerCompat;
import androidx.localbroadcastmanager.content.LocalBroadcastManager; import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import com.jaredrummler.android.shell.CommandResult; import com.jaredrummler.android.shell.CommandResult;
@ -221,6 +222,7 @@ public class OrbotService extends VpnService implements TorServiceConstants, Orb
if (mEventHandler != null) if (mEventHandler != null)
mEventHandler.getNodes().clear(); mEventHandler.getNodes().clear();
NotificationManagerCompat.from(this).cancelAll();
mNotificationShowing = false; mNotificationShowing = false;
} }
@ -318,17 +320,30 @@ public class OrbotService extends VpnService implements TorServiceConstants, Orb
@Override @Override
public void onDestroy() { public void onDestroy() {
try { try {
isAppClosed = true; disableNotification();
clearNotifications();
unregisterReceiver(mNetworkStateReceiver); unregisterReceiver(mNetworkStateReceiver);
unregisterReceiver(mActionBroadcastReceiver); unregisterReceiver(mActionBroadcastReceiver);
}catch (Exception ex){
ex.printStackTrace();
}
new Thread(){
public void run(){
try {
isAppClosed = true;
stopTor(); stopTor();
stopTorAsync();
clearNotifications(); clearNotifications();
killAllDaemons(); killAllDaemons();
} catch (Exception ex) { } catch (Exception ex) {
Log.i("", ""); Log.i("", "");
} }
}
}.start();
super.onDestroy(); super.onDestroy();
} }
@ -1195,6 +1210,9 @@ public class OrbotService extends VpnService implements TorServiceConstants, Orb
conn.signal(TorControlCommands.SIGNAL_NEWNYM); conn.signal(TorControlCommands.SIGNAL_NEWNYM);
sleep(1000);
enableNotification();
} catch (Exception ioe) { } catch (Exception ioe) {
debug("error requesting newnym: " + ioe.getLocalizedMessage()); debug("error requesting newnym: " + ioe.getLocalizedMessage());
} }
@ -1361,10 +1379,10 @@ public class OrbotService extends VpnService implements TorServiceConstants, Orb
mConnectivity = newConnectivityState; mConnectivity = newConnectivityState;
orbotLocalConstants.mNetworkState = mConnectivity; orbotLocalConstants.mNetworkState = mConnectivity;
if (mConnectivity) if (mConnectivity){
newIdentity(); newIdentity();
} }
}
if (doNetworKSleep) if (doNetworKSleep)
{ {
@ -1373,16 +1391,21 @@ public class OrbotService extends VpnService implements TorServiceConstants, Orb
{ {
//sendCallbackStatus(STATUS_OFF); //sendCallbackStatus(STATUS_OFF);
orbotLocalConstants.mTorLogsStatus = "No internet connection"; orbotLocalConstants.mTorLogsStatus = "No internet connection";
if(orbotLocalConstants.mNotificationStatus!=0){
showToolbarNotification(getString(R.string.newnym), getNotifyId(), R.drawable.ic_stat_tor_off); showToolbarNotification(getString(R.string.newnym), getNotifyId(), R.drawable.ic_stat_tor_off);
showToolbarNotification("Genesis is sleeping",NOTIFY_ID,R.drawable.ic_stat_tor_off); showToolbarNotification("Genesis is sleeping",NOTIFY_ID,R.drawable.ic_stat_tor_off);
} }
}
else else
{ {
//sendCallbackStatus(STATUS_STARTING); //sendCallbackStatus(STATUS_STARTING);
if(orbotLocalConstants.mNotificationStatus!=0){
showToolbarNotification(getString(R.string.status_starting_up),NOTIFY_ID,R.drawable.ic_stat_starting_tor_logo); showToolbarNotification(getString(R.string.status_starting_up),NOTIFY_ID,R.drawable.ic_stat_starting_tor_logo);
} }
}
} }
orbotLocalConstants.mNetworkState = mConnectivity;
} }
}; };

View File

@ -26,8 +26,8 @@ public interface TorServiceConstants {
int TOR_DNS_PORT_DEFAULT = 5400; int TOR_DNS_PORT_DEFAULT = 5400;
String HTTP_PROXY_PORT_DEFAULT = "8118"; // like Privoxy! String HTTP_PROXY_PORT_DEFAULT = "8125"; // like Privoxy!
String SOCKS_PROXY_PORT_DEFAULT = "9050"; String SOCKS_PROXY_PORT_DEFAULT = "9055";
//control port //control port
String LOG_NOTICE_HEADER = "NOTICE"; String LOG_NOTICE_HEADER = "NOTICE";

View File

@ -18,7 +18,7 @@ public class ExternalIPFetcher implements Runnable {
private final static String ONIONOO_BASE_URL = "https://onionoo.torproject.org/details?fields=country_name,as_name,or_addresses&lookup="; private final static String ONIONOO_BASE_URL = "https://onionoo.torproject.org/details?fields=country_name,as_name,or_addresses&lookup=";
private OrbotService mService; private OrbotService mService;
private TorEventHandler.Node mNode; private TorEventHandler.Node mNode;
private int mLocalHttpProxyPort = 8118; private int mLocalHttpProxyPort = 8125;
public ExternalIPFetcher(OrbotService service, TorEventHandler.Node node, int localProxyPort) { public ExternalIPFetcher(OrbotService service, TorEventHandler.Node node, int localProxyPort) {
mService = service; mService = service;

View File

@ -26,8 +26,8 @@ public interface TorServiceConstants {
int TOR_DNS_PORT_DEFAULT = 5400; int TOR_DNS_PORT_DEFAULT = 5400;
String HTTP_PROXY_PORT_DEFAULT = "8118"; // like Privoxy! String HTTP_PROXY_PORT_DEFAULT = "8125"; // like Privoxy!
String SOCKS_PROXY_PORT_DEFAULT = "9050"; String SOCKS_PROXY_PORT_DEFAULT = "9055";
//control port //control port
String LOG_NOTICE_HEADER = "NOTICE"; String LOG_NOTICE_HEADER = "NOTICE";

View File

@ -18,7 +18,7 @@ public class ExternalIPFetcher implements Runnable {
private final static String ONIONOO_BASE_URL = "https://onionoo.torproject.org/details?fields=country_name,as_name,or_addresses&lookup="; private final static String ONIONOO_BASE_URL = "https://onionoo.torproject.org/details?fields=country_name,as_name,or_addresses&lookup=";
private OrbotService mService; private OrbotService mService;
private TorEventHandler.Node mNode; private TorEventHandler.Node mNode;
private int mLocalHttpProxyPort = 8118; private int mLocalHttpProxyPort = 8125;
public ExternalIPFetcher(OrbotService service, TorEventHandler.Node node, int localProxyPort) { public ExternalIPFetcher(OrbotService service, TorEventHandler.Node node, int localProxyPort) {
mService = service; mService = service;

View File

@ -77,6 +77,9 @@ public class Prefs {
} }
public static boolean persistNotifications() { public static boolean persistNotifications() {
if(prefs==null){
return false;
}
return prefs.getBoolean(PREF_PERSIST_NOTIFICATIONS, true); return prefs.getBoolean(PREF_PERSIST_NOTIFICATIONS, true);
} }