summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas <tschneider.ac@gmail.com>2022-06-30 18:54:29 +0200
committerThomas <tschneider.ac@gmail.com>2022-06-30 18:54:29 +0200
commitb2b01e5c21f918fc6351ecfd82082c7fbbb52e22 (patch)
treecdaee406d23ad44cb431e7f185b34d5bc4deb432
parentc13bc945eeab956d7d1eb7276ba9954f13dcc434 (diff)
parent6a692cd1ccfa199431c61aee07fbc05b4d23041f (diff)
Merge branch 'develop' into main3.0.2
-rw-r--r--app/build.gradle4
-rw-r--r--app/src/main/java/app/fedilab/android/BaseMainActivity.java6
-rw-r--r--app/src/main/java/app/fedilab/android/activities/AboutActivity.java5
-rw-r--r--app/src/main/java/app/fedilab/android/activities/AdminAccountActivity.java16
-rw-r--r--app/src/main/java/app/fedilab/android/activities/AdminReportActivity.java16
-rw-r--r--app/src/main/java/app/fedilab/android/activities/ContextActivity.java7
-rw-r--r--app/src/main/java/app/fedilab/android/activities/PartnerShipActivity.java5
-rw-r--r--app/src/main/java/app/fedilab/android/activities/ProfileActivity.java2
-rw-r--r--app/src/main/java/app/fedilab/android/activities/WebviewActivity.java36
-rw-r--r--app/src/main/java/app/fedilab/android/activities/WebviewConnectActivity.java31
-rw-r--r--app/src/main/java/app/fedilab/android/client/endpoints/MastodonTimelinesService.java2
-rw-r--r--app/src/main/java/app/fedilab/android/client/entities/app/BottomMenu.java9
-rw-r--r--app/src/main/java/app/fedilab/android/client/entities/app/DomainsBlock.java127
-rw-r--r--app/src/main/java/app/fedilab/android/client/entities/nitter/Nitter.java10
-rw-r--r--app/src/main/java/app/fedilab/android/helper/CountDrawable.java116
-rw-r--r--app/src/main/java/app/fedilab/android/helper/CrossActionHelper.java9
-rw-r--r--app/src/main/java/app/fedilab/android/helper/Helper.java29
-rw-r--r--app/src/main/java/app/fedilab/android/helper/MastodonHelper.java4
-rw-r--r--app/src/main/java/app/fedilab/android/helper/NotificationsHelper.java3
-rw-r--r--app/src/main/java/app/fedilab/android/helper/PinnedTimelineHelper.java52
-rw-r--r--app/src/main/java/app/fedilab/android/helper/PushHelper.java10
-rw-r--r--app/src/main/java/app/fedilab/android/helper/TimelineHelper.java11
-rw-r--r--app/src/main/java/app/fedilab/android/services/PostMessageService.java3
-rw-r--r--app/src/main/java/app/fedilab/android/sqlite/Sqlite.java13
-rw-r--r--app/src/main/java/app/fedilab/android/ui/drawer/AccountFollowRequestAdapter.java26
-rw-r--r--app/src/main/java/app/fedilab/android/ui/drawer/AnnouncementAdapter.java18
-rw-r--r--app/src/main/java/app/fedilab/android/ui/drawer/ComposeAdapter.java5
-rw-r--r--app/src/main/java/app/fedilab/android/ui/drawer/ReactionAdapter.java6
-rw-r--r--app/src/main/java/app/fedilab/android/ui/drawer/StatusAdapter.java5
-rw-r--r--app/src/main/java/app/fedilab/android/ui/fragment/login/FragmentLoginMain.java45
-rw-r--r--app/src/main/java/app/fedilab/android/ui/fragment/settings/FragmentComposeSettings.java6
-rw-r--r--app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonNotification.java7
-rw-r--r--app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java14
-rw-r--r--app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentNotificationContainer.java40
-rw-r--r--app/src/main/java/app/fedilab/android/viewmodel/mastodon/TimelinesVM.java5
-rw-r--r--app/src/main/java/app/fedilab/android/webview/FedilabWebViewClient.java12
-rw-r--r--app/src/main/res/drawable/browser_calls_blocked.xml12
-rw-r--r--app/src/main/res/drawable/ic_block_script.xml9
-rw-r--r--app/src/main/res/drawable/ic_tl_list.xml11
-rw-r--r--app/src/main/res/drawable/ic_tl_tag.xml10
-rw-r--r--app/src/main/res/layout/tab_custom_view.xml23
-rw-r--r--app/src/main/res/menu/main_webview.xml2
-rw-r--r--app/src/main/res/values/dimens.xml2
-rw-r--r--src/fdroid/fastlane/metadata/android/en/changelogs/393.txt2
44 files changed, 589 insertions, 197 deletions
diff --git a/app/build.gradle b/app/build.gradle
index 9aad03318..b541a491d 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -9,8 +9,8 @@ android {
defaultConfig {
minSdk 21
targetSdk 31
- versionCode 391
- versionName "3.0.1"
+ versionCode 393
+ versionName "3.0.2"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
flavorDimensions "default"
diff --git a/app/src/main/java/app/fedilab/android/BaseMainActivity.java b/app/src/main/java/app/fedilab/android/BaseMainActivity.java
index 2f733a7cc..c69760d7a 100644
--- a/app/src/main/java/app/fedilab/android/BaseMainActivity.java
+++ b/app/src/main/java/app/fedilab/android/BaseMainActivity.java
@@ -109,6 +109,7 @@ import app.fedilab.android.client.entities.api.Status;
import app.fedilab.android.client.entities.app.Account;
import app.fedilab.android.client.entities.app.BaseAccount;
import app.fedilab.android.client.entities.app.BottomMenu;
+import app.fedilab.android.client.entities.app.DomainsBlock;
import app.fedilab.android.client.entities.app.Pinned;
import app.fedilab.android.client.entities.app.PinnedTimeline;
import app.fedilab.android.databinding.ActivityMainBinding;
@@ -612,7 +613,7 @@ public abstract class BaseMainActivity extends BaseActivity implements NetworkSt
binding.profilePicture.setOnClickListener(v -> binding.drawerLayout.openDrawer(GravityCompat.START));
Helper.loadPP(binding.profilePicture, currentAccount);
headerMainBinding.accountAcc.setText(String.format("%s@%s", currentAccount.mastodon_account.username, currentAccount.instance));
- if (currentAccount.mastodon_account.display_name.isEmpty()) {
+ if (currentAccount.mastodon_account.display_name == null || currentAccount.mastodon_account.display_name.isEmpty()) {
currentAccount.mastodon_account.display_name = currentAccount.mastodon_account.acct;
}
headerMainBinding.accountName.setText(currentAccount.mastodon_account.display_name);
@@ -694,7 +695,7 @@ public abstract class BaseMainActivity extends BaseActivity implements NetworkSt
binding.toolbarSearch.setOnSearchClickListener(v -> binding.tabLayout.setVisibility(View.VISIBLE));
//For receiving data from other activities
LocalBroadcastManager.getInstance(BaseMainActivity.this).registerReceiver(broadcast_data, new IntentFilter(Helper.BROADCAST_DATA));
- if (emojis == null || !emojis.containsKey(MainActivity.currentInstance)) {
+ if (emojis == null || !emojis.containsKey(BaseMainActivity.currentInstance)) {
new Thread(() -> {
try {
emojis.put(currentInstance, new EmojiInstance(BaseMainActivity.this).getEmojiList(BaseMainActivity.currentInstance));
@@ -703,6 +704,7 @@ public abstract class BaseMainActivity extends BaseActivity implements NetworkSt
}
}).start();
}
+ DomainsBlock.updateDomains(BaseMainActivity.this);
}
diff --git a/app/src/main/java/app/fedilab/android/activities/AboutActivity.java b/app/src/main/java/app/fedilab/android/activities/AboutActivity.java
index 7a780a11a..54974a2c4 100644
--- a/app/src/main/java/app/fedilab/android/activities/AboutActivity.java
+++ b/app/src/main/java/app/fedilab/android/activities/AboutActivity.java
@@ -30,6 +30,7 @@ import androidx.lifecycle.ViewModelProvider;
import java.util.ArrayList;
import java.util.List;
+import app.fedilab.android.BaseMainActivity;
import app.fedilab.android.BuildConfig;
import app.fedilab.android.R;
import app.fedilab.android.client.entities.api.Account;
@@ -112,12 +113,12 @@ public class AboutActivity extends BaseActivity {
AccountsVM accountsVM = new ViewModelProvider(AboutActivity.this).get(AccountsVM.class);
List<String> ids = new ArrayList<>();
ids.add(account.id);
- accountsVM.getRelationships(MainActivity.currentInstance, MainActivity.currentToken, ids)
+ accountsVM.getRelationships(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, ids)
.observe(AboutActivity.this, relationShips -> {
if (relationShips != null && relationShips.size() > 0) {
if (!relationShips.get(0).following) {
binding.accountFollow.setVisibility(View.VISIBLE);
- binding.accountFollow.setOnClickListener(v -> accountsVM.follow(MainActivity.currentInstance, MainActivity.currentToken, account.id, true, false)
+ binding.accountFollow.setOnClickListener(v -> accountsVM.follow(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id, true, false)
.observe(AboutActivity.this, relationShip -> binding.accountFollow.setVisibility(View.GONE)));
}
}
diff --git a/app/src/main/java/app/fedilab/android/activities/AdminAccountActivity.java b/app/src/main/java/app/fedilab/android/activities/AdminAccountActivity.java
index 9ebe475d1..8421d924a 100644
--- a/app/src/main/java/app/fedilab/android/activities/AdminAccountActivity.java
+++ b/app/src/main/java/app/fedilab/android/activities/AdminAccountActivity.java
@@ -171,14 +171,14 @@ public class AdminAccountActivity extends BaseActivity {
binding.disableAction.setOnClickListener(v -> {
if (adminAccount.disabled) {
- adminVM.enable(MainActivity.currentInstance, MainActivity.currentToken, account.id)
+ adminVM.enable(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id)
.observe(AdminAccountActivity.this, adminAccountResult -> {
adminAccount.disabled = false;
binding.disableAction.setText(R.string.disable);
binding.disabled.setText(R.string.no);
});
} else {
- adminVM.performAction(MainActivity.currentInstance, MainActivity.currentToken, account.id, "disable ", null, null, null, null);
+ adminVM.performAction(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id, "disable ", null, null, null, null);
adminAccount.disabled = true;
binding.disableAction.setText(R.string.undisable);
binding.disabled.setText(R.string.yes);
@@ -187,14 +187,14 @@ public class AdminAccountActivity extends BaseActivity {
binding.approveAction.setOnClickListener(v -> {
if (adminAccount.approved) {
- adminVM.reject(MainActivity.currentInstance, MainActivity.currentToken, account.id)
+ adminVM.reject(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id)
.observe(AdminAccountActivity.this, adminAccountResult -> {
adminAccount.approved = false;
binding.approveAction.setText(R.string.approve);
binding.approved.setText(R.string.no);
});
} else {
- adminVM.approve(MainActivity.currentInstance, MainActivity.currentToken, account.id);
+ adminVM.approve(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id);
adminAccount.approved = true;
binding.approveAction.setText(R.string.reject);
binding.approved.setText(R.string.yes);
@@ -203,14 +203,14 @@ public class AdminAccountActivity extends BaseActivity {
binding.silenceAction.setOnClickListener(v -> {
if (adminAccount.disabled) {
- adminVM.unsilence(MainActivity.currentInstance, MainActivity.currentToken, account.id)
+ adminVM.unsilence(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id)
.observe(AdminAccountActivity.this, adminAccountResult -> {
adminAccount.silenced = false;
binding.silenceAction.setText(R.string.silence);
binding.disabled.setText(R.string.no);
});
} else {
- adminVM.performAction(MainActivity.currentInstance, MainActivity.currentToken, account.id, "silence", null, null, null, null);
+ adminVM.performAction(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id, "silence", null, null, null, null);
adminAccount.silenced = true;
binding.disableAction.setText(R.string.unsilence);
binding.disabled.setText(R.string.yes);
@@ -219,14 +219,14 @@ public class AdminAccountActivity extends BaseActivity {
binding.suspendAction.setOnClickListener(v -> {
if (adminAccount.disabled) {
- adminVM.unsuspend(MainActivity.currentInstance, MainActivity.currentToken, account.id)
+ adminVM.unsuspend(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id)
.observe(AdminAccountActivity.this, adminAccountResult -> {
adminAccount.suspended = false;
binding.suspendAction.setText(R.string.suspend);
binding.suspended.setText(R.string.no);
});
} else {
- adminVM.performAction(MainActivity.currentInstance, MainActivity.currentToken, account.id, "suspend", null, null, null, null);
+ adminVM.performAction(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id, "suspend", null, null, null, null);
adminAccount.suspended = true;
binding.disableAction.setText(R.string.unsuspend);
binding.suspended.setText(R.string.yes);
diff --git a/app/src/main/java/app/fedilab/android/activities/AdminReportActivity.java b/app/src/main/java/app/fedilab/android/activities/AdminReportActivity.java
index d3727cf3d..701dbd07f 100644
--- a/app/src/main/java/app/fedilab/android/activities/AdminReportActivity.java
+++ b/app/src/main/java/app/fedilab/android/activities/AdminReportActivity.java
@@ -171,7 +171,7 @@ public class AdminReportActivity extends BaseActivity {
binding.disableAction.setOnClickListener(v -> {
if (adminAccount.disabled) {
- adminVM.enable(MainActivity.currentInstance, MainActivity.currentToken, account.id)
+ adminVM.enable(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id)
.observe(AdminReportActivity.this, adminAccountResult -> {
if (adminAccountResult != null) {
adminAccount.disabled = false;
@@ -183,7 +183,7 @@ public class AdminReportActivity extends BaseActivity {
});
} else {
- adminVM.performAction(MainActivity.currentInstance, MainActivity.currentToken, account.id, "disable ", null, null, null, null);
+ adminVM.performAction(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id, "disable ", null, null, null, null);
adminAccount.disabled = true;
binding.disableAction.setText(R.string.undisable);
binding.disabled.setText(R.string.yes);
@@ -192,7 +192,7 @@ public class AdminReportActivity extends BaseActivity {
binding.approveAction.setOnClickListener(v -> {
if (adminAccount.approved) {
- adminVM.reject(MainActivity.currentInstance, MainActivity.currentToken, account.id)
+ adminVM.reject(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id)
.observe(AdminReportActivity.this, adminAccountResult -> {
if (adminAccountResult != null) {
adminAccount.approved = false;
@@ -204,7 +204,7 @@ public class AdminReportActivity extends BaseActivity {
});
} else {
- adminVM.approve(MainActivity.currentInstance, MainActivity.currentToken, account.id);
+ adminVM.approve(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id);
adminAccount.approved = true;
binding.approveAction.setText(R.string.reject);
binding.approved.setText(R.string.yes);
@@ -213,7 +213,7 @@ public class AdminReportActivity extends BaseActivity {
binding.silenceAction.setOnClickListener(v -> {
if (adminAccount.disabled) {
- adminVM.unsilence(MainActivity.currentInstance, MainActivity.currentToken, account.id)
+ adminVM.unsilence(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id)
.observe(AdminReportActivity.this, adminAccountResult -> {
if (adminAccountResult != null) {
adminAccount.silenced = false;
@@ -224,7 +224,7 @@ public class AdminReportActivity extends BaseActivity {
}
});
} else {
- adminVM.performAction(MainActivity.currentInstance, MainActivity.currentToken, account.id, "silence", null, null, null, null);
+ adminVM.performAction(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id, "silence", null, null, null, null);
adminAccount.silenced = true;
binding.disableAction.setText(R.string.unsilence);
binding.disabled.setText(R.string.yes);
@@ -233,7 +233,7 @@ public class AdminReportActivity extends BaseActivity {
binding.suspendAction.setOnClickListener(v -> {
if (adminAccount.disabled) {
- adminVM.unsuspend(MainActivity.currentInstance, MainActivity.currentToken, account.id)
+ adminVM.unsuspend(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id)
.observe(AdminReportActivity.this, adminAccountResult -> {
if (adminAccountResult != null) {
adminAccount.suspended = false;
@@ -244,7 +244,7 @@ public class AdminReportActivity extends BaseActivity {
}
});
} else {
- adminVM.performAction(MainActivity.currentInstance, MainActivity.currentToken, account.id, "suspend", null, null, null, null);
+ adminVM.performAction(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id, "suspend", null, null, null, null);
adminAccount.suspended = true;
binding.disableAction.setText(R.string.unsuspend);
binding.suspended.setText(R.string.yes);
diff --git a/app/src/main/java/app/fedilab/android/activities/ContextActivity.java b/app/src/main/java/app/fedilab/android/activities/ContextActivity.java
index 3710edf75..51fd8f320 100644
--- a/app/src/main/java/app/fedilab/android/activities/ContextActivity.java
+++ b/app/src/main/java/app/fedilab/android/activities/ContextActivity.java
@@ -34,6 +34,7 @@ import androidx.fragment.app.Fragment;
import androidx.lifecycle.ViewModelProvider;
import androidx.preference.PreferenceManager;
+import app.fedilab.android.BaseMainActivity;
import app.fedilab.android.R;
import app.fedilab.android.client.entities.api.Status;
import app.fedilab.android.client.entities.app.QuickLoad;
@@ -97,11 +98,11 @@ public class ContextActivity extends BaseActivity {
mainHandler.post(myRunnable);
}).start();
StatusesVM timelinesVM = new ViewModelProvider(ContextActivity.this).get(StatusesVM.class);
- timelinesVM.getStatus(MainActivity.currentInstance, MainActivity.currentToken, focusedStatus.id).observe(ContextActivity.this, status -> {
+ timelinesVM.getStatus(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, focusedStatus.id).observe(ContextActivity.this, status -> {
if (status != null) {
StatusCache statusCache = new StatusCache();
- statusCache.instance = MainActivity.currentInstance;
- statusCache.user_id = MainActivity.currentUserID;
+ statusCache.instance = BaseMainActivity.currentInstance;
+ statusCache.user_id = BaseMainActivity.currentUserID;
statusCache.status = status;
statusCache.status_id = status.id;
//Update cache
diff --git a/app/src/main/java/app/fedilab/android/activities/PartnerShipActivity.java b/app/src/main/java/app/fedilab/android/activities/PartnerShipActivity.java
index ffa8e1307..353897f1c 100644
--- a/app/src/main/java/app/fedilab/android/activities/PartnerShipActivity.java
+++ b/app/src/main/java/app/fedilab/android/activities/PartnerShipActivity.java
@@ -31,6 +31,7 @@ import androidx.lifecycle.ViewModelProvider;
import java.util.ArrayList;
import java.util.List;
+import app.fedilab.android.BaseMainActivity;
import app.fedilab.android.R;
import app.fedilab.android.client.entities.api.Account;
import app.fedilab.android.client.entities.api.Status;
@@ -92,12 +93,12 @@ public class PartnerShipActivity extends BaseActivity {
AccountsVM accountsVM = new ViewModelProvider(PartnerShipActivity.this).get(AccountsVM.class);
List<String> ids = new ArrayList<>();
ids.add(account.id);
- accountsVM.getRelationships(MainActivity.currentInstance, MainActivity.currentToken, ids)
+ accountsVM.getRelationships(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, ids)
.observe(PartnerShipActivity.this, relationShips -> {
if (relationShips != null && relationShips.size() > 0) {
if (!relationShips.get(0).following) {
binding.accountFollow.setVisibility(View.VISIBLE);
- binding.accountFollow.setOnClickListener(v -> accountsVM.follow(MainActivity.currentInstance, MainActivity.currentToken, account.id, true, false)
+ binding.accountFollow.setOnClickListener(v -> accountsVM.follow(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id, true, false)
.observe(PartnerShipActivity.this, relationShip -> binding.accountFollow.setVisibility(View.GONE)));
}
}
diff --git a/app/src/main/java/app/fedilab/android/activities/ProfileActivity.java b/app/src/main/java/app/fedilab/android/activities/ProfileActivity.java
index ec1f3a9c1..e8d8fc522 100644
--- a/app/src/main/java/app/fedilab/android/activities/ProfileActivity.java
+++ b/app/src/main/java/app/fedilab/android/activities/ProfileActivity.java
@@ -348,7 +348,7 @@ public class ProfileActivity extends BaseActivity {
binding.accountMoved.setText(spannableString, TextView.BufferType.SPANNABLE);
binding.accountMoved.setMovementMethod(LinkMovementMethod.getInstance());
}
- if (account.acct.contains("@"))
+ if (account.acct != null && account.acct.contains("@"))
binding.warningMessage.setVisibility(View.VISIBLE);
else
binding.warningMessage.setVisibility(View.GONE);
diff --git a/app/src/main/java/app/fedilab/android/activities/WebviewActivity.java b/app/src/main/java/app/fedilab/android/activities/WebviewActivity.java
index 818c62499..5c355ee62 100644
--- a/app/src/main/java/app/fedilab/android/activities/WebviewActivity.java
+++ b/app/src/main/java/app/fedilab/android/activities/WebviewActivity.java
@@ -14,17 +14,18 @@ package app.fedilab.android.activities;
* You should have received a copy of the GNU General Public License along with Fedilab; if not,
* see <http://www.gnu.org/licenses>. */
+
import android.Manifest;
import android.annotation.SuppressLint;
+import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
-import android.database.sqlite.SQLiteDatabase;
import android.graphics.drawable.ColorDrawable;
+import android.graphics.drawable.Drawable;
+import android.graphics.drawable.LayerDrawable;
import android.net.Uri;
-import android.os.AsyncTask;
import android.os.Build;
import android.os.Bundle;
-import android.os.Handler;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
@@ -39,14 +40,13 @@ import androidx.core.content.ContextCompat;
import org.jetbrains.annotations.NotNull;
-import java.util.ArrayList;
import java.util.List;
import app.fedilab.android.R;
import app.fedilab.android.databinding.ActivityWebviewBinding;
+import app.fedilab.android.helper.CountDrawable;
import app.fedilab.android.helper.Helper;
import app.fedilab.android.helper.ThemeHelper;
-import app.fedilab.android.sqlite.Sqlite;
import app.fedilab.android.webview.CustomWebview;
import app.fedilab.android.webview.FedilabWebChromeClient;
import app.fedilab.android.webview.FedilabWebViewClient;
@@ -55,12 +55,13 @@ import es.dmoral.toasty.Toasty;
public class WebviewActivity extends BaseActivity {
- public static List<String> trackingDomains;
+
private String url;
private boolean peertubeLink;
private CustomWebview webView;
private FedilabWebViewClient FedilabWebViewClient;
private ActivityWebviewBinding binding;
+ private Menu defaultMenu;
@SuppressLint("SetJavaScriptEnabled")
@Override
@@ -133,24 +134,12 @@ public class WebviewActivity extends BaseActivity {
});
if (!url.toLowerCase().startsWith("http://") && !url.toLowerCase().startsWith("https://"))
url = "http://" + url;
- if (trackingDomains == null) {
- AsyncTask.execute(() -> {
- SQLiteDatabase db = Sqlite.getInstance(getApplicationContext(), Sqlite.DB_NAME, null, Sqlite.DB_VERSION).open();
- // trackingDomains = new DomainBlockDAO(WebviewActivity.this, db).getAll();
- if (trackingDomains == null)
- trackingDomains = new ArrayList<>();
- // Get a handler that can be used to post to the main thread
- Handler mainHandler = new Handler(getMainLooper());
- Runnable myRunnable = () -> webView.loadUrl(url);
- mainHandler.post(myRunnable);
+ webView.loadUrl(url);
- });
- } else
- webView.loadUrl(url);
}
- /* public void setCount(Context context, String count) {
+ public void setCount(Context context, String count) {
if (defaultMenu != null && !peertubeLink) {
MenuItem menuItem = defaultMenu.findItem(R.id.action_block);
LayerDrawable icon = (LayerDrawable) menuItem.getIcon();
@@ -169,17 +158,20 @@ public class WebviewActivity extends BaseActivity {
icon.mutate();
icon.setDrawableByLayerId(R.id.ic_block_count, badge);
}
- }*/
+ }
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
-
+ if (!peertubeLink)
+ setCount(WebviewActivity.this, "0");
+ defaultMenu = menu;
return super.onPrepareOptionsMenu(menu);
}
@Override
public boolean onCreateOptionsMenu(@NotNull Menu menu) {
getMenuInflater().inflate(R.menu.main_webview, menu);
+ defaultMenu = menu;
if (peertubeLink) {
menu.findItem(R.id.action_go).setVisible(false);
menu.findItem(R.id.action_block).setVisible(false);
diff --git a/app/src/main/java/app/fedilab/android/activities/WebviewConnectActivity.java b/app/src/main/java/app/fedilab/android/activities/WebviewConnectActivity.java
index fa2112846..d02a4217e 100644
--- a/app/src/main/java/app/fedilab/android/activities/WebviewConnectActivity.java
+++ b/app/src/main/java/app/fedilab/android/activities/WebviewConnectActivity.java
@@ -46,6 +46,7 @@ import androidx.preference.PreferenceManager;
import java.util.regex.Matcher;
+import app.fedilab.android.BaseMainActivity;
import app.fedilab.android.R;
import app.fedilab.android.client.entities.app.Account;
import app.fedilab.android.databinding.ActivityWebviewConnectBinding;
@@ -55,6 +56,7 @@ import app.fedilab.android.helper.ThemeHelper;
import app.fedilab.android.viewmodel.mastodon.AccountsVM;
import app.fedilab.android.viewmo