Bug Fixes

Bug Fixes
master
msmannan00 2021-07-07 23:42:42 +05:00
parent 5c1c77a7a4
commit bde9c1ea2c
245 changed files with 2322 additions and 4261 deletions

View File

@ -5,6 +5,7 @@
<inspection_tool class="AndroidLintSuspiciousImport" enabled="false" level="WARNING" enabled_by_default="false" /> <inspection_tool class="AndroidLintSuspiciousImport" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="BooleanMethodIsAlwaysInverted" enabled="false" level="WARNING" enabled_by_default="false" /> <inspection_tool class="BooleanMethodIsAlwaysInverted" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="BusyWait" enabled="false" level="WARNING" enabled_by_default="false" /> <inspection_tool class="BusyWait" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="CodeBlock2Expr" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="CollectionAddAllCanBeReplacedWithConstructor" enabled="false" level="WARNING" enabled_by_default="false" /> <inspection_tool class="CollectionAddAllCanBeReplacedWithConstructor" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="ConstantConditions" enabled="false" level="WARNING" enabled_by_default="false"> <inspection_tool class="ConstantConditions" enabled="false" level="WARNING" enabled_by_default="false">
<option name="SUGGEST_NULLABLE_ANNOTATIONS" value="false" /> <option name="SUGGEST_NULLABLE_ANNOTATIONS" value="false" />

View File

@ -75,12 +75,13 @@ android {
dependencies { dependencies {
/* Android Support Repository dependencies */ /* Android Support Repository dependencies */
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'androidx.appcompat:appcompat:1.3.0'
implementation 'androidx.preference:preference-ktx:1.1.1' implementation 'androidx.preference:preference-ktx:1.1.1'
implementation 'androidx.legacy:legacy-preference-v14:1.0.0' implementation 'androidx.legacy:legacy-preference-v14:1.0.0'
implementation 'androidx.recyclerview:recyclerview:1.2.0' implementation 'androidx.recyclerview:recyclerview:1.2.1'
implementation 'androidx.cardview:cardview:1.0.0' implementation 'androidx.cardview:cardview:1.0.0'
implementation 'androidx.coordinatorlayout:coordinatorlayout:1.1.0' implementation 'androidx.coordinatorlayout:coordinatorlayout:1.1.0'
implementation 'com.android.support:support-core-utils:28.0.0' implementation 'com.android.support:support-core-utils:28.0.0'
@ -89,12 +90,12 @@ dependencies {
implementation 'androidx.constraintlayout:constraintlayout:2.0.4' implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4' implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'androidx.appcompat:appcompat:1.3.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4' implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation 'com.google.android.material:material:1.4.0-alpha02' implementation 'com.google.android.material:material:1.4.0'
implementation 'androidx.preference:preference-ktx:1.1.1' implementation 'androidx.preference:preference-ktx:1.1.1'
implementation 'com.google.android.material:material:1.3.0' implementation 'com.google.android.material:material:1.4.0'
implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'androidx.appcompat:appcompat:1.3.0'
/* Firefox ABI Splits */ /* Firefox ABI Splits */
@ -107,11 +108,13 @@ dependencies {
/*Crashlytics*/ /*Crashlytics*/
implementation 'com.flurry.android:analytics:12.4.0@aar' implementation 'com.flurry.android:analytics:12.13.0@aar'
/* Ads Manager */ /* Ads Manager */
implementation 'com.google.android.gms:play-services-ads:20.1.0' implementation('com.mopub:mopub-sdk:5.17.0@aar') {
transitive = true
}
/* Orbot Service */ /* Orbot Service */
@ -126,13 +129,14 @@ dependencies {
implementation 'com.android.support:design:28.0.0' implementation 'com.android.support:design:28.0.0'
implementation 'com.android.volley:volley:1.2.0' implementation 'com.android.volley:volley:1.2.0'
implementation 'com.github.instacart.truetime-android:library-extension-rx:3.3' implementation 'com.github.instacart.truetime-android:library-extension-rx:3.3'
implementation 'net.zetetic:android-database-sqlcipher:4.4.3@aar' implementation "net.zetetic:android-database-sqlcipher:4.4.3"
implementation "androidx.sqlite:sqlite-ktx:2.1.0"
implementation 'com.github.apl-devs:appintro:v4.2.2' implementation 'com.github.apl-devs:appintro:v4.2.2'
implementation 'androidx.palette:palette:1.0.0' implementation 'androidx.palette:palette-ktx:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4' implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation 'androidx.recyclerview:recyclerview:1.1.0' implementation 'androidx.recyclerview:recyclerview:1.2.1'
implementation 'androidx.coordinatorlayout:coordinatorlayout:1.1.0' implementation 'androidx.coordinatorlayout:coordinatorlayout:1.1.0'
implementation 'com.google.android.material:material:1.2.1' implementation 'com.google.android.material:material:1.4.0'
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
} }

Binary file not shown.

View File

@ -28,7 +28,10 @@
android:theme="@style/AppTheme" android:theme="@style/AppTheme"
android:usesCleartextTraffic="true" android:usesCleartextTraffic="true"
tools:targetApi="n"> tools:targetApi="n">
<activity android:name="com.darkweb.genesissearchengine.appManager.bookmarkManager.BookmarkSettings.bookmarkSettingController"></activity> <activity
android:name="com.darkweb.genesissearchengine.appManager.bookmarkManager.BookmarkSettings.bookmarkSettingController"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode"
android:windowSoftInputMode="adjustPan" />
<receiver android:name="com.widget.Genesis.widgetManager.widgetController"> <receiver android:name="com.widget.Genesis.widgetManager.widgetController">
<intent-filter> <intent-filter>
@ -278,16 +281,11 @@
android:name="android.support.FILE_PROVIDER_PATHS" android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_path" /> android:resource="@xml/file_path" />
</provider> </provider>
<service <service
android:name="org.torproject.android.service.OrbotService" android:name="org.torproject.android.service.OrbotService"
android:enabled="true" android:enabled="true"
android:permission="android.permission.BIND_VPN_SERVICE" android:exported="false"
android:stopWithTask="false"> android:stopWithTask="true" />
<intent-filter>
<action android:name="android.net.VpnService" />
</intent-filter>
</service>
</application> </application>
</manifest> </manifest>

View File

@ -74,7 +74,9 @@ $(window).on('load', function() {
// var mResponseJson = '[{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://wikileaks.org/static/img/wl-logo.png", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"}]'; // var mResponseJson = '[{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://wikileaks.org/static/img/wl-logo.png", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"},{ "mIcon":"https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196", "mHeader":"Experience", "mBody":"Donec id elit non mi porta gravida at eget metus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui"}]';
// setTimeout(mHomepageLoader.onLoadReferenceWebsites, 500); // setTimeout(mHomepageLoader.onLoadReferenceWebsites, 500);
// setTimeout(mHomepageLoader.onLoadReferenceWebsiteContent, 1000, mResponseJson); // setTimeout(mHomepageLoader.onLoadReferenceWebsiteContent, 1000, mResponseJson);
document.getElementById("pBody").classList.toggle('body_fadein'); $(document).ready(function() {
$('body').hide().fadeIn('fast');
});
setTimeout(function (){ setTimeout(function (){
onTriggerScriptHandler(Commands.onLoadReferenceWebsites, null) onTriggerScriptHandler(Commands.onLoadReferenceWebsites, null)

View File

@ -1,8 +1,6 @@
/*Search*/ /*Search*/
body{ body{
opacity: 0; opacity: 1;
transition: opacity 2s;
-webkit-transition: opacity 2s; /* Safari */
} }
.body_fadein { .body_fadein {

View File

@ -2,29 +2,32 @@ package com.darkweb.genesissearchengine.appManager.bookmarkManager.BookmarkSetti
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.content.res.Configuration; import android.content.res.Configuration;
import android.os.Bundle; import android.os.Bundle;
import android.text.Editable; import android.text.Editable;
import android.text.TextWatcher; import android.text.TextWatcher;
import android.view.View; import android.view.View;
import android.widget.EditText; import android.widget.EditText;
import android.widget.ScrollView;
import android.widget.TextView; import android.widget.TextView;
import com.darkweb.genesissearchengine.appManager.activityContextManager; import com.darkweb.genesissearchengine.appManager.activityContextManager;
import com.darkweb.genesissearchengine.appManager.activityThemeManager; import com.darkweb.genesissearchengine.appManager.activityThemeManager;
import com.darkweb.genesissearchengine.constants.keys; import com.darkweb.genesissearchengine.constants.keys;
import com.darkweb.genesissearchengine.constants.status;
import com.darkweb.genesissearchengine.eventObserver; import com.darkweb.genesissearchengine.eventObserver;
import com.darkweb.genesissearchengine.helperManager.helperMethod;
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 org.mozilla.geckoview.GeckoSession;
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 static com.darkweb.genesissearchengine.constants.keys.M_ACTIVITY_RESPONSE;
import static com.darkweb.genesissearchengine.constants.responses.BOOKMARK_SETTING_CONTROLLER_SHOW_DELETE_ALERT;
import static com.darkweb.genesissearchengine.constants.responses.BOOKMARK_SETTING_CONTROLLER_SHOW_SUCCESS_ALERT;
public class bookmarkSettingController extends AppCompatActivity { public class bookmarkSettingController extends AppCompatActivity {
/* Private Variables */ /* Private Variables */
@ -35,10 +38,9 @@ public class bookmarkSettingController extends AppCompatActivity {
/* UI Variables */ /* UI Variables */
private EditText mBookmarName; private EditText mBookmarName;
private EditText mBookmarURL; private TextView mBookmarURL;
private ScrollView mScrollView;
private TextView mBookmarkNameError;
private TextView mBookmarkURLError;
/* Initializations */ /* Initializations */
@ -58,19 +60,20 @@ public class bookmarkSettingController extends AppCompatActivity {
private void initializeViews() { private void initializeViews() {
mBookmarName = findViewById(R.id.pBookmarkName); mBookmarName = findViewById(R.id.pBookmarkName);
mBookmarURL = findViewById(R.id.pBookmarkURL); mBookmarURL = findViewById(R.id.pBookmarkURL);
mBookmarkNameError = findViewById(R.id.pBookmarkNameError); mScrollView = findViewById(R.id.pScrollView);
mBookmarkURLError = findViewById(R.id.pBookmarkURLError);
} }
@SuppressLint("ClickableViewAccessibility")
private void initializeLocalEventHandlers() { private void initializeLocalEventHandlers() {
mBookmarName.addTextChangedListener(new TextWatcher() {
TextWatcher mTextWatcher = new TextWatcher() {
@Override @Override
public void afterTextChanged(Editable s) { public void afterTextChanged(Editable s) {
String mBookmarkName = (String) mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_GET_BOOKMARK_NAME); String mBookmarkName = (String) mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_GET_BOOKMARK_NAME);
String mBookmarkURL = (String) mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_GET_BOOKMARK_URL);
mBookmarkSettingModel.onTrigger(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_VALIDATE_FORM, Arrays.asList(mBookmarkName, mBookmarkURL)); boolean mValidationStatus = (boolean)mBookmarkSettingModel.onTrigger(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_VALIDATE_FORM, Collections.singletonList(mBookmarkName));
mBookmarkSettingModel.onTrigger(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_SET_BOOOKMARK_CHANGED_STATUS, Collections.singletonList(true));
mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_BOOKMARK_NAME_VALIDATION_RESPONSE, Collections.singletonList(mValidationStatus));
} }
@Override @Override
@ -81,20 +84,40 @@ public class bookmarkSettingController extends AppCompatActivity {
public void onTextChanged(CharSequence s, int start,int before, int count) { public void onTextChanged(CharSequence s, int start,int before, int count) {
} }
}; });
mBookmarName.addTextChangedListener(mTextWatcher);
mBookmarURL.addTextChangedListener(mTextWatcher); mBookmarName.setOnFocusChangeListener((v, hasFocus) -> {
if(!hasFocus){
mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_CLEAR_FORM_FOCUS);
}
});
mScrollView.setOnTouchListener((v, event) -> {
mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_CLEAR_FORM_FOCUS);
return false;
});
} }
public void initializeModels(){ private void initializeModels(){
String mBookmarkName = getIntent().getStringExtra(keys.BOOKMARK_SETTING_NAME); String mBookmarkName = getIntent().getStringExtra(keys.BOOKMARK_SETTING_NAME);
String mBookmarkURL = getIntent().getStringExtra(keys.BOOKMARK_SETTING_URL); String mBookmarkURL = getIntent().getStringExtra(keys.BOOKMARK_SETTING_URL);
int mBookmarkID = getIntent().getIntExtra(keys.BOOKMARK_SETTING_ID, -1); int mBookmarkID = getIntent().getIntExtra(keys.BOOKMARK_SETTING_ID, -1);
mBookmarkSettingViewController = new bookmarkSettingViewController(this, new bookmarkSettingViewCallback(), mBookmarName, mBookmarURL, mBookmarkNameError, mBookmarkURLError); mBookmarkSettingViewController = new bookmarkSettingViewController(this, new bookmarkSettingViewCallback(), mBookmarName, mBookmarURL);
mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_INITIALIZE, Arrays.asList(mBookmarkName,mBookmarkURL)); mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_INITIALIZE, Arrays.asList(mBookmarkName,mBookmarkURL));
mBookmarkSettingModel = new bookmarkSettingModel(this, new bookmarkSettingModelCallback(), mBookmarkID); mBookmarkSettingModel = new bookmarkSettingModel(this, new bookmarkSettingModelCallback(), mBookmarkID, mBookmarkURL);
}
private void initCallableResponse(bookmarkSettingEnums.eActivityResponseCommands pResponse){
Intent data = new Intent();
if(pResponse.equals(bookmarkSettingEnums.eActivityResponseCommands.M_OPEN_UPDATE_ALERT)){
data.putExtra(M_ACTIVITY_RESPONSE, BOOKMARK_SETTING_CONTROLLER_SHOW_SUCCESS_ALERT);
}
else if(pResponse.equals(bookmarkSettingEnums.eActivityResponseCommands.M_OPEN_DELETE_ALERT)){
data.putExtra(M_ACTIVITY_RESPONSE, BOOKMARK_SETTING_CONTROLLER_SHOW_DELETE_ALERT);
}
setResult(RESULT_OK,data);
} }
/* Local Override */ /* Local Override */
@ -126,19 +149,39 @@ public class bookmarkSettingController extends AppCompatActivity {
@Override @Override
public void onBackPressed() { public void onBackPressed() {
onClose(null); onCloseTrigger(null);
} }
/* UI Redirection */ /* UI Redirection */
public void onClose(View view){ public void onCloseTrigger(View view){
finish(); finish();
} }
public void onUpdateBookmark(View view) { public void onUITrigger(View view){
if(view.getId()==R.id.pBookmarkUpdate){
mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_CLEAR_FORM);
String mBookmarkName = (String) mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_GET_BOOKMARK_NAME); String mBookmarkName = (String) mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_GET_BOOKMARK_NAME);
String mBookmarkURL = (String) mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_GET_BOOKMARK_URL); boolean mValid = (boolean) mBookmarkSettingModel.onTrigger(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_VALIDATE_FORM, Collections.singletonList(mBookmarkName));
mBookmarkSettingModel.onTrigger(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_UPDATE_BOOKMARK, Arrays.asList(mBookmarkName, mBookmarkURL)); boolean mBookmarkChanged = (boolean) mBookmarkSettingModel.onTrigger(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_GET_UPDATE_STATUS);
if(mValid){
mBookmarkSettingModel.onTrigger(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_UPDATE_BOOKMARK, Collections.singletonList(mBookmarkName));
mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_CLEAR_FORM_FOCUS);
if(mBookmarkChanged){
initCallableResponse(bookmarkSettingEnums.eActivityResponseCommands.M_OPEN_UPDATE_ALERT);
}
}else {
mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_BOOKMARK_NAME_VALIDATION_RESPONSE, Collections.singletonList(false));
}
onCloseTrigger(null);
}
if(view.getId()==R.id.pRemoveBookmark){
initCallableResponse(bookmarkSettingEnums.eActivityResponseCommands.M_OPEN_DELETE_ALERT);
mBookmarkSettingModel.onTrigger(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_DELETE_BOOKMARK);
onCloseTrigger(null);
}
} }
/* UI Callbacks */ /* UI Callbacks */
@ -146,7 +189,7 @@ public class bookmarkSettingController extends AppCompatActivity {
private class bookmarkSettingViewCallback implements eventObserver.eventListener{ private class bookmarkSettingViewCallback implements eventObserver.eventListener{
@Override @Override
public Object invokeObserver(List<Object> data, Object e_type) public Object invokeObserver(List<Object> pData, Object pType)
{ {
return null; return null;
} }
@ -157,18 +200,6 @@ public class bookmarkSettingController extends AppCompatActivity {
@Override @Override
public Object invokeObserver(List<Object> pData, Object pType) public Object invokeObserver(List<Object> pData, Object pType)
{ {
if(pType.equals(bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_BOOKMARK_NAME_VALIDATION_ERROR)){
mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_BOOKMARK_NAME_VALIDATION_ERROR, pData);
}
else if(pType.equals(bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_BOOKMARK_URL_VALIDATION_ERROR)){
mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_BOOKMARK_URL_VALIDATION_ERROR, pData);
}
else if(pType.equals(bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_CLEAR_FORM)){
mBookmarkSettingViewController.onTrigger(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_CLEAR_FORM);
}
else if(pType.equals(bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_CLOSE)){
onClose(null);
}
return null; return null;
} }
} }

View File

@ -3,18 +3,20 @@ package com.darkweb.genesissearchengine.appManager.bookmarkManager.BookmarkSetti
public class bookmarkSettingEnums public class bookmarkSettingEnums
{ {
public enum eBookmarkSettingViewCommands { public enum eBookmarkSettingViewCommands {
M_INITIALIZE, M_GET_BOOKMARK_NAME, M_GET_BOOKMARK_URL, M_BOOKMARK_NAME_VALIDATION_ERROR, M_BOOKMARK_URL_VALIDATION_ERROR, M_CLEAR_FORM M_INITIALIZE, M_GET_BOOKMARK_NAME, M_GET_BOOKMARK_URL, M_BOOKMARK_NAME_VALIDATION_RESPONSE, M_CLEAR_FORM, M_CLEAR_FORM_FOCUS
} }
public enum eBookmarkSettingModelCommands { public enum eBookmarkSettingModelCommands {
M_GET_BOOKMARK_ID, M_UPDATE_BOOKMARK, M_CLOSE, M_VALIDATE_FORM M_UPDATE_BOOKMARK, M_VALIDATE_FORM, M_SET_BOOOKMARK_CHANGED_STATUS, M_GET_UPDATE_STATUS, M_DELETE_BOOKMARK
} }
public enum eBookmarkSettingViewAdapterCommands { public enum eBookmarkSettingViewAdapterCommands {
} }
public enum eBookmarkSettingModelCallbackCommands { public enum eBookmarkSettingModelCallbackCommands {
M_CLEAR_FORM, M_BOOKMARK_NAME_VALIDATION_ERROR, M_BOOKMARK_URL_VALIDATION_ERROR,M_CLOSE
} }
public enum eActivityResponseCommands {
M_OPEN_UPDATE_ALERT, M_OPEN_DELETE_ALERT
}
} }

View File

@ -1,79 +1,90 @@
package com.darkweb.genesissearchengine.appManager.bookmarkManager.BookmarkSettings; package com.darkweb.genesissearchengine.appManager.bookmarkManager.BookmarkSettings;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import com.darkweb.genesissearchengine.appManager.activityContextManager;
import com.darkweb.genesissearchengine.constants.strings; import com.darkweb.genesissearchengine.constants.strings;
import com.darkweb.genesissearchengine.dataManager.dataController; 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.pluginManager.pluginController;
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 static com.darkweb.genesissearchengine.dataManager.dataEnums.eBookmarkCommands.M_DELETE_BOOKMARK_FROM_MENU;
import static com.darkweb.genesissearchengine.constants.strings.BOOKMARK_SETTING_VALIDATION_ERROR_1; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.M_DELETE_BOOKMARK;
import static com.darkweb.genesissearchengine.constants.strings.BOOKMARK_SETTING_VALIDATION_ERROR_2;
class bookmarkSettingModel class bookmarkSettingModel
{ {
/* Local Variables Variables */
private boolean mBookmarkUpdateStatus = false;
private int mBookmarkID;
private String mBookmarkURL;
/* Private Variables */ /* Private Variables */
private AppCompatActivity mContext; private AppCompatActivity mContext;
private eventObserver.eventListener mEvent; private eventObserver.eventListener mEvent;
private int mBookmarkID;
public bookmarkSettingModel(AppCompatActivity pContext, eventObserver.eventListener pEvent, int pBookmarkID){ public bookmarkSettingModel(AppCompatActivity pContext, eventObserver.eventListener pEvent, int pBookmarkID, String pBookmarkURL){
this.mContext = pContext; this.mContext = pContext;
this.mEvent = pEvent; this.mEvent = pEvent;
this.mBookmarkID = pBookmarkID; this.mBookmarkID = pBookmarkID;
this.mBookmarkURL = pBookmarkURL;
} }
/* Helper Methods */ /* Helper Methods */
private int getBookarkID(){ private void onUpdateBookmark(String pBookmarkName){
return mBookmarkID; dataController.getInstance().invokeBookmark(dataEnums.eBookmarkCommands.M_UPDATE_BOOKMARK, Arrays.asList(pBookmarkName, mBookmarkURL, mBookmarkID));
} }
private void onUpdateBookmark(String pBookmarkName, String pBookmarkURL){ private boolean validateForm(String pBookmarkName){
boolean status = validateForm(pBookmarkName, pBookmarkURL);
if(status){
dataController.getInstance().invokeBookmark(dataEnums.eBookmarkCommands.M_UPDATE_BOOKMARK, Arrays.asList(pBookmarkName, pBookmarkURL, mBookmarkID));
mEvent.invokeObserver(null, bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_CLOSE);
}
}
private boolean validateForm(String pBookmarkName, String pBookmarkURL){
mEvent.invokeObserver(null, bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_CLEAR_FORM);
boolean mStatus = true;
if(pBookmarkName.equals(strings.GENERIC_EMPTY_STR)){ if(pBookmarkName.equals(strings.GENERIC_EMPTY_STR)){
mEvent.invokeObserver(Arrays.asList(BOOKMARK_SETTING_VALIDATION_ERROR_1, false), bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_BOOKMARK_NAME_VALIDATION_ERROR); return false;
mStatus = false;
}else { }else {
mEvent.invokeObserver(Arrays.asList(BOOKMARK_SETTING_VALIDATION_ERROR_1, true), bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_BOOKMARK_NAME_VALIDATION_ERROR); return true;
} }
if(pBookmarkURL.equals(strings.GENERIC_EMPTY_STR)){
mEvent.invokeObserver(Arrays.asList(strings.BOOKMARK_SETTING_VALIDATION_ERROR_2, false), bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_BOOKMARK_URL_VALIDATION_ERROR);
mStatus = false;
}else {
mEvent.invokeObserver(Arrays.asList(BOOKMARK_SETTING_VALIDATION_ERROR_2, true), bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_BOOKMARK_URL_VALIDATION_ERROR);
} }
return mStatus; private boolean getBookmarkUpdateStatus(){
return mBookmarkUpdateStatus;
}
private void setBookmarkUpdateStatus(boolean pBookmarkUpdateStatus){
mBookmarkUpdateStatus = pBookmarkUpdateStatus;
}
private void onDeleteBookmark(){
dataController.getInstance().invokeBookmark(M_DELETE_BOOKMARK_FROM_MENU, Collections.singletonList(mBookmarkURL));
} }
/* Event Observer */ /* Event Observer */
public Object onTrigger(bookmarkSettingEnums.eBookmarkSettingModelCommands pCommands, List<Object> pData){ public Object onTrigger(bookmarkSettingEnums.eBookmarkSettingModelCommands pCommands, List<Object> pData){
if(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_GET_BOOKMARK_ID.equals(pCommands)){
return getBookarkID();
}
if(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_UPDATE_BOOKMARK.equals(pCommands)){ if(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_UPDATE_BOOKMARK.equals(pCommands)){
onUpdateBookmark((String) pData.get(0), (String) pData.get(1)); onUpdateBookmark((String) pData.get(0));
} }
if(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_VALIDATE_FORM.equals(pCommands)){ if(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_VALIDATE_FORM.equals(pCommands)){
validateForm((String) pData.get(0), (String) pData.get(1)); return validateForm((String) pData.get(0));
}
if(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_SET_BOOOKMARK_CHANGED_STATUS.equals(pCommands)){
setBookmarkUpdateStatus((boolean)pData.get(0));
}
if(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_DELETE_BOOKMARK.equals(pCommands)){
onDeleteBookmark();
} }
return null; return null;
} }
public Object onTrigger(bookmarkSettingEnums.eBookmarkSettingModelCommands pCommands){
if(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_DELETE_BOOKMARK.equals(pCommands)){
onDeleteBookmark();
}
if(bookmarkSettingEnums.eBookmarkSettingModelCommands.M_GET_UPDATE_STATUS.equals(pCommands)){
return getBookmarkUpdateStatus();
}
return null;
}
} }

View File

@ -2,23 +2,15 @@ package com.darkweb.genesissearchengine.appManager.bookmarkManager.BookmarkSetti
import android.widget.EditText; import android.widget.EditText;
import android.widget.TextView; import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import com.darkweb.genesissearchengine.appManager.settingManager.settingHomeManager.settingHomeEnums;
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.helperManager.sharedUIMethod; import com.darkweb.genesissearchengine.helperManager.sharedUIMethod;
import com.example.myapplication.R; import com.example.myapplication.R;
import org.xmlpull.v1.XmlPullParserException; import org.xmlpull.v1.XmlPullParserException;
import java.io.IOException; import java.io.IOException;
import java.util.List; import java.util.List;
import static com.darkweb.genesissearchengine.appManager.bookmarkManager.BookmarkSettings.bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_BOOKMARK_NAME_VALIDATION_ERROR;
import static com.darkweb.genesissearchengine.appManager.bookmarkManager.BookmarkSettings.bookmarkSettingEnums.eBookmarkSettingModelCallbackCommands.M_BOOKMARK_URL_VALIDATION_ERROR;
class bookmarkSettingViewController class bookmarkSettingViewController
{ {
/* Private Variables */ /* Private Variables */
@ -29,22 +21,17 @@ class bookmarkSettingViewController
/* UI Variables */ /* UI Variables */
private EditText mBookmarName; private EditText mBookmarName;
private EditText mBookmarURL; private TextView mBookmarURL;
private TextView mBookmarkNameError;
private TextView mBookmarkURLError;
/* Initializations */ /* Initializations */
bookmarkSettingViewController(AppCompatActivity pContext, eventObserver.eventListener pEvent,EditText pBookmarName,EditText pBookmarURL, TextView pBookmarkNameError, TextView pBookmarkURLError) bookmarkSettingViewController(AppCompatActivity pContext, eventObserver.eventListener pEvent,EditText pBookmarName,TextView pBookmarURL)
{ {
this.mContext = pContext; this.mContext = pContext;
this.mEvent = pEvent; this.mEvent = pEvent;
this.mBookmarName = pBookmarName; this.mBookmarName = pBookmarName;
this.mBookmarURL = pBookmarURL; this.mBookmarURL = pBookmarURL;
this.mBookmarkNameError = pBookmarkNameError;
this.mBookmarkURLError = pBookmarkURLError;
initPostUI(); initPostUI();
} }
@ -62,46 +49,31 @@ class bookmarkSettingViewController
return mBookmarName.getText().toString(); return mBookmarName.getText().toString();
} }
private String getBookmarkURL(){ private void mBookmarkNameValidationError(bookmarkSettingEnums.eBookmarkSettingViewCommands pCommands, boolean pStatus){
return mBookmarURL.getText().toString();
}
private void mBookmarkNameValidationError(bookmarkSettingEnums.eBookmarkSettingViewCommands pCommands, String pMessage, boolean pStatus){
try { try {
if(pCommands.equals(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_BOOKMARK_NAME_VALIDATION_ERROR)){ if(pCommands.equals(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_BOOKMARK_NAME_VALIDATION_RESPONSE)){
if(!pStatus){ if(!pStatus){
mBookmarName.setBackground(helperMethod.getDrawableXML(mContext, R.xml.gx_generic_input_error)); mBookmarName.setBackground(helperMethod.getDrawableXML(mContext, R.xml.gx_generic_input_error));
mBookmarkNameError.animate().setDuration(150).alpha(1);
mBookmarkNameError.setText(pMessage);
}else { }else {
mBookmarName.setBackground(helperMethod.getDrawableXML(mContext, R.xml.gx_generic_input)); mBookmarName.setBackground(helperMethod.getDrawableXML(mContext, R.xml.bx_input_field));
mBookmarkNameError.animate().setDuration(150).alpha(0);
mBookmarkNameError.setText(pMessage);
} }
} }
if(pCommands.equals(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_BOOKMARK_URL_VALIDATION_ERROR)){ } catch (IOException | XmlPullParserException e) {
if(!pStatus){ e.printStackTrace();
mBookmarURL.setBackground(helperMethod.getDrawableXML(mContext, R.xml.gx_generic_input_error));
mBookmarkURLError.animate().setDuration(150).alpha(1);
mBookmarkURLError.setText(pMessage);
}else {
mBookmarURL.setBackground(helperMethod.getDrawableXML(mContext, R.xml.gx_generic_input));
mBookmarkURLError.animate().setDuration(150).alpha(0);
mBookmarkURLError.setText(pMessage);
}
}
} catch (Exception ignored) {
} }
} }
private void onClearForm(){ private void onClearForm(){
try { try {
mBookmarName.setBackground(helperMethod.getDrawableXML(mContext, R.xml.gx_generic_input)); mBookmarName.setBackground(helperMethod.getDrawableXML(mContext, R.xml.bx_input_field));
mBookmarURL.setBackground(helperMethod.getDrawableXML(mContext, R.xml.gx_generic_input)); } catch (IOException | XmlPullParserException e) {
e.printStackTrace();
} catch (Exception ignored) { }
} }
private void onClearFormFocus(){
mBookmarName.clearFocus();
helperMethod.hideKeyboard(mContext);
} }
/* Event Observer */ /* Event Observer */
@ -110,8 +82,8 @@ class bookmarkSettingViewController
if(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_INITIALIZE.equals(pCommands)){ if(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_INITIALIZE.equals(pCommands)){
initializeBookmark((String)pData.get(0), (String) pData.get(1)); initializeBookmark((String)pData.get(0), (String) pData.get(1));
} }
if(pCommands.equals(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_BOOKMARK_NAME_VALIDATION_ERROR) || pCommands.equals(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_BOOKMARK_URL_VALIDATION_ERROR)){ if(pCommands.equals(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_BOOKMARK_NAME_VALIDATION_RESPONSE)){
mBookmarkNameValidationError(pCommands, (String)pData.get(0), (boolean)pData.get(1)); mBookmarkNameValidationError(pCommands, (boolean)pData.get(0));
} }
return null; return null;
} }
@ -120,12 +92,12 @@ class bookmarkSettingViewController
if(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_GET_BOOKMARK_NAME.equals(pCommands)){ if(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_GET_BOOKMARK_NAME.equals(pCommands)){
return getBookmarkName(); return getBookmarkName();
} }
else if(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_GET_BOOKMARK_URL.equals(pCommands)){
return getBookmarkURL();
}
else if(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_CLEAR_FORM.equals(pCommands)){ else if(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_CLEAR_FORM.equals(pCommands)){
onClearForm(); onClearForm();
} }
else if(bookmarkSettingEnums.eBookmarkSettingViewCommands.M_CLEAR_FORM_FOCUS.equals(pCommands)){
onClearFormFocus();
}
return null; return null;
} }
} }

View File

@ -359,7 +359,7 @@ public class bookmarkAdapter extends RecyclerView.Adapter<bookmarkAdapter.listVi
} }
private void onClose(int pIndex){ private void onClose(int pIndex){
mEvent.invokeObserver(Collections.singletonList(mRealIndex.get(pIndex)),enums.etype.url_clear); //mEvent.invokeObserver(Collections.singletonList(mRealIndex.get(pIndex)),enums.etype.url_clear);
mEvent.invokeObserver(Collections.singletonList(mRealID.get(pIndex)),enums.etype.url_clear_at); mEvent.invokeObserver(Collections.singletonList(mRealID.get(pIndex)),enums.etype.url_clear_at);
mEvent.invokeObserver(Collections.singletonList(mRealID.get(pIndex)),enums.etype.is_empty); mEvent.invokeObserver(Collections.singletonList(mRealID.get(pIndex)),enums.etype.is_empty);
@ -415,6 +415,8 @@ public class bookmarkAdapter extends RecyclerView.Adapter<bookmarkAdapter.listVi
mRowContainer.setVisibility(View.GONE); mRowContainer.setVisibility(View.GONE);
mRowMenu.setVisibility(View.INVISIBLE); mRowMenu.setVisibility(View.INVISIBLE);
mRowMenu.setClickable(false); mRowMenu.setClickable(false);
mBookmarkEdit.setVisibility(View.INVISIBLE);
mBookmarkEdit.setClickable(false);
mWebLogo.setVisibility(View.GONE); mWebLogo.setVisibility(View.GONE);
mLoadingContainer.setVisibility(View.GONE); mLoadingContainer.setVisibility(View.GONE);
} }
@ -424,6 +426,8 @@ public class bookmarkAdapter extends RecyclerView.Adapter<bookmarkAdapter.listVi
mRowContainer.setVisibility(View.GONE); mRowContainer.setVisibility(View.GONE);
mRowMenu.setVisibility(View.INVISIBLE); mRowMenu.setVisibility(View.INVISIBLE);
mRowMenu.setClickable(false); mRowMenu.setClickable(false);
mBookmarkEdit.setVisibility(View.INVISIBLE);
mBookmarkEdit.setClickable(false);
mWebLogo.setVisibility(View.GONE); mWebLogo.setVisibility(View.GONE);
mLoadingContainer.setVisibility(View.VISIBLE); mLoadingContainer.setVisibility(View.VISIBLE);
return; return;
@ -435,9 +439,13 @@ public class bookmarkAdapter extends RecyclerView.Adapter<bookmarkAdapter.listVi
if(mLongSelectedID.size()>0){ if(mLongSelectedID.size()>0){
mRowMenu.setVisibility(View.INVISIBLE); mRowMenu.setVisibility(View.INVISIBLE);
mRowMenu.setClickable(false); mRowMenu.setClickable(false);
mBookmarkEdit.setVisibility(View.INVISIBLE);
mBookmarkEdit.setClickable(false);
}else { }else {
mRowMenu.setVisibility(View.VISIBLE); mRowMenu.setVisibility(View.VISIBLE);
mRowMenu.setClickable(true); mRowMenu.setClickable(true);
mBookmarkEdit.setVisibility(View.VISIBLE);
mBookmarkEdit.setClickable(true);
} }
mWebLogo.setVisibility(View.VISIBLE); mWebLogo.setVisibility(View.VISIBLE);
mHeader.setText(model.getHeader()); mHeader.setText(model.getHeader());
@ -462,12 +470,17 @@ public class bookmarkAdapter extends RecyclerView.Adapter<bookmarkAdapter.listVi
if(mLongSelectedID.size()>0){ if(mLongSelectedID.size()>0){
mRowMenu.setVisibility(View.INVISIBLE); mRowMenu.setVisibility(View.INVISIBLE);
mRowMenu.setClickable(false); mRowMenu.setClickable(false);
mBookmarkEdit.setVisibility(View.INVISIBLE);
mBookmarkEdit.setClickable(false);
mBookmarkEdit.setClickable(false);
}else { }else {
mRowMenu.setVisibility(View.VISIBLE); mRowMenu.setVisibility(View.VISIBLE);
mRowMenu.setClickable(true); mRowMenu.setClickable(true);
mBookmarkEdit.setVisibility(View.VISIBLE);
mBookmarkEdit.setClickable(true);
} }
if(mLongSelectedIndex.contains("https://" + model.getDescription()) && mLongSelectedID.contains(model.getID())){ if(mLongSelectedID.contains(model.getID())){
mPopupWindow = (PopupWindow) mHistroyAdapterView.onTrigger(bookmarkEnums.eBookmarkViewAdapterCommands.M_SELECT_VIEW, Arrays.asList(mRowContainer, mRowMenu, mSelectionImage, true, false)); mPopupWindow = (PopupWindow) mHistroyAdapterView.onTrigger(bookmarkEnums.eBookmarkViewAdapterCommands.M_SELECT_VIEW, Arrays.asList(mRowContainer, mRowMenu, mSelectionImage, true, false));
}else if(mSelectionImage.getAlpha()>0){ }else if(mSelectionImage.getAlpha()>0){
mPopupWindow = (PopupWindow) mHistroyAdapterView.onTrigger(bookmarkEnums.eBookmarkViewAdapterCommands.M_CLEAR_HIGHLIGHT, Arrays.asList(mRowContainer, mRowMenu, mSelectionImage, true, false)); mPopupWindow = (PopupWindow) mHistroyAdapterView.onTrigger(bookmarkEnums.eBookmarkViewAdapterCommands.M_CLEAR_HIGHLIGHT, Arrays.asList(mRowContainer, mRowMenu, mSelectionImage, true, false));

View File

@ -46,8 +46,13 @@ import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import static com.darkweb.genesissearchengine.appManager.bookmarkManager.bookmarkHome.bookmarkEnums.eBookmarkViewCommands.M_VERTIFY_SELECTION_MENU; import static com.darkweb.genesissearchengine.appManager.bookmarkManager.bookmarkHome.bookmarkEnums.eBookmarkViewCommands.M_VERTIFY_SELECTION_MENU;
import static com.darkweb.genesissearchengine.constants.keys.M_ACTIVITY_RESPONSE;
import static com.darkweb.genesissearchengine.constants.responses.BOOKMARK_SETTING_CONTROLLER_SHOW_DELETE_ALERT;
import static com.darkweb.genesissearchengine.constants.responses.BOOKMARK_SETTING_CONTROLLER_SHOW_SUCCESS_ALERT;
import static com.darkweb.genesissearchengine.constants.sql.SQL_CLEAR_BOOKMARK; import static com.darkweb.genesissearchengine.constants.sql.SQL_CLEAR_BOOKMARK;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.M_CLEAR_BOOKMARK; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.M_CLEAR_BOOKMARK;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.M_DELETE_BOOKMARK;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.M_UPDATE_BOOKMARK;
public class bookmarkController extends AppCompatActivity public class bookmarkController extends AppCompatActivity
@ -59,17 +64,20 @@ public class bookmarkController extends AppCompatActivity
private bookmarkAdapter mbookmarkAdapter; private bookmarkAdapter mbookmarkAdapter;
private LinearLayout mHeaderContainer; private LinearLayout mHeaderContainer;
private TextView mTitle; private TextView mTitle;
private bookmarkViewController mbookmarkViewController;
/*Private Views*/ /*Private Views*/
private ImageView mEmptyListNotification; private TextView mEmptyListNotification;
private editTextManager mSearchInput; private editTextManager mSearchInput;
private RecyclerView mRecycleView; private RecyclerView mRecycleView;
private Button mClearButton; private Button mClearButton;
private ImageButton mMenuButton; private ImageButton mMenuButton;
private ImageButton mSearchButton; private ImageButton mSearchButton;
private bookmarkViewController mbookmarkViewController; /*Local Variables*/
private int mResponseRequestCode = 10113;
/*Initializations*/ /*Initializations*/
@ -98,6 +106,7 @@ public class bookmarkController extends AppCompatActivity
public void initializeListModel(){ public void initializeListModel(){
mbookmarkModel = new bookmarkModel(); mbookmarkModel = new bookmarkModel();
activityContextManager.getInstance().setBookmarkController(this);
mHomeController = activityContextManager.getInstance().getHomeController(); mHomeController = activityContextManager.getInstance().getHomeController();
} }
@ -179,7 +188,8 @@ public class bookmarkController extends AppCompatActivity
@Override @Override
protected void onDestroy() { protected void onDestroy() {
activityContextManager.getInstance().setBookmarkController(null); activityContextManager.getInstance().onRemoveStack(this);
activityContextManager.getInstance().setHistoryController(null);
super.onDestroy(); super.onDestroy();
} }
@ -276,6 +286,23 @@ public class bookmarkController extends AppCompatActivity
} }
} }
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
if(requestCode==mResponseRequestCode){
if(data!=null){
if(data.getExtras().getString(M_ACTIVITY_RESPONSE).equals(BOOKMARK_SETTING_CONTROLLER_SHOW_SUCCESS_ALERT)){
pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(this), M_UPDATE_BOOKMARK);
}
else if(data.getExtras().getString(M_ACTIVITY_RESPONSE).equals(BOOKMARK_SETTING_CONTROLLER_SHOW_DELETE_ALERT)){
initializeList();
pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(this), M_DELETE_BOOKMARK);
}
}
}else {
super.onActivityResult(requestCode, resultCode, data);
}
}
/* UI Redirection */ /* UI Redirection */
public void onBackPressed(View view){ public void onBackPressed(View view){
@ -328,11 +355,6 @@ public class bookmarkController extends AppCompatActivity
mRecycleView.setAlpha(0); mRecycleView.setAlpha(0);
} }
public void onOpenBookmarkSetting() {
Intent intent = new Intent(getApplicationContext(), bookmarkSettingController.class);
startActivity(intent);
}
/*Event Observer*/ /*Event Observer*/
public class edittextManagerCallback implements eventObserver.eventListener { public class edittextManagerCallback implements eventObserver.eventListener {
@ -366,7 +388,7 @@ public class bookmarkController extends AppCompatActivity
} }
else if(e_type.equals(enums.etype.url_clear)){ else if(e_type.equals(enums.etype.url_clear)){
mbookmarkModel.onManualClear((int)data.get(0)); dataController.getInstance().invokeBookmark(dataEnums.eBookmarkCommands.M_DELETE_BOOKMARK ,data);
} }
else if(e_type.equals(enums.etype.url_clear_at)){ else if(e_type.equals(enums.etype.url_clear_at)){
dataController.getInstance().invokeBookmark(dataEnums.eBookmarkCommands.M_DELETE_BOOKMARK ,data); dataController.getInstance().invokeBookmark(dataEnums.eBookmarkCommands.M_DELETE_BOOKMARK ,data);
@ -385,7 +407,7 @@ public class bookmarkController extends AppCompatActivity
intent.putExtra(keys.BOOKMARK_SETTING_NAME, (String) data.get(0)); intent.putExtra(keys.BOOKMARK_SETTING_NAME, (String) data.get(0));
intent.putExtra(keys.BOOKMARK_SETTING_URL, (String) data.get(1)); intent.putExtra(keys.BOOKMARK_SETTING_URL, (String) data.get(1));
intent.putExtra(keys.BOOKMARK_SETTING_ID, (int) data.get(2)); intent.putExtra(keys.BOOKMARK_SETTING_ID, (int) data.get(2));
startActivity(intent); startActivityForResult(intent, mResponseRequestCode);
} }
return null; return null;
} }

View File

@ -16,7 +16,6 @@ import android.view.inputmethod.InputMethodManager;
import android.widget.Button; import android.widget.Button;
import android.widget.EditText; import android.widget.EditText;
import android.widget.ImageButton; import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.PopupWindow; import android.widget.PopupWindow;
import android.widget.TextView; import android.widget.TextView;
@ -40,7 +39,7 @@ class bookmarkViewController
{ {
/*Private Variables*/ /*Private Variables*/
private AppCompatActivity mContext; private AppCompatActivity mContext;
private ImageView mEmptyListNotification; private TextView mEmptyListNotification;
private EditText mSearchInput; private EditText mSearchInput;
private RecyclerView mRecycleView; private RecyclerView mRecycleView;
private Button mClearButton; private Button mClearButton;
@ -56,7 +55,7 @@ class bookmarkViewController
/*Initializations*/ /*Initializations*/
bookmarkViewController(ImageView pEmptyListNotification, EditText pSearchInput, RecyclerView pRecycleView, Button pClearButton,AppCompatActivity pContext,ImageButton pMenuButton,ImageButton pSearchButton, LinearLayout pHeaderContainer, TextView pTitle) bookmarkViewController(TextView pEmptyListNotification, EditText pSearchInput, RecyclerView pRecycleView, Button pClearButton,AppCompatActivity pContext,ImageButton pMenuButton,ImageButton pSearchButton, LinearLayout pHeaderContainer, TextView pTitle)
{ {
this.mEmptyListNotification = pEmptyListNotification; this.mEmptyListNotification = pEmptyListNotification;
this.mSearchInput = pSearchInput; this.mSearchInput = pSearchInput;
@ -91,9 +90,9 @@ class bookmarkViewController
private void updateIfListEmpty(int pSize,int pDuration){ private void updateIfListEmpty(int pSize,int pDuration){
if(pSize>0){ if(pSize>0){
mClearButton.setTextColor(ContextCompat.getColor(mContext, R.color.c_text_setting_heading)); mClearButton.setTextColor(ContextCompat.getColor(mContext, R.color.c_text_short_header));
mEmptyListNotification.animate().setDuration(pDuration).alpha(0f); mEmptyListNotification.animate().setDuration(pDuration).alpha(0f);
mClearButton.setText(strings.HISTORY_CLEAR_HISTORY); mClearButton.setText(strings.BOOKMARK_CLEAR_BOOKMARK);
mClearButton.setClickable(true); mClearButton.setClickable(true);
mRecycleView.setVisibility(View.VISIBLE); mRecycleView.setVisibility(View.VISIBLE);
} }
@ -142,7 +141,7 @@ class bookmarkViewController
}else { }else {
if (mSearchInput.getVisibility() != View.VISIBLE) { if (mSearchInput.getVisibility() != View.VISIBLE) {
mClearButton.setClickable(true); mClearButton.setClickable(true);
mClearButton.setTextColor(ContextCompat.getColor(mContext, R.color.c_text_setting_heading)); mClearButton.setTextColor(ContextCompat.getColor(mContext, R.color.c_text_short_header));
} }
mMenuButton.setVisibility(View.GONE); mMenuButton.setVisibility(View.GONE);
mSearchButton.setVisibility(View.VISIBLE); mSearchButton.setVisibility(View.VISIBLE);

View File

@ -60,7 +60,7 @@ public class historyController extends AppCompatActivity
/*Private Views*/ /*Private Views*/
private ImageView mEmptyListNotification; private TextView mEmptyListNotification;
private editTextManager mSearchInput; private editTextManager mSearchInput;
private RecyclerView mRecycleView; private RecyclerView mRecycleView;
private Button mClearButton; private Button mClearButton;

View File

@ -7,7 +7,6 @@ import android.graphics.Canvas;
import android.graphics.Paint; import android.graphics.Paint;
import android.graphics.RectF; import android.graphics.RectF;
import android.os.Build; import android.os.Build;
import android.os.Handler;
import android.view.View; import android.view.View;
import android.view.Window; import android.view.Window;
import android.view.WindowManager; import android.view.WindowManager;
@ -17,7 +16,6 @@ import android.view.inputmethod.InputMethodManager;
import android.widget.Button; import android.widget.Button;
import android.widget.EditText; import android.widget.EditText;
import android.widget.ImageButton; import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.PopupWindow; import android.widget.PopupWindow;
import android.widget.TextView; import android.widget.TextView;
@ -40,7 +38,7 @@ class historyViewController
{ {
/*Private Variables*/ /*Private Variables*/
private AppCompatActivity mContext; private AppCompatActivity mContext;
private ImageView mEmptyListNotification; private TextView mEmptyListNotification;
private EditText mSearchInput; private EditText mSearchInput;
private RecyclerView mRecycleView; private RecyclerView mRecycleView;
private Button mClearButton; private Button mClearButton;
@ -55,7 +53,7 @@ class historyViewController
/*Initializations*/ /*Initializations*/
historyViewController(ImageView pEmptyListNotification, EditText pSearchInput, RecyclerView pRecycleView, Button pClearButton,AppCompatActivity pContext,ImageButton pMenuButton,ImageButton pSearchButton, LinearLayout pHeaderContainer, TextView pTitle) historyViewController(TextView pEmptyListNotification, EditText pSearchInput, RecyclerView pRecycleView, Button pClearButton,AppCompatActivity pContext,ImageButton pMenuButton,ImageButton pSearchButton, LinearLayout pHeaderContainer, TextView pTitle)
{ {
this.mEmptyListNotification = pEmptyListNotification; this.mEmptyListNotification = pEmptyListNotification;
this.mSearchInput = pSearchInput; this.mSearchInput = pSearchInput;
@ -89,7 +87,7 @@ class historyViewController
private void updateIfListEmpty(int pSize,int pDuration){ private void updateIfListEmpty(int pSize,int pDuration){
if(pSize>0){ if(pSize>0){
mClearButton.setTextColor(ContextCompat.getColor(mContext, R.color.c_text_setting_heading)); mClearButton.setTextColor(ContextCompat.getColor(mContext, R.color.c_text_short_header));
mEmptyListNotification.animate().setDuration(pDuration).alpha(0f); mEmptyListNotification.animate().setDuration(pDuration).alpha(0f);
mClearButton.setText(strings.HISTORY_CLEAR_HISTORY); mClearButton.setText(strings.HISTORY_CLEAR_HISTORY);
mClearButton.setClickable(true); mClearButton.setClickable(true);
@ -115,6 +113,7 @@ class historyViewController
mClearButton.getLayoutParams().height = 0; mClearButton.getLayoutParams().height = 0;
mClearButton.requestLayout(); mClearButton.requestLayout();
mRecycleView.setVisibility(View.GONE); mRecycleView.setVisibility(View.GONE);
mClearButton.setVisibility(View.GONE);
} }
} }
@ -139,7 +138,7 @@ class historyViewController
}else { }else {
if (mSearchInput.getVisibility() != View.VISIBLE) { if (mSearchInput.getVisibility() != View.VISIBLE) {
mClearButton.setClickable(true); mClearButton.setClickable(true);
mClearButton.setTextColor(ContextCompat.getColor(mContext, R.color.c_text_setting_heading)); mClearButton.setTextColor(ContextCompat.getColor(mContext, R.color.c_text_short_header));
} }
mMenuButton.setVisibility(View.GONE); mMenuButton.setVisibility(View.GONE);
mSearchButton.setVisibility(View.VISIBLE); mSearchButton.setVisibility(View.VISIBLE);

View File

@ -63,7 +63,9 @@ public class geckoClients
mSession = (geckoSession) geckoView.getSession(); mSession = (geckoSession) geckoView.getSession();
} }
else { else {
if(geckoView.getSession()!=null){
geckoView.releaseSession(); geckoView.releaseSession();
}
mSession = new geckoSession(new geckoViewClientCallback(),mSessionID,context, geckoView); mSession = new geckoSession(new geckoViewClientCallback(),mSessionID,context, geckoView);
mSession.open(mRuntime); mSession.open(mRuntime);
mSession.getSettings().setUseTrackingProtection(status.sStatusDoNotTrack); mSession.getSettings().setUseTrackingProtection(status.sStatusDoNotTrack);

View File

@ -11,6 +11,7 @@ import androidx.core.content.ContextCompat;
import com.darkweb.genesissearchengine.constants.enums; import com.darkweb.genesissearchengine.constants.enums;
import com.darkweb.genesissearchengine.constants.strings; import com.darkweb.genesissearchengine.constants.strings;
import com.darkweb.genesissearchengine.eventObserver; import com.darkweb.genesissearchengine.eventObserver;
import com.darkweb.genesissearchengine.helperManager.helperMethod;
import org.mozilla.geckoview.WebResponse; import org.mozilla.geckoview.WebResponse;
@ -45,17 +46,21 @@ class geckoDownloadManager
return; return;
} }
String mURL = helperMethod.getHost(session.getCurrentURL());
try{ try{
if(mURL.length()>25){
mURL = mURL.substring(0,25);
}
String mFileName = DownloadUtils.guessFileName(response.headers.get("Content-Disposition"),"",response.uri,null); String mFileName = DownloadUtils.guessFileName(response.headers.get("Content-Disposition"),"",response.uri,null);
downloadURL = Uri.parse(response.uri); downloadURL = Uri.parse(response.uri);
downloadFile = mFileName; downloadFile = mFileName;
}catch (Exception ex){ }catch (Exception ex){
ex.printStackTrace(); ex.printStackTrace();
Log.i("sadsad",ex.getMessage());
} }
event.invokeObserver(Arrays.asList(0,session.getSessionID()), enums.etype.progress_update); event.invokeObserver(Arrays.asList(0,session.getSessionID()), enums.etype.progress_update);
event.invokeObserver(Arrays.asList(downloadFile.toString(),session.getSessionID(),downloadURL.toString()), enums.etype.download_file_popup); event.invokeObserver(Arrays.asList(downloadFile,session.getSessionID(),mURL), enums.etype.download_file_popup);
} }
Uri getDownloadURL(){ Uri getDownloadURL(){

View File

@ -696,7 +696,7 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
@UiThread @UiThread
public void onCrash(@NonNull GeckoSession session) { public void onCrash(@NonNull GeckoSession session) {
if(!mClosed && status.sSettingIsAppStarted){ if(!mClosed && status.sSettingIsAppStarted){
if(event!=null){ if(event==null){
return; return;
} }
Object mSessionObject = event.invokeObserver(null, enums.etype.SESSION_ID); Object mSessionObject = event.invokeObserver(null, enums.etype.SESSION_ID);
@ -721,7 +721,7 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
@UiThread @UiThread
public void onKill(@NonNull GeckoSession session) { public void onKill(@NonNull GeckoSession session) {
if(!mClosed && status.sSettingIsAppStarted){ if(!mClosed && status.sSettingIsAppStarted){
if(event!=null){ if(event==null){
return; return;
} }
Object mSessionObject = event.invokeObserver(null, enums.etype.SESSION_ID); Object mSessionObject = event.invokeObserver(null, enums.etype.SESSION_ID);
@ -763,8 +763,8 @@ geckoSession extends GeckoSession implements GeckoSession.MediaDelegate,GeckoSes
title = var4.title; title = var4.title;
} }
if(var4.type!=0 && var4.srcUri!=null){ if(var4.type!=0 && var4.srcUri!=null){
if(1!=1 && var4.linkUri!=null){ if(var4.linkUri!=null){
event.invokeObserver(Arrays.asList(var4.linkUri,mSessionID,var4.srcUri,title, mTheme, mContext.get()), M_LONG_PRESS_WITH_LINK); event.invokeObserver(Arrays.asList(var4.linkUri,mSessionID,var4.srcUri,title, mTheme, var4.altText, mContext.get()), M_LONG_PRESS_WITH_LINK);
} }
else { else {
try{ try{

View File

@ -252,7 +252,6 @@ public class selectionActionDelegate implements ActionMode.Callback,
} }
mSelection.execute(id); mSelection.execute(id);
// Android behavior is to clear selection on copy.
if (ACTION_COPY.equals(id)) { if (ACTION_COPY.equals(id)) {
if (mUseFloatingToolbar) { if (mUseFloatingToolbar) {
clearSelection(); clearSelection();
@ -430,7 +429,8 @@ public class selectionActionDelegate implements ActionMode.Callback,
try{ try{
if (mUseFloatingToolbar) { if (mUseFloatingToolbar) {
if (android.os.Build.VERSION.SDK_INT <= Build.VERSION_CODES.LOLLIPOP_MR1) { String strManufacturer = android.os.Build.MANUFACTURER;
if (android.os.Build.VERSION.SDK_INT <= Build.VERSION_CODES.LOLLIPOP_MR1 || (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.N && android.os.Build.VERSION.SDK_INT <= Build.VERSION_CODES.N_MR1 && strManufacturer.equals("samsung"))) {
mActionMode = mActivity.startActionMode(this); mActionMode = mActivity.startActionMode(this);
}else { }else {
mActionMode = mActivity.startActionMode(new Callback2Wrapper(),ActionMode.TYPE_FLOATING); mActionMode = mActivity.startActionMode(new Callback2Wrapper(),ActionMode.TYPE_FLOATING);

View File

@ -24,6 +24,7 @@ public class editTextManager extends androidx.appcompat.widget.AppCompatAutoCom
mContext = context; mContext = context;
} }
public editTextManager(@NonNull Context context, @Nullable AttributeSet attrs) { public editTextManager(@NonNull Context context, @Nullable AttributeSet attrs) {
super(context, attrs); super(context, attrs);
mContext = context; mContext = context;

View File

@ -44,6 +44,7 @@ import androidx.fragment.app.FragmentContainerView;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import com.darkweb.genesissearchengine.appManager.activityContextManager; import com.darkweb.genesissearchengine.appManager.activityContextManager;
import com.darkweb.genesissearchengine.appManager.bookmarkManager.BookmarkSettings.bookmarkSettingController;
import com.darkweb.genesissearchengine.appManager.bookmarkManager.bookmarkHome.bookmarkController; import com.darkweb.genesissearchengine.appManager.bookmarkManager.bookmarkHome.bookmarkController;
import com.darkweb.genesissearchengine.appManager.historyManager.historyController; import com.darkweb.genesissearchengine.appManager.historyManager.historyController;
import com.darkweb.genesissearchengine.dataManager.models.historyRowModel; import com.darkweb.genesissearchengine.dataManager.models.historyRowModel;
@ -74,7 +75,8 @@ import com.darkweb.genesissearchengine.libs.trueTime.trueTime;
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 com.google.android.gms.ads.AdView; import com.mopub.mobileads.MoPubView;
import org.mozilla.geckoview.ContentBlocking; import org.mozilla.geckoview.ContentBlocking;
import org.mozilla.geckoview.GeckoResult; import org.mozilla.geckoview.GeckoResult;
import org.mozilla.geckoview.GeckoSession; import org.mozilla.geckoview.GeckoSession;
@ -82,7 +84,6 @@ import org.torproject.android.service.OrbotService;
import org.torproject.android.service.util.Prefs; import org.torproject.android.service.util.Prefs;
import org.torproject.android.service.wrapper.LocaleHelper; import org.torproject.android.service.wrapper.LocaleHelper;
import org.torproject.android.service.wrapper.orbotLocalConstants; import org.torproject.android.service.wrapper.orbotLocalConstants;
import java.lang.ref.WeakReference; import java.lang.ref.WeakReference;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.lang.reflect.Method; import java.lang.reflect.Method;
@ -93,6 +94,9 @@ import java.util.List;
import java.util.Locale; import java.util.Locale;
import java.util.Objects; import java.util.Objects;
import java.util.concurrent.Callable; import java.util.concurrent.Callable;
import mozilla.components.support.utils.DownloadUtils;
import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK; import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK;
import static android.content.Intent.FLAG_ACTIVITY_NO_ANIMATION; import static android.content.Intent.FLAG_ACTIVITY_NO_ANIMATION;
import static androidx.appcompat.app.AppCompatDelegate.setDefaultNightMode; import static androidx.appcompat.app.AppCompatDelegate.setDefaultNightMode;
@ -107,7 +111,11 @@ import static com.darkweb.genesissearchengine.constants.enums.etype.M_INITIALIZE
import static com.darkweb.genesissearchengine.constants.enums.etype.M_NEW_LINK_IN_NEW_TAB; import static com.darkweb.genesissearchengine.constants.enums.etype.M_NEW_LINK_IN_NEW_TAB;
import static com.darkweb.genesissearchengine.constants.enums.etype.WAS_SCROLL_CHANGED; import static com.darkweb.genesissearchengine.constants.enums.etype.WAS_SCROLL_CHANGED;
import static com.darkweb.genesissearchengine.constants.enums.etype.open_new_tab; import static com.darkweb.genesissearchengine.constants.enums.etype.open_new_tab;
import static com.darkweb.genesissearchengine.constants.keys.M_ACTIVITY_RESPONSE;
import static com.darkweb.genesissearchengine.constants.responses.BOOKMARK_SETTING_CONTROLLER_SHOW_DELETE_ALERT;
import static com.darkweb.genesissearchengine.constants.responses.BOOKMARK_SETTING_CONTROLLER_SHOW_SUCCESS_ALERT;
import static com.darkweb.genesissearchengine.constants.sql.SQL_CLEAR_HISTORY; import static com.darkweb.genesissearchengine.constants.sql.SQL_CLEAR_HISTORY;
import static com.darkweb.genesissearchengine.dataManager.dataEnums.eBookmarkCommands.M_INTENT_BOOKMARK;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.*; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.*;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.M_RATE_APPLICATION; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManagerCallbacks.M_RATE_APPLICATION;
import static java.lang.Character.isLetter; import static java.lang.Character.isLetter;
@ -132,7 +140,7 @@ public class homeController extends AppCompatActivity implements ComponentCallba
private ImageView mLoadingIcon; private ImageView mLoadingIcon;
private ImageView mBlocker; private ImageView mBlocker;
private TextView mLoadingText; private TextView mLoadingText;
private AdView mBannerAds = null; private MoPubView mBannerAds = null;
private ImageButton mGatewaySplash; private ImageButton mGatewaySplash;
private ImageButton mPanicButton; private ImageButton mPanicButton;
private ImageButton mPanicButtonLandscape; private ImageButton mPanicButtonLandscape;
@ -180,6 +188,8 @@ public class homeController extends AppCompatActivity implements ComponentCallba
private Handler mScrollHandler = null; private Handler mScrollHandler = null;
private Runnable mScrollRunnable = null; private Runnable mScrollRunnable = null;
private int mResponseRequestCode = 10112;
/*-------------------------------------------------------INITIALIZATION-------------------------------------------------------*/ /*-------------------------------------------------------INITIALIZATION-------------------------------------------------------*/
@RequiresApi(api = Build.VERSION_CODES.M) @RequiresApi(api = Build.VERSION_CODES.M)
@ -255,7 +265,10 @@ public class homeController extends AppCompatActivity implements ComponentCallba
} }
public void initAdmob(){ public void initAdmob(){
new Handler().postDelayed(() ->
{
pluginController.getInstance().onAdsInvoke(Collections.singletonList(this), pluginEnums.eAdManager.M_INITIALIZE_BANNER_ADS); pluginController.getInstance().onAdsInvoke(Collections.singletonList(this), pluginEnums.eAdManager.M_INITIALIZE_BANNER_ADS);
}, 10000);
} }
public void onInitBooleans(){ public void onInitBooleans(){
@ -1204,7 +1217,8 @@ public class homeController extends AppCompatActivity implements ComponentCallba
initLocalLanguage(); initLocalLanguage();
helperMethod.hideKeyboard(this); helperMethod.hideKeyboard(this);
mHomeViewController.onOpenMenu(view,mGeckoClient.canGoForward(),!(mProgressBar.getAlpha()<=0 || mProgressBar.getVisibility() == View.INVISIBLE || mGeckoClient.isLoaded()),mGeckoClient.getUserAgent(), mGeckoClient.getSession().getCurrentURL()); boolean mBookmarked = (boolean) dataController.getInstance().invokeBookmark(dataEnums.eBookmarkCommands.M_BOOKMARK_AVAILABLE, Collections.singletonList(mGeckoClient.getSession().getCurrentURL()));
mHomeViewController.onOpenMenu(view,mGeckoClient.canGoForward(),!(mProgressBar.getAlpha()<=0 || mProgressBar.getVisibility() == View.INVISIBLE || mGeckoClient.isLoaded()),mGeckoClient.getUserAgent(), mGeckoClient.getSession().getCurrentURL(), mBookmarked);
view.setClickable(false); view.setClickable(false);
new Handler().postDelayed(() -> new Handler().postDelayed(() ->
@ -1298,21 +1312,11 @@ public class homeController extends AppCompatActivity implements ComponentCallba
handler.postDelayed(() -> mGeckoClient.onRedrawPixel(homeController.this), 300); handler.postDelayed(() -> mGeckoClient.onRedrawPixel(homeController.this), 300);
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) { if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
mHomeViewController.setOrientation(true); mHomeViewController.setOrientation(true);
if(mGeckoClient.getFullScreenStatus()) mHomeViewController.removeBanner();
{
mHomeViewController.onSetBannerAdMargin(false, true);
}
} else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){ } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
mHomeViewController.setOrientation(false); mHomeViewController.setOrientation(false);
if(mGeckoClient.getFullScreenStatus())
{
mHomeViewController.onSetBannerAdMargin(true,(boolean)pluginController.getInstance().onAdsInvoke(null, pluginEnums.eAdManager.M_IS_ADVERT_LOADED));
}
if(mGeckoClient.getSession().wasPreviousErrorPage() || mGeckoClient.getSession().getCurrentURL().equals("about:blank") || mGeckoClient.getSession().getCurrentURL().contains("genesishiddentechnologies.com") || mGeckoClient.getSession().getCurrentURL().startsWith(CONST_GENESIS_URL_CACHED) || mGeckoClient.getSession().getCurrentURL().startsWith(CONST_GENESIS_URL_CACHED_DARK) || mGeckoClient.getSession().getCurrentURL().startsWith(CONST_GENESIS_HELP_URL_CACHE) || mGeckoClient.getSession().getCurrentURL().startsWith(CONST_GENESIS_HELP_URL_CACHE_DARK)){ if(mGeckoClient.getSession().wasPreviousErrorPage() || mGeckoClient.getSession().getCurrentURL().equals("about:blank") || mGeckoClient.getSession().getCurrentURL().contains("genesishiddentechnologies.com") || mGeckoClient.getSession().getCurrentURL().startsWith(CONST_GENESIS_URL_CACHED) || mGeckoClient.getSession().getCurrentURL().startsWith(CONST_GENESIS_URL_CACHED_DARK) || mGeckoClient.getSession().getCurrentURL().startsWith(CONST_GENESIS_HELP_URL_CACHE) || mGeckoClient.getSession().getCurrentURL().startsWith(CONST_GENESIS_HELP_URL_CACHE_DARK)){
mHomeViewController.updateBannerAdvertStatus(false, (boolean)pluginController.getInstance().onAdsInvoke(null, pluginEnums.eAdManager.M_IS_ADVERT_LOADED)); mHomeViewController.removeBanner();
}else { }else {
mHomeViewController.updateBannerAdvertStatus(true, (boolean)pluginController.getInstance().onAdsInvoke(null, pluginEnums.eAdManager.M_IS_ADVERT_LOADED)); mHomeViewController.updateBannerAdvertStatus(true, (boolean)pluginController.getInstance().onAdsInvoke(null, pluginEnums.eAdManager.M_IS_ADVERT_LOADED));
} }
@ -1328,11 +1332,10 @@ public class homeController extends AppCompatActivity implements ComponentCallba
mHomeViewController.onUpdateSearchBar(mGeckoClient.getSession().getCurrentURL(),false,true, true); mHomeViewController.onUpdateSearchBar(mGeckoClient.getSession().getCurrentURL(),false,true, true);
//mHomeViewController.initTopBarPadding(); //mHomeViewController.initTopBarPadding();
mHomeViewController.onSetBannerAdMargin(!mGeckoClient.isLoading(),(boolean)pluginController.getInstance().onAdsInvoke(null, pluginEnums.eAdManager.M_IS_ADVERT_LOADED)&&!!mGeckoClient.isLoading()); //mHomeViewController.onSetBannerAdMargin(!mGeckoClient.isLoading(),(boolean)pluginController.getInstance().onAdsInvoke(null, pluginEnums.eAdManager.M_IS_ADVERT_LOADED)&&!!mGeckoClient.isLoading());
mHomeViewController.expandTopBar(false, mGeckoView.getMaxY()); mHomeViewController.expandTopBar(false, mGeckoView.getMaxY());
status.sUIInteracted = true; status.sUIInteracted = true;
mHomeViewController.onFullScreen(false);
} }
@Override @Override
@ -1404,7 +1407,7 @@ public class homeController extends AppCompatActivity implements ComponentCallba
if(status.sSettingIsAppStarted){ if(status.sSettingIsAppStarted){
mHomeViewController.onClearSelections(isKeyboardOpened); mHomeViewController.onClearSelections(isKeyboardOpened);
pluginController.getInstance().onMessageManagerInvoke(null, M_RESET); //pluginController.getInstance().onMessageManagerInvoke(null, M_RESET);
} }
if(mAppBar!=null){ if(mAppBar!=null){
@ -1426,7 +1429,7 @@ public class homeController extends AppCompatActivity implements ComponentCallba
pluginController.getInstance().onLanguageInvoke(Collections.singletonList(this), pluginEnums.eLangManager.M_INIT_LOCALE); pluginController.getInstance().onLanguageInvoke(Collections.singletonList(this), pluginEnums.eLangManager.M_INIT_LOCALE);
mHomeViewController.onUpdateSearchEngineBar(false, 0); mHomeViewController.onUpdateSearchEngineBar(false, 0);
mNewTab.setPressed(false); mNewTab.setPressed(false);
pluginController.getInstance().onMessageManagerInvoke(null, M_RESET); //pluginController.getInstance().onMessageManagerInvoke(null, M_RESET);
} }
if(status.sSettingIsAppStarted && !status.mThemeApplying){ if(status.sSettingIsAppStarted && !status.mThemeApplying){
@ -1503,6 +1506,17 @@ public class homeController extends AppCompatActivity implements ComponentCallba
@Override @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){ protected void onActivityResult(int requestCode, int resultCode, Intent data){
if(requestCode==mResponseRequestCode){
if(data!=null){
if(data.getExtras().getString(M_ACTIVITY_RESPONSE).equals(BOOKMARK_SETTING_CONTROLLER_SHOW_SUCCESS_ALERT)){
pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(this), M_UPDATE_BOOKMARK);
}
else if(data.getExtras().getString(M_ACTIVITY_RESPONSE).equals(BOOKMARK_SETTING_CONTROLLER_SHOW_DELETE_ALERT)){
pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(this), M_DELETE_BOOKMARK);
}
}
}
if(requestCode==100){ if(requestCode==100){
if(resultCode == RESULT_OK && null != data){ if(resultCode == RESULT_OK && null != data){
mSearchbar.clearFocus(); mSearchbar.clearFocus();
@ -1522,6 +1536,9 @@ public class homeController extends AppCompatActivity implements ComponentCallba
else { else {
super.onActivityResult(requestCode, resultCode, data); super.onActivityResult(requestCode, resultCode, data);
} }
// pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(activityContextManager.getInstance().getHomeController()), M_UPDATE_BOOKMARK);
} }
public void onSetBannerAdMargin(){ public void onSetBannerAdMargin(){
@ -1580,7 +1597,7 @@ public class homeController extends AppCompatActivity implements ComponentCallba
mGeckoClient.manualDownloadWithName(pURL,pPath,this); mGeckoClient.manualDownloadWithName(pURL,pPath,this);
} }
public AdView getBannerAd() public MoPubView getBannerAd()
{ {
return mBannerAds; return mBannerAds;
} }
@ -1678,7 +1695,8 @@ public class homeController extends AppCompatActivity implements ComponentCallba
} }
} }
else if (menuId == R.id.menuItem25) { else if (menuId == R.id.menuItem25) {
pluginController.getInstance().onMessageManagerInvoke(Arrays.asList(mGeckoClient.getSession().getCurrentURL(), this), M_DOWNLOAD_SINGLE); String mFileName = DownloadUtils.guessFileName(null,"",mGeckoClient.getSession().getCurrentURL(),null);
pluginController.getInstance().onMessageManagerInvoke(Arrays.asList(mFileName, mGeckoClient.getSession().getSessionID(), mGeckoClient.getSession().getCurrentURL(), this), M_DOWNLOAD_SINGLE);
} }
else { else {
mSearchbar.clearFocus(); mSearchbar.clearFocus();
@ -1791,9 +1809,15 @@ public class homeController extends AppCompatActivity implements ComponentCallba
mGeckoClient.onForwardPressed(); mGeckoClient.onForwardPressed();
} }
if (menuId == R.id.menu23) { if (menuId == R.id.menu23) {
if(view.getTag()!=null && view.getTag().equals("mMarked")){
Intent intent = new Intent(getApplicationContext(), bookmarkSettingController.class);
intent = (Intent)dataController.getInstance().invokeBookmark(M_INTENT_BOOKMARK, Arrays.asList(intent, mGeckoClient.getSession().getCurrentURL()));
startActivityForResult(intent, mResponseRequestCode);
}else{
helperMethod.hideKeyboard(this); helperMethod.hideKeyboard(this);
pluginController.getInstance().onMessageManagerInvoke(Arrays.asList(mGeckoClient.getSession().getCurrentURL(), this), M_BOOKMARK); pluginController.getInstance().onMessageManagerInvoke(Arrays.asList(mGeckoClient.getSession().getCurrentURL(), this), M_BOOKMARK);
} }
}
if (menuId == R.id.menu24) { if (menuId == R.id.menu24) {
helperMethod.hideKeyboard(this); helperMethod.hideKeyboard(this);
onHomeButton(view); onHomeButton(view);

View File

@ -27,6 +27,7 @@ import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.view.Window; import android.view.Window;
import android.view.WindowManager; import android.view.WindowManager;
import android.view.animation.AccelerateInterpolator;
import android.view.inputmethod.InputMethodManager; import android.view.inputmethod.InputMethodManager;
import android.widget.*; import android.widget.*;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
@ -45,13 +46,11 @@ import com.darkweb.genesissearchengine.libs.views.ColorAnimator;
import com.darkweb.genesissearchengine.eventObserver; import com.darkweb.genesissearchengine.eventObserver;
import com.darkweb.genesissearchengine.helperManager.helperMethod; import com.darkweb.genesissearchengine.helperManager.helperMethod;
import com.example.myapplication.R; import com.example.myapplication.R;
import com.google.android.gms.ads.AdView;
import com.google.android.material.appbar.AppBarLayout; import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.appbar.CollapsingToolbarLayout; import com.mopub.mobileads.MoPubView;
import org.mozilla.geckoview.GeckoView; import org.mozilla.geckoview.GeckoView;
import org.torproject.android.service.wrapper.orbotLocalConstants; import org.torproject.android.service.wrapper.orbotLocalConstants;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
@ -77,7 +76,7 @@ class homeViewController
private editTextManager mSearchbar; private editTextManager mSearchbar;
private ConstraintLayout mSplashScreen; private ConstraintLayout mSplashScreen;
private TextView mLoadingText; private TextView mLoadingText;
private AdView mBannerAds = null; private com.mopub.mobileads.MoPubView mBannerAds = null;
private Handler mUpdateUIHandler = null; private Handler mUpdateUIHandler = null;
private ImageButton mGatewaySplash; private ImageButton mGatewaySplash;
private LinearLayout mTopBar; private LinearLayout mTopBar;
@ -121,7 +120,7 @@ class homeViewController
private Runnable mTabDialogRunnable = null; private Runnable mTabDialogRunnable = null;
private boolean mIsTopBarExpanded = true; private boolean mIsTopBarExpanded = true;
void initialization(eventObserver.eventListener event, AppCompatActivity context, Button mNewTab, ConstraintLayout webviewContainer, TextView loadingText, ProgressBar progressBar, editTextManager searchbar, ConstraintLayout splashScreen, ImageView loading, AdView banner_ads, ImageButton gateway_splash, LinearLayout top_bar, GeckoView gecko_view, ImageView backsplash, Button connect_button, View pFindBar, EditText pFindText, TextView pFindCount, androidx.constraintlayout.widget.ConstraintLayout pTopLayout, ImageButton pVoiceInput, ImageButton pMenu, androidx.core.widget.NestedScrollView pNestedScroll, ImageView pBlocker, ImageView pBlockerFullSceen, View mSearchEngineBar, TextView pCopyright, RecyclerView pHistListView, com.google.android.material.appbar.AppBarLayout pAppBar, ImageButton pOrbotLogManager, ConstraintLayout pInfoLandscape, ConstraintLayout pInfoPortrait, ProgressBar pProgressBarIndeterminate, FragmentContainerView pTabFragment, LinearLayout pTopBarContainer, ImageView pSearchLock, View pPopupLoadNewTab, ImageView pTopBarHider, ImageView pNewTabBlocker, CoordinatorLayout mCoordinatorLayout, ImageView pImageDivider, ImageButton pPanicButton, ImageView pGenesisLogo,ImageButton pPanicButtonLandscape){ void initialization(eventObserver.eventListener event, AppCompatActivity context, Button mNewTab, ConstraintLayout webviewContainer, TextView loadingText, ProgressBar progressBar, editTextManager searchbar, ConstraintLayout splashScreen, ImageView loading, MoPubView banner_ads, ImageButton gateway_splash, LinearLayout top_bar, GeckoView gecko_view, ImageView backsplash, Button connect_button, View pFindBar, EditText pFindText, TextView pFindCount, androidx.constraintlayout.widget.ConstraintLayout pTopLayout, ImageButton pVoiceInput, ImageButton pMenu, androidx.core.widget.NestedScrollView pNestedScroll, ImageView pBlocker, ImageView pBlockerFullSceen, View mSearchEngineBar, TextView pCopyright, RecyclerView pHistListView, com.google.android.material.appbar.AppBarLayout pAppBar, ImageButton pOrbotLogManager, ConstraintLayout pInfoLandscape, ConstraintLayout pInfoPortrait, ProgressBar pProgressBarIndeterminate, FragmentContainerView pTabFragment, LinearLayout pTopBarContainer, ImageView pSearchLock, View pPopupLoadNewTab, ImageView pTopBarHider, ImageView pNewTabBlocker, CoordinatorLayout mCoordinatorLayout, ImageView pImageDivider, ImageButton pPanicButton, ImageView pGenesisLogo, ImageButton pPanicButtonLandscape){
this.mContext = context; this.mContext = context;
this.mProgressBar = progressBar; this.mProgressBar = progressBar;
this.mSearchbar = searchbar; this.mSearchbar = searchbar;
@ -568,8 +567,8 @@ class homeViewController
initSplashLoading(); initSplashLoading();
}); });
mGatewaySplash.animate().setDuration(350).alpha(0.4f); mGatewaySplash.animate().setDuration(350).alpha(0.4f);
mPanicButtonLandscape.animate().setDuration(170).translationXBy(helperMethod.pxFromDp(55)); mPanicButtonLandscape.animate().setInterpolator(new AccelerateInterpolator()).setDuration(170).translationXBy(helperMethod.pxFromDp(55));
mPanicButton.animate().setDuration(170).translationXBy(helperMethod.pxFromDp(55)); mPanicButton.animate().setDuration(170).setInterpolator(new AccelerateInterpolator()).translationXBy(helperMethod.pxFromDp(55));
} }
private void initSplashScreen(){ private void initSplashScreen(){
@ -776,7 +775,7 @@ class homeViewController
/*-------------------------------------------------------Helper Methods-------------------------------------------------------*/ /*-------------------------------------------------------Helper Methods-------------------------------------------------------*/
void onOpenMenu(View view, boolean canGoForward, boolean isLoading, int userAgent, String mURL){ void onOpenMenu(View view, boolean canGoForward, boolean isLoading, int userAgent, String mURL, boolean pIsBookmarked){
if(popupWindow!=null){ if(popupWindow!=null){
popupWindow.dismiss(); popupWindow.dismiss();
@ -811,6 +810,7 @@ class homeViewController
popupWindow.showAtLocation(parent, Gravity.TOP|Gravity.END,0,0); popupWindow.showAtLocation(parent, Gravity.TOP|Gravity.END,0,0);
} }
ImageButton bookmark = popupView.findViewById(R.id.menu23);
ImageButton back = popupView.findViewById(R.id.menu22); ImageButton back = popupView.findViewById(R.id.menu22);
ImageButton close = popupView.findViewById(R.id.menu20); ImageButton close = popupView.findViewById(R.id.menu20);
ImageButton mRefresh = popupView.findViewById(R.id.menu21); ImageButton mRefresh = popupView.findViewById(R.id.menu21);
@ -818,6 +818,15 @@ class homeViewController
CheckBox desktop = popupView.findViewById(R.id.menu27); CheckBox desktop = popupView.findViewById(R.id.menu27);
LinearLayout newTab = popupView.findViewById(R.id.menu11); LinearLayout newTab = popupView.findViewById(R.id.menu11);
desktop.setChecked(userAgent==USER_AGENT_MODE_DESKTOP); desktop.setChecked(userAgent==USER_AGENT_MODE_DESKTOP);
if(pIsBookmarked){
try {
bookmark .setImageDrawable(helperMethod.getDrawableXML(mContext,R.xml.ic_baseline_bookmark_filled));
bookmark.setColorFilter(ContextCompat.getColor(mContext, R.color.cursor_blue), android.graphics.PorterDuff.Mode.MULTIPLY);
bookmark.setTag("mMarked");
} catch (Exception ex) {
ex.printStackTrace();
}
}
String mExtention = helperMethod.getMimeType(mURL, mContext); String mExtention = helperMethod.getMimeType(mURL, mContext);
if(!mURL.startsWith("data") && !mURL.startsWith("blob") && (mExtention == null || mExtention.equals("application/x-msdos-program") || mExtention.equals("text/html") || mExtention.equals("application/vnd.ms-htmlhelp") || mExtention.equals("application/vnd.sun.xml.writer") || mExtention.equals("application/vnd.sun.xml.writer.global") || mExtention.equals("application/vnd.sun.xml.writer.template") || mExtention.equals("application/xhtml+xml"))){ if(!mURL.startsWith("data") && !mURL.startsWith("blob") && (mExtention == null || mExtention.equals("application/x-msdos-program") || mExtention.equals("text/html") || mExtention.equals("application/vnd.ms-htmlhelp") || mExtention.equals("application/vnd.sun.xml.writer") || mExtention.equals("application/vnd.sun.xml.writer.global") || mExtention.equals("application/vnd.sun.xml.writer.template") || mExtention.equals("application/xhtml+xml"))){
@ -928,13 +937,19 @@ class homeViewController
mBannerAds.setVisibility(View.VISIBLE); mBannerAds.setVisibility(View.VISIBLE);
} }
onSetBannerAdMargin(true,true); onSetBannerAdMargin(true,true);
} /* else if(mBannerAds.getVisibility() != View.VISIBLE){ } else if(mBannerAds.getVisibility() != View.VISIBLE){
if(mBannerAds.getAlpha()==1){ if(mBannerAds.getAlpha()==1){
mBannerAds.animate().cancel(); mBannerAds.animate().cancel();
mBannerAds.animate().alpha(0).withEndAction(() -> mBannerAds.setVisibility(View.GONE)); mBannerAds.animate().alpha(0).withEndAction(() -> mBannerAds.setVisibility(View.GONE));
} }
onSetBannerAdMargin(false,true); onSetBannerAdMargin(false,true);
} */ }
}
void removeBanner(){
mBannerAds.setVisibility(View.GONE);
mWebviewContainer.setPadding(0,0,0,0);
onFullScreen(false);
} }
private Handler searchBarUpdateHandler = new Handler(); private Handler searchBarUpdateHandler = new Handler();
@ -973,7 +988,7 @@ class homeViewController
{ {
if(total==0){ if(total==0){
mFindCount.setText("0/0"); mFindCount.setText("0/0");
mFindCount.setTextColor(ContextCompat.getColor(mContext, R.color.dark_red_soft)); mFindCount.setTextColor(ContextCompat.getColor(mContext, R.color.c_error_text_color));
}else { }else {
mFindCount.setText((total + "/" + index)); mFindCount.setText((total + "/" + index));
mFindCount.setTextColor(ContextCompat.getColor(mContext, R.color.c_text_v6)); mFindCount.setTextColor(ContextCompat.getColor(mContext, R.color.c_text_v6));
@ -1229,6 +1244,7 @@ class homeViewController
public void onFirstPaint(){ public void onFirstPaint(){
onFullScreen(true); onFullScreen(true);
mGeckoView.setForeground(ContextCompat.getDrawable(mContext, R.color.clear_alpha)); mGeckoView.setForeground(ContextCompat.getDrawable(mContext, R.color.clear_alpha));
onResetTabAnimation();
} }
public void onSessionReinit(){ public void onSessionReinit(){
@ -1254,6 +1270,10 @@ class homeViewController
return; return;
} }
if(mSearchbar.getText().toString().equals("genesis.onion")){
return;
}
mProgressBar.setVisibility(View.VISIBLE); mProgressBar.setVisibility(View.VISIBLE);
mProgressBar.setAlpha(1); mProgressBar.setAlpha(1);
mProgressBar.animate().cancel(); mProgressBar.animate().cancel();
@ -1287,6 +1307,10 @@ class homeViewController
mGeckoView.setPivotX(0); mGeckoView.setPivotX(0);
mGeckoView.setPivotY(0); mGeckoView.setPivotY(0);
if(mGeckoView.getAlpha()<1 || mGeckoView.getTranslationX()<0){
return;
}
ObjectAnimator scaleDown = ObjectAnimator.ofPropertyValuesHolder(mGeckoView, ObjectAnimator scaleDown = ObjectAnimator.ofPropertyValuesHolder(mGeckoView,
PropertyValuesHolder.ofFloat("translationX", 0, helperMethod.pxFromDp(-50))); PropertyValuesHolder.ofFloat("translationX", 0, helperMethod.pxFromDp(-50)));
mNewTabBlocker.setVisibility(View.VISIBLE); mNewTabBlocker.setVisibility(View.VISIBLE);
@ -1307,15 +1331,6 @@ class homeViewController
@Override @Override
public void onAnimationEnd(Animator animation, boolean isReverse) { public void onAnimationEnd(Animator animation, boolean isReverse) {
mEvent.invokeObserver(data, e_type); mEvent.invokeObserver(data, e_type);
ObjectAnimator scaleDown = ObjectAnimator.ofPropertyValuesHolder(mGeckoView,
PropertyValuesHolder.ofFloat("translationX", 0, 0));
scaleDown.setDuration(150);
scaleDown.setStartDelay(0);
mNewTabBlocker.animate().setStartDelay(250).setDuration(150).alpha(0f).withEndAction(() -> {
mNewTabBlocker.setVisibility(View.GONE);
});
scaleDown.start();
} }
@Override @Override
@ -1324,17 +1339,6 @@ class homeViewController
@Override @Override
public void onAnimationEnd(Animator animation) { public void onAnimationEnd(Animator animation) {
mEvent.invokeObserver(data, e_type);
ObjectAnimator scaleDown = ObjectAnimator.ofPropertyValuesHolder(mGeckoView,
PropertyValuesHolder.ofFloat("scaleX", 0.8f, 1f),
PropertyValuesHolder.ofFloat("scaleY", 0.8f, 1f));
scaleDown.setDuration(150);
scaleDown.setStartDelay(0);
mNewTabBlocker.animate().setStartDelay(250).setDuration(150).alpha(0f).withEndAction(() -> {
mNewTabBlocker.setVisibility(View.GONE);
});
scaleDown.start();
} }
@Override @Override
@ -1348,6 +1352,20 @@ class homeViewController
}); });
} }
public void onResetTabAnimation(){
mGeckoView.setPivotX(0);
mGeckoView.setPivotY(0);
ObjectAnimator scaleDown = ObjectAnimator.ofPropertyValuesHolder(mGeckoView, PropertyValuesHolder.ofFloat("translationX", 0, helperMethod.pxFromDp(0)));
scaleDown.setDuration(0);
scaleDown.setStartDelay(0);
mNewTabBlocker.animate().setStartDelay(250).setDuration(250).alpha(0f).withEndAction(() -> {
mNewTabBlocker.setVisibility(View.GONE);
});
scaleDown.start();
}
void onClearSelections(boolean hideKeyboard){ void onClearSelections(boolean hideKeyboard){
mSearchbar.setFocusable(false); mSearchbar.setFocusable(false);
mSearchbar.setFocusableInTouchMode(true); mSearchbar.setFocusableInTouchMode(true);

View File

@ -105,28 +105,34 @@ public class settingClearController extends AppCompatActivity {
public void onClearData(View view){ public void onClearData(View view){
boolean mHomeInvoked = false; boolean mHomeInvoked = false;
boolean mClearInvoked = false;
if(mCheckBoxList.get(0).isChecked()){ if(mCheckBoxList.get(0).isChecked()){
mCheckBoxList.get(0).setChecked(false); mCheckBoxList.get(0).setChecked(false);
mCheckBoxList.get(0).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default))); mCheckBoxList.get(0).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default)));
dataController.getInstance().invokeTab(dataEnums.eTabCommands.M_CLEAR_TAB, null); dataController.getInstance().invokeTab(dataEnums.eTabCommands.M_CLEAR_TAB, null);
mHomeInvoked = true; mHomeInvoked = true;
mClearInvoked = true;
} }
if(mCheckBoxList.get(1).isChecked()){ if(mCheckBoxList.get(1).isChecked()){
mCheckBoxList.get(1).setChecked(false); mCheckBoxList.get(1).setChecked(false);
mCheckBoxList.get(1).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default))); mCheckBoxList.get(1).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default)));
dataController.getInstance().invokeSQLCipher(dataEnums.eSqlCipherCommands.M_EXEC_SQL, Arrays.asList(SQL_CLEAR_HISTORY,null)); dataController.getInstance().invokeSQLCipher(dataEnums.eSqlCipherCommands.M_EXEC_SQL, Arrays.asList(SQL_CLEAR_HISTORY,null));
dataController.getInstance().invokeHistory(dataEnums.eHistoryCommands.M_CLEAR_HISTORY ,null); dataController.getInstance().invokeHistory(dataEnums.eHistoryCommands.M_CLEAR_HISTORY ,null);
mClearInvoked = true;
} }
if(mCheckBoxList.get(2).isChecked()){ if(mCheckBoxList.get(2).isChecked()){
mCheckBoxList.get(2).setChecked(false); mCheckBoxList.get(2).setChecked(false);
mCheckBoxList.get(2).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default))); mCheckBoxList.get(2).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default)));
dataController.getInstance().invokeSQLCipher(dataEnums.eSqlCipherCommands.M_EXEC_SQL, Arrays.asList(SQL_CLEAR_BOOKMARK,null)); dataController.getInstance().invokeSQLCipher(dataEnums.eSqlCipherCommands.M_EXEC_SQL, Arrays.asList(SQL_CLEAR_BOOKMARK,null));
dataController.getInstance().invokeBookmark(dataEnums.eBookmarkCommands.M_CLEAR_BOOKMARK ,null); dataController.getInstance().invokeBookmark(dataEnums.eBookmarkCommands.M_CLEAR_BOOKMARK ,null);
mClearInvoked = true;
} }
if(mCheckBoxList.get(3).isChecked()){ if(mCheckBoxList.get(3).isChecked()){
mCheckBoxList.get(3).setChecked(false); mCheckBoxList.get(3).setChecked(false);
mCheckBoxList.get(3).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default))); mCheckBoxList.get(3).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default)));
activityContextManager.getInstance().getHomeController().onClearCache(); activityContextManager.getInstance().getHomeController().onClearCache();
mClearInvoked = true;
} }
if(mCheckBoxList.get(4).isChecked()){ if(mCheckBoxList.get(4).isChecked()){
mCheckBoxList.get(4).setChecked(false); mCheckBoxList.get(4).setChecked(false);
@ -134,6 +140,7 @@ public class settingClearController extends AppCompatActivity {
mCheckBoxList.get(4).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default))); mCheckBoxList.get(4).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default)));
activityContextManager.getInstance().getHomeController().onClearSiteData(); activityContextManager.getInstance().getHomeController().onClearSiteData();
mHomeInvoked = true; mHomeInvoked = true;
mClearInvoked = true;
} }
if(mCheckBoxList.get(5).isChecked()){ if(mCheckBoxList.get(5).isChecked()){
dataController.getInstance().invokeTab(dataEnums.eTabCommands.M_CLEAR_TAB, null); dataController.getInstance().invokeTab(dataEnums.eTabCommands.M_CLEAR_TAB, null);
@ -141,11 +148,13 @@ public class settingClearController extends AppCompatActivity {
mCheckBoxList.get(5).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default))); mCheckBoxList.get(5).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default)));
activityContextManager.getInstance().getHomeController().onClearSession(); activityContextManager.getInstance().getHomeController().onClearSession();
mHomeInvoked = true; mHomeInvoked = true;
mClearInvoked = true;
} }
if(mCheckBoxList.get(6).isChecked()){ if(mCheckBoxList.get(6).isChecked()){
mCheckBoxList.get(6).setChecked(false); mCheckBoxList.get(6).setChecked(false);
mCheckBoxList.get(6).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default))); mCheckBoxList.get(6).setButtonTintList(ColorStateList.valueOf(ContextCompat.getColor(this, R.color.c_checkbox_tint_default)));
activityContextManager.getInstance().getHomeController().onClearCookies(); activityContextManager.getInstance().getHomeController().onClearCookies();
mClearInvoked = true;
} }
if(mCheckBoxList.get(7).isChecked()){ if(mCheckBoxList.get(7).isChecked()){
mCheckBoxList.get(7).setChecked(false); mCheckBoxList.get(7).setChecked(false);
@ -154,15 +163,17 @@ public class settingClearController extends AppCompatActivity {
status.initStatus(activityContextManager.getInstance().getHomeController()); status.initStatus(activityContextManager.getInstance().getHomeController());
dataController.getInstance().invokeTab(dataEnums.eTabCommands.M_CLEAR_TAB, null); dataController.getInstance().invokeTab(dataEnums.eTabCommands.M_CLEAR_TAB, null);
mHomeInvoked = true; mHomeInvoked = true;
mClearInvoked = true;
} }
if(mClearInvoked){
activityContextManager.getInstance().getHomeController().initRuntimeSettings(); activityContextManager.getInstance().getHomeController().initRuntimeSettings();
pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(this), M_DATA_CLEARED); pluginController.getInstance().onMessageManagerInvoke(Collections.singletonList(this), M_DATA_CLEARED);
if(mHomeInvoked){ if(mHomeInvoked){
activityContextManager.getInstance().getHomeController().onClearSettings(); activityContextManager.getInstance().getHomeController().onClearSettings();
} }
}
} }

View File

@ -1,8 +1,6 @@
package com.darkweb.genesissearchengine.appManager.tabManager; package com.darkweb.genesissearchengine.appManager.tabManager;
import android.animation.Animator;
import android.animation.ObjectAnimator; import android.animation.ObjectAnimator;
import android.animation.PropertyValuesHolder;
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;
@ -103,46 +101,10 @@ public class tabAdapter extends RecyclerView.Adapter<tabAdapter.listViewHolder>
} }
public void scaleView(View v, tabRowModel mTabRowModel) { public void scaleView(View v, tabRowModel mTabRowModel) {
v.bringToFront();
ObjectAnimator scaleDown = ObjectAnimator.ofPropertyValuesHolder(v,
PropertyValuesHolder.ofFloat("scaleX", 1, 1f),
PropertyValuesHolder.ofFloat("scaleY", 1, 1f));
scaleDown.setDuration(0);
scaleDown.start();
v.setClickable(false);
v.setFocusable(false);
v.setEnabled(false);
mEvent.invokeObserver(Arrays.asList(mTabRowModel.getSession(), false), tabEnums.eTabAdapterCallback.ON_LOAD_TAB); mEvent.invokeObserver(Arrays.asList(mTabRowModel.getSession(), false), tabEnums.eTabAdapterCallback.ON_LOAD_TAB);
onTriggerURL(mTabRowModel); onTriggerURL(mTabRowModel);
scaleDown.addListener(new Animator.AnimatorListener() {
@Override
public void onAnimationStart(Animator animation, boolean isReverse) {
}
@Override
public void onAnimationEnd(Animator animation, boolean isReverse) {
}
@Override
public void onAnimationStart(Animator animation) {
}
@Override
public void onAnimationEnd(Animator animation) {
}
@Override
public void onAnimationCancel(Animator animation) {
}
@Override
public void onAnimationRepeat(Animator animation) {
}
});
} }
@Override @Override
@ -439,7 +401,7 @@ public class tabAdapter extends RecyclerView.Adapter<tabAdapter.listViewHolder>
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.text_color_highlight_v3)); mCardView.setCardBackgroundColor(ContextCompat.getColor(itemView.getContext(), R.color.c_text_color_highlight_v2));
} }
}else { }else {

View File

@ -44,7 +44,6 @@ import java.util.List;
import java.util.Objects; import java.util.Objects;
import static com.darkweb.genesissearchengine.appManager.tabManager.tabEnums.eTabViewCommands.ON_HIDE_UNDO_DIALOG_FORCED; import static com.darkweb.genesissearchengine.appManager.tabManager.tabEnums.eTabViewCommands.ON_HIDE_UNDO_DIALOG_FORCED;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.M_LOAD_NEW_TAB;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.M_RESET; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.M_RESET;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.M_UNDO; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eMessageManager.M_UNDO;
import static org.mozilla.gecko.util.ThreadUtils.runOnUiThread; import static org.mozilla.gecko.util.ThreadUtils.runOnUiThread;
@ -193,7 +192,7 @@ public class tabController extends Fragment
public void initializeViews(){ public void initializeViews(){
mRecycleView = mRootView.findViewById(R.id.pRecycleView); mRecycleView = mRootView.findViewById(R.id.pRecycleView);
mTabs = mRootView.findViewById(R.id.pTabs); mTabs = mRootView.findViewById(R.id.pTabs);
mEmptyView = mRootView.findViewById(R.id.pEmptyView); mEmptyView = mRootView.findViewById(R.id.pURL);
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);
@ -235,7 +234,7 @@ public class tabController extends Fragment
float scrollY = mNestedScrollView.getScrollY(); float scrollY = mNestedScrollView.getScrollY();
minScroll = scrollY; minScroll = scrollY;
int orientation = this.getResources().getConfiguration().orientation; int orientation = mContextManager.getHomeController().getResources().getConfiguration().orientation;
if (orientation == Configuration.ORIENTATION_PORTRAIT) { if (orientation == Configuration.ORIENTATION_PORTRAIT) {
maxScroll = mRecycleView.computeVerticalScrollRange() - mScreenHeight*0.350f + helperMethod.pxFromDp(helperMethod.getNavigationBarSize(getContext()).y); maxScroll = mRecycleView.computeVerticalScrollRange() - mScreenHeight*0.350f + helperMethod.pxFromDp(helperMethod.getNavigationBarSize(getContext()).y);
} else { } else {
@ -512,21 +511,17 @@ public class tabController extends Fragment
if(mSelectionSize >= mListModel.getList().size()){ if(mSelectionSize >= mListModel.getList().size()){
mRecycleView.animate().setDuration(200).alpha(0).withEndAction(() -> { mRecycleView.animate().setDuration(200).alpha(0).withEndAction(() -> {
mTabAdapter.onTrigger(tabEnums.eTabAdapterCommands.M_REMOVE_ALL_SELECTION, null); mTabAdapter.onTrigger(tabEnums.eTabAdapterCommands.M_REMOVE_ALL_SELECTION, null);
//onShowUndoDialog();
onClearSelection(null);
}); });
}else { }else {
mTabAdapter.onTrigger(tabEnums.eTabAdapterCommands.M_REMOVE_ALL_SELECTION, null); mTabAdapter.onTrigger(tabEnums.eTabAdapterCommands.M_REMOVE_ALL_SELECTION, null);
} }
mtabViewController.onTrigger(tabEnums.eTabViewCommands.ON_SHOW_SELECTION_MENU, Arrays.asList(false,0));
mtabViewController.onTrigger(tabEnums.eTabViewCommands.ON_HIDE_SELECTION, null); mtabViewController.onTrigger(tabEnums.eTabViewCommands.ON_HIDE_SELECTION, null);
new Handler().postDelayed(() -> {
activityContextManager.getInstance().getHomeController().onLoadTabFromTabController();
}, 500);
// mTabAdapter.notifyDataSetChanged();
initTabCount(400); initTabCount(400);
onClearSelection(null);
onShowUndoDialog();
} }

View File

@ -2,6 +2,10 @@ package com.darkweb.genesissearchengine.constants;
public class keys public class keys
{ {
/*GENERIC*/
public static final String M_ACTIVITY_RESPONSE = "M_ACTIVITY_RESPONSE";
/*Home page*/ /*Home page*/
public static String HOME_LOW_MEMORY = "LOW_MEMORY"; public static String HOME_LOW_MEMORY = "LOW_MEMORY";

View File

@ -0,0 +1,10 @@
package com.darkweb.genesissearchengine.constants;
public class responses
{
/*Notification Manager Manager*/
public static final String BOOKMARK_SETTING_CONTROLLER_SHOW_SUCCESS_ALERT = "BOOKMARK_SETTING_CONTROLLER_SHOW_SUCCESS_ALERT";
public static final String BOOKMARK_SETTING_CONTROLLER_SHOW_DELETE_ALERT = "BOOKMARK_SETTING_CONTROLLER_SHOW_DELETE_ALERT";
}

View File

@ -66,8 +66,7 @@ public class strings
/*Bookmark Setting Manager*/ /*Bookmark Setting Manager*/
public static final String BOOKMARK_SETTING_VALIDATION_ERROR_1 = "➔ bookmark name empty"; public static final String BOOKMARK_SETTING_VALIDATION_ERROR_2 = "bookmark url empty";
public static final String BOOKMARK_SETTING_VALIDATION_ERROR_2 = "➔ bookmark url empty";
} }

View File

@ -1,11 +1,16 @@
package com.darkweb.genesissearchengine.dataManager; package com.darkweb.genesissearchengine.dataManager;
import android.content.Intent;
import android.util.Log;
import com.darkweb.genesissearchengine.constants.keys;
import com.darkweb.genesissearchengine.dataManager.models.bookmarkRowModel; import com.darkweb.genesissearchengine.dataManager.models.bookmarkRowModel;
import com.darkweb.genesissearchengine.constants.constants; import com.darkweb.genesissearchengine.constants.constants;
import com.darkweb.genesissearchengine.constants.strings; import com.darkweb.genesissearchengine.constants.strings;
import com.darkweb.genesissearchengine.eventObserver; import com.darkweb.genesissearchengine.eventObserver;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.HashMap;
import java.util.List; import java.util.List;
public class bookmarkDataModel { public class bookmarkDataModel {
@ -14,6 +19,7 @@ public class bookmarkDataModel {
private eventObserver.eventListener mExternalEvents; private eventObserver.eventListener mExternalEvents;
private ArrayList<bookmarkRowModel> mBookmarks; private ArrayList<bookmarkRowModel> mBookmarks;
private HashMap<String, Integer> mAvailableBookmark = new HashMap<>();
/* Initializations */ /* Initializations */
@ -24,6 +30,13 @@ public class bookmarkDataModel {
void initializebookmark(ArrayList<bookmarkRowModel> pBookmark){ void initializebookmark(ArrayList<bookmarkRowModel> pBookmark){
mBookmarks = pBookmark; mBookmarks = pBookmark;
for(int mCounter=0; mCounter<pBookmark.size();mCounter++){
if(mAvailableBookmark.containsKey(pBookmark.get(mCounter).getDescription())){
deleteBookmark(pBookmark.get(mCounter).getID());
}else {
mAvailableBookmark.put(pBookmark.get(mCounter).getDescription(), pBookmark.get(mCounter).getID());
}
}
} }
/* Helper Methods */ /* Helper Methods */
@ -62,10 +75,12 @@ public class bookmarkDataModel {
mExternalEvents.invokeObserver(Arrays.asList("REPLACE INTO bookmark(id,title,url) VALUES("+autoval+",?,?);",params), dataEnums.eBookmarkCallbackCommands.M_EXEC_SQL); mExternalEvents.invokeObserver(Arrays.asList("REPLACE INTO bookmark(id,title,url) VALUES("+autoval+",?,?);",params), dataEnums.eBookmarkCallbackCommands.M_EXEC_SQL);
} }
mBookmarks.add(0,new bookmarkRowModel(pTitle, pURL,autoval)); mBookmarks.add(0,new bookmarkRowModel(pTitle, pURL,autoval));
mAvailableBookmark.put(pURL, autoval);
} }
void clearBookmark(){ void clearBookmark(){
mBookmarks.clear(); mBookmarks.clear();
mAvailableBookmark.clear();
} }
void updateBookmark(String pBookmarkName, String pBookmarkURL, int pBookmarkID){ void updateBookmark(String pBookmarkName, String pBookmarkURL, int pBookmarkID){
@ -73,6 +88,7 @@ public class bookmarkDataModel {
if(mBookmarks.get(mCounter).getID()==pBookmarkID){ if(mBookmarks.get(mCounter).getID()==pBookmarkID){
mBookmarks.get(mCounter).setHeader(pBookmarkName); mBookmarks.get(mCounter).setHeader(pBookmarkName);
mBookmarks.get(mCounter).setURL(pBookmarkURL); mBookmarks.get(mCounter).setURL(pBookmarkURL);
mAvailableBookmark.put(pBookmarkURL, pBookmarkID);
} }
} }
@ -87,13 +103,33 @@ public class bookmarkDataModel {
void deleteBookmark(int pID) { void deleteBookmark(int pID) {
for(int mCounter=0;mCounter<mBookmarks.size();mCounter++){ for(int mCounter=0;mCounter<mBookmarks.size();mCounter++){
if(mBookmarks.get(mCounter).getID()==pID){ if(mBookmarks.get(mCounter).getID()==pID){
mAvailableBookmark.remove(mBookmarks.get(mCounter).getDescription());
mBookmarks.remove(mCounter); mBookmarks.remove(mCounter);
Log.i("akldsjjkldsa","akldsjjkldsa : " + pID);
} }
} }
mExternalEvents.invokeObserver(Arrays.asList("delete from bookmark where id="+ pID,null), dataEnums.eBookmarkCallbackCommands.M_EXEC_SQL); mExternalEvents.invokeObserver(Arrays.asList("delete from bookmark where id="+ pID,null), dataEnums.eBookmarkCallbackCommands.M_EXEC_SQL);
} }
boolean isURLBookmarked(String pURL){
return mAvailableBookmark.containsKey(pURL);
}
Intent getBookmarkedIntent(Intent intent, String pURL){
for(int mCounter=0; mCounter<mBookmarks.size();mCounter++){
if(mBookmarks.get(mCounter).getID() == mAvailableBookmark.get(pURL)){
bookmarkRowModel mBookmarkRowModel = mBookmarks.get(mCounter);
intent.putExtra(keys.BOOKMARK_SETTING_NAME, mBookmarkRowModel.getHeader());
intent.putExtra(keys.BOOKMARK_SETTING_URL, mBookmarkRowModel.getDescription());
intent.putExtra(keys.BOOKMARK_SETTING_ID, mBookmarkRowModel.getID());
return intent;
}
}
return null;
}
/* External Triggers */ /* External Triggers */
public Object onTrigger(dataEnums.eBookmarkCommands pCommands, List<Object> pData){ public Object onTrigger(dataEnums.eBookmarkCommands pCommands, List<Object> pData){
@ -103,6 +139,9 @@ public class bookmarkDataModel {
else if(pCommands == dataEnums.eBookmarkCommands.M_ADD_BOOKMARK){ else if(pCommands == dataEnums.eBookmarkCommands.M_ADD_BOOKMARK){
addBookmark((String)pData.get(0), (String)pData.get(1)); addBookmark((String)pData.get(0), (String)pData.get(1));
} }
else if(pCommands == dataEnums.eBookmarkCommands.M_DELETE_BOOKMARK_FROM_MENU){
deleteBookmark(mAvailableBookmark.get((String)pData.get(0)));
}
else if(pCommands == dataEnums.eBookmarkCommands.M_DELETE_BOOKMARK){ else if(pCommands == dataEnums.eBookmarkCommands.M_DELETE_BOOKMARK){
deleteBookmark((int)pData.get(0)); deleteBookmark((int)pData.get(0));
} }
@ -112,7 +151,12 @@ public class bookmarkDataModel {
else if(pCommands == dataEnums.eBookmarkCommands.M_UPDATE_BOOKMARK){ else if(pCommands == dataEnums.eBookmarkCommands.M_UPDATE_BOOKMARK){
updateBookmark((String) pData.get(0),(String) pData.get(1),(int) pData.get(2)); updateBookmark((String) pData.get(0),(String) pData.get(1),(int) pData.get(2));
} }
else if(pCommands == dataEnums.eBookmarkCommands.M_BOOKMARK_AVAILABLE){
return isURLBookmarked((String) pData.get(0));
}
else if(pCommands == dataEnums.eBookmarkCommands.M_INTENT_BOOKMARK){
return getBookmarkedIntent((Intent) pData.get(0), (String) pData.get(1));
}
return null; return null;
} }

View File

@ -13,7 +13,7 @@ public class dataEnums
} }
public enum eBookmarkCommands { public enum eBookmarkCommands {
M_ADD_BOOKMARK, M_GET_BOOKMARK, M_DELETE_BOOKMARK, M_CLEAR_BOOKMARK, M_UPDATE_BOOKMARK; M_ADD_BOOKMARK, M_GET_BOOKMARK, M_DELETE_BOOKMARK, M_DELETE_BOOKMARK_FROM_MENU,M_CLEAR_BOOKMARK, M_UPDATE_BOOKMARK, M_BOOKMARK_AVAILABLE, M_INTENT_BOOKMARK;
} }
public enum eReferenceWebsiteCommands { public enum eReferenceWebsiteCommands {

View File

@ -23,8 +23,10 @@ import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Calendar; import java.util.Calendar;
import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Locale; import java.util.Locale;
import java.util.Set;
import static java.lang.Thread.sleep; import static java.lang.Thread.sleep;
@ -272,17 +274,19 @@ class tabDataModel
Bitmap mBitmap = pBitmapManager.poll(10000); Bitmap mBitmap = pBitmapManager.poll(10000);
ByteArrayOutputStream out = new ByteArrayOutputStream(); ByteArrayOutputStream out = new ByteArrayOutputStream();
mBitmap.compress(Bitmap.CompressFormat.JPEG, 40, out); mBitmap.compress(Bitmap.CompressFormat.JPEG, 35, out);
mTabs.get(finalCounter).decodeByteArraysetmBitmap(mBitmap);
Bitmap decoded = BitmapFactory.decodeStream(new ByteArrayInputStream(out.toByteArray())); Bitmap decoded = BitmapFactory.decodeStream(new ByteArrayInputStream(out.toByteArray()));
Bitmap emptyBitmap = Bitmap.createBitmap(decoded.getWidth(), decoded.getHeight(), decoded.getConfig()); Bitmap emptyBitmap = Bitmap.createBitmap(decoded.getWidth(), decoded.getHeight(), decoded.getConfig());
if (!decoded.sameAs(emptyBitmap)) { if (!decoded.sameAs(emptyBitmap)) {
if(pImageView!=null){ if(pImageView!=null){
activityContextManager.getInstance().getHomeController().runOnUiThread(() -> pImageView.setImageBitmap(mBitmap)); activityContextManager.getInstance().getHomeController().runOnUiThread(() -> {
pImageView.setImageBitmap(mBitmap);
});
} }
mTabs.get(finalCounter).decodeByteArraysetmBitmap(decoded);
ContentValues mContentValues = new ContentValues(); ContentValues mContentValues = new ContentValues();
mContentValues.put("mThumbnail", out.toByteArray()); mContentValues.put("mThumbnail", out.toByteArray());
mExternalEvents.invokeObserver(Arrays.asList("tab",mContentValues, "mid = ?", new String[]{mTabs.get(finalCounter).getmId()}), dataEnums.eTabCallbackCommands.M_EXEC_SQL_USING_CONTENT); mExternalEvents.invokeObserver(Arrays.asList("tab",mContentValues, "mid = ?", new String[]{mTabs.get(finalCounter).getmId()}), dataEnums.eTabCallbackCommands.M_EXEC_SQL_USING_CONTENT);

View File

@ -1,20 +1,20 @@
package com.darkweb.genesissearchengine.pluginManager.adPluginManager; package com.darkweb.genesissearchengine.pluginManager.adPluginManager;
import android.content.Context;
import android.os.Handler; import android.os.Handler;
import android.util.Log; import android.util.Log;
import android.view.View;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
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.google.android.gms.ads.*; import com.mopub.common.MoPub;
import com.mopub.common.SdkConfiguration;
import com.mopub.common.SdkInitializationListener;
import com.mopub.mobileads.MoPubErrorCode;
import com.mopub.mobileads.MoPubView;
import java.lang.ref.WeakReference; import java.lang.ref.WeakReference;
import java.util.Arrays;
import java.util.List; import java.util.List;
import static com.mopub.common.logging.MoPubLog.LogLevel.INFO;
public class adManager public class adManager
{ {
@ -22,41 +22,45 @@ public class adManager
/*Private Variables */ /*Private Variables */
private eventObserver.eventListener mEvent; private eventObserver.eventListener mEvent;
private WeakReference<AdView> mBannerAds; private WeakReference<MoPubView> mBannerAds;
private boolean mPaidStatus;
private int mRequestCount = 0;
private int mRequestCount = 0;
private boolean mPaidStatus;
private boolean bannerAdsLoading = false; private boolean bannerAdsLoading = false;
private boolean bannerAdsLoaded = false; private boolean bannerAdsLoaded = false;
/*Initializations*/ /*Initializations*/
public adManager(eventObserver.eventListener pEvent, AdView pBannerAds, boolean pPaidStatus) { public adManager(eventObserver.eventListener pEvent, MoPubView pBannerAds, boolean pPaidStatus,Context pContext) {
this.mEvent = pEvent; this.mEvent = pEvent;
this.mPaidStatus = pPaidStatus; this.mPaidStatus = pPaidStatus;
this.mBannerAds = new WeakReference(pBannerAds); this.mBannerAds = new WeakReference(pBannerAds);
initializeBannerAds(pContext);
} }
private void initializeBannerAds(){ private void initializeBannerAds(Context pContext){
if(!mPaidStatus){ if(!mPaidStatus){
AdRequest request = new AdRequest.Builder().build(); final SdkConfiguration.Builder configBuilder = new SdkConfiguration.Builder("c122efbe224f46678800d2f73389d258");
mBannerAds.get().loadAd(request); configBuilder.withLogLevel(INFO);
MoPub.initializeSdk(pContext, configBuilder.build(), initSdkListener());
admobListeners(); admobListeners();
} }
} }
private SdkInitializationListener initSdkListener() {
return () -> {
};
}
/*Local Helper Methods*/ /*Local Helper Methods*/
private void loadAds(AppCompatActivity pAppContext){ private void loadAds(){
if(!mPaidStatus) if(!mPaidStatus)
{ {
if (!bannerAdsLoading) if (!bannerAdsLoading)
{ {
bannerAdsLoading = true; bannerAdsLoading = true;
MobileAds.initialize(pAppContext.getApplicationContext(), initializationStatus -> { }); mBannerAds.get().setAdUnitId("c122efbe224f46678800d2f73389d258");
RequestConfiguration configuration = new RequestConfiguration.Builder().setTestDeviceIds(Arrays.asList("B1CF10D1F74698381CFF7BF9C485085B","D38EB6293679BC1D68FBDAC55A73DBA0")).build(); mBannerAds.get().loadAd();
MobileAds.setRequestConfiguration(configuration);
initializeBannerAds();
} }
} }
} }
@ -69,35 +73,39 @@ public class adManager
private void admobListeners(){ private void admobListeners(){
if(!mPaidStatus){ if(!mPaidStatus){
mBannerAds.get().setAdListener(new AdListener() { mBannerAds.get().setBannerAdListener(new MoPubView.BannerAdListener() {
@Override @Override
public void onAdLoaded() { public void onBannerLoaded(@NonNull MoPubView moPubView) {
bannerAdsLoaded = true; bannerAdsLoaded = true;
} }
@Override @Override
public void onAdOpened() { public void onBannerFailed(MoPubView moPubView, MoPubErrorCode moPubErrorCode) {
}
@Override
public void onAdClicked() {
}
@Override
public void onAdClosed() {
}
@Override
public void onAdFailedToLoad(@NonNull LoadAdError var1) {
new Handler().postDelayed(() -> new Handler().postDelayed(() ->
{ {
if(mRequestCount<2){ if(mRequestCount<10){
mRequestCount+=1; mRequestCount+=1;
initializeBannerAds(); mBannerAds.get().loadAd();
} }
}, 30000); }, 30000);
} }
@Override
public void onBannerClicked(MoPubView moPubView) {
Log.i("asd","asd");
}
@Override
public void onBannerExpanded(MoPubView moPubView) {
Log.i("asd","asd");
}
@Override
public void onBannerCollapsed(MoPubView moPubView) {
Log.i("asd","asd");
}
}); });
} }
} }
@ -107,7 +115,7 @@ public class adManager
public Object onTrigger(List<Object> pData, pluginEnums.eAdManager pEventType) { public Object onTrigger(List<Object> pData, pluginEnums.eAdManager pEventType) {
if(pEventType.equals(pluginEnums.eAdManager.M_INITIALIZE_BANNER_ADS)) if(pEventType.equals(pluginEnums.eAdManager.M_INITIALIZE_BANNER_ADS))
{ {
loadAds((AppCompatActivity)pData.get(0)); loadAds();
} }
else if(pEventType.equals(pluginEnums.eAdManager.M_IS_ADVERT_LOADED)) else if(pEventType.equals(pluginEnums.eAdManager.M_IS_ADVERT_LOADED))
{ {

View File

@ -126,7 +126,6 @@ public class downloadReciever extends AsyncTask<String, Integer, String> {
channel.setLightColor(Color.BLUE); channel.setLightColor(Color.BLUE);
channel.enableVibration(false); channel.enableVibration(false);
mNotifyManager.createNotificationChannel(channel); mNotifyManager.createNotificationChannel(channel);
} }
build.setProgress(100, 0, false); build.setProgress(100, 0, false);
mNotifyManager.notify(mID, build.build()); mNotifyManager.notify(mID, build.build());
@ -205,7 +204,6 @@ public class downloadReciever extends AsyncTask<String, Integer, String> {
mStream.close(); mStream.close();
} catch (Exception ex) { } catch (Exception ex) {
Log.i("FIZZAHFUCK", ex.getMessage());
if(mRequestCode!=200){ if(mRequestCode!=200){
mEvent.invokeObserver(Collections.singletonList(mRequestCode), M_DOWNLOAD_FAILURE); mEvent.invokeObserver(Collections.singletonList(mRequestCode), M_DOWNLOAD_FAILURE);
onCancel(); onCancel();
@ -227,8 +225,6 @@ public class downloadReciever extends AsyncTask<String, Integer, String> {
HttpGet httpget = new HttpGet(urlEncoded); HttpGet httpget = new HttpGet(urlEncoded);
HttpResponse response = httpclient.execute(httpget); HttpResponse response = httpclient.execute(httpget);
StringBuilder sb = new StringBuilder();
sb.append(response.getStatusLine()).append("\n\n");
InputStream mStream = response.getEntity().getContent(); InputStream mStream = response.getEntity().getContent();
@ -334,9 +330,7 @@ public class downloadReciever extends AsyncTask<String, Integer, String> {
contentValues.put(MediaStore.Downloads.DISPLAY_NAME, mFileName); contentValues.put(MediaStore.Downloads.DISPLAY_NAME, mFileName);
contentValues.put(MediaStore.Downloads.SIZE, mDownloadByte); contentValues.put(MediaStore.Downloads.SIZE, mDownloadByte);
contentValues.put(MediaStore.Downloads.MIME_TYPE, helperMethod.getMimeType(uri.toString(), context)); contentValues.put(MediaStore.Downloads.MIME_TYPE, helperMethod.getMimeType(uri.toString(), context));
contentValues.put(MediaStore.Downloads.RELATIVE_PATH, Environment.DIRECTORY_DOWNLOADS + File.separator + mFileName + "_" + helperMethod.createRandomID().substring(0,5));
contentValues.put(MediaStore.Downloads.RELATIVE_PATH, Environment.DIRECTORY_DOWNLOADS + File.separator + "Temp");
ContentResolver database = context.getContentResolver(); ContentResolver database = context.getContentResolver();
database.insert(MediaStore.Downloads.EXTERNAL_CONTENT_URI, contentValues); database.insert(MediaStore.Downloads.EXTERNAL_CONTENT_URI, contentValues);
} else { } else {

View File

@ -14,11 +14,13 @@ import android.view.View;
import android.view.Window; import android.view.Window;
import android.view.WindowManager; import android.view.WindowManager;
import android.widget.EditText; import android.widget.EditText;
import android.widget.ImageView;
import android.widget.RatingBar; import android.widget.RatingBar;
import android.widget.TextView; import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import androidx.constraintlayout.widget.ConstraintLayout; import androidx.constraintlayout.widget.ConstraintLayout;
import com.darkweb.genesissearchengine.constants.constants;
import com.darkweb.genesissearchengine.constants.enums;
import com.darkweb.genesissearchengine.constants.strings; import com.darkweb.genesissearchengine.constants.strings;
import com.darkweb.genesissearchengine.eventObserver; import com.darkweb.genesissearchengine.eventObserver;
import com.darkweb.genesissearchengine.helperManager.helperMethod; import com.darkweb.genesissearchengine.helperManager.helperMethod;
@ -26,7 +28,7 @@ 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 org.mozilla.geckoview.ContentBlocking; import org.mozilla.geckoview.ContentBlocking;
import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
@ -92,52 +94,18 @@ public class messageManager
} }
/*Helper Methods*/ /*Helper Methods*/
private void welcomeMessage()
{
initializeDialog(R.layout.popup_welcome, Gravity.CENTER);
mDialog.findViewById(R.id.pOption1).setOnClickListener(v -> {
mEvent.invokeObserver(Collections.singletonList(constants.CONST_BLACK_MARKET_URL), M_OPEN_LINK_CURRENT_TAB);
mDialog.dismiss();
});
mDialog.findViewById(R.id.pOption2).setOnClickListener(v -> {
mEvent.invokeObserver(Collections.singletonList(constants.CONST_LEAKED_DOCUMENT_URL), M_OPEN_LINK_CURRENT_TAB);
mDialog.dismiss();
});
mDialog.findViewById(R.id.pOption3).setOnClickListener(v -> {
mEvent.invokeObserver(Collections.singletonList(constants.CONST_NEWS_URL), M_OPEN_LINK_CURRENT_TAB);
mDialog.dismiss();
});
mDialog.findViewById(R.id.pOption4).setOnClickListener(v -> {
mEvent.invokeObserver(Collections.singletonList(constants.CONST_SOFTWARE_URL), M_OPEN_LINK_CURRENT_TAB);
mDialog.dismiss();
});
mDialog.findViewById(R.id.pOption5).setOnClickListener(v -> {
mEvent.invokeObserver(Collections.singletonList(constants.CONST_SOFTWARE_FINANCE), M_OPEN_LINK_CURRENT_TAB);
mDialog.dismiss();
});
mDialog.findViewById(R.id.pOption6).setOnClickListener(v -> {
mEvent.invokeObserver(Collections.singletonList(constants.CONST_COMMUNITIES), M_OPEN_LINK_CURRENT_TAB);
mDialog.dismiss();
});
mDialog.findViewById(R.id.pDontShowAgain).setOnClickListener(v -> {
mEvent.invokeObserver(null, M_CANCEL_WELCOME);
mDialog.dismiss();
});
mDialog.setOnDismissListener(dialog -> onClearReference());
}
private void languageSupportFailure() private void languageSupportFailure()
{ {
initializeDialog(R.layout.popup_language_support, Gravity.CENTER); initializeDialog(R.layout.popup_language_support, Gravity.CENTER);
((TextView) mDialog.findViewById(R.id.pLanguage)).setText((mData.get(0).toString())); // ((TextView) mDialog.findViewById(R.id.pLanguage)).setText((mData.get(0).toString()));
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss()); mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss());
mDialog.setOnDismissListener(dialog -> onClearReference()); mDialog.setOnDismissListener(dialog -> onClearReference());
} }
private void rateFailure() private void rateFailure()
{ {
initializeDialog(R.layout.popup_rate_failure, Gravity.CENTER); initializeDialog(R.layout.popup_rate_failure, Gravity.BOTTOM);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss()); mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss());
mDialog.findViewById(R.id.pNext).setOnClickListener(v -> { mDialog.findViewById(R.id.pNext).setOnClickListener(v -> {
mDialog.dismiss(); mDialog.dismiss();
@ -156,13 +124,6 @@ public class messageManager
}); });
} }
private void reportedSuccessfully()
{
initializeDialog(R.layout.popup_reported_successfully, Gravity.BOTTOM);
mDialog.findViewById(R.id.pNext).setOnClickListener(v -> mDialog.dismiss());
mDialog.setOnDismissListener(dialog -> onClearReference());
}
private void newIdentityCreated() private void newIdentityCreated()
{ {
final Handler handler = new Handler(); final Handler handler = new Handler();
@ -267,6 +228,48 @@ public class messageManager
handler.postDelayed(runnable, 1500); handler.postDelayed(runnable, 1500);
} }
private void deleteBookmark()
{
final Handler handler = new Handler();
Runnable runnable = () -> mDialog.dismiss();
initializeDialog(R.layout.popup_remove_bookmark, Gravity.BOTTOM);
mDialog.getWindow().setDimAmount(0.3f);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> {
mEvent.invokeObserver(null, M_UNDO_TAB);
mDialog.dismiss();
handler.removeCallbacks(runnable);
});
mDialog.setOnDismissListener(dialog -> {
handler.removeCallbacks(runnable);
onClearReference();
});
handler.postDelayed(runnable, 1500);
}
private void updateBookmark()
{
final Handler handler = new Handler();
Runnable runnable = () -> mDialog.dismiss();
initializeDialog(R.layout.popup_update_bookmark, Gravity.BOTTOM);
mDialog.getWindow().setDimAmount(0.3f);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> {
mEvent.invokeObserver(null, M_UNDO_TAB);
mDialog.dismiss();
handler.removeCallbacks(runnable);
});
mDialog.setOnDismissListener(dialog -> {
handler.removeCallbacks(runnable);
onClearReference();
});
handler.postDelayed(runnable, 1500);
}
private void maxTabReached() private void maxTabReached()
{ {
final Handler handler = new Handler(); final Handler handler = new Handler();
@ -320,9 +323,10 @@ public class messageManager
Runnable runnable = () -> mDialog.dismiss(); Runnable runnable = () -> mDialog.dismiss();
initializeDialog(R.layout.popup_orbot_connecting, Gravity.BOTTOM); initializeDialog(R.layout.popup_orbot_connecting, Gravity.BOTTOM);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> { mDialog.findViewById(R.id.pNext).setOnClickListener(v -> {
mDialog.dismiss(); mDialog.dismiss();
handler.removeCallbacks(runnable); handler.removeCallbacks(runnable);
mEvent.invokeObserver(null, M_OPEN_LOGS);
}); });
mDialog.setOnDismissListener(dialog -> { mDialog.setOnDismissListener(dialog -> {
@ -330,15 +334,24 @@ public class messageManager
onClearReference(); onClearReference();
}); });
handler.postDelayed(runnable, 3500); handler.postDelayed(runnable, 5000);
} }
private void dataClearedSuccessfully() private void dataClearedSuccessfully()
{ {
final Handler handler = new Handler();
Runnable runnable = () -> mDialog.dismiss();
initializeDialog(R.layout.popup_data_cleared, Gravity.BOTTOM); initializeDialog(R.layout.popup_data_cleared, Gravity.BOTTOM);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss()); mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss());
mDialog.setOnDismissListener(dialog -> onClearReference());
mDialog.setOnDismissListener(dialog -> {
handler.removeCallbacks(runnable);
onClearReference();
});
handler.postDelayed(runnable, 1500);
} }
private void applicationCrashed() private void applicationCrashed()
@ -397,16 +410,23 @@ public class messageManager
}; };
handler.postDelayed(runnable, 50); handler.postDelayed(runnable, 50);
}); });
String pURL = mData.get(0).toString().replace("genesis.onion","genesishiddentechnologies.com");
((TextView)mDialog.findViewById(R.id.pURL)).setText(pURL);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> { mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> {
mDialog.dismiss(); mDialog.dismiss();
helperMethod.hideKeyboard(mContext); helperMethod.hideKeyboard(mContext);
}); });
mDialog.findViewById(R.id.pNext).setOnClickListener(v -> { mDialog.findViewById(R.id.pNext).setOnClickListener(v -> {
mDialog.dismiss(); mDialog.dismiss();
helperMethod.hideKeyboard(mContext); helperMethod.hideKeyboard(mContext);
mEvent.invokeObserver(Collections.singletonList(mData.get(0).toString().replace("genesis.onion","genesishiddentechnologies.com")+"split"+((EditText) mDialog.findViewById(R.id.pBridgeInput)).getText().toString()), M_BOOKMARK); String mBookmarkName = ((EditText)mDialog.findViewById(R.id.pBookmarkNameInput)).getText().toString();
mEvent.invokeObserver(Arrays.asList(pURL, mBookmarkName), M_BOOKMARK);
}); });
} }
private void onUpdateBridges() private void onUpdateBridges()
@ -484,8 +504,7 @@ public class messageManager
private void clearHistory() private void clearHistory()
{ {
initializeDialog(R.layout.popup_clear_history, Gravity.CENTER); initializeDialog(R.layout.popup_clear_history, Gravity.BOTTOM);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss());
mDialog.findViewById(R.id.pNext).setOnClickListener(v -> { mDialog.findViewById(R.id.pNext).setOnClickListener(v -> {
mDialog.dismiss(); mDialog.dismiss();
mEvent.invokeObserver(null, M_CLEAR_HISTORY); mEvent.invokeObserver(null, M_CLEAR_HISTORY);
@ -495,25 +514,10 @@ public class messageManager
private void clearBookmark() private void clearBookmark()
{ {
initializeDialog(R.layout.popup_clear_bookmark, Gravity.CENTER); initializeDialog(R.layout.popup_clear_bookmark, Gravity.BOTTOM);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss());
mDialog.findViewById(R.id.pNext).setOnClickListener(v -> { mDialog.findViewById(R.id.pNext).setOnClickListener(v -> {
mDialog.dismiss();
mEvent.invokeObserver(null, M_CLEAR_BOOKMARK); mEvent.invokeObserver(null, M_CLEAR_BOOKMARK);
});
mDialog.setOnDismissListener(dialog -> onClearReference());
}
private void reportURL()
{
initializeDialog(R.layout.popup_report_url, Gravity.CENTER);
((TextView) mDialog.findViewById(R.id.pHeader)).setText(mData.get(0).toString());
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss());
mDialog.findViewById(R.id.pNext).setOnClickListener(v -> {
mDialog.dismiss(); mDialog.dismiss();
final Handler handler = new Handler();
Runnable runnable = () -> onTrigger(Arrays.asList(strings.GENERIC_EMPTY_STR, mContext),M_RATE_SUCCESS);
handler.postDelayed(runnable, 1000);
}); });
mDialog.setOnDismissListener(dialog -> onClearReference()); mDialog.setOnDismissListener(dialog -> onClearReference());
} }
@ -521,17 +525,22 @@ public class messageManager
private void downloadSingle() private void downloadSingle()
{ {
if(mData.size()>0){ if(mData.size()>0){
initializeDialog(R.layout.popup_download_url, Gravity.CENTER); initializeDialog(R.layout.popup_download_url, Gravity.BOTTOM);
String murl = mData.get(2).toString();
if(!murl.startsWith("http")){
murl = "https://" + murl;
}
((TextView) mDialog.findViewById(R.id.pDescription)).setText(mData.get(0).toString()); ((TextView) mDialog.findViewById(R.id.pDescription)).setText(mData.get(0).toString());
((TextView) mDialog.findViewById(R.id.pDescriptionLong)).setText(murl);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss()); mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss());
mDialog.findViewById(R.id.pNext).setOnClickListener(v -> { mDialog.findViewById(R.id.pNext).setOnClickListener(v -> {
ArrayList<Object> tempData = new ArrayList<>();
if(mData!=null){
tempData.addAll(mData);
}
mDialog.dismiss(); mDialog.dismiss();
final Handler handler = new Handler(); final Handler handler = new Handler();
Runnable runnable = () -> mEvent.invokeObserver(tempData, M_DOWNLOAD_SINGLE); Runnable runnable = () -> {
mEvent.invokeObserver(mData, M_DOWNLOAD_SINGLE);
};
handler.postDelayed(runnable, 1000); handler.postDelayed(runnable, 1000);
onClearReference(); onClearReference();
}); });
@ -579,6 +588,7 @@ public class messageManager
initializeDialog(R.layout.popup_file_longpress, Gravity.CENTER); initializeDialog(R.layout.popup_file_longpress, Gravity.CENTER);
((TextView) mDialog.findViewById(R.id.pDescription)).setText((title + mData.get(0).toString())); ((TextView) mDialog.findViewById(R.id.pDescription)).setText((title + mData.get(0).toString()));
mEvent.invokeObserver(Arrays.asList(((ImageView) mDialog.findViewById(R.id.pFaviconLogo)), helperMethod.getDomainName(mData.get(0).toString())), enums.etype.fetch_favicon);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss()); mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss());
mDialog.findViewById(R.id.pOption1).setOnClickListener(v -> { mDialog.findViewById(R.id.pOption1).setOnClickListener(v -> {
if(mData!=null){ if(mData!=null){
@ -613,6 +623,7 @@ public class messageManager
initializeDialog(R.layout.popup_url_longpress, Gravity.CENTER); initializeDialog(R.layout.popup_url_longpress, Gravity.CENTER);
((TextView) mDialog.findViewById(R.id.pDescription)).setText((title + mData.get(0))); ((TextView) mDialog.findViewById(R.id.pDescription)).setText((title + mData.get(0)));
mEvent.invokeObserver(Arrays.asList(((ImageView) mDialog.findViewById(R.id.pFaviconLogo)), helperMethod.getDomainName(mData.get(0).toString())), enums.etype.fetch_favicon);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss()); mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss());
mDialog.findViewById(R.id.pOption1).setOnClickListener(v -> { mDialog.findViewById(R.id.pOption1).setOnClickListener(v -> {
if(mData!=null){ if(mData!=null){
@ -639,6 +650,9 @@ public class messageManager
String url = mData.get(0).toString(); String url = mData.get(0).toString();
String file = mData.get(2).toString(); String file = mData.get(2).toString();
String title = mData.get(3).toString(); String title = mData.get(3).toString();
String altText = strings.GENERIC_EMPTY_STR;
String mDescription = strings.GENERIC_EMPTY_STR;
String mDescriptionShort = strings.GENERIC_EMPTY_STR;
String data_local = mContext.getString(R.string.ALERT_LONG_URL_MESSAGE); String data_local = mContext.getString(R.string.ALERT_LONG_URL_MESSAGE);
@ -652,10 +666,19 @@ public class messageManager
if(mTitle.length()<=1){ if(mTitle.length()<=1){
mTitle = mData.get(0).toString(); mTitle = mData.get(0).toString();
} }
if(mData.get(5) != null){
mDescription = mData.get(5).toString();
mDescriptionShort = data_local;
}else {
mDescription = data_local;
}
initializeDialog(R.layout.popup_download_full, Gravity.CENTER); initializeDialog(R.layout.popup_download_full, Gravity.CENTER);
((TextView) mDialog.findViewById(R.id.pHeader)).setText(mTitle); mEvent.invokeObserver(Arrays.asList(((ImageView) mDialog.findViewById(R.id.pFaviconLogo)), helperMethod.getDomainName(data_local)), enums.etype.fetch_favicon);
((TextView) mDialog.findViewById(R.id.pDescription)).setText((data_local));
((TextView) mDialog.findViewById(R.id.pDescription)).setText((mDescription));
((TextView) mDialog.findViewById(R.id.pDescriptionShort)).setText((mDescriptionShort));
mDialog.findViewById(R.id.pOption1).setOnClickListener(v -> { mDialog.findViewById(R.id.pOption1).setOnClickListener(v -> {
if(mData!=null){ if(mData!=null){
mEvent.invokeObserver(Collections.singletonList(url), M_OPEN_LINK_NEW_TAB); mEvent.invokeObserver(Collections.singletonList(url), M_OPEN_LINK_NEW_TAB);
@ -703,7 +726,7 @@ public class messageManager
private void sendBridgeMail() private void sendBridgeMail()
{ {
initializeDialog(R.layout.popup_bridge_mail, Gravity.CENTER); initializeDialog(R.layout.popup_bridge_mail, Gravity.BOTTOM);
mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss()); mDialog.findViewById(R.id.pDismiss).setOnClickListener(v -> mDialog.dismiss());
mDialog.findViewById(R.id.pNext).setOnClickListener(v -> { mDialog.findViewById(R.id.pNext).setOnClickListener(v -> {
mDialog.dismiss(); mDialog.dismiss();
@ -742,10 +765,6 @@ public class messageManager
this.mData = pData; this.mData = pData;
switch (pEventType) { switch (pEventType) {
case M_WELCOME:
/*VERIFIED*/
welcomeMessage();
break;
case M_RATE_FAILURE: case M_RATE_FAILURE:
/*VERIFIED*/ /*VERIFIED*/
@ -757,11 +776,6 @@ public class messageManager
languageSupportFailure(); languageSupportFailure();
break; break;
case M_RATE_SUCCESS:
/*VERIFIED*/
reportedSuccessfully();
break;
case M_BOOKMARK: case M_BOOKMARK:
/*VERIFIED*/ /*VERIFIED*/
bookmark(); bookmark();
@ -777,14 +791,8 @@ public class messageManager
clearBookmark(); clearBookmark();
break; break;
case M_REPORT_URL:
/*VERIFIED*/
reportURL();
break;
case M_RATE_APP: case M_RATE_APP:
/*VERIFIED*/ /*VERIFIED*/
//onClearReference();
rateApp(); rateApp();
break; break;
@ -877,6 +885,16 @@ public class messageManager
/*VERIFIED*/ /*VERIFIED*/
popupUndo(); popupUndo();
break; break;
case M_DELETE_BOOKMARK:
/*VERIFIED*/
deleteBookmark();
break;
case M_UPDATE_BOOKMARK:
/*VERIFIED*/
updateBookmark();
break;
} }
} }
} }

View File

@ -1,10 +1,12 @@
package com.darkweb.genesissearchengine.pluginManager; package com.darkweb.genesissearchengine.pluginManager;
import android.os.Handler; import android.os.Handler;
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.homeController.homeController; import com.darkweb.genesissearchengine.appManager.homeManager.homeController.homeController;
import com.darkweb.genesissearchengine.appManager.orbotLogManager.orbotLogController;
import com.darkweb.genesissearchengine.appManager.settingManager.privacyManager.settingPrivacyController; import com.darkweb.genesissearchengine.appManager.settingManager.privacyManager.settingPrivacyController;
import com.darkweb.genesissearchengine.constants.constants; import com.darkweb.genesissearchengine.constants.constants;
import com.darkweb.genesissearchengine.constants.enums; import com.darkweb.genesissearchengine.constants.enums;
@ -28,6 +30,7 @@ import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Locale; import java.util.Locale;
import static com.darkweb.genesissearchengine.constants.enums.etype.fetch_favicon;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eAdManagerCallbacks.M_SHOW_LOADED_ADS; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eAdManagerCallbacks.M_SHOW_LOADED_ADS;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eLangManager.M_ACTIVITY_CREATED; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eLangManager.M_ACTIVITY_CREATED;
import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eLangManager.M_RESUME; import static com.darkweb.genesissearchengine.pluginManager.pluginEnums.eLangManager.M_RESUME;
@ -80,7 +83,7 @@ public class pluginController
mContextManager = activityContextManager.getInstance(); mContextManager = activityContextManager.getInstance();
mNotificationManager = new notifictionManager(mHomeController,new notificationCallback()); mNotificationManager = new notifictionManager(mHomeController,new notificationCallback());
mAdManager = new adManager(new admobCallback(), ((homeController)mHomeController.get()).getBannerAd(), status.sPaidStatus); mAdManager = new adManager(new admobCallback(), ((homeController)mHomeController.get()).getBannerAd(), status.sPaidStatus, mHomeController.get());
mAnalyticsManager = new analyticManager(mHomeController,new analyticCallback(), status.sDeveloperBuild); mAnalyticsManager = new analyticManager(mHomeController,new analyticCallback(), status.sDeveloperBuild);
mMessageManager = new messageManager(new messageCallback()); mMessageManager = new messageManager(new messageCallback());
mOrbotManager = orbotManager.getInstance(); mOrbotManager = orbotManager.getInstance();
@ -262,11 +265,7 @@ public class pluginController
} }
else if(pEventType.equals(M_BOOKMARK)){ else if(pEventType.equals(M_BOOKMARK)){
String [] dataParser = pData.get(0).toString().split("split"); String [] dataParser = pData.get(0).toString().split("split");
if(dataParser.length>1){ dataController.getInstance().invokeBookmark(dataEnums.eBookmarkCommands.M_ADD_BOOKMARK ,Arrays.asList(dataParser[0],pData.get(1).toString()));
dataController.getInstance().invokeBookmark(dataEnums.eBookmarkCommands.M_ADD_BOOKMARK ,Arrays.asList(dataParser[0],dataParser[1]));
}else {
dataController.getInstance().invokeBookmark(dataEnums.eBookmarkCommands.M_ADD_BOOKMARK ,Arrays.asList(dataParser[0],""));
}
} }
else if(pEventType.equals(M_APP_RATED)){ else if(pEventType.equals(M_APP_RATED)){
dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.PROXY_IS_APP_RATED,true)); dataController.getInstance().invokePrefs(dataEnums.ePreferencesCommands.M_SET_BOOL, Arrays.asList(keys.PROXY_IS_APP_RATED,true));
@ -274,9 +273,15 @@ public class pluginController
else if(pEventType.equals(M_CUSTOM_BRIDGE)){ else if(pEventType.equals(M_CUSTOM_BRIDGE)){
return status.sBridgeCustomBridge; return status.sBridgeCustomBridge;
} }
else if(pEventType.equals(M_OPEN_LOGS)){
helperMethod.openActivity(orbotLogController.class, constants.CONST_LIST_HISTORY, mHomeController.get(),true);
}
else if(pEventType.equals(M_BRIDGE_TYPE)){ else if(pEventType.equals(M_BRIDGE_TYPE)){
return status.sBridgeCustomType; return status.sBridgeCustomType;
} }
else if(pEventType.equals(fetch_favicon)){
activityContextManager.getInstance().getHomeController().onGetFavIcon((ImageView) pData.get(0), (String) pData.get(1));
}
else if(pEventType.equals(M_DOWNLOAD_FILE)){ else if(pEventType.equals(M_DOWNLOAD_FILE)){
((homeController)mHomeController.get()).onDownloadFile(); ((homeController)mHomeController.get()).onDownloadFile();
} }

View File

@ -28,7 +28,7 @@ public class pluginEnums
/*Message Manager*/ /*Message Manager*/
public enum eMessageManager{ public enum eMessageManager{
M_RESET, M_DATA_CLEARED, M_APPLICATION_CRASH, M_SECURE_CONNECTION, M_POPUP_BLOCKED, M_PANIC, M_MAX_TAB_REACHED, M_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_APPLICATION_CRASH, M_DELETE_BOOKMARK, M_UPDATE_BOOKMARK, M_SECURE_CONNECTION, 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_OPEN_LOGS, 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_UNDO_SESSION, M_UNDO_TAB, M_CUSTOM_BRIDGE, M_BRIDGE_TYPE M_CANCEL_WELCOME, M_APP_RATED, M_DOWNLOAD_FILE_MANUAL, M_OPEN_LINK_CURRENT_TAB, M_COPY_LINK, M_REQUEST_BRIDGES, M_SET_BRIDGES, M_OPEN_LINK_NEW_TAB, M_CLEAR_TAB, M_RATE_APPLICATION, M_OPEN_PRIVACY, M_UNDO_SESSION, M_UNDO_TAB, M_CUSTOM_BRIDGE, M_BRIDGE_TYPE

View File

@ -15,7 +15,11 @@
android:endColor="@color/c_background_inverted" android:endColor="@color/c_background_inverted"
android:startColor="@color/c_background_inverted" android:startColor="@color/c_background_inverted"
android:type="linear" /> android:type="linear" />
<corners android:radius="5.5dp" /> <corners
android:bottomLeftRadius="8dp"
android:bottomRightRadius="8dp"
android:topLeftRadius="8dp"
android:topRightRadius="8dp"/>
</shape> </shape>
</item> </item>
</ripple> </ripple>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:left="0dp" android:right="-5dp" android:top="-5dp" android:bottom="-15dp">
<shape
android:shape="rectangle">
<stroke android:width="4dp" android:color="@color/green_alert" />
<solid android:color="@color/c_background" />
</shape>
</item>
</layer-list>

View File

@ -2,7 +2,7 @@
android:color="@color/c_view_divier_background"> android:color="@color/c_view_divier_background">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners <corners
android:bottomLeftRadius="4dp" android:bottomLeftRadius="4dp"
android:bottomRightRadius="0dp" android:bottomRightRadius="0dp"

View File

@ -2,7 +2,7 @@
android:color="@color/c_ripple"> android:color="@color/c_ripple">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners <corners
android:bottomLeftRadius="0dp" android:bottomLeftRadius="0dp"
android:bottomRightRadius="4dp" android:bottomRightRadius="4dp"

View File

@ -1,13 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android" <ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/c_ripple"> android:color="#0047b3">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/c_button_text_v2" /> <solid android:color="#0047b3" />
<corners <corners android:radius="3.5dp" />
android:bottomLeftRadius="4dp" </shape>
android:bottomRightRadius="4dp" </item>
android:topLeftRadius="0dp"
android:topRightRadius="0dp"/> <item android:id="@android:id/background">
<shape android:shape="rectangle">
<gradient
android:angle="90"
android:endColor="@color/cursor_blue"
android:startColor="@color/cursor_blue"
android:type="linear" />
<corners android:radius="3.5dp" />
</shape> </shape>
</item> </item>
</ripple> </ripple>

View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/green_alert_dark">
<item android:id="@android:id/mask">
<shape android:shape="rectangle">
<solid android:color="@color/green_alert_dark" />
<corners android:radius="3.5dp" />
</shape>
</item>
<item android:id="@android:id/background">
<shape android:shape="rectangle">
<gradient
android:angle="90"
android:endColor="@color/secondary"
android:startColor="@color/secondary"
android:type="linear" />
<corners android:radius="3.5dp" />
</shape>
</item>
</ripple>

View File

@ -2,7 +2,7 @@
android:color="@color/c_ripple"> android:color="@color/c_ripple">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners <corners
android:bottomLeftRadius="4dp" android:bottomLeftRadius="4dp"
android:bottomRightRadius="0dp" android:bottomRightRadius="0dp"

View File

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Bottom 2dp Shadow -->
<item>
<shape android:shape="rectangle">
<solid android:color="@color/cursor_blue" />
<corners android:radius="8dp" />
</shape>
</item>
<!-- White Top color -->
<item android:bottom="6dp" android:left="0px" android:right="0px" android:top="0px">
<shape android:shape="rectangle">
<gradient
android:angle="90"
android:startColor="#e4e8f7"
android:endColor="@color/white"
android:type="linear" />
<corners android:radius="8dp" />
</shape>
</item>
</layer-list>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape android:shape="rectangle">
<corners android:radius="4.5dp" />
<stroke android:width="1dip" android:color="@color/c_edittext_border"/>
<solid android:color="@color/c_edittext_background_form_inactive" />
</shape>
</item>
</ripple>

View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:top="113dp">
<shape
android:shape="rectangle" android:padding="10dp" >
<solid android:color="@color/c_edittext_background_blue"/>
<corners android:radius="7dp"/>
<stroke android:width="2.5dp" android:color="@color/c_text_color_highlight_v2" />
</shape>
</item>
<item android:state_pressed="false"
android:top="113dp">
<shape
android:shape="rectangle" android:padding="10dp">
<solid android:color="@color/c_edittext_background_blue"/>
<corners android:radius="7dp"/>
<stroke android:width="2.5dp" android:color="@color/c_text_color_highlight_v2" />
</shape>
</item>
</selector>

View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:top="113dp">
<shape
android:shape="rectangle" android:padding="10dp" >
<solid android:color="@color/c_edittext_error_background"/>
<corners android:radius="7dp"/>
<stroke android:width="2dp" android:color="@color/c_edittext_error_border"/>
</shape>
</item>
<item android:state_pressed="false"
android:top="113dp">
<shape
android:shape="rectangle" android:padding="10dp">
<solid android:color="@color/c_edittext_error_background"/>
<corners android:radius="7dp"/>
<stroke android:width="2dp" android:color="@color/c_edittext_error_border"/>
</shape>
</item>
</selector>

View File

@ -1,25 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:top="113dp">
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" android:padding="10dp" >
<!-- you can use any color you want I used here gray color-->
<solid android:color="@color/button_gray"/>
<corners android:radius="0dp"/>
</shape>
</item>
<item android:state_pressed="false"
android:top="113dp">
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" android:padding="10dp">
<!-- you can use any color you want I used here gray color-->
<solid android:color="@color/white_dark"/>
<corners android:radius="0dp"/>
</shape>
</item>
</selector>

View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@color/blue"/> <!-- pressed -->
<item android:state_focused="true"
android:drawable="@color/ease_blue"/> <!-- focused -->
<item android:drawable="@color/ease_blue"/> <!-- default -->
</selector>

View File

@ -0,0 +1,9 @@
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/c_ripple">
<item android:id="@android:id/mask">
<shape android:shape="rectangle">
<solid android:color="@color/c_gray_light" />
<corners android:radius="50dp" />
</shape>
</item>
</ripple>

View File

@ -5,18 +5,18 @@
android:top="113dp"> android:top="113dp">
<shape <shape
android:shape="rectangle" android:padding="10dp" > android:shape="rectangle" android:padding="10dp" >
<solid android:color="@color/c_edittext_background_error"/> <solid android:color="@color/c_edittext_error_background"/>
<corners android:radius="7dp"/> <corners android:radius="7dp"/>
<stroke android:width="2dp" android:color="@color/dark_red_soft"/> <stroke android:width="2dp" android:color="@color/c_edittext_error_border"/>
</shape> </shape>
</item> </item>
<item android:state_pressed="false" <item android:state_pressed="false"
android:top="113dp"> android:top="113dp">
<shape <shape
android:shape="rectangle" android:padding="10dp"> android:shape="rectangle" android:padding="10dp">
<solid android:color="@color/c_edittext_background_error"/> <solid android:color="@color/c_edittext_error_background"/>
<corners android:radius="7dp"/> <corners android:radius="7dp"/>
<stroke android:width="2dp" android:color="@color/dark_red_soft"/> <stroke android:width="2dp" android:color="@color/c_edittext_error_border"/>
</shape> </shape>
</item> </item>
</selector> </selector>

View File

@ -2,7 +2,7 @@
android:color="@color/c_ripple"> android:color="@color/c_ripple">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners android:radius="50dp" /> <corners android:radius="50dp" />
</shape> </shape>
</item> </item>

View File

@ -2,7 +2,7 @@
android:color="@color/c_ripple"> android:color="@color/c_ripple">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners android:radius="00dp" /> <corners android:radius="00dp" />
</shape> </shape>
</item> </item>

View File

@ -3,7 +3,7 @@
android:color="@color/c_ripple"> android:color="@color/c_ripple">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners <corners
android:bottomLeftRadius="30dp" android:bottomLeftRadius="30dp"
android:topLeftRadius="30dp" /> android:topLeftRadius="30dp" />

View File

@ -2,7 +2,7 @@
android:color="@color/c_ripple_light"> android:color="@color/c_ripple_light">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners android:radius="00dp" /> <corners android:radius="00dp" />
</shape> </shape>
</item> </item>

View File

@ -3,7 +3,7 @@
android:color="@color/c_ripple_v1"> android:color="@color/c_ripple_v1">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
</shape> </shape>
</item> </item>

View File

@ -3,7 +3,7 @@
android:color="@color/c_ripple_v1"> android:color="@color/c_ripple_v1">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners <corners
android:bottomLeftRadius="6dp" android:bottomLeftRadius="6dp"
android:bottomRightRadius="6dp" android:bottomRightRadius="6dp"

View File

@ -2,7 +2,7 @@
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item> <item>
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/c_view_divier_background_inner" /> <solid android:color="@color/c_topbar_divider" />
</shape> </shape>
</item> </item>
<item android:bottom="1dp"> <item android:bottom="1dp">

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape android:shape="rectangle">
<corners android:radius="4.5dp" />
<stroke android:width="1dip" android:color="@color/c_edittext_border"/>
</shape>
</item>
</ripple>

View File

@ -2,9 +2,9 @@
android:color="@color/c_ripple"> android:color="@color/c_ripple">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners android:bottomLeftRadius="4dp" <corners android:bottomLeftRadius="8dp"
android:bottomRightRadius="4dp" android:bottomRightRadius="8dp"
/> />
</shape> </shape>
</item> </item>

View File

@ -2,7 +2,7 @@
android:color="@color/c_ripple"> android:color="@color/c_ripple">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners android:topLeftRadius="4dp" /> <corners android:topLeftRadius="4dp" />
</shape> </shape>
</item> </item>

View File

@ -2,7 +2,7 @@
android:color="@color/c_ripple"> android:color="@color/c_ripple">
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners android:topRightRadius="4dp" /> <corners android:topRightRadius="4dp" />
</shape> </shape>
</item> </item>

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"> <selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" <item android:state_pressed="true"
android:drawable="@color/button_gray"/> <!-- pressed --> android:drawable="@color/c_gray_light"/> <!-- pressed -->
<item android:state_focused="true" <item android:state_focused="true"
android:drawable="@color/button_gray"/> <!-- focused --> android:drawable="@color/c_gray_light"/> <!-- focused -->
<item android:drawable="@color/c_background"/> <!-- default --> <item android:drawable="@color/c_background"/> <!-- default -->
</selector> </selector>

View File

@ -12,8 +12,8 @@
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<gradient <gradient
android:angle="90" android:angle="90"
android:endColor="@color/c_background" android:endColor="@color/white"
android:startColor="@color/c_background" android:startColor="@color/white"
android:type="linear" /> android:type="linear" />
<corners android:radius="5.5dp" /> <corners android:radius="5.5dp" />
</shape> </shape>

View File

@ -6,7 +6,7 @@
<!-- mask here... --> <!-- mask here... -->
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
<corners android:radius="50dp" /> <corners android:radius="50dp" />
</shape> </shape>
</item> </item>

View File

@ -0,0 +1,5 @@
<vector android:height="24dp" android:tint="#3C5C7E"
android:viewportHeight="24" android:viewportWidth="24"
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="@android:color/white" android:pathData="M12,17.27L18.18,21l-1.64,-7.03L22,9.24l-7.19,-0.61L12,2 9.19,8.63 2,9.24l5.46,4.73L5.82,21z"/>
</vector>

View File

@ -0,0 +1,5 @@
<vector android:height="24dp" android:tint="#3C5C7E"
android:viewportHeight="24" android:viewportWidth="24"
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="@android:color/white" android:pathData="M18.32,4.26C16.84,3.05 15.01,2.25 13,2.05v2.02c1.46,0.18 2.79,0.76 3.9,1.62L18.32,4.26zM19.93,11h2.02c-0.2,-2.01 -1,-3.84 -2.21,-5.32L18.31,7.1C19.17,8.21 19.75,9.54 19.93,11zM18.31,16.9l1.43,1.43c1.21,-1.48 2.01,-3.32 2.21,-5.32h-2.02C19.75,14.46 19.17,15.79 18.31,16.9zM13,19.93v2.02c2.01,-0.2 3.84,-1 5.32,-2.21l-1.43,-1.43C15.79,19.17 14.46,19.75 13,19.93zM13,12V7h-2v5H7l5,5l5,-5H13zM11,19.93v2.02c-5.05,-0.5 -9,-4.76 -9,-9.95s3.95,-9.45 9,-9.95v2.02C7.05,4.56 4,7.92 4,12S7.05,19.44 11,19.93z"/>
</vector>

View File

@ -5,7 +5,7 @@
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item> <item>
<shape android:shape="oval"> <shape android:shape="oval">
<solid android:color="@color/c_view_divier_background_inner" /> <solid android:color="@color/c_topbar_divider" />
</shape> </shape>
</item> </item>
<item android:gravity="center"> <item android:gravity="center">

View File

@ -5,7 +5,7 @@
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item> <item>
<shape android:shape="oval"> <shape android:shape="oval">
<solid android:color="@color/c_view_divier_background_inner" /> <solid android:color="@color/c_topbar_divider" />
</shape> </shape>
</item> </item>
<item android:gravity="center"> <item android:gravity="center">

View File

@ -5,7 +5,7 @@
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item> <item>
<shape android:shape="oval"> <shape android:shape="oval">
<solid android:color="@color/c_view_divier_background_inner" /> <solid android:color="@color/c_topbar_divider" />
</shape> </shape>
</item> </item>
<item android:gravity="center"> <item android:gravity="center">

View File

@ -3,7 +3,7 @@
<item android:left="0dp" android:right="-5dp" android:top="-5dp" android:bottom="-5dp"> <item android:left="0dp" android:right="-5dp" android:top="-5dp" android:bottom="-5dp">
<shape <shape
android:shape="rectangle"> android:shape="rectangle">
<stroke android:width="4dp" android:color="@color/c_text_setting_heading" /> <stroke android:width="4dp" android:color="@color/c_text_short_header" />
<solid android:color="@color/c_border_background" /> <solid android:color="@color/c_border_background" />
</shape> </shape>
</item> </item>

View File

@ -10,7 +10,7 @@
android:topLeftRadius="5dp" android:topRightRadius="5dp"/> android:topLeftRadius="5dp" android:topRightRadius="5dp"/>
<stroke android:width="0dp" <stroke android:width="0dp"
android:color="#e6e6e6" /> android:color="#e6e6e6" />
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
</shape> </shape>
</inset> </inset>
</item> </item>
@ -23,7 +23,7 @@
android:topLeftRadius="5dp" android:topRightRadius="5dp"/> android:topLeftRadius="5dp" android:topRightRadius="5dp"/>
<stroke android:width="0dp" <stroke android:width="0dp"
android:color="#e6e6e6" /> android:color="#e6e6e6" />
<solid android:color="@color/button_gray" /> <solid android:color="@color/c_gray_light" />
</shape> </shape>
</inset> </inset>

View File

@ -1,7 +1,7 @@
<?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/dark_red_soft"/> <solid android:color="@color/c_error_text_color"/>
<stroke android:width="0dp" android:color="@color/dark_red_soft" /> <stroke android:width="0dp" android:color="@color/c_error_text_color" />
<corners android:radius="10dp"/> <corners android:radius="10dp"/>
<padding android:left="0dp" android:top="0dp" android:right="0dp" android:bottom="0dp" /> <padding android:left="0dp" android:top="0dp" android:right="0dp" android:bottom="0dp" />
</shape> </shape>

View File

@ -4,94 +4,53 @@
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginBottom="20dp"> android:layout_marginBottom="10dp">
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginEnd="15dp"
app:cardCornerRadius="5.5dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@xml/hox_rounded_corner">
<TextView
android:id="@+id/pHeader"
android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="10dp" android:background="@xml/ax_round_corner"
android:paddingStart="15dp" app:layout_constraintBottom_toBottomOf="parent"
android:paddingEnd="15dp" app:layout_constraintEnd_toEndOf="parent"
android:text="@string/ALERT_CRASH" app:layout_constraintStart_toStartOf="parent">
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="5dp" android:layout_marginTop="18dp"
android:alpha="0.6" android:alpha="1"
android:lineSpacingExtra="3.5dp"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp" android:paddingEnd="15dp"
android:text="@string/ALERT_CRASH_INFO" android:text="@string/ALERT_CRASH_INFO"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textColor="@color/c_alert_text" android:textColor="@color/c_text_v8"
android:textSize="13sp" android:textSize="13.5sp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader" app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="25dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:id="@+id/pNavigationContainer"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="25dp"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription">
<Button <Button
android:id="@+id/pDismiss" android:id="@+id/pDismiss"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="40dp"
android:background="@xml/ax_ripple_default_round_bottom"
android:padding="0dp"
android:paddingStart="15dp"
android:layout_gravity="center" android:layout_gravity="center"
android:layout_marginTop="25dp"
android:layout_marginEnd="20dp"
android:layout_marginBottom="20dp"
android:background="@xml/ax_ripple_default_round_bottom"
android:text="@string/ALERT_DISMISS" android:text="@string/ALERT_DISMISS"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/holo_gray" android:textColor="@color/white"
android:textSize="14sp" android:textSize="14sp"
android:textStyle="bold" /> app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
</LinearLayout> app:layout_constraintTop_toBottomOf="@+id/pDescription" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -22,7 +22,7 @@
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="15dp" android:layout_marginStart="10dp"
android:alpha="0.8" android:alpha="0.8"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp" android:paddingEnd="15dp"
@ -62,7 +62,7 @@
android:layout_width="1dp" android:layout_width="1dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_marginEnd="10dp" android:layout_marginEnd="10dp"
android:background="@color/c_border_background_divider" android:background="@color/c_navigation_medium"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pOpenPrivacy" app:layout_constraintEnd_toStartOf="@+id/pOpenPrivacy"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

View File

@ -7,104 +7,69 @@ android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="wrap_content"
android:maxWidth="450dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner" android:layout_marginBottom="10dp"
android:background="@xml/ax_round_corner"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent">
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/pHeader"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:paddingEnd="15dp"
android:paddingStart="15dp"
android:text="@string/ALERT_BRIDGE_MAIL"
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:maxWidth="450dp"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="5dp" android:layout_marginTop="18dp"
android:justificationMode="inter_word" android:alpha="1"
android:alpha="0.6" android:paddingStart="15dp"
android:paddingEnd="15dp" android:paddingEnd="15dp"
android:text="@string/ALERT_BRIDGE_MAIL_INFO" android:text="@string/ALERT_BRIDGE_MAIL_INFO"
android:textAlignment="textStart" android:textAlignment="textStart"
android:paddingStart="15dp" android:textColor="@color/c_text_v8"
android:textSize="13sp" android:lineSpacingExtra="3.5dp"
android:textSize="13.5sp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
android:textColor="@color/c_text_v1"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader" app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="15dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:weightSum="2"
android:id="@+id/pNavigationContainer"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider"
android:orientation="horizontal">
<Button
android:id="@+id/pDismiss"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@xml/ax_ripple_default_round_left"
android:padding="0dp"
android:text="@string/ALERT_DISMISS"
android:textAllCaps="false"
android:textColor="@color/c_button_text_v2"
android:textSize="15sp"
android:textStyle="bold" />
<View
android:id="@+id/pDividerHorizontal"
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pRating" />
<Button <Button
android:id="@+id/pNext" android:id="@+id/pNext"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="40dp"
android:layout_weight="1" android:layout_gravity="center"
android:background="@xml/ax_ripple_default_round_right" android:layout_marginTop="25dp"
android:padding="0dp" android:layout_marginEnd="15dp"
android:layout_marginBottom="20dp"
android:background="@xml/ax_ripple_default_round_bottom"
android:text="@string/ALERT_MAIL" android:text="@string/ALERT_MAIL"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/c_button_text_v1" android:textColor="@color/white"
android:textSize="15sp" android:textSize="14sp"
android:textStyle="bold" /> app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
</LinearLayout> <Button
android:id="@+id/pDismiss"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_gravity="center"
android:layout_marginTop="25dp"
android:layout_marginEnd="10dp"
android:layout_marginBottom="20dp"
android:background="@xml/ax_ripple_default_round_bottom_secondary"
android:text="@string/ALERT_DISMISS"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pNext"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -2,106 +2,71 @@
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/pToastLayoutRoot"
android:translationZ="5dp"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_height="wrap_content" android:layout_width="match_parent"
android:background="@xml/hox_rounded_corner" android:layout_height="55dp"
android:layout_marginBottom="10dp"
android:background="@xml/ax_background_inverted"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintStart_toStartOf="parent">
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/pHeader"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:paddingEnd="15dp"
android:paddingStart="15dp"
android:text="@string/ALERT_CLEAR_BOOKMARK"
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="5dp" android:layout_marginStart="10dp"
android:alpha="0.6" android:alpha="0.8"
android:paddingEnd="15dp"
android:paddingStart="15dp" android:paddingStart="15dp"
android:textColor="@color/c_alert_text" android:paddingEnd="15dp"
android:text="@string/ALERT_CLEAR_BOOKMARK_INFO" android:text="@string/ALERT_CLEAR_BOOKMARK_INFO"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textSize="13sp" android:textColor="@color/c_alert_text_inverted"
app:layout_constraintEnd_toEndOf="parent" android:textSize="14sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader"
tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="35dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:id="@+id/pNavigationContainer"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider"
android:orientation="horizontal">
<Button
android:id="@+id/pDismiss"
android:textColor="@color/c_button_text_v2"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:padding="0dp"
android:background="@xml/ax_ripple_default_round_left"
android:textSize="15sp"
android:textAllCaps="false"
android:layout_weight="1"
android:textStyle="bold" android:textStyle="bold"
android:text="@string/ALERT_DISMISS" /> app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="@+id/pMainLayout"
<View app:layout_constraintTop_toTopOf="parent"
android:id="@+id/pDividerHorizontal" tools:ignore="SmallSp" />
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<Button <Button
android:id="@+id/pNext" android:id="@+id/pNext"
android:textColor="@color/c_button_warning"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@xml/ax_ripple_default_round_right" android:layout_marginTop="10dp"
android:padding="0dp" android:layout_marginEnd="10dp"
android:textSize="15sp" android:layout_marginBottom="10dp"
android:textAllCaps="false"
android:layout_weight="1" android:layout_weight="1"
android:background="@xml/ax_ripple_default_round"
android:padding="0dp"
android:text="@string/ALERT_CONFIRM"
android:textAllCaps="false"
android:textColor="@color/c_button_text_v1_inverted"
android:textSize="15sp"
android:textStyle="bold" android:textStyle="bold"
android:text="@string/ALERT_CLEAR" /> app:layout_constraintBottom_toBottomOf="parent"
</LinearLayout> app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<View
android:id="@+id/view6"
android:layout_width="1dp"
android:layout_height="30dp"
android:layout_marginEnd="10dp"
android:background="@color/c_navigation_medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pNext"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -2,106 +2,71 @@
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/pToastLayoutRoot"
android:translationZ="5dp"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_height="wrap_content" android:layout_width="match_parent"
android:background="@xml/gx_rounded_corner_alert" android:layout_height="55dp"
android:layout_marginBottom="10dp"
android:background="@xml/ax_background_inverted"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintStart_toStartOf="parent">
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/pHeader"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:paddingEnd="15dp"
android:paddingStart="15dp"
android:text="@string/ALERT_CLEAR_HISTORY"
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:text="@string/ALERT_CLEAR_HISTORY_INFO"
android:textColor="@color/c_alert_text"
android:textAlignment="textStart"
android:paddingEnd="15dp"
android:paddingStart="15dp"
android:alpha="0.6"
android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader"
tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="35dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:id="@+id/pNavigationContainer"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider"
android:orientation="horizontal">
<Button
android:id="@+id/pDismiss"
android:textColor="@color/c_button_text_v2"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="wrap_content"
android:padding="0dp" android:layout_marginStart="10dp"
android:background="@xml/ax_ripple_default_round_left" android:alpha="0.8"
android:textSize="15sp" android:paddingStart="15dp"
android:textAllCaps="false" android:paddingEnd="15dp"
android:layout_weight="1" android:text="@string/ALERT_CLEAR_HISTORY"
android:textAlignment="textStart"
android:textColor="@color/c_alert_text_inverted"
android:textSize="14sp"
android:textStyle="bold" android:textStyle="bold"
android:text="@string/ALERT_DISMISS" /> app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="@+id/pMainLayout"
<View app:layout_constraintTop_toTopOf="parent"
android:id="@+id/pDividerHorizontal" tools:ignore="SmallSp" />
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<Button <Button
android:id="@+id/pNext" android:id="@+id/pNext"
android:textColor="@color/c_button_warning"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@xml/ax_ripple_default_round_right" android:layout_marginTop="10dp"
android:padding="0dp" android:layout_marginEnd="10dp"
android:textSize="15sp" android:layout_marginBottom="10dp"
android:textAllCaps="false"
android:layout_weight="1" android:layout_weight="1"
android:background="@xml/ax_ripple_default_round"
android:padding="0dp"
android:text="@string/ALERT_CONFIRM"
android:textAllCaps="false"
android:textColor="@color/c_button_text_v1_inverted"
android:textSize="15sp"
android:textStyle="bold" android:textStyle="bold"
android:text="@string/ALERT_CLEAR" /> app:layout_constraintBottom_toBottomOf="parent"
</LinearLayout> app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<View
android:id="@+id/view6"
android:layout_width="1dp"
android:layout_height="30dp"
android:layout_marginEnd="10dp"
android:background="@color/c_navigation_medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pNext"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -10,130 +10,112 @@
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner" android:background="@xml/ax_round_corner"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"> app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/pHeader"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:paddingStart="15dp"
android:text="@string/ALERT_CREATE_BOOKMARK"
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="5dp" android:layout_marginTop="18dp"
android:alpha="0.6" android:alpha="0.8"
android:paddingStart="15dp"
android:paddingEnd="10dp" android:paddingEnd="10dp"
android:text="@string/ALERT_CREATE_BOOKMARK_INFO" android:text="@string/ALERT_CREATE_BOOKMARK_INFO"
android:textAlignment="textStart" android:textAlignment="textStart"
android:paddingStart="15dp"
android:textColor="@color/c_alert_text" android:textColor="@color/c_alert_text"
android:lineSpacingExtra="3.5dp"
android:textSize="13sp" android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader" app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="14dp"
android:background="@color/c_view_divier_background"
app:layout_constraintTop_toBottomOf="@+id/pBridgeInput" />
<EditText <EditText
android:id="@+id/pBridgeInput" android:id="@+id/pBookmarkNameInput"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="10dp" android:layout_marginStart="15dp"
android:layout_marginTop="20dp" android:layout_marginTop="20dp"
android:layout_marginEnd="10dp" android:layout_marginEnd="15dp"
android:background="@xml/gx_generic_input_create_bookmark" android:background="@xml/gx_generic_input_create_bookmark"
android:ems="10"
android:elevation="3dp" android:elevation="3dp"
android:ems="10"
android:focusedByDefault="true"
android:hint="@string/ALERT_TITLE_ADD" android:hint="@string/ALERT_TITLE_ADD"
android:importantForAutofill="no" android:importantForAutofill="no"
android:inputType="textNoSuggestions" android:inputType="textNoSuggestions"
android:maxLines="1" android:maxLines="1"
android:focusedByDefault="true"
android:padding="7dp" android:padding="7dp"
android:paddingStart="11dp" android:paddingStart="11dp"
android:paddingEnd="8dp" android:paddingEnd="8dp"
android:textColor="@color/c_text_v1" android:textColor="@color/c_text_v8"
android:textColorHighlight="@color/text_color_highlight_v3" android:textColorHighlight="@color/c_text_color_highlight_v2"
android:textColorHint="@color/c_text_v2" android:textColorHint="@color/c_text_v2"
android:textCursorDrawable="@xml/gx_search_cursor_state" android:textCursorDrawable="@xml/gx_search_cursor_state"
android:textSize="14sp" android:textSize="13sp"
app:layout_constraintEnd_toEndOf="@+id/pDivider"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="14dp"
android:background="@color/c_view_divier_background"
app:layout_constraintTop_toBottomOf="@+id/pBridgeInput" />
<LinearLayout
android:id="@+id/pNavigationContainer"
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider">
<Button
android:id="@+id/pDismiss"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@xml/ax_ripple_default_round_left"
android:padding="0dp"
android:text="@string/ALERT_DISMISS"
android:textAllCaps="false"
android:textColor="@color/c_button_text_v2"
android:textSize="15sp"
android:textStyle="bold" />
<View
android:id="@+id/pDividerHorizontal"
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" /> app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<TextView
android:id="@+id/pURL"
android:layout_width="match_parent"
android:layout_height="35dp"
android:layout_marginStart="14dp"
android:layout_marginTop="10dp"
android:layout_marginEnd="13dp"
android:background="@xml/hx_ripple_default_round_bottom"
android:ellipsize="end"
android:gravity="center_vertical | start"
android:maxLines="1"
android:paddingStart="11dp"
android:paddingEnd="15dp"
android:text="@string/BOOKMARK_EMPTY"
android:textColor="@color/c_text_v2"
android:textSize="12.5sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pBookmarkNameInput" />
<Button <Button
android:id="@+id/pNext" android:id="@+id/pNext"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="40dp"
android:layout_weight="1" android:layout_gravity="center"
android:background="@xml/ax_ripple_default_round_right" android:layout_marginTop="20dp"
android:padding="0dp" android:layout_marginEnd="14dp"
android:layout_marginBottom="20dp"
android:background="@xml/ax_ripple_default_round_bottom"
android:text="@string/ALERT_ADD" android:text="@string/ALERT_ADD"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/c_button_text_v1" android:textColor="@color/white"
android:textSize="15sp" android:textSize="14sp"
android:textStyle="bold" /> app:layout_constraintBottom_toBottomOf="parent"
</LinearLayout> app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pURL" />
<Button
android:id="@+id/pDismiss"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:layout_marginEnd="15dp"
android:layout_marginBottom="20dp"
android:background="@xml/ax_ripple_default_round_bottom_secondary"
android:text="@string/ALERT_DISMISS"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pNext"
app:layout_constraintTop_toBottomOf="@+id/pURL" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -2,95 +2,73 @@
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/pToastLayoutRoot"
android:translationZ="5dp"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_marginBottom="20dp"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:cardCornerRadius="5.5dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="55dp"
android:background="@xml/hox_rounded_corner"> android:layout_marginBottom="10dp"
android:background="@xml/ax_background_inverted"
<TextView app:layout_constraintBottom_toBottomOf="parent"
android:id="@+id/pHeader" app:layout_constraintEnd_toEndOf="parent"
android:layout_width="match_parent" app:layout_constraintStart_toStartOf="parent">
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:paddingEnd="15dp"
android:paddingStart="15dp"
android:text="@string/ALERT_DATA_CLEARED"
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="5dp" android:layout_marginStart="10dp"
android:alpha="0.6" android:alpha="0.8"
android:paddingEnd="15dp"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp"
android:text="@string/ALERT_DATA_CLEARED_INFO" android:text="@string/ALERT_DATA_CLEARED_INFO"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textColor="@color/c_alert_text" android:textColor="@color/c_alert_text_inverted"
android:textSize="13sp" android:textSize="14sp"
app:layout_constraintEnd_toEndOf="parent" android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader" app:layout_constraintStart_toStartOf="@+id/pMainLayout"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="25dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:id="@+id/pNavigationContainer"
android:layout_width="409dp"
android:layout_height="50dp"
android:layout_marginTop="25dp"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription">
<Button <Button
android:id="@+id/pDismiss" android:id="@+id/pDismiss"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@xml/ax_ripple_default_round_bottom" android:layout_marginTop="10dp"
android:layout_marginEnd="10dp"
android:layout_marginBottom="10dp"
android:layout_weight="1"
android:background="@xml/ax_ripple_default_round"
android:padding="0dp" android:padding="0dp"
android:paddingStart="10dp"
android:paddingEnd="10dp"
android:text="@string/ALERT_DISMISS" android:text="@string/ALERT_DISMISS"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/c_button_text_v1" android:textColor="@color/c_button_text_v1_inverted"
android:textSize="15sp" android:textSize="15sp"
android:textStyle="bold" /> android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</LinearLayout> <View
android:id="@+id/view6"
android:layout_width="1dp"
android:layout_height="30dp"
android:layout_marginEnd="10dp"
android:background="@color/c_navigation_medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pDismiss"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -1,97 +1,74 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" <androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/pToastLayoutRoot"
android:translationZ="5dp"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent">
android:layout_marginBottom="20dp">
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginEnd="15dp"
app:cardCornerRadius="5.5dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="55dp"
android:background="@xml/hox_rounded_corner"> android:layout_marginBottom="10dp"
android:background="@xml/ax_background_inverted"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<TextView <TextView
android:id="@+id/pHeader" android:id="@+id/pDescription"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="10dp" android:layout_marginStart="10dp"
android:alpha="0.8"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp" android:paddingEnd="15dp"
android:text="@string/ALERT_DATA_CLEARED_SHORTCUT" android:text="@string/ALERT_DATA_CLEARED_SHORTCUT"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2" android:textColor="@color/c_alert_text_inverted"
android:textSize="17sp" android:textSize="14sp"
android:textStyle="bold" android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintStart_toStartOf="@+id/pMainLayout"
app:layout_constraintTop_toTopOf="parent"
<TextView
android:id="@+id/pDescription"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:alpha="0.6"
android:paddingStart="15dp"
android:paddingEnd="15dp"
android:text="@string/ALERT_DATA_CLEARED_INFO_SHORTCUT"
android:textAlignment="textStart"
android:textColor="@color/c_alert_text"
android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="25dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:id="@+id/pNavigationContainer"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="25dp"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription">
<Button <Button
android:id="@+id/pDismiss" android:id="@+id/pOpenPrivacy"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@xml/ax_ripple_default_round_bottom" android:layout_marginTop="10dp"
android:layout_marginEnd="10dp"
android:layout_marginBottom="10dp"
android:layout_weight="1"
android:background="@xml/ax_ripple_default_round"
android:padding="0dp" android:padding="0dp"
android:paddingStart="15dp" android:paddingStart="10dp"
android:text="@string/ALERT_DATA_CLEARED_BUTTON" android:paddingEnd="10dp"
android:textAlignment="textStart" android:text="@string/ALERT_DISMISS"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/holo_gray" android:textColor="@color/c_button_text_v1_inverted"
android:textSize="14sp" android:textSize="15sp"
android:textStyle="bold" /> android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</LinearLayout> <View
android:id="@+id/view6"
android:layout_width="1dp"
android:layout_height="30dp"
android:layout_marginEnd="10dp"
android:background="@color/c_navigation_medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pOpenPrivacy"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -65,7 +65,7 @@
android:layout_width="1dp" android:layout_width="1dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_marginEnd="10dp" android:layout_marginEnd="10dp"
android:background="@color/c_border_background_divider" android:background="@color/c_navigation_medium"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pDismiss" app:layout_constraintEnd_toStartOf="@+id/pDismiss"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

View File

@ -7,61 +7,88 @@
android:layout_height="match_parent"> android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner" android:background="@xml/ax_round_corner"
android:paddingBottom="6dp"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"> app:layout_constraintTop_toTopOf="parent">
<TextView <androidx.cardview.widget.CardView
android:id="@+id/pHeader" android:id="@+id/cardView2"
android:layout_width="match_parent" android:layout_width="34dp"
android:layout_height="wrap_content" android:layout_height="34dp"
android:layout_marginTop="10dp" android:layout_marginStart="14dp"
android:paddingStart="15dp" android:layout_marginTop="12dp"
android:layout_marginEnd="30dp" android:gravity="center_vertical"
android:singleLine="true" app:cardCornerRadius="5dp"
android:text="@string/ALERT_DOWNLOAD"
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent">
tools:ignore="RtlSymmetry" />
<ImageView
android:id="@+id/pFaviconLogo"
android:layout_width="34dp"
android:layout_height="34dp"
android:contentDescription="@string/GENERAL_TODO"
android:src="@xml/ic_baseline_browser"
android:textAlignment="center"
android:textColor="@color/white"
tools:ignore="RtlCompat" />
</androidx.cardview.widget.CardView>
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:layout_width="match_parent" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="10dp" android:layout_marginTop="11dp"
android:alpha="0.6" android:alpha="0.6"
android:gravity="start" android:gravity="start |center_vertical"
android:maxLines="1"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp" android:paddingEnd="41dp"
android:text="@string/GENERAL_DEFAULT_TEXT" android:text="@string/GENERAL_DEFAULT_TEXT"
android:textAlignment="viewStart"
android:textColor="@color/c_alert_text" android:textColor="@color/c_alert_text"
android:textDirection="locale" android:textDirection="locale"
android:maxLines="5" android:textSize="13.5sp"
android:textSize="12sp" android:translationY="-1dp"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader" app:layout_constraintStart_toEndOf="@+id/cardView2"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" />
<TextView
android:id="@+id/pDescriptionShort"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:alpha="0.6"
android:gravity="start |center_vertical"
android:maxLines="1"
android:paddingStart="16.6dp"
android:paddingEnd="41dp"
android:text="@string/GENERAL_DEFAULT_TEXT"
android:textColor="@color/c_alert_text"
android:textDirection="locale"
android:textSize="11sp"
android:translationY="-1dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/cardView2"
app:layout_constraintTop_toBottomOf="@+id/pDescription"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View <View
android:id="@+id/pDivider" android:id="@+id/pDivider"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="1dp" android:layout_height="1dp"
android:layout_marginTop="20dp" android:layout_marginTop="15dp"
android:background="@color/c_view_divier_background" android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" /> app:layout_constraintTop_toBottomOf="@+id/cardView2" />
<LinearLayout <LinearLayout
android:id="@+id/pNavigationContainer" android:id="@+id/pNavigationContainer"
@ -104,11 +131,11 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1"
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:contentDescription="@string/GENERAL_TODO"
android:scaleX="0.5" android:scaleX="0.5"
app:tint="@color/c_navigation_tint"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" app:srcCompat="@xml/ic_arrow_right"
android:contentDescription="@string/GENERAL_TODO" /> app:tint="@color/cursor_blue" />
</LinearLayout> </LinearLayout>
@ -151,11 +178,11 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1"
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:contentDescription="@string/GENERAL_TODO"
android:scaleX="0.5" android:scaleX="0.5"
app:tint="@color/c_navigation_tint"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" app:srcCompat="@xml/ic_arrow_right"
android:contentDescription="@string/GENERAL_TODO" /> app:tint="@color/cursor_blue" />
</LinearLayout> </LinearLayout>
@ -197,12 +224,12 @@
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1"
app:tint="@color/c_navigation_tint"
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:contentDescription="@string/GENERAL_TODO"
android:scaleX="0.5" android:scaleX="0.5"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" app:srcCompat="@xml/ic_arrow_right"
android:contentDescription="@string/GENERAL_TODO" /> app:tint="@color/cursor_blue" />
</LinearLayout> </LinearLayout>
@ -247,11 +274,11 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1"
android:background="@android:color/transparent" android:background="@android:color/transparent"
app:tint="@color/c_navigation_tint" android:contentDescription="@string/GENERAL_TODO"
android:scaleX="0.5" android:scaleX="0.5"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" app:srcCompat="@xml/ic_arrow_right"
android:contentDescription="@string/GENERAL_TODO" /> app:tint="@color/cursor_blue" />
</LinearLayout> </LinearLayout>
@ -296,11 +323,11 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1"
android:background="@android:color/transparent" android:background="@android:color/transparent"
app:tint="@color/c_navigation_tint" android:contentDescription="@string/GENERAL_TODO"
android:scaleX="0.5" android:scaleX="0.5"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" app:srcCompat="@xml/ic_arrow_right"
android:contentDescription="@string/GENERAL_TODO" /> app:tint="@color/cursor_blue" />
</LinearLayout> </LinearLayout>
@ -345,11 +372,11 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1"
android:background="@android:color/transparent" android:background="@android:color/transparent"
app:tint="@color/c_navigation_tint" android:contentDescription="@string/GENERAL_TODO"
android:scaleX="0.5" android:scaleX="0.5"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" app:srcCompat="@xml/ic_arrow_right"
android:contentDescription="@string/GENERAL_TODO" /> app:tint="@color/cursor_blue" />
</LinearLayout> </LinearLayout>
@ -365,7 +392,7 @@
android:id="@+id/pOption7" android:id="@+id/pOption7"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="45dp" android:layout_height="45dp"
android:background="@xml/gx_ripple_gray" android:background="@xml/gx_ripple_gray_bottom"
android:clickable="true" android:clickable="true"
android:focusable="true" android:focusable="true"
android:orientation="horizontal" android:orientation="horizontal"
@ -394,24 +421,14 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1"
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:contentDescription="@string/GENERAL_TODO"
android:scaleX="0.5" android:scaleX="0.5"
app:tint="@color/c_navigation_tint"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" app:srcCompat="@xml/ic_arrow_right"
android:contentDescription="@string/GENERAL_TODO" /> app:tint="@color/cursor_blue" />
</LinearLayout> </LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginEnd="30dp"
android:layout_marginStart="30dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
</LinearLayout> </LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -9,31 +9,41 @@
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner" android:layout_marginBottom="10dp"
android:background="@xml/ax_round_corner"
android:minHeight="130dp" android:minHeight="130dp"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintStart_toStartOf="parent">
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"> <ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="185dp"
android:layout_height="14dp"
android:layout_marginEnd="15dp"
android:indeterminate="true"
android:indeterminateTint="@color/ease_blue"
android:translationY="-4dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" />
<ImageView <ImageView
android:id="@+id/imageView2" android:id="@+id/imageView2"
android:layout_width="15dp" android:layout_width="50dp"
android:layout_height="15dp" android:layout_height="50dp"
android:layout_marginStart="14dp" android:layout_marginStart="14dp"
android:layout_marginTop="11dp" android:layout_marginTop="15dp"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/ic_download" app:srcCompat="@xml/ic_baseline_downloading"
app:tint="@color/c_icon_tint" /> app:tint="@color/c_icon_tint" />
<TextView <TextView
android:id="@+id/pHeader" android:id="@+id/pHeader"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="25dp" android:layout_marginTop="14dp"
android:layout_marginTop="8dp"
android:ellipsize="end" android:ellipsize="end"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp" android:paddingEnd="15dp"
@ -46,91 +56,79 @@
app:layout_constraintStart_toEndOf="@+id/imageView2" app:layout_constraintStart_toEndOf="@+id/imageView2"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginStart="15dp"
android:layout_marginTop="10dp"
android:layout_marginEnd="19dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader" />
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:layout_width="match_parent" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="20dp" android:layout_marginTop="4dp"
android:layout_marginEnd="3dp" android:layout_marginEnd="3dp"
android:alpha="0.6" android:alpha="0.6"
android:maxLines="5" android:maxLines="1"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp" android:paddingEnd="15dp"
android:text="hello_kitty_sample.mp4"
android:textAlignment="textStart"
android:textColor="@color/c_alert_text"
android:textSize="12.5sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_weight="1"
app:layout_constraintStart_toEndOf="@+id/imageView2"
app:layout_constraintTop_toBottomOf="@+id/pHeader"
tools:ignore="SmallSp" />
<TextView
android:id="@+id/pDescriptionLong"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginEnd="3dp"
android:alpha="0.6"
android:maxLines="1"
android:paddingStart="15dp"
android:paddingEnd="15dp"
android:text="hello_kitty_sample.mp4"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textColor="@color/c_alert_text" android:textColor="@color/c_alert_text"
android:textSize="12sp" android:textSize="12sp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintHorizontal_weight="1"
app:layout_constraintTop_toBottomOf="@+id/pHeader" app:layout_constraintStart_toEndOf="@+id/imageView2"
app:layout_constraintTop_toBottomOf="@+id/pDescription"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="20dp"
android:background="@color/c_view_divier_background"
app:layout_constraintBottom_toTopOf="@+id/pNavigationContainer"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:id="@+id/pNavigationContainer"
android:layout_width="match_parent"
android:layout_height="45dp"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider">
<Button
android:id="@+id/pDismiss"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@xml/ax_ripple_default_round_left"
android:padding="0dp"
android:text="@string/ALERT_DISMISS"
android:textAllCaps="false"
android:textColor="@color/c_button_text_v2"
android:textSize="14.5sp"
android:textStyle="bold" />
<View
android:id="@+id/pDividerHorizontal"
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<Button <Button
android:id="@+id/pNext" android:id="@+id/pNext"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="40dp"
android:layout_weight="1" android:layout_gravity="center"
android:background="@xml/ax_ripple_default_round_right" android:layout_marginTop="20dp"
android:padding="0dp" android:layout_marginEnd="15dp"
android:layout_marginBottom="17dp"
android:background="@xml/ax_ripple_default_round_bottom"
android:text="@string/ALERT_DOWNLOAD_SINGLE_BUTTON" android:text="@string/ALERT_DOWNLOAD_SINGLE_BUTTON"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/c_button_text_v3" android:textColor="@color/white"
android:textSize="14.5sp" android:textSize="14sp"
android:textStyle="bold" /> app:layout_constraintBottom_toBottomOf="parent"
</LinearLayout> app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescriptionLong" />
<Button
android:id="@+id/pDismiss"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:layout_marginEnd="10dp"
android:layout_marginBottom="17dp"
android:background="@xml/ax_ripple_default_round_bottom_secondary"
android:text="@string/ALERT_DISMISS"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pNext"
app:layout_constraintTop_toBottomOf="@+id/pDescriptionLong" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -10,56 +10,66 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner" android:background="@xml/ax_round_corner"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"> app:layout_constraintTop_toTopOf="parent">
<TextView <androidx.cardview.widget.CardView
android:id="@+id/pHeader" android:id="@+id/cardView2"
android:layout_width="match_parent" android:layout_width="34dp"
android:layout_height="wrap_content" android:layout_height="34dp"
android:layout_marginTop="10dp" android:layout_marginStart="14dp"
android:paddingEnd="15dp" android:layout_marginTop="12dp"
android:paddingStart="15dp" android:gravity="center_vertical"
android:text="@string/ALERT_LONG_FILE" android:padding="20dp"
android:textAlignment="textStart" app:cardCornerRadius="5dp"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent">
<ImageView
android:id="@+id/pFaviconLogo"
android:layout_width="34dp"
android:layout_height="34dp"
android:contentDescription="@string/GENERAL_TODO"
android:src="@xml/ic_baseline_browser"
android:textAlignment="center"
android:textColor="@color/white"
tools:ignore="RtlCompat" />
</androidx.cardview.widget.CardView>
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:layout_width="match_parent" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="10dp" android:layout_marginTop="12dp"
android:alpha="0.6" android:alpha="0.6"
android:maxLines="5" android:gravity="start |center_vertical"
android:ellipsize="start" android:maxLines="2"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp" android:paddingEnd="41dp"
android:text="@string/GENERAL_DEFAULT_TEXT" android:text="@string/GENERAL_DEFAULT_TEXT"
android:textAlignment="viewStart"
android:textColor="@color/c_alert_text" android:textColor="@color/c_alert_text"
android:textDirection="locale" android:textDirection="locale"
android:textSize="12sp" android:textSize="12sp"
app:layout_constraintStart_toStartOf="parent" android:translationY="-1dp"
app:layout_constraintTop_toBottomOf="@+id/pHeader" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/cardView2"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View <View
android:id="@+id/pDivider" android:id="@+id/pDivider"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="1dp" android:layout_height="1dp"
android:layout_marginTop="20dp" android:layout_marginTop="15dp"
android:background="@color/c_view_divier_background" android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" /> app:layout_constraintTop_toBottomOf="@+id/cardView2" />
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
@ -103,8 +113,8 @@
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:scaleX="0.5" android:scaleX="0.5"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" app:tint="@color/cursor_blue"
app:tint="@color/c_navigation_tint" /> app:srcCompat="@xml/ic_arrow_right" />
</LinearLayout> </LinearLayout>
@ -149,7 +159,7 @@
android:layout_weight="1" android:layout_weight="1"
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:scaleX="0.5" android:scaleX="0.5"
app:tint="@color/c_navigation_tint" app:tint="@color/cursor_blue"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" /> app:srcCompat="@xml/ic_arrow_right" />
@ -195,7 +205,7 @@
android:layout_weight="1" android:layout_weight="1"
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:scaleX="0.5" android:scaleX="0.5"
app:tint="@color/c_navigation_tint" app:tint="@color/cursor_blue"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" /> app:srcCompat="@xml/ic_arrow_right" />
@ -242,7 +252,7 @@
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:scaleX="0.5" android:scaleX="0.5"
android:scaleY="0.5" android:scaleY="0.5"
app:tint="@color/c_navigation_tint" app:tint="@color/cursor_blue"
app:srcCompat="@xml/ic_arrow_right" /> app:srcCompat="@xml/ic_arrow_right" />
</LinearLayout> </LinearLayout>
@ -261,6 +271,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="horizontal" android:orientation="horizontal"
android:paddingBottom="6dp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider"> app:layout_constraintTop_toBottomOf="@+id/pDivider">
@ -270,9 +281,9 @@
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="45dp" android:layout_height="45dp"
android:layout_weight="1" android:layout_weight="1"
android:background="@xml/ax_ripple_default_round_bottom"
android:padding="0dp" android:padding="0dp"
android:text="@string/ALERT_DISMISS" android:text="@string/ALERT_DISMISS"
android:background="@xml/gx_ripple_gray_bottom"
android:textAlignment="center" android:textAlignment="center"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/c_button_text_v1" android:textColor="@color/c_button_text_v1"

View File

@ -55,7 +55,7 @@
android:layout_marginTop="10dp" android:layout_marginTop="10dp"
android:layout_marginBottom="10dp" android:layout_marginBottom="10dp"
android:layout_marginEnd="5dp" android:layout_marginEnd="5dp"
android:background="@color/c_view_divier_background_inner_v1" android:background="@color/c_divider_line_light"
app:layout_constraintBottom_toTopOf="@+id/pNavigationContainer" /> app:layout_constraintBottom_toTopOf="@+id/pNavigationContainer" />
<ImageButton <ImageButton

View File

@ -2,100 +2,73 @@
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/pToastLayoutRoot"
android:translationZ="5dp"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_height="wrap_content" android:layout_width="match_parent"
android:background="@xml/hox_rounded_corner" android:layout_height="55dp"
android:layout_marginBottom="10dp"
android:background="@xml/ax_background_inverted"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintStart_toStartOf="parent">
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView <TextView
android:id="@+id/pHeader" android:id="@+id/pDescription"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="10dp" android:layout_marginStart="10dp"
android:alpha="0.8"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp" android:paddingEnd="15dp"
android:text="@string/ALERT_LANGUAGE_SUPPORT_FAILURE" android:text="@string/ALERT_LANGUAGE_SUPPORT_FAILURE"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2" android:textColor="@color/c_alert_text_inverted"
android:textSize="17sp" android:textSize="14sp"
android:textStyle="bold" android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="@+id/pMainLayout"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
tools:ignore="RtlSymmetry" />
<TextView
android:id="@+id/pLanguage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginTop="5dp"
android:text="Deuche (de)"
android:textDirection="locale"
android:textAlignment="viewStart"
android:textColor="@color/c_text_v6"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader" />
<TextView
android:id="@+id/pDescription"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textDirection="locale"
android:textAlignment="viewStart"
android:layout_marginTop="35dp"
android:alpha="0.6"
android:paddingStart="15dp"
android:paddingEnd="15dp"
android:text="@string/ALERT_LANGUAGE_SUPPORT_FAILURE_INFO"
android:textColor="@color/c_alert_text"
android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="25dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:id="@+id/pNavigationContainer"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider"
android:orientation="horizontal">
<Button <Button
android:id="@+id/pDismiss" android:id="@+id/pOpenPrivacy"
android:textColor="@color/c_button_text_v3" android:layout_width="wrap_content"
android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:textAlignment="center" android:layout_marginTop="10dp"
android:background="@xml/ax_ripple_default_round_bottom" android:layout_marginEnd="10dp"
android:textSize="15sp" android:layout_marginBottom="10dp"
android:layout_weight="1"
android:background="@xml/ax_ripple_default_round"
android:padding="0dp"
android:paddingStart="10dp"
android:paddingEnd="10dp"
android:text="@string/ALERT_DISMISS"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/c_button_text_v1_inverted"
android:textSize="15sp"
android:textStyle="bold" android:textStyle="bold"
android:text="@string/ALERT_DISMISS" /> app:layout_constraintBottom_toBottomOf="parent"
</LinearLayout> app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<View
android:id="@+id/view6"
android:layout_width="1dp"
android:layout_height="30dp"
android:layout_marginEnd="10dp"
android:background="@color/c_navigation_medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pOpenPrivacy"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -62,7 +62,7 @@
android:layout_width="1dp" android:layout_width="1dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_marginEnd="10dp" android:layout_marginEnd="10dp"
android:background="@color/c_border_background_divider" android:background="@color/c_navigation_medium"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pDismiss" app:layout_constraintEnd_toStartOf="@+id/pDismiss"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

View File

@ -60,7 +60,7 @@
android:layout_width="1dp" android:layout_width="1dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_marginEnd="10dp" android:layout_marginEnd="10dp"
android:background="@color/c_border_background_divider" android:background="@color/c_navigation_medium"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pDismiss" app:layout_constraintEnd_toStartOf="@+id/pDismiss"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

View File

@ -12,7 +12,7 @@
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="60dp" android:layout_height="60dp"
android:layout_marginBottom="25dp" android:layout_marginBottom="15dp"
android:background="@xml/ax_background_inverted" android:background="@xml/ax_background_inverted"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
@ -61,7 +61,7 @@
android:layout_width="1dp" android:layout_width="1dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_marginEnd="10dp" android:layout_marginEnd="10dp"
android:background="@color/c_border_background_divider" android:background="@color/c_navigation_medium"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pDismiss" app:layout_constraintEnd_toStartOf="@+id/pDismiss"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

View File

@ -12,6 +12,7 @@
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="60dp" android:layout_height="60dp"
android:layout_marginBottom="10dp"
android:background="@xml/ax_background_inverted" android:background="@xml/ax_background_inverted"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
@ -22,8 +23,8 @@
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="15dp" android:layout_marginStart="15dp"
android:layout_marginBottom="4dp"
android:alpha="0.8" android:alpha="0.8"
app:layout_constraintHorizontal_weight="1"
android:text="@string/ALERT_ORBOT_LOADING_INFO" android:text="@string/ALERT_ORBOT_LOADING_INFO"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textColor="@color/c_alert_text_inverted" android:textColor="@color/c_alert_text_inverted"
@ -31,12 +32,13 @@
android:textStyle="bold" android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/view6" app:layout_constraintEnd_toStartOf="@+id/view6"
app:layout_constraintHorizontal_weight="1"
app:layout_constraintStart_toStartOf="@+id/pMainLayout" app:layout_constraintStart_toStartOf="@+id/pMainLayout"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<Button <Button
android:id="@+id/pDismiss" android:id="@+id/pNext"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginTop="10dp" android:layout_marginTop="10dp"
@ -47,7 +49,7 @@
android:padding="0dp" android:padding="0dp"
android:paddingStart="10dp" android:paddingStart="10dp"
android:paddingEnd="10dp" android:paddingEnd="10dp"
android:text="@string/ALERT_DISMISS" android:text="@string/ALERT_ORBOT_LOADING_BUTTON"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/c_button_text_v1_inverted" android:textColor="@color/c_button_text_v1_inverted"
android:textSize="15sp" android:textSize="15sp"
@ -61,9 +63,9 @@
android:layout_width="1dp" android:layout_width="1dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_marginEnd="10dp" android:layout_marginEnd="10dp"
android:background="@color/c_border_background_divider" android:background="@color/c_navigation_medium"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pDismiss" app:layout_constraintEnd_toStartOf="@+id/pNext"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -4,106 +4,72 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_marginBottom="15dp"
android:layout_height="match_parent"> android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="wrap_content"
android:maxWidth="450dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner" android:layout_marginBottom="10dp"
android:background="@xml/ax_round_corner"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent">
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/pHeader"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:paddingEnd="15dp"
android:paddingStart="15dp"
android:text="@string/ALERT_PANIC"
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:maxWidth="450dp"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="5dp" android:layout_marginTop="18dp"
android:paddingEnd="15dp" android:alpha="1"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp"
android:text="@string/ALERT_PANIC_INFO" android:text="@string/ALERT_PANIC_INFO"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textColor="@color/c_alert_text" android:textColor="@color/c_text_v8"
android:textSize="13sp" android:lineSpacingExtra="3.5dp"
android:alpha="0.6" android:textSize="13.5sp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader" app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="25dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:id="@+id/pNavigationContainer"
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider">
<Button
android:id="@+id/pDismiss"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@xml/ax_ripple_default_round_left"
android:padding="0dp"
android:text="@string/ALERT_PANIC_BT_2"
android:textAllCaps="false"
android:textColor="@color/c_button_text_v2"
android:textSize="15sp"
android:textStyle="bold" />
<View
android:id="@+id/pDividerHorizontal"
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pRating" />
<Button <Button
android:id="@+id/pNext" android:id="@+id/pNext"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="40dp"
android:layout_weight="1" android:layout_gravity="center"
android:background="@xml/ax_ripple_default_round_right" android:layout_marginTop="30dp"
android:padding="0dp" android:layout_marginEnd="15dp"
android:layout_marginBottom="25dp"
android:background="@xml/ax_ripple_default_round_bottom"
android:text="@string/ALERT_PANIC_BT_1" android:text="@string/ALERT_PANIC_BT_1"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/c_button_warning" android:textColor="@color/white"
android:textSize="15sp" android:textSize="14sp"
android:textStyle="bold" /> app:layout_constraintBottom_toBottomOf="parent"
</LinearLayout> app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<Button
android:id="@+id/pDismiss"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_gravity="center"
android:layout_marginTop="30dp"
android:layout_marginEnd="10dp"
android:layout_marginBottom="25dp"
android:background="@xml/ax_ripple_default_round_bottom_secondary"
android:text="@string/ALERT_DISMISS"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pNext"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -7,103 +7,69 @@
android:layout_height="match_parent"> android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="wrap_content"
android:maxWidth="450dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner" android:layout_marginBottom="10dp"
android:background="@xml/ax_round_corner"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent">
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/pHeader"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:paddingEnd="15dp"
android:paddingStart="15dp"
android:text="@string/ALERT_RATEUS_FAILURE"
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:maxWidth="450dp"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="5dp" android:layout_marginTop="18dp"
android:alpha="0.6" android:alpha="1"
android:textColor="@color/c_alert_text"
android:paddingEnd="15dp"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp"
android:text="@string/ALERT_RATEUS_FAILURE_INFO" android:text="@string/ALERT_RATEUS_FAILURE_INFO"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textSize="13sp" android:textColor="@color/c_text_v8"
android:lineSpacingExtra="3.5dp"
android:textSize="13.5sp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader" app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="25dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:id="@+id/pNavigationContainer"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider"
android:orientation="horizontal">
<Button
android:id="@+id/pDismiss"
android:textColor="@color/c_button_text_v2"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:padding="0dp"
android:textAlignment="center"
android:background="@xml/ax_ripple_default_round_left"
android:textSize="15sp"
android:textAllCaps="false"
android:layout_weight="1"
android:textStyle="bold"
android:text="@string/ALERT_DISMISS" />
<View
android:id="@+id/pDividerHorizontal"
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<Button <Button
android:id="@+id/pNext" android:id="@+id/pNext"
android:textColor="@color/c_button_text_v3"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="40dp"
android:textAlignment="center" android:layout_gravity="center"
android:background="@xml/ax_ripple_default_round_right" android:layout_marginTop="25dp"
android:padding="0dp" android:layout_marginEnd="15dp"
android:textSize="15sp" android:layout_marginBottom="20dp"
android:background="@xml/ax_ripple_default_round_bottom"
android:text="@string/ALERT_MAIL"
android:textAllCaps="false" android:textAllCaps="false"
android:layout_weight="1" android:textColor="@color/white"
android:textStyle="bold" android:textSize="14sp"
android:text="@string/ALERT_MAIL" /> app:layout_constraintBottom_toBottomOf="parent"
</LinearLayout> app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<Button
android:id="@+id/pDismiss"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_gravity="center"
android:layout_marginTop="25dp"
android:layout_marginEnd="10dp"
android:layout_marginBottom="20dp"
android:background="@xml/ax_ripple_default_round_bottom_secondary"
android:text="@string/ALERT_DISMISS"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/pNext"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -10,7 +10,7 @@
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner" android:background="@xml/ax_round_corner"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
@ -21,7 +21,7 @@
android:id="@+id/pHeader" android:id="@+id/pHeader"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="8dp" android:layout_marginTop="15dp"
android:text="@string/ALERT_RATEUS" android:text="@string/ALERT_RATEUS"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2" android:textColor="@color/c_text_setting_heading_v2"
@ -55,12 +55,12 @@
android:id="@+id/pRating" android:id="@+id/pRating"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="10dp" android:layout_marginTop="5dp"
android:foregroundTint="@color/white" android:foregroundTint="@color/white"
android:progressBackgroundTint="@color/c_rateus_warning" android:progressBackgroundTint="@color/c_rateus_warning"
android:rating="0.5"
android:scaleX="0.65" android:scaleX="0.65"
android:scaleY="0.65" android:scaleY="0.65"
android:rating="0.5"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
@ -68,60 +68,42 @@
</RatingBar> </RatingBar>
<View <Button
android:id="@+id/pDivider" android:id="@+id/pNext"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="1dp" android:layout_height="40dp"
android:layout_marginTop="5dp" android:layout_gravity="center"
android:background="@color/c_view_divier_background" android:layout_marginTop="15dp"
android:layout_marginEnd="15dp"
android:layout_marginBottom="20dp"
android:background="@xml/ax_ripple_default_round_bottom"
android:text="@string/ALERT_RATE"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.73"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pRating" /> app:layout_constraintTop_toBottomOf="@+id/pRating" />
<LinearLayout
android:id="@+id/pNavigationContainer"
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider">
<Button <Button
android:id="@+id/pDismiss" android:id="@+id/pDismiss"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="40dp"
android:layout_weight="1" android:layout_gravity="center"
android:background="@xml/ax_ripple_default_round_left" android:layout_marginTop="15dp"
android:padding="0dp" android:layout_marginEnd="15dp"
android:background="@xml/ax_ripple_default_round_bottom_secondary"
android:text="@string/ALERT_DISMISS" android:text="@string/ALERT_DISMISS"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/c_button_text_v2" android:textColor="@color/white"
android:textSize="15sp" android:textSize="14sp"
android:textStyle="bold" /> app:layout_constraintEnd_toStartOf="@+id/pNext"
app:layout_constraintHorizontal_bias="0.83"
<View
android:id="@+id/pDividerHorizontal"
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pRating" /> app:layout_constraintTop_toBottomOf="@+id/pRating" />
<Button
android:id="@+id/pNext"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@xml/ax_ripple_default_round_right"
android:padding="0dp"
android:text="@string/ALERT_RATE"
android:textAllCaps="false"
android:textColor="@color/c_button_text_v3"
android:textSize="15sp"
android:textStyle="bold" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

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

View File

@ -1,111 +0,0 @@
<?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"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/pMainLayout"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/pHeader"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:paddingEnd="15dp"
android:paddingStart="15dp"
android:text="@string/ALERT_REPORT_URL"
android:singleLine="true"
android:ellipsize="end"
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/pDescription"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginEnd="3dp"
android:alpha="0.6"
android:paddingStart="15dp"
android:paddingEnd="10dp"
android:text="@string/ALERT_REPORT_URL_INFO"
android:textAlignment="textStart"
android:textColor="@color/c_alert_text"
android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader"
tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="35dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:id="@+id/pNavigationContainer"
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider">
<Button
android:id="@+id/pDismiss"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@xml/ax_ripple_default_round_left"
android:padding="0dp"
android:text="@string/ALERT_DISMISS"
android:textAllCaps="false"
android:textColor="@color/c_button_text_v2"
android:textSize="15sp"
android:textStyle="bold" />
<View
android:id="@+id/pDividerHorizontal"
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<Button
android:id="@+id/pNext"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@xml/ax_ripple_default_round_right"
android:padding="0dp"
android:text="@string/ALERT_REPORT"
android:textAllCaps="false"
android:textColor="@color/c_button_text_v3"
android:textSize="15sp"
android:textStyle="bold" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -1,94 +0,0 @@
<?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"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:id="@+id/pMainLayout"
android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/pHeader"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:paddingEnd="15dp"
android:paddingStart="15dp"
android:text="@string/ALERT_REPORT_URL_SUCCESS"
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/pDescription"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:paddingEnd="15dp"
android:paddingStart="15dp"
android:text="@string/ALERT_REPORT_URL_SUCCESS_INFO"
android:textAlignment="textStart"
android:textColor="@color/c_alert_text"
android:textSize="13sp"
android:alpha="0.6"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader"
tools:ignore="SmallSp" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="25dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:id="@+id/pNavigationContainer"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider"
android:orientation="horizontal">
<Button
android:id="@+id/pNext"
android:textColor="@color/c_button_text_v1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:padding="0dp"
android:background="@xml/ax_ripple_default_round_bottom"
android:textSize="15sp"
android:textAllCaps="false"
android:layout_weight="1"
android:textStyle="bold"/>
<View
android:id="@+id/pDividerHorizontal"
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

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

View File

@ -10,43 +10,29 @@
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner" android:background="@xml/ax_round_corner"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"> app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/pHeader"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:paddingStart="15dp"
android:paddingEnd="15dp"
android:text="@string/ALERT_UPDATE_BRIDGES"
android:textAlignment="textStart"
android:textColor="@color/c_text_setting_heading_v2"
android:textSize="17sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="5dp" android:layout_marginTop="18dp"
android:alpha="0.6" android:alpha="0.8"
android:paddingStart="15dp" android:paddingStart="15dp"
android:paddingEnd="15dp" android:paddingEnd="15dp"
android:text="@string/ALERT_UPDATE_BRIDGES_INFO" android:text="@string/ALERT_UPDATE_BRIDGES_INFO"
android:lineSpacingExtra="3.5dp"
android:textAlignment="textStart" android:textAlignment="textStart"
android:textColor="@color/c_alert_text" android:textColor="@color/c_alert_text"
android:textSize="13sp" android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pHeader" app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<TextView <TextView
@ -74,7 +60,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="10dp" android:layout_marginStart="10dp"
android:layout_marginTop="15dp" android:layout_marginTop="15dp"
android:layout_marginEnd="48dp" android:layout_marginEnd="60dp"
android:background="@xml/gx_generic_input" android:background="@xml/gx_generic_input"
android:elevation="3dp" android:elevation="3dp"
android:ems="10" android:ems="10"
@ -86,7 +72,7 @@
android:paddingStart="11dp" android:paddingStart="11dp"
android:paddingEnd="8dp" android:paddingEnd="8dp"
android:textColor="@color/c_text_v1" android:textColor="@color/c_text_v1"
android:textColorHighlight="@color/text_color_highlight_v3" android:textColorHighlight="@color/c_text_color_highlight_v2"
android:textColorHint="@color/c_text_v2" android:textColorHint="@color/c_text_v2"
android:textCursorDrawable="@xml/gx_search_cursor_state" android:textCursorDrawable="@xml/gx_search_cursor_state"
android:textSize="14sp" android:textSize="14sp"
@ -113,11 +99,10 @@
android:paddingStart="11dp" android:paddingStart="11dp"
android:paddingEnd="8dp" android:paddingEnd="8dp"
android:textColor="@color/c_text_v1" android:textColor="@color/c_text_v1"
android:textColorHighlight="@color/text_color_highlight_v3" android:textColorHighlight="@color/c_text_color_highlight_v2"
android:textColorHint="@color/c_text_v2" android:textColorHint="@color/c_text_v2"
android:textCursorDrawable="@xml/gx_search_cursor_state" android:textCursorDrawable="@xml/gx_search_cursor_state"
android:textSize="14sp" android:textSize="14sp"
app:layout_constraintEnd_toEndOf="@+id/pDivider"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pBridgeInput" /> app:layout_constraintTop_toBottomOf="@+id/pBridgeInput" />
@ -126,7 +111,7 @@
android:layout_width="33dp" android:layout_width="33dp"
android:layout_height="33dp" android:layout_height="33dp"
android:layout_marginTop="8dp" android:layout_marginTop="8dp"
android:layout_marginEnd="9dp" android:layout_marginEnd="17dp"
android:layout_marginBottom="4dp" android:layout_marginBottom="4dp"
android:elevation="3dp" android:elevation="3dp"
android:background="@xml/hox_rounded_corner_splash" android:background="@xml/hox_rounded_corner_splash"
@ -136,60 +121,39 @@
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" /> app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<View
android:id="@+id/pDivider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="10dp"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescriptionError" />
<LinearLayout
android:id="@+id/pNavigationContainer"
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider">
<Button <Button
android:id="@+id/pBridgeRequest" android:id="@+id/pBridgeRequest"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="40dp"
android:layout_weight="1" android:layout_gravity="center"
android:background="@xml/ax_ripple_default_round_left" android:layout_marginTop="20dp"
android:padding="0dp" android:layout_marginEnd="15dp"
android:text="@string/ALERT_REQUEST_BRIDGE" android:layout_marginBottom="20dp"
android:background="@xml/ax_ripple_default_round_bottom"
android:text="@string/ALERT_SAVE_BRIDGE"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/c_button_text_v1" android:textColor="@color/white"
android:textSize="15sp" android:textSize="14sp"
android:textStyle="bold" /> app:layout_constraintBottom_toBottomOf="parent"
<View
android:id="@+id/pDividerHorizontal"
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/pBridgeInput" />
app:layout_constraintTop_toBottomOf="@+id/pDescription" />
<Button <Button
android:id="@+id/pNext" android:id="@+id/pNext"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="40dp"
android:layout_weight="1" android:layout_gravity="center"
android:background="@xml/ax_ripple_default_round_right" android:layout_marginTop="20dp"
android:padding="0dp" android:layout_marginEnd="15dp"
android:text="@string/ALERT_SAVE_BRIDGE" android:layout_marginBottom="20dp"
android:background="@xml/ax_ripple_default_round_bottom_secondary"
android:text="@string/ALERT_REQUEST_BRIDGE"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/c_button_text_v1" android:textColor="@color/white"
android:textSize="15sp" android:textSize="14sp"
android:textStyle="bold" /> app:layout_constraintBottom_toBottomOf="parent"
</LinearLayout> app:layout_constraintEnd_toStartOf="@+id/pBridgeRequest"
app:layout_constraintTop_toBottomOf="@+id/pBridgeInput" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -7,68 +7,78 @@
android:layout_height="match_parent"> android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:id="@+id/pMainLayout" android:id="@+id/pMainLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@xml/hox_rounded_corner" android:background="@xml/ax_round_corner"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"> app:layout_constraintTop_toTopOf="parent">
<TextView <androidx.cardview.widget.CardView
android:id="@+id/pHeader" android:id="@+id/cardView2"
android:layout_width="match_parent" android:layout_width="34dp"
android:layout_height="wrap_content" android:layout_height="34dp"
android:layout_marginTop="10dp" android:layout_marginStart="14dp"
android:paddingEnd="15dp" android:layout_marginTop="12dp"
android:paddingStart="15dp" android:gravity="center_vertical"
android:text="@string/ALERT_LONG_URL" android:padding="20dp"
android:gravity="start" app:cardCornerRadius="5dp"
android:textColor="@color/c_text_setting_heading_v2"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent">
<ImageView
android:id="@+id/pFaviconLogo"
android:layout_width="34dp"
android:layout_height="34dp"
android:contentDescription="@string/GENERAL_TODO"
android:src="@xml/ic_baseline_browser"
android:textAlignment="center"
android:textColor="@color/white"
tools:ignore="RtlCompat" />
</androidx.cardview.widget.CardView>
<TextView <TextView
android:id="@+id/pDescription" android:id="@+id/pDescription"
android:layout_width="match_parent" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="10dp" android:layout_marginTop="12dp"
android:text="@string/GENERAL_DEFAULT_TEXT"
android:paddingStart="15dp"
android:textColor="@color/c_alert_text"
android:alpha="0.6" android:alpha="0.6"
android:paddingEnd="15dp" android:gravity="start |center_vertical"
android:maxLines="5" android:maxLines="2"
android:layout_marginEnd="20dp" android:paddingStart="15dp"
android:paddingEnd="41dp"
android:text="@string/GENERAL_DEFAULT_TEXT"
android:textColor="@color/c_alert_text"
android:textDirection="locale" android:textDirection="locale"
android:textAlignment="viewStart" android:textSize="12.5sp"
android:textSize="12sp" android:translationY="-1dp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toEndOf="@+id/cardView2"
app:layout_constraintTop_toBottomOf="@+id/pHeader" app:layout_constraintTop_toTopOf="parent"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<View <View
android:id="@+id/pDivider" android:id="@+id/pDivider"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="1dp" android:layout_height="1dp"
android:layout_marginTop="20dp" android:layout_marginTop="15dp"
android:background="@color/c_view_divier_background" android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDescription" /> app:layout_constraintTop_toBottomOf="@+id/cardView2" />
<LinearLayout <LinearLayout
android:id="@+id/pNavigationContainer"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:id="@+id/pNavigationContainer" android:orientation="vertical"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider" app:layout_constraintTop_toBottomOf="@+id/pDivider">
android:orientation="vertical">
<LinearLayout <LinearLayout
android:id="@+id/pOption1" android:id="@+id/pOption1"
android:layout_width="match_parent" android:layout_width="match_parent"
@ -101,9 +111,9 @@
android:layout_weight="1" android:layout_weight="1"
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:scaleX="0.5" android:scaleX="0.5"
app:tint="@color/c_navigation_tint"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" /> app:srcCompat="@xml/ic_arrow_right"
app:tint="@color/cursor_blue" />
</LinearLayout> </LinearLayout>
@ -147,9 +157,9 @@
android:layout_weight="1" android:layout_weight="1"
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:scaleX="0.5" android:scaleX="0.5"
app:tint="@color/c_navigation_tint"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" /> app:srcCompat="@xml/ic_arrow_right"
app:tint="@color/cursor_blue" />
</LinearLayout> </LinearLayout>
@ -193,17 +203,17 @@
android:layout_weight="1" android:layout_weight="1"
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:scaleX="0.5" android:scaleX="0.5"
app:tint="@color/c_navigation_tint"
android:scaleY="0.5" android:scaleY="0.5"
app:srcCompat="@xml/ic_arrow_right" /> app:srcCompat="@xml/ic_arrow_right"
app:tint="@color/cursor_blue" />
</LinearLayout> </LinearLayout>
<View <View
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="1dp" android:layout_height="1dp"
android:layout_marginEnd="30dp"
android:layout_marginStart="30dp" android:layout_marginStart="30dp"
android:layout_marginEnd="30dp"
android:background="@color/c_view_divier_background" android:background="@color/c_view_divier_background"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
@ -213,6 +223,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="horizontal" android:orientation="horizontal"
android:paddingBottom="6dp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pDivider"> app:layout_constraintTop_toBottomOf="@+id/pDivider">
@ -222,7 +233,7 @@
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="45dp" android:layout_height="45dp"
android:layout_weight="1" android:layout_weight="1"
android:background="@xml/ax_ripple_default_round_bottom" android:background="@xml/gx_ripple_gray_bottom"
android:padding="0dp" android:padding="0dp"
android:text="@string/ALERT_DISMISS" android:text="@string/ALERT_DISMISS"
android:textAlignment="center" android:textAlignment="center"

Some files were not shown because too many files have changed in this diff Show More