Bug Fixes

Bug Fixes
master
Abdul Mannan Saeed 2021-08-26 06:31:59 -07:00
parent d386ea59ec
commit 1e972fbdec
46 changed files with 914 additions and 584 deletions

View File

@ -1,8 +1,5 @@
<component name="ProjectCodeStyleConfiguration"> <component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173"> <code_scheme name="Project" version="173">
<JetCodeStyleSettings>
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
</JetCodeStyleSettings>
<codeStyleSettings language="XML"> <codeStyleSettings language="XML">
<option name="FORCE_REARRANGE_MODE" value="1" /> <option name="FORCE_REARRANGE_MODE" value="1" />
<indentOptions> <indentOptions>
@ -116,8 +113,5 @@
</rules> </rules>
</arrangement> </arrangement>
</codeStyleSettings> </codeStyleSettings>
<codeStyleSettings language="kotlin">
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
</codeStyleSettings>
</code_scheme> </code_scheme>
</component> </component>

View File

@ -30,5 +30,6 @@
<option name="resolveModulePerSourceSet" value="false" /> <option name="resolveModulePerSourceSet" value="false" />
</GradleProjectSettings> </GradleProjectSettings>
</option> </option>
<option name="offlineMode" value="true" />
</component> </component>
</project> </project>

View File

@ -15,7 +15,6 @@
</inspection_tool> </inspection_tool>
<inspection_tool class="Convert2MethodRef" enabled="false" level="WARNING" enabled_by_default="false" /> <inspection_tool class="Convert2MethodRef" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="Deprecation" enabled="false" level="WARNING" enabled_by_default="false" /> <inspection_tool class="Deprecation" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="DifferentKotlinGradleVersion" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="EmptyStatementBody" enabled="false" level="WARNING" enabled_by_default="false"> <inspection_tool class="EmptyStatementBody" enabled="false" level="WARNING" enabled_by_default="false">
<option name="m_reportEmptyBlocks" value="true" /> <option name="m_reportEmptyBlocks" value="true" />
</inspection_tool> </inspection_tool>

View File

@ -26,9 +26,10 @@
<entry key="..\:/Workspace/Genesis Android/app/src/main/res/layouts/setting/layout/setting.xml" value="0.33" /> <entry key="..\:/Workspace/Genesis Android/app/src/main/res/layouts/setting/layout/setting.xml" value="0.33" />
<entry key="..\:/Workspace/Genesis Android/app/src/main/res/layouts/setting/layout/setting_advance_view.xml" value="0.33" /> <entry key="..\:/Workspace/Genesis Android/app/src/main/res/layouts/setting/layout/setting_advance_view.xml" value="0.33" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout-land/certificate_info.xml" value="0.1728395061728395" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout-land/certificate_info.xml" value="0.1728395061728395" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout-land/secure_connection_popup.xml" value="0.1728395061728395" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout-v26/popup_find.xml" value="0.20416666666666666" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout-v26/popup_find.xml" value="0.20416666666666666" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/application_crash.xml" value="0.5" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/application_crash.xml" value="0.5" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/certificate_info.xml" value="0.5" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/certificate_info.xml" value="1.25" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_block_popup.xml" value="0.203125" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_block_popup.xml" value="0.203125" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_bridge_mail.xml" value="0.25" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_bridge_mail.xml" value="0.25" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_bridge_setting_custom.xml" value="0.25" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_bridge_setting_custom.xml" value="0.25" />
@ -52,17 +53,23 @@
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_rate_failure.xml" value="0.5" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_rate_failure.xml" value="0.5" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_rate_us.xml" value="0.33" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_rate_us.xml" value="0.33" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_toast_generic.xml" value="0.33" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_toast_generic.xml" value="0.33" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_toast_undo.xml" value="0.33" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_undo.xml" value="0.203125" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_undo.xml" value="0.203125" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_update_bridges.xml" value="0.2015625" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_update_bridges.xml" value="0.2015625" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_url_longpress.xml" value="0.33" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/popup_url_longpress.xml" value="0.33" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/secure_connection_popup.xml" value="0.20416666666666666" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/alert/layout/secure_connection_popup.xml" value="1.1" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/history/layout/history_view.xml" value="0.22083333333333333" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/home/layout/home_view.xml" value="0.22" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/home/layout/home_view.xml" value="0.22" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/home/layout/popup_search_view.xml" value="0.2" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/home/layout/popup_search_view.xml" value="0.2" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/orbot/layout/orbot_settings_view.xml" value="0.33" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/orbot/layout/orbot_settings_view.xml" value="0.33" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/orbotLog/layout/orbot_log_view.xml" value="0.33" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/orbotLog/layout/orbot_log_view.xml" value="0.33" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/proxyStatus/layout/proxy_status_view.xml" value="0.20260416666666667" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/proxyStatus/layout/proxy_status_view.xml" value="0.20260416666666667" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/setting/layout/setting_log_view.xml" value="0.33" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/setting/layout/setting_log_view.xml" value="0.33" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/tab/layout/tab_grid_view.xml" value="0.5" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/setting/layout/setting_privacy_view.xml" value="0.16875" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/shared/listviews/layout/history_bookmark_row_view.xml" value="0.20416666666666666" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/tab/layout-v28/tab_grid_view.xml" value="0.22083333333333333" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/tab/layout/tab_grid_view.xml" value="0.5859872611464968" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/tab/layout/tab_menu.xml" value="0.16875" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/tab/layout/tab_row_view.xml" value="0.5" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/tab/layout/tab_row_view.xml" value="0.5" />
<entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/tab/layout/tab_view.xml" value="0.203125" /> <entry key="..\:/Workspace/Genesis-Android/app/src/main/res/layouts/tab/layout/tab_view.xml" value="0.203125" />
</map> </map>

View File

@ -110,8 +110,8 @@ dependencies {
/* Ads Manager */ /* Ads Manager */
implementation 'com.android.support:support-annotations:29.0.0' implementation 'com.android.support:support-annotations:29.0.0'
implementation 'com.facebook.android:audience-network-sdk:6.5.1' implementation 'com.facebook.android:audience-network-sdk:6.6.0'
implementation 'com.mopub.mediation:facebookaudiencenetwork:5.9.0.1' implementation 'com.mopub.mediation:facebookaudiencenetwork:6.6.0.0'
implementation('com.mopub:mopub-sdk:5.17.0@aar') { implementation('com.mopub:mopub-sdk:5.17.0@aar') {
transitive = true transitive = true
} }

View File

@ -0,0 +1,16 @@
function logURL(requestDetails) {
let redirectUrl = "https://google.com";
return {redirectUrl};
}
browser.webRequest.onBeforeRequest.addListener(
function(info) {
var denyRequest = true;
return {cancel: denyRequest}
},
{
urls: ["<all_urls>"],
types: ["ping"],
},
["blocking"]);

View File

@ -0,0 +1 @@
document.body.style.border = "5px solid red";

View File

@ -0,0 +1,31 @@
{
"description": "something something dark side",
"manifest_version": 2,
"name": "Interceptz",
"version": "1.0",
"icons": {
"48": "icons/border-48.png"
},
"applications": {
"gecko": {
"id": "borderify@mozilla.org",
"strict_min_version": "45.0"
}
},
"permissions": [
"webRequest"
],
"background": {
"scripts": ["background.js"]
},
"content_scripts": [
{
"matches": ["*://*.mozilla.org/*"],
"js": ["intercept.js"]
}
]
}

View File

@ -17,4 +17,65 @@ browser.runtime.onMessage.addListener((data, sender) => {
if (data.action === 'evalJavascript') { if (data.action === 'evalJavascript') {
return Promise.resolve(document.documentElement.innerHTML); return Promise.resolve(document.documentElement.innerHTML);
} }
/* Ad-B-Gone: Bookmarklet that removes obnoxious ads from pages */
var selectors = [
/* By ID: */
'#sidebar-wrap', '#advert', '#xrail', '#middle-article-advert-container',
'#sponsored-recommendations', '#around-the-web', '#sponsored-recommendations',
'#taboola-content', '#taboola-below-taboola-native-thumbnails', '#inarticle_wrapper_div',
'#rc-row-container', '#ads', '#at-share-dock', '#at4-share', '#at4-follow', '#right-ads-rail',
'div#ad-interstitial', 'div#advert-article', 'div#ac-lre-player-ph',
/* By Class: */
'.ad', '.avert', '.avert__wrapper', '.middle-banner-ad', '.advertisement',
'.GoogleActiveViewClass', '.advert', '.cns-ads-stage', '.teads-inread', '.ad-banner',
'.ad-anchored', '.js_shelf_ads', '.ad-slot', '.antenna', '.xrail-content',
'.advertisement__leaderboard', '.ad-leaderboard', '.trc_rbox_outer', '.ks-recommended',
'.article-da', 'div.sponsored-stories-component', 'div.addthis-smartlayers',
'div.article-adsponsor', 'div.signin-prompt', 'div.article-bumper', 'div.video-placeholder',
'div.top-ad-container', 'div.header-ad', 'div.ad-unit', 'div.demo-block', 'div.OUTBRAIN',
'div.ob-widget', 'div.nwsrm-wrapper', 'div.announcementBar', 'div.partner-resources-block',
'div.arrow-down', 'div.m-ad', 'div.story-interrupt', 'div.taboola-recommended',
'div.ad-cluster-container', 'div.ctx-sidebar', 'div.incognito-modal', '.OUTBRAIN', '.subscribe-button',
'.ads9', '.leaderboards', '.GoogleActiveViewElement', '.mpu-container', '.ad-300x600', '.tf-ad-block',
'.sidebar-ads-holder-top', '.ads-one', '.FullPageModal__scroller',
'.content-ads-holder', '.widget-area', '.social-buttons', '.ac-player-ph',
/* Other: */
'script', 'iframe', 'video', 'aside#sponsored-recommendations', 'aside[role="banner"]', 'aside',
'amp-ad', 'span[id^=ad_is_]', 'div[class*="indianapolis-optin"]', 'div[id^=google_ads_iframe]',
'div[data-google-query-id]', 'section[data-response]', 'ins.adsbygoogle', 'div[data-google-query-id]',
'div[data-test-id="fullPageSignupModal"]', 'div[data-test-id="giftWrap"]' ];
for(let i in selectors) {
let nodesList = document.querySelectorAll(selectors[i]);
for(let i = 0; i < nodesList.length; i++) {
let el = nodesList[i];
if(el && el.parentNode)
el.parentNode.removeChild(el);
}
}
document.cookie="VISITOR_INFO1_LIVE=oKckVSqvaGw; path=/; domain=.youtube.com";
}); });
function randomColor() {
return "#" + Math.floor(Math.random()*16777215).toString(16);
}
var pattern = "*bbc*";
var image = `
<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%">
<rect width="100%" height="100%" fill="${randomColor()}"/>
</svg>
`;
function listener(details) {
let redirectUrl = "https://google.com";
return {redirectUrl};
}
browser.webRequest.onBeforeRequest.addListener(
listener,
{urls: [pattern], types: ["image"]},
["blocking"]
);

View File

@ -28,7 +28,9 @@
"permissions": [ "permissions": [
"nativeMessaging", "nativeMessaging",
"geckoViewAddons", "geckoViewAddons",
"webRequest",
"tabs", "tabs",
"webRequestBlocking",
"<all_urls>" "<all_urls>"
] ]
} }

View File

@ -7,6 +7,7 @@ import android.view.View;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import com.darkweb.genesissearchengine.appManager.homeManager.homeController.homeController; import com.darkweb.genesissearchengine.appManager.homeManager.homeController.homeController;
import com.darkweb.genesissearchengine.constants.constants; import com.darkweb.genesissearchengine.constants.constants;
import com.darkweb.genesissearchengine.constants.status;
import com.darkweb.genesissearchengine.dataManager.dataController; import com.darkweb.genesissearchengine.dataManager.dataController;
import com.darkweb.genesissearchengine.helperManager.helperMethod; import com.darkweb.genesissearchengine.helperManager.helperMethod;
import com.example.myapplication.R; import com.example.myapplication.R;
@ -27,7 +28,7 @@ public class externalShortcutController extends AppCompatActivity {
if(getIntent() != null){ if(getIntent() != null){
String mShortcutCommands = getIntent().getStringExtra(EXTERNAL_SHORTCUT_COMMAND); String mShortcutCommands = getIntent().getStringExtra(EXTERNAL_SHORTCUT_COMMAND);
status.sSettingIsAppStarted = false;
if(mShortcutCommands!=null){ if(mShortcutCommands!=null){
mIntent.putExtra(EXTERNAL_SHORTCUT_COMMAND, mShortcutCommands); mIntent.putExtra(EXTERNAL_SHORTCUT_COMMAND, mShortcutCommands);
switch (mShortcutCommands) { switch (mShortcutCommands) {

View File

@ -23,16 +23,6 @@ public class externalURLNavigationContoller extends AppCompatActivity {
mData = Uri.parse(constants.CONST_BACKEND_GENESIS_URL); mData = Uri.parse(constants.CONST_BACKEND_GENESIS_URL);
} }
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1 && getReferrer().getHost().equals(CONST_PACKAGE_NAME) || !helperMethod.getHost(mData.toString()).contains(".onion")){
helperMethod.openURLInCustomBrowser(mData.toString(), this);
finish();
return;
}
else if(!helperMethod.getHost(mData.toString()).contains(".onion")){
helperMethod.openURLInCustomBrowser(mData.toString(), this);
finish();
return;
}
if(activityContextManager.getInstance().getHomeController()==null){ if(activityContextManager.getInstance().getHomeController()==null){
Intent mIntent = new Intent(this, homeController.class); Intent mIntent = new Intent(this, homeController.class);
mIntent.putExtra(EXTERNAL_SHORTCUT_COMMAND_NAVIGATE, mData.toString()); mIntent.putExtra(EXTERNAL_SHORTCUT_COMMAND_NAVIGATE, mData.toString());

View File

@ -210,7 +210,21 @@ public class geckoClients
Log.i("MessageDelegate", "Extension installed: " + extension); Log.i("MessageDelegate", "Extension installed: " + extension);
extension.setMessageDelegate(mMessagingDelegate, "browser"); extension.setMessageDelegate(mMessagingDelegate, "browser");
}, },
e -> Log.e("MessageDelegate", "Error registering WebExtension", e) e -> {
Log.e("MessageDelegate", "Error registering WebExtension", e);
}
);
mRuntime.getWebExtensionController()
.ensureBuiltIn("resource://android/assets/adblock/", "messaging@example.com")
.accept(
extension -> {
Log.i("MessageDelegate", "Extension installed: " + extension);
extension.setMessageDelegate(mMessagingDelegate, "browser");
},
e -> {
Log.e("MessageDelegate", "Error registering WebExtension", e);
}
); );
} }

View File

@ -385,7 +385,7 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
}else { }else {
if(progress==100){ if(progress==100){
event.invokeObserver(Arrays.asList(mSessionID,mCurrentTitle, m_current_url_id, mTheme, this), enums.etype.ON_INVOKE_PARSER); event.invokeObserver(Arrays.asList(mSessionID,mCurrentTitle, m_current_url_id, mTheme, this), enums.etype.ON_INVOKE_PARSER);
if(!mCurrentURL.contains("genesis") && helperMethod.getHost(mCurrentURL).contains(".onion")){ if(!mCurrentURL.contains("genesis") && !wasPreviousErrorPage()){
checkApplicationRate(); checkApplicationRate();
} }
if(!mIsProgressBarChanging){ if(!mIsProgressBarChanging){
@ -395,6 +395,7 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
}); });
event.invokeObserver(Arrays.asList(mCurrentURL,mSessionID,mCurrentTitle, m_current_url_id, mTheme), enums.etype.M_UPDATE_PIXEL_BACKGROUND); event.invokeObserver(Arrays.asList(mCurrentURL,mSessionID,mCurrentTitle, m_current_url_id, mTheme), enums.etype.M_UPDATE_PIXEL_BACKGROUND);
} }
mPreviousErrorPage = false;
}else { }else {
mIsProgressBarChanging = false; mIsProgressBarChanging = false;
mContext.get().runOnUiThread(() -> event.invokeObserver(Arrays.asList(mProgress,mSessionID), enums.etype.progress_update)); mContext.get().runOnUiThread(() -> event.invokeObserver(Arrays.asList(mProgress,mSessionID), enums.etype.progress_update));
@ -546,7 +547,6 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
} }
public GeckoResult<AllowOrDeny> onLoadRequest(@NonNull GeckoSession var2, @NonNull GeckoSession.NavigationDelegate.LoadRequest var1) { public GeckoResult<AllowOrDeny> onLoadRequest(@NonNull GeckoSession var2, @NonNull GeckoSession.NavigationDelegate.LoadRequest var1) {
mPreviousErrorPage = false;
if(var1.uri.endsWith("genesisconfigurenewidentity.com/")){ if(var1.uri.endsWith("genesisconfigurenewidentity.com/")){
initURL(mPrevURL); initURL(mPrevURL);
@ -834,7 +834,7 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
} }
if(var4.type!=0 && var4.srcUri!=null){ if(var4.type!=0 && var4.srcUri!=null){
if(var4.linkUri!=null){ if(var4.linkUri!=null){
event.invokeObserver(Arrays.asList(var4.linkUri,mSessionID,var4.srcUri,title, mTheme, var4.altText, mContext.get()), M_LONG_PRESS_WITH_LINK); event.invokeObserver(Arrays.asList(var4.linkUri,mSessionID,var4.srcUri,title, mTheme, var4.altText, this, mContext.get()), M_LONG_PRESS_WITH_LINK);
} }
else { else {
try{ try{
@ -843,7 +843,7 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
{ {
mTitle = helperMethod.getDomainName(mCurrentURL) + "\n" + var4.srcUri; mTitle = helperMethod.getDomainName(mCurrentURL) + "\n" + var4.srcUri;
} }
event.invokeObserver(Arrays.asList(var4.srcUri,mSessionID,mTitle, mTheme, mContext.get()), enums.etype.on_long_press); event.invokeObserver(Arrays.asList(var4.srcUri,mSessionID,mTitle, mTheme, this, mContext.get()), enums.etype.on_long_press);
}catch (Exception ex){ }catch (Exception ex){
ex.printStackTrace(); ex.printStackTrace();
Log.i("",""); Log.i("","");
@ -851,7 +851,7 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
} }
} }
else if(var4.linkUri!=null){ else if(var4.linkUri!=null){
event.invokeObserver(Arrays.asList(var4.linkUri,mSessionID,title, mTheme, mContext.get()), M_LONG_PRESS_URL); event.invokeObserver(Arrays.asList(var4.linkUri,mSessionID,title, mTheme, this, mContext.get()), M_LONG_PRESS_URL);
} }
} }

View File

@ -253,7 +253,7 @@ public class homeController extends AppCompatActivity implements ComponentCallba
onStartApplication(null); onStartApplication(null);
} }
} }
if(mShortcutCommandNavigate!=null){ else if(mShortcutCommandNavigate!=null){
status.sExternalWebsite = mShortcutCommandNavigate; status.sExternalWebsite = mShortcutCommandNavigate;
onStartApplication(null); onStartApplication(null);
} }
@ -374,6 +374,8 @@ public class homeController extends AppCompatActivity implements ComponentCallba
mHomeViewController.updateBannerAdvertStatus(false, (boolean)pluginController.getInstance().onAdsInvoke(null, pluginEnums.eAdManager.M_IS_ADVERT_LOADED)); mHomeViewController.updateBannerAdvertStatus(false, (boolean)pluginController.getInstance().onAdsInvoke(null, pluginEnums.eAdManager.M_IS_ADVERT_LOADED));
} }
} }
mHomeViewController.onFullScreen(true);
mHomeViewController.onUpdateStatusBarTheme(null, true);
} }
public void onUpdateBannerAdvert(){ public void onUpdateBannerAdvert(){
@ -781,6 +783,10 @@ public class homeController extends AppCompatActivity implements ComponentCallba
} }
} }
public void onUndo(View view){
activityContextManager.getInstance().getTabController().onRestoreTab(null);
}
public void onDestroyExernal(){ public void onDestroyExernal(){
pluginController.getInstance().onOrbotInvoke(Collections.singletonList(status.mThemeApplying), pluginEnums.eOrbotManager.M_DESTROY); pluginController.getInstance().onOrbotInvoke(Collections.singletonList(status.mThemeApplying), pluginEnums.eOrbotManager.M_DESTROY);
} }
@ -1189,6 +1195,8 @@ public class homeController extends AppCompatActivity implements ComponentCallba
mHomeViewController.progressBarReset(); mHomeViewController.progressBarReset();
initTabCountForced(); initTabCountForced();
mNewSession.loadUri(url); mNewSession.loadUri(url);
pluginController.getInstance().onMessageManagerInvoke(Arrays.asList(mNewSession, homeController.this), M_LOAD_NEW_TAB);
mAppBar.setTag(R.id.expandableBar,true); mAppBar.setTag(R.id.expandableBar,true);
} }
@ -1672,7 +1680,6 @@ public class homeController extends AppCompatActivity implements ComponentCallba
pluginController.getInstance().onOrbotInvoke(Arrays.asList(status.sBridgeCustomBridge, status.sBridgeGatewayManual, status.sBridgeCustomType, status.sBridgeStatus, status.sShowImages, status.sClearOnExit, (String)dataController.getInstance().invokeBridges(dataEnums.eBridgeWebsiteCommands.M_FETCH, null)), pluginEnums.eOrbotManager.M_START_ORBOT); pluginController.getInstance().onOrbotInvoke(Arrays.asList(status.sBridgeCustomBridge, status.sBridgeGatewayManual, status.sBridgeCustomType, status.sBridgeStatus, status.sShowImages, status.sClearOnExit, (String)dataController.getInstance().invokeBridges(dataEnums.eBridgeWebsiteCommands.M_FETCH, null)), pluginEnums.eOrbotManager.M_START_ORBOT);
onInvokeProxyLoading(); onInvokeProxyLoading();
}, 1000); }, 1000);
mHomeViewController.disableCoordinatorSwipe();
} }
public void onDownloadFile(){ public void onDownloadFile(){
@ -2100,7 +2107,6 @@ public class homeController extends AppCompatActivity implements ComponentCallba
} }
else if(e_type.equals(enums.etype.M_NEW_LINK_IN_NEW_TAB)) else if(e_type.equals(enums.etype.M_NEW_LINK_IN_NEW_TAB))
{ {
pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(homeController.this), M_LOAD_NEW_TAB);
postNewLinkTabAnimationInBackground(dataToStr(data.get(0))); postNewLinkTabAnimationInBackground(dataToStr(data.get(0)));
} }
else if(e_type.equals(M_NEW_LINK_IN_NEW_TAB_LOAD)) else if(e_type.equals(M_NEW_LINK_IN_NEW_TAB_LOAD))
@ -2176,6 +2182,12 @@ public class homeController extends AppCompatActivity implements ComponentCallba
initWidget(); initWidget();
} }
else if(e_type.equals(enums.etype.M_WELCOME_MESSAGE)){ else if(e_type.equals(enums.etype.M_WELCOME_MESSAGE)){
new Handler().postDelayed(() ->
{
dataController.getInstance().invokeCrawler(dataEnums.eCrawlerCommands.M_INIT, data);
}, 1000);
if(status.sSettingIsWelcomeEnabled){ if(status.sSettingIsWelcomeEnabled){
final Handler handler = new Handler(); final Handler handler = new Handler();
Runnable runnable = () -> { Runnable runnable = () -> {

View File

@ -235,6 +235,7 @@ class homeViewController
ConstraintLayout.LayoutParams layoutParams = (ConstraintLayout.LayoutParams) mSearchEngineBar.getLayoutParams(); ConstraintLayout.LayoutParams layoutParams = (ConstraintLayout.LayoutParams) mSearchEngineBar.getLayoutParams();
if(isLandscape){ if(isLandscape){
layoutParams.setMargins(0, helperMethod.pxFromDp(60), 0, 0); layoutParams.setMargins(0, helperMethod.pxFromDp(60), 0, 0);
mGeckoView.setPadding(0,0,0,0);
}else { }else {
Object mAdvertLoaded = mEvent.invokeObserver(null, enums.etype.M_ADVERT_LOADED); Object mAdvertLoaded = mEvent.invokeObserver(null, enums.etype.M_ADVERT_LOADED);
if(mAdvertLoaded!=null && (boolean)mAdvertLoaded){ if(mAdvertLoaded!=null && (boolean)mAdvertLoaded){
@ -243,11 +244,12 @@ class homeViewController
int y = location[1]; int y = location[1];
mBannerAds.setMinimumHeight(mBannerAds.getHeight()); mBannerAds.setMinimumHeight(mBannerAds.getHeight());
layoutParams.setMargins(0, mBannerAds.getHeight() + mTopBar.getHeight(), 0, 0); layoutParams.setMargins(0, mBannerAds.getHeight() + mTopBar.getHeight(), 0, (mBannerAds.getHeight() + mTopBar.getHeight())*-1);
initTopBarPadding(); initTopBarPadding();
}else { }else {
layoutParams.setMargins(0, helperMethod.pxFromDp(60), 0, 0); layoutParams.setMargins(0, helperMethod.pxFromDp(60), 0, 0);
mGeckoView.setPadding(0,0,0,0);
} }
} }
mSearchEngineBar.setLayoutParams(layoutParams); mSearchEngineBar.setLayoutParams(layoutParams);
@ -260,9 +262,6 @@ class homeViewController
return; return;
} }
if(!status.sFullScreenBrowsing){ if(!status.sFullScreenBrowsing){
}else { }else {
int paddingDp = 0; int paddingDp = 0;
if(isFullScreen){ if(isFullScreen){
@ -695,12 +694,14 @@ class homeViewController
mSplashScreen.setVisibility(View.GONE); mSplashScreen.setVisibility(View.GONE);
mSplashScreen.setVisibility(View.GONE); mSplashScreen.setVisibility(View.GONE);
mBlocker.setEnabled(false); mBlocker.setEnabled(false);
disableCoordinatorSwipe();
} }
private boolean mIsAnimating = false; private boolean mIsAnimating = false;
public void splashScreenDisable(){ public void splashScreenDisable(){
mTopBar.setAlpha(1); mTopBar.setAlpha(1);
mGeckoView.setVisibility(View.VISIBLE); mGeckoView.setVisibility(View.VISIBLE);
disableCoordinatorSwipe();
if(mSplashScreen.getAlpha()==1){ if(mSplashScreen.getAlpha()==1){
if(!mIsAnimating){ if(!mIsAnimating){
@ -1205,6 +1206,7 @@ class homeViewController
public void onUpdateSearchEngineBar(boolean pStatus, int delay) public void onUpdateSearchEngineBar(boolean pStatus, int delay)
{ {
if(pStatus){ if(pStatus){
initSearchEngineView();
if(mSearchEngineBar.getAlpha() == 0 || mSearchEngineBar.getVisibility() == View.GONE && mSplashScreen.getAlpha()<=0){ if(mSearchEngineBar.getAlpha() == 0 || mSearchEngineBar.getVisibility() == View.GONE && mSplashScreen.getAlpha()<=0){
onUpdateStatusBarTheme(null, false); onUpdateStatusBarTheme(null, false);
mSearchEngineBar.animate().cancel(); mSearchEngineBar.animate().cancel();
@ -1353,18 +1355,17 @@ class homeViewController
} }
public void onNewTabAnimation(List<Object> data, Object e_type){ public void onNewTabAnimation(List<Object> data, Object e_type){
mGeckoView.setPivotX(0);
mGeckoView.setPivotY(0);
if(mGeckoView.getAlpha()<1 || mGeckoView.getTranslationX()<0){ if(mNewTabBlocker.getAlpha()!=0){
return; return;
} }
ObjectAnimator scaleDown = ObjectAnimator.ofPropertyValuesHolder(mGeckoView, mGeckoView.setPivotX(0);
PropertyValuesHolder.ofFloat("translationX", 0, helperMethod.pxFromDp(-50))); mGeckoView.setPivotY(0);
mNewTabBlocker.setVisibility(View.VISIBLE); mNewTabBlocker.setVisibility(View.VISIBLE);
ObjectAnimator alpha = ObjectAnimator.ofPropertyValuesHolder(mNewTabBlocker, ObjectAnimator scaleDown = ObjectAnimator.ofPropertyValuesHolder(mGeckoView, PropertyValuesHolder.ofFloat("translationX", 0, helperMethod.pxFromDp(-50)));
PropertyValuesHolder.ofFloat("alpha", 0, 1f)); ObjectAnimator alpha = ObjectAnimator.ofPropertyValuesHolder(mNewTabBlocker, PropertyValuesHolder.ofFloat("alpha", 0, 1f));
scaleDown.setDuration(150); scaleDown.setDuration(150);
alpha.setDuration(150); alpha.setDuration(150);
@ -1630,7 +1631,7 @@ class homeViewController
if(mAdvertLoaded!=null && (boolean)mAdvertLoaded){ if(mAdvertLoaded!=null && (boolean)mAdvertLoaded){
if(mCurrentURL!=null){ if(mCurrentURL!=null){
String mURL = (String) mCurrentURL; String mURL = (String) mCurrentURL;
if((wasErrorPage!=null && (boolean)wasErrorPage) || mURL.startsWith(CONST_GENESIS_URL_CACHED) || mURL.startsWith(CONST_GENESIS_URL_CACHED_DARK) || mURL.contains("genesishiddentechnologies.com") || mURL.startsWith(CONST_GENESIS_HELP_URL_CACHE) || mURL.startsWith(CONST_GENESIS_HELP_URL_CACHE_DARK)){ if((wasErrorPage!=null && (boolean)wasErrorPage)){
mWebviewContainer.setPadding(0,0,0,0); mWebviewContainer.setPadding(0,0,0,0);
}else { }else {
int orientation = mContext.getResources().getConfiguration().orientation; int orientation = mContext.getResources().getConfiguration().orientation;
@ -1649,7 +1650,7 @@ class homeViewController
if(mAdvertLoaded!=null && (boolean)mAdvertLoaded){ if(mAdvertLoaded!=null && (boolean)mAdvertLoaded){
if(mCurrentURL!=null){ if(mCurrentURL!=null){
String mURL = (String) mCurrentURL; String mURL = (String) mCurrentURL;
if((wasErrorPage!=null && (boolean)wasErrorPage) || mURL.startsWith(CONST_GENESIS_URL_CACHED) || mURL.startsWith(CONST_GENESIS_URL_CACHED_DARK) || mURL.contains("genesishiddentechnologies.com") || mURL.startsWith(CONST_GENESIS_HELP_URL_CACHE) || mURL.startsWith(CONST_GENESIS_HELP_URL_CACHE_DARK)){ if((wasErrorPage!=null && (boolean)wasErrorPage)){
mWebviewContainer.setPadding(0,0,0,helperMethod.pxFromDp(60 + 60)); mWebviewContainer.setPadding(0,0,0,helperMethod.pxFromDp(60 + 60));
}else { }else {
int orientation = mContext.getResources().getConfiguration().orientation; int orientation = mContext.getResources().getConfiguration().orientation;

View File

@ -1,8 +1,11 @@
package com.darkweb.genesissearchengine.appManager.orbotLogManager; package com.darkweb.genesissearchengine.appManager.orbotLogManager;
import static com.darkweb.genesissearchengine.constants.constants.CONST_PACKAGE_NAME;
import android.app.SearchManager; import android.app.SearchManager;
import android.content.Intent; import android.content.Intent;
import android.net.Uri; import android.net.Uri;
import android.os.Build;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
@ -14,6 +17,7 @@ import com.darkweb.genesissearchengine.appManager.activityContextManager;
import com.darkweb.genesissearchengine.appManager.tabManager.tabEnums; import com.darkweb.genesissearchengine.appManager.tabManager.tabEnums;
import com.darkweb.genesissearchengine.constants.constants; import com.darkweb.genesissearchengine.constants.constants;
import com.darkweb.genesissearchengine.eventObserver; import com.darkweb.genesissearchengine.eventObserver;
import com.darkweb.genesissearchengine.helperManager.helperMethod;
import com.example.myapplication.R; import com.example.myapplication.R;
import org.torproject.android.service.wrapper.logRowModel; import org.torproject.android.service.wrapper.logRowModel;
@ -73,10 +77,7 @@ public class orbotLogAdapter extends RecyclerView.Adapter<orbotLogAdapter.listVi
@Override @Override
public void onClick(View v) { public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(constants.CONST_LOG_DUCKDUCK + Uri.encode(" " + mModelList.get(this.getLayoutPosition()).getLog()))); helperMethod.openURLInCustomBrowser(Uri.parse(constants.CONST_LOG_DUCKDUCK + Uri.encode(" " + mModelList.get(this.getLayoutPosition()).getLog())).toString(), activityContextManager.getInstance().getHomeController());
intent.putExtra(SearchManager.QUERY, mOrbotRowDescription.getText());
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
activityContextManager.getInstance().getHomeController().startActivity(intent);
} }
} }

View File

@ -4,10 +4,8 @@ import android.content.res.Configuration;
import android.os.Bundle; import android.os.Bundle;
import android.view.View; import android.view.View;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import com.darkweb.genesissearchengine.appManager.activityContextManager; import com.darkweb.genesissearchengine.appManager.activityContextManager;
import com.darkweb.genesissearchengine.appManager.orbotLogManager.orbotLogController; import com.darkweb.genesissearchengine.appManager.orbotLogManager.orbotLogController;
import com.darkweb.genesissearchengine.constants.constants; import com.darkweb.genesissearchengine.constants.constants;
@ -19,7 +17,6 @@ import com.darkweb.genesissearchengine.pluginManager.pluginController;
import com.darkweb.genesissearchengine.pluginManager.pluginEnums; import com.darkweb.genesissearchengine.pluginManager.pluginEnums;
import com.example.myapplication.R; import com.example.myapplication.R;
import com.google.android.material.switchmaterial.SwitchMaterial; import com.google.android.material.switchmaterial.SwitchMaterial;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
@ -38,7 +35,9 @@ public class proxyStatusController extends AppCompatActivity {
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
pluginController.getInstance().onLanguageInvoke(Collections.singletonList(this), pluginEnums.eLangManager.M_ACTIVITY_CREATED); pluginController.getInstance().onLanguageInvoke(Collections.singletonList(this), pluginEnums.eLangManager.M_ACTIVITY_CREATED);
overridePendingTransition(R.anim.popup_scale_in, R.anim.popup_scale_out); if(!status.sSettingIsAppStarted){
overridePendingTransition(R.anim.popup_scale_in, R.anim.popup_scale_out);
}
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.proxy_status_view); setContentView(R.layout.proxy_status_view);
@ -93,7 +92,9 @@ public class proxyStatusController extends AppCompatActivity {
public void onClose(View view){ public void onClose(View view){
finish(); finish();
activityContextManager.getInstance().onRemoveStack(this); activityContextManager.getInstance().onRemoveStack(this);
overridePendingTransition(R.anim.popup_scale_in, R.anim.popup_scale_out); if(!status.sSettingIsAppStarted){
overridePendingTransition(R.anim.popup_scale_in, R.anim.popup_scale_out);
}
} }
/* LOCAL OVERRIDES */ /* LOCAL OVERRIDES */

View File

@ -1,25 +1,15 @@
package com.darkweb.genesissearchengine.appManager.settingManager.settingHomeManager; package com.darkweb.genesissearchengine.appManager.settingManager.settingHomeManager;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.res.Configuration; import android.content.res.Configuration;
import android.content.res.Resources;
import android.net.Uri;
import android.os.Build; import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
import android.view.View; import android.view.View;
import android.widget.Toast; import android.widget.Toast;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.app.AppCompatDelegate; import androidx.appcompat.app.AppCompatDelegate;
import com.darkweb.genesissearchengine.appManager.activityContextManager; import com.darkweb.genesissearchengine.appManager.activityContextManager;
import com.darkweb.genesissearchengine.appManager.helpManager.helpController; import com.darkweb.genesissearchengine.appManager.helpManager.helpController;
import com.darkweb.genesissearchengine.appManager.kotlinHelperLibraries.BrowserIconManager;
import com.darkweb.genesissearchengine.appManager.kotlinHelperLibraries.defaultBrowser;
import com.darkweb.genesissearchengine.appManager.proxyStatusManager.proxyStatusController; import com.darkweb.genesissearchengine.appManager.proxyStatusManager.proxyStatusController;
import com.darkweb.genesissearchengine.appManager.settingManager.accessibilityManager.settingAccessibilityController; import com.darkweb.genesissearchengine.appManager.settingManager.accessibilityManager.settingAccessibilityController;
import com.darkweb.genesissearchengine.appManager.settingManager.advanceManager.settingAdvanceController; import com.darkweb.genesissearchengine.appManager.settingManager.advanceManager.settingAdvanceController;
@ -41,14 +31,11 @@ import com.darkweb.genesissearchengine.appManager.activityThemeManager;
import com.darkweb.genesissearchengine.pluginManager.pluginController; import com.darkweb.genesissearchengine.pluginManager.pluginController;
import com.darkweb.genesissearchengine.pluginManager.pluginEnums; import com.darkweb.genesissearchengine.pluginManager.pluginEnums;
import com.example.myapplication.R; import com.example.myapplication.R;
import java.io.UnsupportedEncodingException; import java.io.UnsupportedEncodingException;
import java.net.URLEncoder; import java.net.URLEncoder;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Locale;
import static androidx.appcompat.app.AppCompatDelegate.setDefaultNightMode; import static androidx.appcompat.app.AppCompatDelegate.setDefaultNightMode;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.*; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.*;
@ -119,7 +106,7 @@ public class settingHomeController extends AppCompatActivity
} }
public void cicadaClipboard(View view) { public void cicadaClipboard(View view) {
Toast.makeText(getApplicationContext(),"Authorization Failed", Toast.LENGTH_SHORT).show(); pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(this), M_OPEN_CICADA);
} }
/*View Callbacks*/ /*View Callbacks*/

View File

@ -1,6 +1,7 @@
package com.darkweb.genesissearchengine.appManager.tabManager; package com.darkweb.genesissearchengine.appManager.tabManager;
import android.animation.ObjectAnimator; import android.animation.ObjectAnimator;
import android.annotation.SuppressLint;
import android.content.res.Resources; import android.content.res.Resources;
import android.graphics.Color; import android.graphics.Color;
import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.BitmapDrawable;
@ -261,12 +262,14 @@ public class tabAdapter extends RecyclerView.Adapter<tabAdapter.listViewHolder>
FrameLayout mItemSelectionMenu; FrameLayout mItemSelectionMenu;
Button mItemSelectionMenuButton; Button mItemSelectionMenuButton;
ConstraintLayout mItemSelectionMenuReference; ConstraintLayout mItemSelectionMenuReference;
ImageView mLogo;
ImageView mBorder; ImageView mBorder;
listViewHolder(View itemView) { listViewHolder(View itemView) {
super(itemView); super(itemView);
} }
@SuppressLint("UseCompatLoadingForDrawables")
void bindListView(tabRowModel model) { void bindListView(tabRowModel model) {
mHeader = itemView.findViewById(R.id.pOrbotRowHeader); mHeader = itemView.findViewById(R.id.pOrbotRowHeader);
mDescription = itemView.findViewById(R.id.pOrbotRowDescription); mDescription = itemView.findViewById(R.id.pOrbotRowDescription);
@ -280,6 +283,10 @@ public class tabAdapter extends RecyclerView.Adapter<tabAdapter.listViewHolder>
mItemSelectionMenuReference = itemView.findViewById(R.id.pRowContainer); mItemSelectionMenuReference = itemView.findViewById(R.id.pRowContainer);
mBorder = itemView.findViewById(R.id.pBorder); mBorder = itemView.findViewById(R.id.pBorder);
if(status.sTabGridLayoutEnabled){
mLogo = itemView.findViewById(R.id.pLogo);
}
itemView.setScaleX(1); itemView.setScaleX(1);
itemView.setScaleY(1); itemView.setScaleY(1);
itemView.setClickable(true); itemView.setClickable(true);
@ -336,6 +343,17 @@ public class tabAdapter extends RecyclerView.Adapter<tabAdapter.listViewHolder>
String mHeadText = mHeader.getText().toString(); String mHeadText = mHeader.getText().toString();
String mDescText = mDescription.getText().toString(); String mDescText = mDescription.getText().toString();
if(status.sTabGridLayoutEnabled){
if(model.getSession().getCurrentURL().contains("genesishiddentechnologies.com") || model.getSession().getCurrentURL().contains("genesis.onion")){
mLogo.setImageDrawable(itemView.getResources().getDrawable(R.drawable.genesis));
}
else{
if(mLogo.getDrawable() == null){
mEvent.invokeObserver(Arrays.asList(mLogo, "https://" + helperMethod.getDomainName(model.getSession().getCurrentURL())), enums.etype.fetch_favicon);
}
}
}
if(mHeadText.equals("$TITLE") || mDescText.startsWith("http://loading") || mDescText.startsWith("loading")){ if(mHeadText.equals("$TITLE") || mDescText.startsWith("http://loading") || mDescText.startsWith("loading")){
mHeader.setText("about:blank"); mHeader.setText("about:blank");
} }
@ -400,20 +418,34 @@ public class tabAdapter extends RecyclerView.Adapter<tabAdapter.listViewHolder>
CardView mLayout = itemView.findViewById(R.id.pTABRowContainer); CardView mLayout = itemView.findViewById(R.id.pTABRowContainer);
CardView mCardView = itemView.findViewById(R.id.pCardViewParent); CardView mCardView = itemView.findViewById(R.id.pCardViewParent);
ViewGroup.MarginLayoutParams params = (ViewGroup.MarginLayoutParams) mLayout.getLayoutParams(); ViewGroup.MarginLayoutParams params = (ViewGroup.MarginLayoutParams) mLayout.getLayoutParams();
ViewGroup.MarginLayoutParams params_main = (ViewGroup.MarginLayoutParams) mItemSelectionMenuReference.getLayoutParams();
params_main.leftMargin = helperMethod.pxFromDp(2f);
params_main.rightMargin = helperMethod.pxFromDp(2f);
params_main.topMargin = helperMethod.pxFromDp(2f);
params_main.bottomMargin = helperMethod.pxFromDp(0f);
if(getLayoutPosition() == 0){ if(getLayoutPosition() == 0){
params.leftMargin = helperMethod.pxFromDp(2.5f); params.leftMargin = helperMethod.pxFromDp(3.5f);
params.rightMargin = helperMethod.pxFromDp(2.5f); params.rightMargin = helperMethod.pxFromDp(3.5f);
params.topMargin = helperMethod.pxFromDp(2.5f); params.topMargin = helperMethod.pxFromDp(3.5f);
params.bottomMargin = helperMethod.pxFromDp(2.5f); params.bottomMargin = helperMethod.pxFromDp(3.5f);
params_main.topMargin = helperMethod.pxFromDp(3f);
//params_main.bottomMargin = helperMethod.pxFromDp(1f);
if(status.sTheme == enums.Theme.THEME_DARK || status.sDefaultNightMode){ if(status.sTheme == enums.Theme.THEME_DARK || status.sDefaultNightMode){
mCardView.setCardBackgroundColor(ContextCompat.getColor(itemView.getContext(), R.color.c_button_text_v1_inverted)); mCardView.setCardBackgroundColor(ContextCompat.getColor(itemView.getContext(), R.color.c_button_text_v1_inverted));
}else { }else {
mCardView.setCardBackgroundColor(ContextCompat.getColor(itemView.getContext(), R.color.c_text_color_highlight_v2)); mCardView.setCardBackgroundColor(ContextCompat.getColor(itemView.getContext(), R.color.c_alert_rateus_header));
} }
//params_main.leftMargin = helperMethod.pxFromDp(9f);
}else { }else {
if(getLayoutPosition() == 0){
//params_main.rightMargin = helperMethod.pxFromDp(9f);
}
if(status.sTheme == enums.Theme.THEME_DARK || status.sDefaultNightMode){ if(status.sTheme == enums.Theme.THEME_DARK || status.sDefaultNightMode){
params.leftMargin = helperMethod.pxFromDp(2.5f); params.leftMargin = helperMethod.pxFromDp(2.5f);
params.rightMargin = helperMethod.pxFromDp(2.5f); params.rightMargin = helperMethod.pxFromDp(2.5f);
@ -422,14 +454,32 @@ public class tabAdapter extends RecyclerView.Adapter<tabAdapter.listViewHolder>
mCardView.setCardBackgroundColor(ContextCompat.getColor(itemView.getContext(), R.color.c_tab_background)); mCardView.setCardBackgroundColor(ContextCompat.getColor(itemView.getContext(), R.color.c_tab_background));
}else { }else {
params.leftMargin = helperMethod.pxFromDp(0f); params.leftMargin = helperMethod.pxFromDp(2.5f);
params.rightMargin = helperMethod.pxFromDp(0f); params.rightMargin = helperMethod.pxFromDp(2.5f);
params.topMargin = helperMethod.pxFromDp(0f); params.topMargin = helperMethod.pxFromDp(2.5f);
params.bottomMargin = helperMethod.pxFromDp(0f); params.bottomMargin = helperMethod.pxFromDp(2.5f);
mCardView.setCardBackgroundColor(ContextCompat.getColor(itemView.getContext(), R.color.c_orbot_setting_divider)); mCardView.setCardBackgroundColor(ContextCompat.getColor(itemView.getContext(), R.color.clear_alpha));
}
if(getLayoutPosition() == 1){
//params_main.leftMargin = helperMethod.pxFromDp(3f);
//params_main.rightMargin = helperMethod.pxFromDp(9f);
//params_main.topMargin = helperMethod.pxFromDp(14f);
//params_main.bottomMargin = helperMethod.pxFromDp(1f);
}else {
if(getLayoutPosition()%2==0){
//params_main.leftMargin = helperMethod.pxFromDp(9f);
//params_main.rightMargin = helperMethod.pxFromDp(3f);
//params_main.topMargin = helperMethod.pxFromDp(3f);
}else {
//params_main.leftMargin = helperMethod.pxFromDp(3f);
//params_main.rightMargin = helperMethod.pxFromDp(9f);
//params_main.topMargin = helperMethod.pxFromDp(3f);
}
} }
} }
} }
if(this.getLayoutPosition()==mModelList.size()-1){ if(this.getLayoutPosition()==mModelList.size()-1){

View File

@ -29,6 +29,7 @@ import com.darkweb.genesissearchengine.appManager.homeManager.geckoManager.gecko
import com.darkweb.genesissearchengine.appManager.homeManager.homeController.homeController; import com.darkweb.genesissearchengine.appManager.homeManager.homeController.homeController;
import com.darkweb.genesissearchengine.appManager.settingManager.advanceManager.settingAdvanceController; import com.darkweb.genesissearchengine.appManager.settingManager.advanceManager.settingAdvanceController;
import com.darkweb.genesissearchengine.constants.constants; import com.darkweb.genesissearchengine.constants.constants;
import com.darkweb.genesissearchengine.constants.enums;
import com.darkweb.genesissearchengine.constants.status; import com.darkweb.genesissearchengine.constants.status;
import com.darkweb.genesissearchengine.dataManager.dataController; import com.darkweb.genesissearchengine.dataManager.dataController;
import com.darkweb.genesissearchengine.dataManager.dataEnums; import com.darkweb.genesissearchengine.dataManager.dataEnums;
@ -168,6 +169,7 @@ public class tabController extends Fragment
mNestedScrollView.scrollTo(0,0); mNestedScrollView.scrollTo(0,0);
mtabViewController.onTrigger(tabEnums.eTabViewCommands.ON_HIDE_UNDO_DIALOG_INIT, null); mtabViewController.onTrigger(tabEnums.eTabViewCommands.ON_HIDE_UNDO_DIALOG_INIT, null);
mTabAdapter.notifyDataSetChanged(); mTabAdapter.notifyDataSetChanged();
mtabViewController.onTrigger(tabEnums.eTabViewCommands.ON_INIT_UI, null);
} }
} }
@ -196,7 +198,7 @@ public class tabController extends Fragment
mRemoveSelection = mRootView.findViewById(R.id.pRemoveSelection); mRemoveSelection = mRootView.findViewById(R.id.pRemoveSelection);
mMenuButton = mRootView.findViewById(R.id.pMenuButton); mMenuButton = mRootView.findViewById(R.id.pMenuButton);
mClearSelection = mRootView.findViewById(R.id.pClearSelection); mClearSelection = mRootView.findViewById(R.id.pClearSelection);
//mPopupUndo = mRootView.findViewById(R.id.pPopupUndo); mPopupUndo = mRootView.findViewById(R.id.pPopupUndo);
mSelectionCount = mRootView.findViewById(R.id.pSelectionCount); mSelectionCount = mRootView.findViewById(R.id.pSelectionCount);
mBlocker = mRootView.findViewById(R.id.pSecureRootBlocker); mBlocker = mRootView.findViewById(R.id.pSecureRootBlocker);
mNestedScrollView = mRootView.findViewById(R.id.pNestedScroll); mNestedScrollView = mRootView.findViewById(R.id.pNestedScroll);
@ -370,7 +372,7 @@ public class tabController extends Fragment
public void onRemoveTab(int pIndex){ public void onRemoveTab(int pIndex){
mListModel.onTrigger(tabEnums.eModelCallback.M_REMOVE_TAB,Collections.singletonList(pIndex)); mListModel.onTrigger(tabEnums.eModelCallback.M_REMOVE_TAB,Collections.singletonList(pIndex));
if(mListModel.getList().size()<1){ if(mListModel.getList().size()<1){
mRecycleView.animate().setDuration(200).alpha(0); mRecycleView.animate().setDuration(0).alpha(0);
onClearSelection(null); onClearSelection(null);
} }
initTabCount(400); initTabCount(400);
@ -388,7 +390,7 @@ public class tabController extends Fragment
mListModel.onTrigger(tabEnums.eModelCallback.M_REMOVE_TAB,Collections.singletonList(pIndex)); mListModel.onTrigger(tabEnums.eModelCallback.M_REMOVE_TAB,Collections.singletonList(pIndex));
dataController.getInstance().invokeTab(dataEnums.eTabCommands.CLOSE_TAB, Arrays.asList(mListModel.getList().get(pIndex).getSession(), mListModel.getList().get(pIndex).getSession())); dataController.getInstance().invokeTab(dataEnums.eTabCommands.CLOSE_TAB, Arrays.asList(mListModel.getList().get(pIndex).getSession(), mListModel.getList().get(pIndex).getSession()));
if(mListModel.getList().size()<1){ if(mListModel.getList().size()<1){
mRecycleView.animate().setDuration(200).alpha(0).withEndAction(() -> { mRecycleView.animate().setDuration(0).alpha(0).withEndAction(() -> {
if(pShowPopupOnClearAll){ if(pShowPopupOnClearAll){
onShowUndoDialog(); onShowUndoDialog();
} }
@ -440,6 +442,7 @@ public class tabController extends Fragment
public void onRestoreTab(View view){ public void onRestoreTab(View view){
mtabViewController.onTrigger(tabEnums.eTabViewCommands.ON_HIDE_UNDO_DIALOG, null);
mTouchable = true; mTouchable = true;
final Handler handler = new Handler(); final Handler handler = new Handler();
handler.postDelayed(() -> handler.postDelayed(() ->
@ -466,7 +469,8 @@ public class tabController extends Fragment
} }
public void onShowUndoDialog(){ public void onShowUndoDialog(){
pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(mHomeController), M_UNDO); mtabViewController.onTrigger(tabEnums.eTabViewCommands.ON_SHOW_UNDO_DIALOG, null);
//pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(mHomeController), M_UNDO);
} }
public void onClearTabBackup(){ public void onClearTabBackup(){
@ -512,7 +516,7 @@ public class tabController extends Fragment
public void onRemoveSelection(View view) { public void onRemoveSelection(View view) {
int mSelectionSize = (int)mTabAdapter.onTrigger(tabEnums.eTabAdapterCommands.GET_SELECTION_SIZE,null); int mSelectionSize = (int)mTabAdapter.onTrigger(tabEnums.eTabAdapterCommands.GET_SELECTION_SIZE,null);
if(mSelectionSize >= mListModel.getList().size()){ if(mSelectionSize >= mListModel.getList().size()){
mRecycleView.animate().setDuration(200).alpha(0).withEndAction(() -> { mRecycleView.animate().setDuration(0).alpha(0).withEndAction(() -> {
mTabAdapter.onTrigger(tabEnums.eTabAdapterCommands.M_REMOVE_ALL_SELECTION, null); mTabAdapter.onTrigger(tabEnums.eTabAdapterCommands.M_REMOVE_ALL_SELECTION, null);
onClearSelection(null); onClearSelection(null);
}); });
@ -575,6 +579,7 @@ public class tabController extends Fragment
mListModel.onTrigger(tabEnums.eModelCallback.M_CLEAR_BACKUP_RETAIN_DATABASE,null); mListModel.onTrigger(tabEnums.eModelCallback.M_CLEAR_BACKUP_RETAIN_DATABASE,null);
mTabAdapter.onTrigger(tabEnums.eTabAdapterCommands.REMOVE_ALL, null); mTabAdapter.onTrigger(tabEnums.eTabAdapterCommands.REMOVE_ALL, null);
onClearSelection(null); onClearSelection(null);
onShowUndoDialog();
} }
else if(pView.getId() == R.id.pOpenSetting){ else if(pView.getId() == R.id.pOpenSetting){
activityContextManager.getInstance().getHomeController().onBackPressed(); activityContextManager.getInstance().getHomeController().onBackPressed();
@ -665,6 +670,9 @@ public class tabController extends Fragment
else if(e_type.equals(tabEnums.eTabAdapterCallback.M_CLEAR_BACKUP)){ else if(e_type.equals(tabEnums.eTabAdapterCallback.M_CLEAR_BACKUP)){
onExitAndClearBackup(); onExitAndClearBackup();
} }
else if(e_type.equals(enums.etype.fetch_favicon)){
mHomeController.onGetFavIcon((ImageView) data.get(0), (String) data.get(1));
}
else if(e_type.equals(tabEnums.eTabAdapterCallback.ON_SHOW_SELECTION_MENU)){ else if(e_type.equals(tabEnums.eTabAdapterCallback.ON_SHOW_SELECTION_MENU)){
mtabViewController.onTrigger(tabEnums.eTabViewCommands.ON_SHOW_SELECTION_MENU, data); mtabViewController.onTrigger(tabEnums.eTabViewCommands.ON_SHOW_SELECTION_MENU, data);
} }

View File

@ -4,7 +4,7 @@ public class tabEnums
{ {
/*Settings Manager*/ /*Settings Manager*/
public enum eTabViewCommands { public enum eTabViewCommands {
M_DISMISS_MENU, M_SHOW_MENU, INIT_TAB_COUNT, ON_HIDE_SELECTION, ON_SHOW_SELECTION, ON_SHOW_SELECTION_MENU, ON_SHOW_UNDO_DIALOG, ON_HIDE_UNDO_DIALOG, ON_GENERATE_SWIPABLE_BACKGROUND, ON_EXIT, ON_HIDE_UNDO_DIALOG_INIT, ON_HOLD_BLOCKER, ON_RELEASE_BLOCKER, ON_HIDE_UNDO_DIALOG_FORCED M_DISMISS_MENU, M_SHOW_MENU, INIT_TAB_COUNT, ON_HIDE_SELECTION, ON_SHOW_SELECTION, ON_SHOW_SELECTION_MENU, ON_SHOW_UNDO_DIALOG, ON_HIDE_UNDO_DIALOG, ON_INIT_UI, ON_GENERATE_SWIPABLE_BACKGROUND, ON_EXIT, ON_HIDE_UNDO_DIALOG_INIT, ON_HOLD_BLOCKER, ON_RELEASE_BLOCKER, ON_HIDE_UNDO_DIALOG_FORCED
} }
public enum eTabAdapterCommands { public enum eTabAdapterCommands {

View File

@ -30,6 +30,7 @@ import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.ItemTouchHelper; import androidx.recyclerview.widget.ItemTouchHelper;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import com.darkweb.genesissearchengine.appManager.activityContextManager;
import com.darkweb.genesissearchengine.constants.enums; import com.darkweb.genesissearchengine.constants.enums;
import com.darkweb.genesissearchengine.constants.status; import com.darkweb.genesissearchengine.constants.status;
import com.darkweb.genesissearchengine.helperManager.helperMethod; import com.darkweb.genesissearchengine.helperManager.helperMethod;
@ -37,6 +38,8 @@ import com.example.myapplication.R;
import java.util.List; import java.util.List;
import static android.content.Context.LAYOUT_INFLATER_SERVICE; import static android.content.Context.LAYOUT_INFLATER_SERVICE;
import org.mozilla.thirdparty.com.google.android.exoplayer2.util.Log;
class tabViewController class tabViewController
{ {
/*Private Views*/ /*Private Views*/
@ -95,7 +98,9 @@ class tabViewController
mMenuButton.animate().setStartDelay(200).setDuration(350).alpha(1); mMenuButton.animate().setStartDelay(200).setDuration(350).alpha(1);
mMenuButton.setVisibility(View.VISIBLE); mMenuButton.setVisibility(View.VISIBLE);
if(!status.sTabGridLayoutEnabled){ if(status.sTabGridLayoutEnabled){
mNestedScrollView.setPadding(helperMethod.pxFromDp(7),helperMethod.pxFromDp(7),helperMethod.pxFromDp(7),helperMethod.pxFromDp(0));
}else {
mNestedScrollView.setPadding(0,0,0,0); mNestedScrollView.setPadding(0,0,0,0);
} }
@ -121,9 +126,9 @@ class tabViewController
mTabOptionMenu.setAnimationStyle(R.style.popup_window_animation); mTabOptionMenu.setAnimationStyle(R.style.popup_window_animation);
mTabOptionMenu.setElevation(7); mTabOptionMenu.setElevation(7);
if(status.sSettingLanguageRegion.equals("Ur")){ if(status.sSettingLanguageRegion.equals("Ur")){
mTabOptionMenu.showAsDropDown(view,helperMethod.pxFromDp(-45), helperMethod.pxFromDp(-45)); mTabOptionMenu.showAsDropDown(view,helperMethod.pxFromDp(-45), helperMethod.pxFromDp(-55));
}else { }else {
mTabOptionMenu.showAsDropDown(view,helperMethod.pxFromDp(-125), helperMethod.pxFromDp(-45)); mTabOptionMenu.showAsDropDown(view,helperMethod.pxFromDp(-125), helperMethod.pxFromDp(-55));
} }
} }
@ -172,19 +177,34 @@ class tabViewController
} }
private void onHideUndoDialogForced() { private void onHideUndoDialogForced() {
//if(mUndoLayout.getAlpha()<1){ if(mUndoLayout.getAlpha()<1){
//mUndoLayout.animate().cancel(); mUndoLayout.animate().cancel();
//mUndoLayout.setAlpha(0); mUndoLayout.setAlpha(0);
//mUndoLayout.setVisibility(View.GONE); mUndoLayout.setVisibility(View.GONE);
//}else { }else {
//mUndoLayout.animate().setDuration(200).alpha(0).withEndAction(() -> mUndoLayout.setVisibility(View.GONE)); mUndoLayout.animate().setDuration(200).alpha(0).withEndAction(() -> mUndoLayout.setVisibility(View.GONE));
//} }
mDelayHandler.removeCallbacksAndMessages(null);
}
private void onShowUndoDialog() {
if(mUndoLayout.getAlpha()==0){
Log.i("ASdasdads","ASdasdads");
mUndoLayout.setAlpha(0);
mUndoLayout.setVisibility(View.VISIBLE);
mDelayHandler.removeCallbacksAndMessages(null);
mUndoLayout.animate().setDuration(200).alpha(1).withEndAction(() -> {
mDelayHandler.postDelayed(() -> {
mUndoLayout.animate().setDuration(200).alpha(0);
}, 2000);
});
}
} }
private void onHideUndoDialogInit() { private void onHideUndoDialogInit() {
//mUndoLayout.animate().cancel(); mUndoLayout.animate().cancel();
//mUndoLayout.setAlpha(0); mUndoLayout.setAlpha(0);
//mUndoLayout.setVisibility(View.GONE); mUndoLayout.setVisibility(View.GONE);
} }
public void blockUI(boolean pStatus){ public void blockUI(boolean pStatus){
@ -262,9 +282,15 @@ class tabViewController
else if(pCommands.equals(tabEnums.eTabViewCommands.ON_RELEASE_BLOCKER)){ else if(pCommands.equals(tabEnums.eTabViewCommands.ON_RELEASE_BLOCKER)){
blockUI(false); blockUI(false);
} }
else if(pCommands.equals(tabEnums.eTabViewCommands.ON_HIDE_UNDO_DIALOG_FORCED)){ else if(pCommands.equals(tabEnums.eTabViewCommands.ON_SHOW_UNDO_DIALOG)){
onShowUndoDialog();
}
else if(pCommands.equals(tabEnums.eTabViewCommands.ON_HIDE_UNDO_DIALOG)){
onHideUndoDialogForced(); onHideUndoDialogForced();
} }
else if(pCommands.equals(tabEnums.eTabViewCommands.ON_INIT_UI)){
initUI();
}
return null; return null;
} }
} }

View File

@ -83,7 +83,7 @@ public class keys
public static final String EXTERNAL_SHORTCUT_COMMAND_NAVIGATE = "EXTERNAL_SHORTCUT_COMMAND"; public static final String EXTERNAL_SHORTCUT_COMMAND_NAVIGATE = "EXTERNAL_SHORTCUT_COMMAND";
/*Admanager*/ /*Admanager*/
public static final String ADMANAGER_APPID_KEY = "0ac59b0996d947309c33f59d6676399f"; public static final String ADMANAGER_APPID_KEY = "c122efbe224f46678800d2f73389d258";
} }

View File

@ -134,6 +134,10 @@ public class status
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.sGlobalURLCount = (int)dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_GET_INT, Arrays.asList(keys.SETTING_RATE_COUNT, 0)); status.sGlobalURLCount = (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)); status.sAppInstalled = (boolean)dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_GET_BOOL, Arrays.asList(keys.SETTING_INSTALLED,false));
if(status.sGlobalURLCount <=10 && status.sGlobalURLCount>=8){
status.sGlobalURLCount = 6;
}
} }
} }

View File

@ -2,52 +2,27 @@ package com.darkweb.genesissearchengine.dataManager;
import static java.lang.Thread.sleep; import static java.lang.Thread.sleep;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
import android.os.AsyncTask;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import com.android.volley.DefaultRetryPolicy;
import com.android.volley.Request; import com.android.volley.Request;
import com.android.volley.RequestQueue; import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonObjectRequest;
import com.android.volley.toolbox.StringRequest; 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.status;
import com.darkweb.genesissearchengine.constants.strings; import com.darkweb.genesissearchengine.constants.strings;
import com.darkweb.genesissearchengine.dataManager.models.crawlerRowModel; import com.darkweb.genesissearchengine.dataManager.models.crawlerRowModel;
import com.darkweb.genesissearchengine.helperManager.helperMethod; import com.darkweb.genesissearchengine.helperManager.helperMethod;
import org.json.JSONException;
import org.json.JSONObject;
import org.jsoup.Jsoup; import org.jsoup.Jsoup;
import org.jsoup.nodes.Document; import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element; import org.jsoup.nodes.Element;
import org.jsoup.select.Elements; import org.jsoup.select.Elements;
import org.mozilla.thirdparty.com.google.android.exoplayer2.util.Log;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder; import java.net.URLEncoder;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import ch.boye.httpclientandroidlib.NameValuePair;
import ch.boye.httpclientandroidlib.client.HttpClient;
import ch.boye.httpclientandroidlib.client.methods.HttpPost;
import ch.boye.httpclientandroidlib.impl.client.DefaultHttpClient;
@SuppressLint("CommitPrefEdits") @SuppressLint("CommitPrefEdits")
class crawlerDataModel class crawlerDataModel
{ {
@ -60,7 +35,10 @@ class crawlerDataModel
mDuplicate = new HashSet<>(); mDuplicate = new HashSet<>();
mHTML = new ArrayList<>(); mHTML = new ArrayList<>();
mContext = pContext; mContext = pContext;
onCrawlHandler(); }
private void onInit(){
onExecute();
} }
private void onParseHTML(String pHtml, String pURL){ private void onParseHTML(String pHtml, String pURL){
@ -74,109 +52,95 @@ class crawlerDataModel
/* Helper Methods */ /* Helper Methods */
private void onCrawlHandler(){ public void onExecute(){
new Thread(){ new Thread(){
String mHtml = strings.GENERIC_EMPTY_STR;
String mURL = strings.GENERIC_EMPTY_STR;
String mTitle = strings.GENERIC_EMPTY_STR;
String mDescription = strings.GENERIC_EMPTY_STR;
String mKeywords = strings.GENERIC_EMPTY_STR;
String mtype = strings.CRAWLER_GENERIC_TYPE;
private void onParseHTML(){
Document pDoc = Jsoup.parse(mHtml);
Map<String, String> metas = new HashMap<>();
Elements metaTags = pDoc.getElementsByTag("meta");
for (Element metaTag : metaTags) {
String content = metaTag.attr("content");
String name = metaTag.attr("name");
metas.put(name, content);
}
if(metas.containsKey("description")){
mDescription = metas.get("description");
}
if(metas.containsKey("keywords")){
mKeywords = metas.get("keywords");
}
mTitle = pDoc.title();
if(mDescription.length()<200){
Elements p= pDoc.getElementsByTag("h1");
for (Element x: p) {
mDescription+= " " + x.text();
}
}
if(mDescription.length()<200){
Elements p= pDoc.getElementsByTag("p");
for (Element x: p) {
mDescription+= " " + x.text();
}
}
}
private void onCleanData(){
mDescription = mDescription.trim().replaceAll(" +", " ");
mDescription = mDescription.trim().replaceAll("\n", "");
if(mTitle!=null && mTitle.length()>500){
mTitle = mTitle.substring(0,500);
}
if(mDescription!=null && mDescription.length()>1000){
mDescription = mDescription.substring(0,1000);
}
if(mKeywords!=null && mKeywords.length()>500){
mKeywords = mKeywords.substring(0,500);
}
}
private void onSendRequest(){
String mURL_POST = "https://www.genesishiddentechnologies.com/update_cache?url="+mURL+"&key_word="+mKeywords+"&desc="+mDescription+"&title="+mTitle+"&s_type="+mtype;
StringRequest stringRequest = new StringRequest(Request.Method.GET, mURL_POST,
response -> {
},
error -> {
});
RequestQueue requestQueue = Volley.newRequestQueue(mContext);
requestQueue.add(stringRequest);
}
private void onEncodeData(){
mURL = URLEncoder.encode(mURL);
mTitle = URLEncoder.encode(mTitle);
mDescription = URLEncoder.encode(mDescription);
mKeywords = URLEncoder.encode(mKeywords);
}
public void run(){ public void run(){
while (true){ while (true){
try { try {
sleep(1000); sleep(1000);
if(mHTML.size()>0){ if(mHTML.size()>0){
crawlerRowModel mModel = mHTML.remove(0); crawlerRowModel mModel = mHTML.remove(0);
String mHtml = mModel.getHTML(); mHtml = mModel.getHTML();
String mURL = mModel.getURL(); mURL = mModel.getURL();
String mTitle = strings.GENERIC_EMPTY_STR;
String mDescription = strings.GENERIC_EMPTY_STR;
String mKeywords = strings.GENERIC_EMPTY_STR;
String mtype = strings.CRAWLER_GENERIC_TYPE;
String mRank = strings.CRAWLER_RANK_UNVERIFIED;
Document doc = Jsoup.parse(mHtml);
Map<String, String> metas = new HashMap<>(); onParseHTML();
Elements metaTags = doc.getElementsByTag("meta"); onCleanData();
onEncodeData();
for (Element metaTag : metaTags) { onSendRequest();
String content = metaTag.attr("content");
String name = metaTag.attr("name");
metas.put(name, content);
}
Element abbrElement = doc.select("abbr").first();
mDescription = metas.get("description");
mTitle = doc.title();
mKeywords = metas.get("keywords");
if(mDescription==null){
mDescription = strings.GENERIC_EMPTY_null;
}
if(mTitle==null){
mTitle = strings.GENERIC_EMPTY_null;
}
if(mKeywords==null){
mKeywords = strings.GENERIC_EMPTY_null;
}
if(mDescription.length()<200){
Elements p= doc.getElementsByTag("h1");
for (Element x: p) {
mDescription+= " " + x.text();
}
}
if(mDescription.length()<200){
Elements p= doc.getElementsByTag("p");
for (Element x: p) {
mDescription+= " " + x.text();
}
}
mDescription = mDescription.trim().replaceAll(" +", " ");
mDescription = mDescription.trim().replaceAll("\n", "");
if(mTitle!=null && mTitle.length()>500){
mTitle = mTitle.substring(0,500);
}
if(mDescription!=null && mDescription.length()>1000){
mDescription = mDescription.substring(0,1000);
}
if(mKeywords!=null && mKeywords.length()>500){
mKeywords = mKeywords.substring(0,500);
}
if(mDescription.length()<=10){
return;
}
if(mURL==null){
mURL = strings.GENERIC_EMPTY_STR;
}
mURL = URLEncoder.encode(mURL);
if(mTitle==null){
mTitle = strings.GENERIC_EMPTY_STR;
}
mTitle = URLEncoder.encode(mTitle);
if(mDescription==null){
mDescription = strings.GENERIC_EMPTY_STR;
}
mDescription = URLEncoder.encode(mDescription);
if(mKeywords==null){
mKeywords = strings.GENERIC_EMPTY_STR;
}
mKeywords = URLEncoder.encode(mKeywords);
mDescription = "Sad";
mTitle = "asd";
mKeywords = "asd";
String mURL_POST = "https://www.genesishiddentechnologies.com/update_cache?url="+mURL+"&key_word="+mKeywords+"&desc="+mDescription+"&title="+mTitle+"&s_type="+mtype;
StringRequest stringRequest = new StringRequest(Request.Method.GET, mURL_POST,
response -> {
Log.i("as","as");
},
error -> {
Log.i("as","as");
});
RequestQueue requestQueue = Volley.newRequestQueue(mContext);
requestQueue.add(stringRequest);
} }
} catch (Exception ex) { } catch (Exception ex) {
@ -187,13 +151,15 @@ class crawlerDataModel
}.start(); }.start();
} }
/* External Triggers */ /* External Triggers */
public Object onTrigger(dataEnums.eCrawlerCommands pCommands, List<Object> pData){ public Object onTrigger(dataEnums.eCrawlerCommands pCommands, List<Object> pData){
if(pCommands.equals(dataEnums.eCrawlerCommands.M_INDEX_URL)){ if(pCommands.equals(dataEnums.eCrawlerCommands.M_INDEX_URL)){
onParseHTML(pData.get(0).toString(), pData.get(1).toString()); onParseHTML(pData.get(0).toString(), pData.get(1).toString());
} }
if(pCommands.equals(dataEnums.eCrawlerCommands.M_INIT)){
onInit();
}
return null; return null;
} }

View File

@ -45,7 +45,7 @@ public class dataEnums
} }
public enum eCrawlerCommands { public enum eCrawlerCommands {
M_INDEX_URL M_INDEX_URL, M_INIT
} }
/* Callbacks */ /* Callbacks */

View File

@ -2,21 +2,17 @@ package com.darkweb.genesissearchengine.pluginManager.adPluginManager;
import android.content.Context; import android.content.Context;
import android.os.Handler; import android.os.Handler;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import com.darkweb.genesissearchengine.constants.keys; import com.darkweb.genesissearchengine.constants.keys;
import com.darkweb.genesissearchengine.dataManager.dataController;
import com.darkweb.genesissearchengine.dataManager.dataEnums;
import com.darkweb.genesissearchengine.eventObserver; import com.darkweb.genesissearchengine.eventObserver;
import com.darkweb.genesissearchengine.pluginManager.pluginEnums; import com.darkweb.genesissearchengine.pluginManager.pluginEnums;
import com.facebook.ads.AudienceNetworkAds;
import com.mopub.common.MoPub; import com.mopub.common.MoPub;
import com.mopub.common.SdkConfiguration; import com.mopub.common.SdkConfiguration;
import com.mopub.common.SdkInitializationListener; import com.mopub.common.SdkInitializationListener;
import com.mopub.mobileads.MoPubErrorCode; import com.mopub.mobileads.MoPubErrorCode;
import com.mopub.mobileads.MoPubView; import com.mopub.mobileads.MoPubView;
import java.lang.ref.WeakReference; import java.lang.ref.WeakReference;
import java.util.Arrays;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eAdManagerCallbacks.M_ON_AD_LOAD; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eAdManagerCallbacks.M_ON_AD_LOAD;
import static com.mopub.common.logging.MoPubLog.LogLevel.INFO; import static com.mopub.common.logging.MoPubLog.LogLevel.INFO;
@ -43,6 +39,8 @@ public class mopubManager implements MoPubView.BannerAdListener
private void initializeBannerAds(Context pContext){ private void initializeBannerAds(Context pContext){
final SdkConfiguration.Builder configBuilder = new SdkConfiguration.Builder(keys.ADMANAGER_APPID_KEY); final SdkConfiguration.Builder configBuilder = new SdkConfiguration.Builder(keys.ADMANAGER_APPID_KEY);
configBuilder.withLogLevel(INFO); configBuilder.withLogLevel(INFO);
AudienceNetworkAds.initialize(pContext);
MoPub.initializeSdk(pContext, configBuilder.build(), initSdkListener()); MoPub.initializeSdk(pContext, configBuilder.build(), initSdkListener());
} }
@ -66,6 +64,7 @@ public class mopubManager implements MoPubView.BannerAdListener
if(mRequestCount<=10){ if(mRequestCount<=10){
mRequestCount +=1; mRequestCount +=1;
mBannerAds.get().setAdUnitId(keys.ADMANAGER_APPID_KEY); mBannerAds.get().setAdUnitId(keys.ADMANAGER_APPID_KEY);
mBannerAds.get().setAdSize(MoPubView.MoPubAdSize.HEIGHT_50);
mBannerAds.get().loadAd(); mBannerAds.get().loadAd();
mBannerAds.get().setBannerAdListener(this); mBannerAds.get().setBannerAdListener(this);
} }

View File

@ -48,6 +48,7 @@ import static com.darkweb.genesissearchengine.constants.strings.MESSAGE_SECURE_O
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.*; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.*;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.*; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.*;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.M_CLEAR_BOOKMARK; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.M_CLEAR_BOOKMARK;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.M_LOAD_NEW_TAB;
public class messageManager implements View.OnClickListener, DialogInterface.OnDismissListener public class messageManager implements View.OnClickListener, DialogInterface.OnDismissListener
{ {
@ -208,7 +209,7 @@ public class messageManager implements View.OnClickListener, DialogInterface.OnD
{ {
initializeDialog(R.layout.popup_bridge_mail, Gravity.BOTTOM); initializeDialog(R.layout.popup_bridge_mail, Gravity.BOTTOM);
ConstraintLayout mBridgeMailPopupDismiss = mDialog.findViewById(R.id.pBridgeMailPopupDismiss); Button mBridgeMailPopupDismiss = mDialog.findViewById(R.id.pBridgeMailPopupDismiss);
Button mBridgeMailPopupNext = mDialog.findViewById(R.id.pBridgeMailPopupNext); Button mBridgeMailPopupNext = mDialog.findViewById(R.id.pBridgeMailPopupNext);
mBridgeMailPopupDismiss.setOnClickListener(this); mBridgeMailPopupDismiss.setOnClickListener(this);
@ -438,7 +439,6 @@ public class messageManager implements View.OnClickListener, DialogInterface.OnD
view.getId() == R.id.pPopupPanicDismiss || view.getId() == R.id.pPopupPanicDismiss ||
view.getId() == R.id.pDownloadPopuInfoDismiss || view.getId() == R.id.pDownloadPopuInfoDismiss ||
view.getId() == R.id.pPopupURLLongPressDismiss || view.getId() == R.id.pPopupURLLongPressDismiss ||
view.getId() == R.id.pPopupPanicReset ||
view.getId() == R.id.pPopupLongPressDismiss || view.getId() == R.id.pPopupLongPressDismiss ||
view.getId() == R.id.pCertificateDesciption || view.getId() == R.id.pCertificateDesciption ||
view.getId() == R.id.pCertificateRootBackground || view.getId() == R.id.pCertificateRootBackground ||
@ -454,6 +454,11 @@ public class messageManager implements View.OnClickListener, DialogInterface.OnD
return null; return null;
}); });
} }
else if(view.getId() == R.id.pPopupPanicReset){
onDismiss();
mEvent.invokeObserver(mData, M_PANIC_RESET);
onClearReference();
}
else if(view.getId() == R.id.pPopupCreateBookmarkDismiss){ else if(view.getId() == R.id.pPopupCreateBookmarkDismiss){
onDismiss(); onDismiss();
helperMethod.hideKeyboard(mContext); helperMethod.hideKeyboard(mContext);
@ -461,7 +466,7 @@ public class messageManager implements View.OnClickListener, DialogInterface.OnD
else if(view.getId() == R.id.pSecurePopupPrivacy){ else if(view.getId() == R.id.pSecurePopupPrivacy){
mDialog.findViewById(R.id.pSecurePopupRootBlocker).animate().setDuration(150).alpha(0); mDialog.findViewById(R.id.pSecurePopupRootBlocker).animate().setDuration(150).alpha(0);
helperMethod.onDelayHandler(mContext, 250, () -> { helperMethod.onDelayHandler(mContext, 250, () -> {
mEvent.invokeObserver(null, M_SECURE_CONNECTION); mEvent.invokeObserver(null, M_OPEN_PRIVACY);
onDismiss(); onDismiss();
return null; return null;
}); });
@ -660,7 +665,7 @@ public class messageManager implements View.OnClickListener, DialogInterface.OnD
onDismiss(); onDismiss();
} }
if(mCallbackInstance!=null){ if(mCallbackInstance!=null){
mEvent.invokeObserver(null, mCallbackInstance); mEvent.invokeObserver(mData, mCallbackInstance);
} }
} }
@ -674,6 +679,7 @@ public class messageManager implements View.OnClickListener, DialogInterface.OnD
public void onTrigger(List<Object> pData, pluginEnums.eMessageManager pEventType) public void onTrigger(List<Object> pData, pluginEnums.eMessageManager pEventType)
{ {
mCallbackInstance = null;
mToastHandler.removeCallbacksAndMessages(null); mToastHandler.removeCallbacksAndMessages(null);
if(!pEventType.equals(M_RATE_FAILURE) && !pEventType.equals(M_RATE_SUCCESS) && !pEventType.equals(M_NOT_SUPPORTED)){ if(!pEventType.equals(M_RATE_FAILURE) && !pEventType.equals(M_RATE_SUCCESS) && !pEventType.equals(M_NOT_SUPPORTED)){
onClearReference(); onClearReference();
@ -795,7 +801,7 @@ public class messageManager implements View.OnClickListener, DialogInterface.OnD
case M_LOAD_NEW_TAB: case M_LOAD_NEW_TAB:
/*VERIFIED*/ /*VERIFIED*/
onShowToast(R.layout.popup_toast_generic,R.xml.ax_background_important,2000, mContext.getString(R.string.TOAST_ALERT_OPEN_NEW_TAB), mContext.getString(R.string.TOAST_ALERT_OPEN_NEW_TAB_LOAD), null); onShowToast(R.layout.popup_toast_generic,R.xml.ax_background_important,2000, mContext.getString(R.string.TOAST_ALERT_OPEN_NEW_TAB), mContext.getString(R.string.TOAST_ALERT_OPEN_NEW_TAB_LOAD), M_LOAD_NEW_TAB);
break; break;
case M_UNDO: case M_UNDO:
@ -828,6 +834,11 @@ public class messageManager implements View.OnClickListener, DialogInterface.OnD
onShowToast(R.layout.popup_toast_generic,R.xml.ax_background_generic, 4000, mContext.getString(R.string.TOAST_ALERT_IMAGE_STATUS), mContext.getString(R.string.TOAST_ALERT_RESTART), M_IMAGE_UPDATE_RESTART); onShowToast(R.layout.popup_toast_generic,R.xml.ax_background_generic, 4000, mContext.getString(R.string.TOAST_ALERT_IMAGE_STATUS), mContext.getString(R.string.TOAST_ALERT_RESTART), M_IMAGE_UPDATE_RESTART);
break; break;
case M_OPEN_CICADA:
/*VERIFIED*/
onShowToast(R.layout.popup_toast_generic,R.xml.ax_background_generic, 2000, mContext.getString(R.string.TOAST_ALERT_CICADA), mContext.getString(R.string.ALERT_DISMISS), null);
break;
case M_OPEN_ACTIVITY_FAILED: case M_OPEN_ACTIVITY_FAILED:
/*VERIFIED*/ /*VERIFIED*/
onShowToast(R.layout.popup_toast_generic,R.xml.ax_background_generic, 2000, mContext.getString(R.string.TOAST_ALERT_OPEN_ACTIVITY_FAILED), mContext.getString(R.string.ALERT_DISMISS), null); onShowToast(R.layout.popup_toast_generic,R.xml.ax_background_generic, 2000, mContext.getString(R.string.TOAST_ALERT_OPEN_ACTIVITY_FAILED), mContext.getString(R.string.ALERT_DISMISS), null);

View File

@ -1,12 +1,10 @@
package com.darkweb.genesissearchengine.pluginManager; package com.darkweb.genesissearchengine.pluginManager;
import android.content.Intent;
import android.net.Uri;
import android.os.Handler;
import android.view.WindowManager; import android.view.WindowManager;
import android.widget.ImageView; import android.widget.ImageView;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import com.darkweb.genesissearchengine.appManager.activityContextManager; import com.darkweb.genesissearchengine.appManager.activityContextManager;
import com.darkweb.genesissearchengine.appManager.homeManager.geckoManager.geckoSession;
import com.darkweb.genesissearchengine.appManager.homeManager.homeController.homeController; import com.darkweb.genesissearchengine.appManager.homeManager.homeController.homeController;
import com.darkweb.genesissearchengine.appManager.orbotLogManager.orbotLogController; import com.darkweb.genesissearchengine.appManager.orbotLogManager.orbotLogController;
import com.darkweb.genesissearchengine.appManager.settingManager.privacyManager.settingPrivacyController; import com.darkweb.genesissearchengine.appManager.settingManager.privacyManager.settingPrivacyController;
@ -18,8 +16,6 @@ import com.darkweb.genesissearchengine.dataManager.dataController;
import com.darkweb.genesissearchengine.dataManager.dataEnums; import com.darkweb.genesissearchengine.dataManager.dataEnums;
import com.darkweb.genesissearchengine.eventObserver; import com.darkweb.genesissearchengine.eventObserver;
import com.darkweb.genesissearchengine.helperManager.helperMethod; import com.darkweb.genesissearchengine.helperManager.helperMethod;
import com.darkweb.genesissearchengine.pluginManager.adPluginManager.admobManager;
import com.darkweb.genesissearchengine.pluginManager.adPluginManager.facebookAdsManager;
import com.darkweb.genesissearchengine.pluginManager.adPluginManager.mopubManager; import com.darkweb.genesissearchengine.pluginManager.adPluginManager.mopubManager;
import com.darkweb.genesissearchengine.pluginManager.analyticPluginManager.analyticManager; import com.darkweb.genesissearchengine.pluginManager.analyticPluginManager.analyticManager;
import com.darkweb.genesissearchengine.pluginManager.downloadPluginManager.downloadManager; import com.darkweb.genesissearchengine.pluginManager.downloadPluginManager.downloadManager;
@ -27,11 +23,7 @@ import com.darkweb.genesissearchengine.pluginManager.langPluginManager.langManag
import com.darkweb.genesissearchengine.pluginManager.messagePluginManager.messageManager; import com.darkweb.genesissearchengine.pluginManager.messagePluginManager.messageManager;
import com.darkweb.genesissearchengine.pluginManager.notificationPluginManager.notifictionManager; import com.darkweb.genesissearchengine.pluginManager.notificationPluginManager.notifictionManager;
import com.darkweb.genesissearchengine.pluginManager.orbotPluginManager.orbotManager; import com.darkweb.genesissearchengine.pluginManager.orbotPluginManager.orbotManager;
import com.example.myapplication.R;
import com.google.android.gms.ads.AdView;
import java.lang.ref.WeakReference; import java.lang.ref.WeakReference;
import java.net.URI;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
@ -45,7 +37,7 @@ import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eLangMan
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.*; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.*;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.*; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.*;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.M_CLEAR_BOOKMARK; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.M_CLEAR_BOOKMARK;
import static org.webrtc.ContextUtils.getApplicationContext; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.M_LOAD_NEW_TAB;
public class pluginController public class pluginController
{ {
@ -249,7 +241,10 @@ public class pluginController
((homeController)mHomeController.get()).onLoadURL(pData.get(0).toString()); ((homeController)mHomeController.get()).onLoadURL(pData.get(0).toString());
} }
else if(pEventType.equals(M_PANIC_RESET)){ else if(pEventType.equals(M_PANIC_RESET)){
new Handler().postDelayed(() -> activityContextManager.getInstance().getHomeController().panicExitInvoked(), 300); helperMethod.onDelayHandler(mHomeController.get(), 150, () -> {
activityContextManager.getInstance().getHomeController().panicExitInvoked();
return null;
});
} }
else if(pEventType.equals(M_DOWNLOAD_SINGLE)){ else if(pEventType.equals(M_DOWNLOAD_SINGLE)){
if(pData!=null){ if(pData!=null){
@ -264,9 +259,6 @@ public class pluginController
} }
} }
} }
else if(pEventType.equals(M_SECURE_CONNECTION)){
helperMethod.openActivity(settingPrivacyController.class, constants.CONST_LIST_HISTORY, mHomeController.get(),true);
}
else if(pEventType.equals(M_CANCEL_WELCOME)){ else if(pEventType.equals(M_CANCEL_WELCOME)){
status.sSettingIsWelcomeEnabled = false; status.sSettingIsWelcomeEnabled = false;
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_IS_WELCOME_ENABLED,false)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.SETTING_IS_WELCOME_ENABLED,false));
@ -316,6 +308,9 @@ public class pluginController
else if(pEventType.equals(M_DOWNLOAD_FILE_MANUAL)){ else if(pEventType.equals(M_DOWNLOAD_FILE_MANUAL)){
((homeController)mHomeController.get()).onManualDownload(pData.get(0).toString()); ((homeController)mHomeController.get()).onManualDownload(pData.get(0).toString());
} }
else if(pEventType.equals(M_LOAD_NEW_TAB)){
((homeController)mHomeController.get()).onLoadTab((geckoSession) pData.get(pData.size()-2),false,false,false);
}
else if(pEventType.equals(M_OPEN_LINK_NEW_TAB)){ else if(pEventType.equals(M_OPEN_LINK_NEW_TAB)){
((homeController)mHomeController.get()).postNewLinkTabAnimationInBackgroundTrigger(pData.get(0).toString()); ((homeController)mHomeController.get()).postNewLinkTabAnimationInBackgroundTrigger(pData.get(0).toString());

View File

@ -28,10 +28,10 @@ public class pluginEnums
/*Message Manager*/ /*Message Manager*/
public enum eMessageManager{ public enum eMessageManager{
M_RESET, M_DATA_CLEARED, M_COPY, M_APPLICATION_CRASH, M_DELETE_BOOKMARK, M_UPDATE_BOOKMARK, M_IMAGE_UPDATE,M_OPEN_ACTIVITY_FAILED, M_SECURE_CONNECTION, M_SECURITY_INFO, M_POPUP_BLOCKED, M_PANIC, M_MAX_TAB_REACHED, M_ORBOT_LOADING, M_LOAD_NEW_TAB, M_UNDO,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_COPY, M_APPLICATION_CRASH, M_DELETE_BOOKMARK, M_UPDATE_BOOKMARK, M_IMAGE_UPDATE,M_OPEN_ACTIVITY_FAILED, M_OPEN_CICADA, M_SECURE_CONNECTION, M_SECURITY_INFO, M_POPUP_BLOCKED, M_PANIC, M_MAX_TAB_REACHED, M_ORBOT_LOADING, M_LOAD_NEW_TAB, M_UNDO,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_CLEAR_BOOKMARK,M_ADJUST_INPUT_RESIZE, M_UNDO_SESSION, M_OPEN_LOGS, M_UNDO_TAB, M_CUSTOM_BRIDGE, M_BRIDGE_TYPE, M_DATA_CLEARED_EXTERNAL, M_IMAGE_UPDATE_RESTART 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_CLEAR_BOOKMARK,M_ADJUST_INPUT_RESIZE, M_UNDO_SESSION, M_OPEN_LOGS, M_LOAD_NEW_TAB, M_UNDO_TAB, M_CUSTOM_BRIDGE, M_BRIDGE_TYPE, M_DATA_CLEARED_EXTERNAL, M_IMAGE_UPDATE_RESTART
} }
/*Download Manager*/ /*Download Manager*/

View File

@ -12,7 +12,7 @@
</item> </item>
<!-- White Top color --> <!-- White Top color -->
<item android:bottom="4dp" android:left="0px" android:right="0px" android:top="0px"> <item android:bottom="0dp" android:left="0px" android:right="0px" android:top="0px">
<shape android:shape="rectangle"> <shape android:shape="rectangle">

View File

@ -7,4 +7,7 @@
<certificates src="user"/> <certificates src="user"/>
</trust-anchors> </trust-anchors>
</base-config> </base-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">127.0.0.1</domain>
</domain-config>
</network-security-config> </network-security-config>

View File

@ -3,7 +3,7 @@
<solid android:color="#ffffffff"/> <solid android:color="#ffffffff"/>
<stroke android:width="3dp" <stroke android:width="3dp"
android:color="@color/c_alert_toast_button_background" android:color="@color/dark_red"
/> />
<padding android:left="1dp" <padding android:left="1dp"

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"> <shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/c_background_alpha"/> <solid android:color="@color/c_background_tab"/>
<stroke android:width="0dp" <stroke android:width="0dp"
android:color="@color/c_background_alpha"/> android:color="@color/c_background_tab"/>
<corners android:radius="0dp" /> <corners android:radius="0dp" />
</shape> </shape>

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View File

@ -7,7 +7,7 @@
android:layout_height="2000dp"> android:layout_height="2000dp">
<ImageView <ImageView
android:id="@+id/pSecureRootBlocker" android:id="@+id/pSecurePopupRootBlocker"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="2000dp" android:layout_height="2000dp"
android:alpha="0" android:alpha="0"
@ -56,7 +56,7 @@
tools:ignore="RtlSymmetry" /> tools:ignore="RtlSymmetry" />
<TextView <TextView
android:id="@+id/pSecureSubHeader" android:id="@+id/pSecurePopupSubHeader"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="2dp" android:layout_marginStart="2dp"
@ -149,7 +149,7 @@
</LinearLayout> </LinearLayout>
<com.google.android.material.switchmaterial.SwitchMaterial <com.google.android.material.switchmaterial.SwitchMaterial
android:id="@+id/pSecureJavascriptStatus" android:id="@+id/pSecurePopupJavascriptStatus"
android:layout_width="50dp" android:layout_width="50dp"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginStart="10dp" android:layout_marginStart="10dp"
@ -214,7 +214,7 @@
</LinearLayout> </LinearLayout>
<com.google.android.material.switchmaterial.SwitchMaterial <com.google.android.material.switchmaterial.SwitchMaterial
android:id="@+id/pSecureTrackingStatus" android:id="@+id/pSecurePopupTrackingStatus"
android:layout_width="50dp" android:layout_width="50dp"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginStart="10dp" android:layout_marginStart="10dp"
@ -278,7 +278,7 @@
</LinearLayout> </LinearLayout>
<com.google.android.material.switchmaterial.SwitchMaterial <com.google.android.material.switchmaterial.SwitchMaterial
android:id="@+id/pSecureTrackingProtectionStatus" android:id="@+id/pSecurePopupTrackingProtectionStatus"
android:layout_width="50dp" android:layout_width="50dp"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginStart="10dp" android:layout_marginStart="10dp"
@ -313,7 +313,7 @@
app:layout_constraintTop_toBottomOf="@+id/pSecureInfo"> app:layout_constraintTop_toBottomOf="@+id/pSecureInfo">
<Button <Button
android:id="@+id/pSecurePrivacy" android:id="@+id/pSecurePopupPrivacy"
style="?android:attr/buttonBarButtonStyle" style="?android:attr/buttonBarButtonStyle"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="43dp" android:layout_height="43dp"
@ -335,7 +335,7 @@
android:textStyle="bold" /> android:textStyle="bold" />
<Button <Button
android:id="@+id/pSecureCertificate" android:id="@+id/pSecurePopupCertificate"
style="?android:attr/buttonBarButtonStyle" style="?android:attr/buttonBarButtonStyle"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="43dp" android:layout_height="43dp"

View File

@ -0,0 +1,84 @@
<?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/pDataCleared"
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/pPopupToastContainer"
android:layout_width="0dp"
android:layout_height="55dp"
android:layout_marginStart="5dp"
android:layout_marginEnd="5dp"
android:layout_marginBottom="20dp"
android:background="@xml/ax_background_important"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintHorizontal_weight="1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintWidth_max="400dp">
<TextView
android:id="@+id/pPopupToastInfo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:layout_marginEnd="100dp"
android:alpha="0.9"
android:maxWidth="400dp"
android:maxLines="1"
android:paddingStart="15dp"
android:paddingEnd="15dp"
android:text="@string/TOAST_ALERT_UNDO_INFO"
android:textAlignment="textStart"
android:textColor="@color/c_white"
android:textSize="14.5sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pPopupToastDivider"
app:layout_constraintHorizontal_weight="1"
app:layout_constraintStart_toStartOf="@+id/pPopupToastContainer"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" />
<Button
android:id="@+id/pPopupToastTrigger"
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_toast_alert_button"
android:onClick="onUndo"
android:padding="0dp"
android:text="@string/TOAST_ALERT_UNDO_TRIGGER"
android:textAllCaps="false"
android:textColor="@color/c_alert_toast_button_text"
android:textSize="15sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="TouchTargetSizeCheck" />
<View
android:id="@+id/pPopupToastDivider"
android:layout_width="1dp"
android:layout_height="30dp"
android:layout_marginEnd="10dp"
android:background="@color/c_alert_divider"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pPopupToastTrigger"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -3,13 +3,14 @@
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/pRowContainer" android:id="@+id/pRowContainer"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="220dp" android:layout_height="230dp"
android:layout_marginTop="-5dp"
android:layout_marginStart="0dp"
android:clickable="true" android:clickable="true"
android:scaleX="1" android:scaleX="1"
android:scaleY="1" android:scaleY="1"
android:background="@color/clear_alpha" android:background="@color/clear_alpha"
android:layout_margin="4dp"
android:layout_marginTop="0dp"
android:layout_marginBottom="0dp"
android:focusable="true" android:focusable="true"
android:orientation="horizontal" android:orientation="horizontal"
tools:ignore="RtlSymmetry"> tools:ignore="RtlSymmetry">
@ -24,6 +25,8 @@
app:cardUseCompatPadding="true" app:cardUseCompatPadding="true"
app:cardBackgroundColor="@color/blue" app:cardBackgroundColor="@color/blue"
app:cardCornerRadius="4dp" app:cardCornerRadius="4dp"
android:outlineAmbientShadowColor="@color/c_tab_border_v1"
android:outlineSpotShadowColor="@color/c_tab_border_v1"
app:cardPreventCornerOverlap="false" app:cardPreventCornerOverlap="false"
android:clipChildren="true" android:clipChildren="true"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
@ -33,31 +36,31 @@
android:id="@+id/pTABRowContainer" android:id="@+id/pTABRowContainer"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:clickable="true"
android:background="@xml/tx_card_corner"
app:cardBackgroundColor="@color/c_background"
android:layout_margin="2dp" android:layout_margin="2dp"
android:focusable="true" android:background="@xml/tx_card_corner"
android:clickable="true"
android:clipChildren="true" android:clipChildren="true"
android:focusable="true"
android:longClickable="true" android:longClickable="true"
android:orientation="horizontal" android:orientation="horizontal"
app:cardCornerRadius="3dp"
android:paddingEnd="0dp" android:paddingEnd="0dp"
app:cardBackgroundColor="@color/c_background"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
tools:ignore="RtlSymmetry"> tools:ignore="RtlSymmetry,DuplicateClickableBoundsCheck">
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:id="@+id/cardView" android:id="@+id/cardView"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginTop="39dp" android:layout_marginTop="33dp"
app:cardBackgroundColor="@color/c_background"
android:background="@xml/tx_border" android:background="@xml/tx_border"
android:clipChildren="true" android:clipChildren="true"
android:layout_marginBottom="8dp"
android:elevation="0dp" android:elevation="0dp"
app:cardBackgroundColor="@color/c_background"
app:cardCornerRadius="0dp" app:cardCornerRadius="0dp"
app:cardElevation="0dp" app:cardElevation="0dp"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
@ -90,6 +93,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginTop="0dp" android:layout_marginTop="0dp"
android:layout_gravity="center"
android:alpha="9" android:alpha="9"
android:background="@xml/tx_border_image_dark_no_corner" android:background="@xml/tx_border_image_dark_no_corner"
android:translationZ="15dp" android:translationZ="15dp"
@ -97,29 +101,105 @@
<ImageView <ImageView
android:id="@+id/imageView3" android:id="@+id/imageView3"
android:layout_width="wrap_content" android:layout_width="50dp"
android:layout_height="wrap_content" android:layout_height="50dp"
android:alpha="0.7" android:layout_gravity="center"
android:layout_marginBottom="10dp"
android:alpha="0.9"
android:padding="2dp"
android:contentDescription="@string/GENERAL_TODO" android:contentDescription="@string/GENERAL_TODO"
android:padding="54dp"
android:src="@drawable/tick_recycler_view" /> android:src="@drawable/tick_recycler_view" />
</FrameLayout> </FrameLayout>
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
<View
android:id="@+id/view7"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="31dp"
android:background="@color/c_orbot_setting_divider"
app:layout_constraintTop_toBottomOf="@+id/linearLayout" />
<ImageView
android:id="@+id/pBorder"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_gravity="start"
android:background="@color/c_background"
android:contentDescription="@string/GENERAL_TODO"
android:visibility="visible" />
<androidx.cardview.widget.CardView
android:layout_width="25dp"
android:layout_height="25dp"
app:cardElevation="0dp"
android:layout_marginTop="4dp"
android:layout_marginStart="4dp"
android:layout_marginEnd="5dp"
android:gravity="center_vertical"
app:cardCornerRadius="3dp">
<ImageView
android:alpha="0.9"
android:id="@+id/pLogo"
android:layout_width="25dp"
android:layout_height="25dp"
android:contentDescription="@string/GENERAL_TODO"
android:textAlignment="center"
android:textColor="@color/c_white"
tools:ignore="RtlCompat" />
</androidx.cardview.widget.CardView>
<ImageButton
android:id="@+id/pOrbotRowRemove"
android:layout_width="31dp"
android:layout_height="31dp"
android:background="@xml/tx_ripple_light"
android:contentDescription="@string/GENERAL_TODO"
android:elevation="11dp"
android:layout_gravity="end"
android:longClickable="true"
android:outlineProvider="none"
android:padding="7dp"
android:paddingTop="22dp"
android:paddingBottom="22dp"
android:scaleType="fitCenter"
android:src="@xml/ic_baseline_cross"
android:visibility="visible"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="RtlSymmetry"
app:tint="@color/c_navigation_tint" />
<ImageView
android:id="@+id/pLoadSession"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@xml/gx_ripple_light"
android:clickable="true"
android:contentDescription="@string/GENERAL_TODO"
android:focusable="true"
android:longClickable="true"
android:translationZ="10dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/cardView"
app:layout_constraintHorizontal_weight="1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<LinearLayout <LinearLayout
android:id="@+id/linearLayout" android:id="@+id/linearLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_marginStart="40dp" android:layout_marginStart="41dp"
android:layout_marginTop="4dp" android:layout_marginTop="2dp"
android:layout_marginEnd="30dp"
android:layout_weight="6" android:layout_weight="6"
android:layout_marginEnd="25dp"
android:background="@color/c_background"
android:clickable="false" android:clickable="false"
android:focusable="false" android:focusable="false"
android:orientation="vertical" android:orientation="vertical"
android:paddingEnd="8dp" android:paddingEnd="0dp"
android:visibility="visible" android:visibility="visible"
app:layout_constraintEnd_toStartOf="@+id/pOrbotRowRemove" app:layout_constraintEnd_toStartOf="@+id/pOrbotRowRemove"
app:layout_constraintStart_toEndOf="@+id/cardView" app:layout_constraintStart_toEndOf="@+id/cardView"
@ -131,7 +211,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="0dp" android:layout_marginStart="0dp"
android:layout_marginLeft="25dp" android:layout_marginLeft="5dp"
android:layout_marginTop="0dp" android:layout_marginTop="0dp"
android:clickable="false" android:clickable="false"
android:ellipsize="end" android:ellipsize="end"
@ -140,7 +220,8 @@
android:singleLine="true" android:singleLine="true"
android:text="@string/SETTING_ACCESSIBILITY_FONT_CUSTOM_SAMPLE" android:text="@string/SETTING_ACCESSIBILITY_FONT_CUSTOM_SAMPLE"
android:textColor="@color/c_text_v1" android:textColor="@color/c_text_v1"
android:textSize="13sp" /> android:textSize="12sp"
android:textStyle="bold" />
<TextView <TextView
android:id="@+id/pOrbotRowHeader" android:id="@+id/pOrbotRowHeader"
@ -163,7 +244,7 @@
android:clickable="false" android:clickable="false"
android:focusable="false" android:focusable="false"
android:orientation="horizontal" android:orientation="horizontal"
android:paddingEnd="8dp" android:paddingEnd="0dp"
android:visibility="gone" android:visibility="gone"
tools:ignore="NestedWeights,RtlSymmetry" tools:ignore="NestedWeights,RtlSymmetry"
tools:layout_editor_absoluteX="114dp"> tools:layout_editor_absoluteX="114dp">
@ -199,59 +280,6 @@
</LinearLayout> </LinearLayout>
<View
android:id="@+id/view7"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="38dp"
android:background="@color/c_orbot_setting_divider"
app:layout_constraintTop_toBottomOf="@+id/linearLayout" />
<ImageView
android:id="@+id/pBorder"
android:layout_width="match_parent"
android:layout_height="8dp"
android:background="@color/c_topbar_divider"
android:contentDescription="@string/GENERAL_TODO"
android:layout_gravity="bottom"
android:visibility="visible" />
<ImageButton
android:id="@+id/pOrbotRowRemove"
android:layout_width="39dp"
android:layout_height="39dp"
android:background="@xml/tx_ripple_light"
android:contentDescription="@string/GENERAL_TODO"
android:elevation="11dp"
android:longClickable="true"
android:outlineProvider="none"
android:padding="10dp"
android:paddingTop="22dp"
android:paddingBottom="22dp"
android:scaleType="fitCenter"
android:src="@xml/ic_baseline_cross"
android:tint="@color/c_navigation_tint"
android:visibility="visible"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="RtlSymmetry" />
<ImageView
android:id="@+id/pLoadSession"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clickable="true"
android:contentDescription="@string/GENERAL_TODO"
android:focusable="true"
android:longClickable="true"
android:translationZ="10dp"
android:background="@xml/gx_ripple_light"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/cardView"
app:layout_constraintHorizontal_weight="1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>

View File

@ -37,10 +37,10 @@
android:layout_marginStart="15dp" android:layout_marginStart="15dp"
android:layout_marginTop="10dp" android:layout_marginTop="10dp"
android:layout_weight="2" android:layout_weight="2"
app:cardBackgroundColor="@color/c_tab_image_border"
app:cardElevation="0dp"
app:cardCornerRadius="7dp"
android:clipChildren="true" android:clipChildren="true"
app:cardBackgroundColor="@color/c_tab_image_border"
app:cardCornerRadius="7dp"
app:cardElevation="0dp"
app:contentPadding="1.5dp" app:contentPadding="1.5dp"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"> app:layout_constraintTop_toTopOf="parent">
@ -52,12 +52,13 @@
app:cardCornerRadius="6dp" app:cardCornerRadius="6dp"
app:cardElevation="0dp" app:cardElevation="0dp"
app:contentPadding="0dp"> app:contentPadding="0dp">
<com.darkweb.genesissearchengine.libs.views.ThumbnailCrop <com.darkweb.genesissearchengine.libs.views.ThumbnailCrop
android:id="@+id/pWebThumbnail" android:id="@+id/pWebThumbnail"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:adjustViewBounds="true"
android:layout_marginEnd="-2dp" android:layout_marginEnd="-2dp"
android:adjustViewBounds="true"
android:contentDescription="@string/GENERAL_TODO" android:contentDescription="@string/GENERAL_TODO"
android:elevation="10dp" android:elevation="10dp"
android:scaleType="fitCenter" /> android:scaleType="fitCenter" />
@ -75,11 +76,11 @@
<ImageView <ImageView
android:id="@+id/imageView3" android:id="@+id/imageView3"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:alpha="0.7"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:alpha="0.7"
android:contentDescription="@string/GENERAL_TODO" android:contentDescription="@string/GENERAL_TODO"
android:padding="12dp" android:padding="12dp"
android:layout_marginTop="5dp"
android:src="@drawable/tick_recycler_view" /> android:src="@drawable/tick_recycler_view" />
</FrameLayout> </FrameLayout>
@ -201,8 +202,8 @@
android:translationZ="10dp" android:translationZ="10dp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
tools:ignore="RtlSymmetry" app:tint="@color/c_navigation_tint"
app:tint="@color/c_navigation_tint" /> tools:ignore="RtlSymmetry" />
<ImageView <ImageView
android:id="@+id/pBorder" android:id="@+id/pBorder"
@ -220,28 +221,39 @@
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<FrameLayout <FrameLayout
android:visibility="gone"
android:translationZ="100dp"
android:id="@+id/pItemSelectionMenu" android:id="@+id/pItemSelectionMenu"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/c_background" android:background="@color/c_background"
android:layout_height="match_parent"> android:translationZ="100dp"
android:visibility="gone">
<Button <Button
android:id="@+id/pItemSelectionMenuButton" android:id="@+id/pItemSelectionMenuButton"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="50dp" android:layout_height="50dp"
android:layout_marginStart="10dp" android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:layout_marginTop="20dp" android:layout_marginTop="20dp"
android:textSize="14.5sp" android:layout_marginEnd="10dp"
android:textAllCaps="false"
android:background="@xml/hox_rounded_corner_suggestion_settings" android:background="@xml/hox_rounded_corner_suggestion_settings"
android:elevation="7dp" android:elevation="7dp"
android:text="@string/TAB_LIST_SELECT" android:text="@string/TAB_LIST_SELECT"
android:textAllCaps="false"
android:textColor="@color/c_white" android:textColor="@color/c_white"
android:textSize="14.5sp"
android:visibility="visible" /> android:visibility="visible" />
</FrameLayout> </FrameLayout>
<View
android:id="@+id/view7"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginStart="15dp"
android:layout_marginEnd="15dp"
android:background="@color/c_orbot_setting_divider"
app:layout_constraintBottom_toBottomOf="@+id/pTabRowContainer"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -8,7 +8,8 @@
android:clickable="true" android:clickable="true"
android:focusable="true" android:focusable="true"
android:focusableInTouchMode="true" android:focusableInTouchMode="true"
tools:context="com.darkweb.genesissearchengine.appManager.tabManager.tabController"> tools:context="com.darkweb.genesissearchengine.appManager.tabManager.tabController"
tools:ignore="DuplicateClickableBoundsCheck">
<LinearLayout <LinearLayout
android:id="@+id/pHeaderContainer" android:id="@+id/pHeaderContainer"
@ -26,12 +27,12 @@
<LinearLayout <LinearLayout
android:id="@+id/pHeaderContainerTop" android:id="@+id/pHeaderContainerTop"
android:layout_width="match_parent" android:layout_width="match_parent"
android:paddingTop="5dp"
android:layout_height="60dp" android:layout_height="60dp"
android:clickable="true" android:clickable="true"
android:focusable="true" android:focusable="true"
android:orientation="horizontal" android:orientation="horizontal"
android:paddingStart="5dp" android:paddingStart="5dp"
android:paddingTop="5dp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
@ -41,8 +42,8 @@
android:id="@+id/pNewTab" android:id="@+id/pNewTab"
android:layout_width="45dp" android:layout_width="45dp"
android:layout_height="45dp" android:layout_height="45dp"
android:layout_marginStart="0dp"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:layout_marginStart="0dp"
android:background="@xml/gx_ripple_default_round" android:background="@xml/gx_ripple_default_round"
android:contentDescription="@string/GENERAL_TODO" android:contentDescription="@string/GENERAL_TODO"
android:onClick="onMenuTrigger" android:onClick="onMenuTrigger"
@ -53,13 +54,13 @@
android:id="@+id/pSelectionCount" android:id="@+id/pSelectionCount"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="0 Selected"
android:visibility="gone"
android:textSize="18sp"
android:paddingStart="20dp"
android:layout_marginTop="-3dp" android:layout_marginTop="-3dp"
android:paddingStart="20dp"
android:text="0 Selected"
android:textColor="@color/c_navigation_tint" android:textColor="@color/c_navigation_tint"
android:textStyle="bold"/> android:textSize="18sp"
android:textStyle="bold"
android:visibility="gone" />
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
@ -75,7 +76,6 @@
android:layout_width="40dp" android:layout_width="40dp"
android:layout_height="40dp" android:layout_height="40dp"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:visibility="gone"
android:layout_marginTop="-3.5dp" android:layout_marginTop="-3.5dp"
android:layout_marginBottom="0dp" android:layout_marginBottom="0dp"
android:background="@xml/gx_generic_tab_button" android:background="@xml/gx_generic_tab_button"
@ -84,7 +84,8 @@
android:text="@string/HOME_TAB_TEXT" android:text="@string/HOME_TAB_TEXT"
android:textColor="@color/c_text_v1" android:textColor="@color/c_text_v1"
android:textSize="12.5sp" android:textSize="12.5sp"
android:tint="@color/black" /> android:tint="@color/black"
android:visibility="gone" />
<ImageButton <ImageButton
android:id="@+id/pMenuButton" android:id="@+id/pMenuButton"
@ -107,10 +108,10 @@
android:id="@+id/pRemoveSelection" android:id="@+id/pRemoveSelection"
android:layout_width="45dp" android:layout_width="45dp"
android:layout_height="45dp" android:layout_height="45dp"
android:layout_gravity="center_vertical"
android:layout_marginStart="-5dp"
android:layout_marginTop="-3dp" android:layout_marginTop="-3dp"
android:layout_marginEnd="1dp" android:layout_marginEnd="1dp"
android:layout_marginStart="-5dp"
android:layout_gravity="center_vertical"
android:background="@xml/gx_ripple_default_round" android:background="@xml/gx_ripple_default_round"
android:contentDescription="@string/GENERAL_TODO" android:contentDescription="@string/GENERAL_TODO"
android:onClick="onRemoveSelection" android:onClick="onRemoveSelection"
@ -122,12 +123,12 @@
android:id="@+id/pClearSelection" android:id="@+id/pClearSelection"
android:layout_width="45dp" android:layout_width="45dp"
android:layout_height="45dp" android:layout_height="45dp"
android:layout_gravity="center_vertical"
android:layout_marginStart="-10dp"
android:layout_marginTop="-3dp" android:layout_marginTop="-3dp"
android:layout_marginEnd="1dp" android:layout_marginEnd="1dp"
android:layout_marginStart="-10dp"
android:background="@xml/gx_ripple_default_round" android:background="@xml/gx_ripple_default_round"
android:contentDescription="@string/GENERAL_TODO" android:contentDescription="@string/GENERAL_TODO"
android:layout_gravity="center_vertical"
android:onClick="onClearSelection" android:onClick="onClearSelection"
android:src="@xml/ic_refresh" android:src="@xml/ic_refresh"
android:visibility="gone" android:visibility="gone"
@ -181,14 +182,15 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="50dp" android:layout_height="50dp"
android:layout_marginStart="15dp" android:layout_marginStart="15dp"
android:layout_marginEnd="15dp"
android:gravity="center"
android:layout_marginTop="70dp" android:layout_marginTop="70dp"
android:layout_marginEnd="15dp"
android:background="@xml/hx_ripple_default_round_bottom"
android:gravity="center"
android:text="@string/HOME_TAB_EMPTY" android:text="@string/HOME_TAB_EMPTY"
android:textColor="@color/c_text_v2" android:textColor="@color/c_text_v2"
android:textSize="15sp" android:textSize="15sp"
android:alpha="0"
android:textStyle="bold" android:textStyle="bold"
android:background="@xml/hx_ripple_default_round_bottom"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
@ -200,10 +202,10 @@
android:alpha="0" android:alpha="0"
android:background="@color/c_background" android:background="@color/c_background"
android:clickable="true" android:clickable="true"
android:paddingTop="10dp"
android:clipToPadding="false" android:clipToPadding="false"
android:focusable="true" android:focusable="true"
android:onClick="onClearSelection" android:onClick="onClearSelection"
android:paddingTop="0dp"
android:paddingBottom="300dp" android:paddingBottom="300dp"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
@ -215,14 +217,27 @@
</androidx.core.widget.NestedScrollView> </androidx.core.widget.NestedScrollView>
<include
android:id="@+id/pPopupUndo"
layout="@layout/popup_toast_undo"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="59dp"
android:elevation="8dp"
android:alpha="0"
android:visibility="visible"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="parent" />
<ImageView <ImageView
android:id="@+id/pSecureRootBlocker" android:id="@+id/pSecureRootBlocker"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/clear_alpha" android:background="@color/clear_alpha"
android:translationZ="112dp"
android:clickable="true" android:clickable="true"
android:contentDescription="@string/GENERAL_TODO"
android:focusable="true" android:focusable="true"
android:contentDescription="@string/GENERAL_TODO" /> android:translationZ="112dp" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -48,8 +48,12 @@
/* Orbot Setting */ /* Orbot Setting */
<color name="c_orbot_setting_divider">#141414</color> <color name="c_orbot_setting_divider">#141414</color>
/* Tab */
<color name="c_tab_border_v1">#993a5278</color>
/* Customs Colors */ /* Customs Colors */
<color name="c_background_alpha">#60ffffff</color> <color name="c_background_tab">#503a5278</color>
<color name="c_background_text">#90000000</color>
<color name="c_background_keyboard">#091a2a</color> <color name="c_background_keyboard">#091a2a</color>
<color name="c_text_v3">#666666</color> <color name="c_text_v3">#666666</color>
<color name="c_text_v4">#a6a6a6</color> <color name="c_text_v4">#a6a6a6</color>
@ -108,7 +112,7 @@
<color name="c_long_button">#3c3946</color> <color name="c_long_button">#3c3946</color>
<color name="c_splash_buttons">#ffffff</color> <color name="c_splash_buttons">#ffffff</color>
<color name="c_tab">#212d45</color> <color name="c_tab">#212d45</color>
<color name="c_tab_background">#212d45</color> <color name="c_tab_background">#425e8a</color>
<color name="c_tab_border">#425e8a</color> <color name="c_tab_border">#425e8a</color>
<color name="c_tab_image_border">#324467</color> <color name="c_tab_image_border">#324467</color>
<color name="c_list_remove_back">#0f0f0f</color> <color name="c_list_remove_back">#0f0f0f</color>

View File

@ -59,7 +59,12 @@
/* Orbot Setting */ /* Orbot Setting */
<color name="c_orbot_setting_divider">#e6e6e6</color> <color name="c_orbot_setting_divider">#e6e6e6</color>
/* Tab */
<color name="c_tab_border_v1">#993a5278</color>
/* Customs Colors */ /* Customs Colors */
<color name="c_background_tab">#503a5278</color>
<color name="c_background_text">#90000000</color>
<color name="c_background_alpha">#601c1b21</color> <color name="c_background_alpha">#601c1b21</color>
<color name="c_background_keyboard">#999999</color> <color name="c_background_keyboard">#999999</color>
<color name="c_text_v3">#bfbfbf</color> <color name="c_text_v3">#bfbfbf</color>

View File

@ -95,6 +95,7 @@
<string name="SETTING_ADVANCE_STATUS_INFO" translatable="true">Toogle between classic and advance view</string> <string name="SETTING_ADVANCE_STATUS_INFO" translatable="true">Toogle between classic and advance view</string>
<!-- Generic Toast Alerts --> <!-- Generic Toast Alerts -->
<string name="TOAST_ALERT_CICADA" translatable="false">Authorization Failed</string>
<string name="TOAST_ALERT_BOOKMARK_REMOVED" translatable="true">Bookmark removed</string> <string name="TOAST_ALERT_BOOKMARK_REMOVED" translatable="true">Bookmark removed</string>
<string name="TOAST_ALERT_BOOKMARK_UPDATE" translatable="true">Bookmark updated</string> <string name="TOAST_ALERT_BOOKMARK_UPDATE" translatable="true">Bookmark updated</string>
<string name="TOAST_ALERT_CLEARED_INFO" translatable="true">Data cleared successfully</string> <string name="TOAST_ALERT_CLEARED_INFO" translatable="true">Data cleared successfully</string>

View File

@ -1,6 +1,6 @@
/* Version */ /* Version */
project.ext.vname = 'Build | Dark-Origin 1.4.7.9' project.ext.vname = 'Build | Dark-Origin 1.4.8.0'
project.ext.vcode = 245 project.ext.vcode = 250
project.ext.buildType = 'release' project.ext.buildType = 'release'
/* dimension */ /* dimension */