Order code

This commit is contained in:
Thomas 2020-04-15 17:51:18 +02:00
parent 8b3659611a
commit d4e05ab1e3
18 changed files with 103 additions and 77 deletions

View File

@ -18,7 +18,7 @@
tools:ignore="GoogleAppIndexingWarning,UnusedAttribute">
<activity
android:name=".MainActivity"
android:name=".activities.MainActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
@ -28,7 +28,7 @@
</activity>
<activity
android:name=".TransformActivity"
android:name=".activities.TransformActivity"
android:noHistory="true"
android:theme="@style/Theme.AppCompat.Translucent">
<!-- The app should handle these domains, more can be added here -->
@ -185,17 +185,17 @@
</activity>
<activity
android:name="app.fedilab.nitterizeme.InstanceActivity"
android:name="app.fedilab.nitterizeme.activities.InstanceActivity"
android:excludeFromRecents="true"
android:theme="@style/AppThemeDialog" />
<activity
android:name=".AboutActivity"
android:name=".activities.AboutActivity"
android:configChanges="orientation|screenSize"
android:label="@string/app_name"
android:theme="@style/AppTheme" />
<activity
android:name="app.fedilab.nitterizeme.WebviewPlayerActivity"
android:name="app.fedilab.nitterizeme.activities.WebviewPlayerActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:label="@string/app_name"
android:launchMode="singleTask"

View File

@ -1,4 +1,4 @@
package app.fedilab.nitterizeme;
package app.fedilab.nitterizeme.activities;
/* Copyright 2020 Thomas Schneider
*
* This file is a part of UntrackMe
@ -29,6 +29,8 @@ import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.content.ContextCompat;
import app.fedilab.nitterizeme.R;
public class AboutActivity extends AppCompatActivity {

View File

@ -1,4 +1,4 @@
package app.fedilab.nitterizeme;
package app.fedilab.nitterizeme.activities;
/* Copyright 2020 Thomas Schneider
*
* This file is a part of UntrackMe
@ -45,13 +45,17 @@ import java.util.List;
import javax.net.ssl.HttpsURLConnection;
import static app.fedilab.nitterizeme.MainActivity.APP_PREFS;
import static app.fedilab.nitterizeme.MainActivity.DEFAULT_BIBLIOGRAM_HOST;
import static app.fedilab.nitterizeme.MainActivity.DEFAULT_INVIDIOUS_HOST;
import static app.fedilab.nitterizeme.MainActivity.DEFAULT_NITTER_HOST;
import static app.fedilab.nitterizeme.MainActivity.SET_BIBLIOGRAM_HOST;
import static app.fedilab.nitterizeme.MainActivity.SET_INVIDIOUS_HOST;
import static app.fedilab.nitterizeme.MainActivity.SET_NITTER_HOST;
import app.fedilab.nitterizeme.R;
import app.fedilab.nitterizeme.adapters.InstanceAdapter;
import app.fedilab.nitterizeme.entities.Instance;
import static app.fedilab.nitterizeme.activities.MainActivity.APP_PREFS;
import static app.fedilab.nitterizeme.activities.MainActivity.DEFAULT_BIBLIOGRAM_HOST;
import static app.fedilab.nitterizeme.activities.MainActivity.DEFAULT_INVIDIOUS_HOST;
import static app.fedilab.nitterizeme.activities.MainActivity.DEFAULT_NITTER_HOST;
import static app.fedilab.nitterizeme.activities.MainActivity.SET_BIBLIOGRAM_HOST;
import static app.fedilab.nitterizeme.activities.MainActivity.SET_INVIDIOUS_HOST;
import static app.fedilab.nitterizeme.activities.MainActivity.SET_NITTER_HOST;
public class InstanceActivity extends AppCompatActivity {

View File

@ -1,4 +1,4 @@
package app.fedilab.nitterizeme;
package app.fedilab.nitterizeme.activities;
/* Copyright 2020 Thomas Schneider
*
* This file is a part of UntrackMe
@ -45,6 +45,10 @@ import com.google.android.material.textfield.TextInputEditText;
import java.util.ArrayList;
import java.util.Objects;
import app.fedilab.nitterizeme.R;
import app.fedilab.nitterizeme.adapters.AppInfoAdapter;
import app.fedilab.nitterizeme.entities.AppInfo;
public class MainActivity extends AppCompatActivity {
public static final String APP_PREFS = "app_prefs";

View File

@ -1,4 +1,4 @@
package app.fedilab.nitterizeme;
package app.fedilab.nitterizeme.activities;
/* Copyright 2020 Thomas Schneider
*
* This file is a part of UntrackMe
@ -48,17 +48,20 @@ import java.util.Objects;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import static app.fedilab.nitterizeme.MainActivity.SET_BIBLIOGRAM_ENABLED;
import static app.fedilab.nitterizeme.MainActivity.SET_EMBEDDED_PLAYER;
import static app.fedilab.nitterizeme.MainActivity.SET_INVIDIOUS_ENABLED;
import static app.fedilab.nitterizeme.MainActivity.SET_NITTER_ENABLED;
import static app.fedilab.nitterizeme.MainActivity.bibliogram_instances;
import static app.fedilab.nitterizeme.MainActivity.instagram_domains;
import static app.fedilab.nitterizeme.MainActivity.invidious_instances;
import static app.fedilab.nitterizeme.MainActivity.nitter_instances;
import static app.fedilab.nitterizeme.MainActivity.shortener_domains;
import static app.fedilab.nitterizeme.MainActivity.twitter_domains;
import static app.fedilab.nitterizeme.MainActivity.youtube_domains;
import app.fedilab.nitterizeme.R;
import app.fedilab.nitterizeme.helpers.Utils;
import static app.fedilab.nitterizeme.activities.MainActivity.SET_BIBLIOGRAM_ENABLED;
import static app.fedilab.nitterizeme.activities.MainActivity.SET_EMBEDDED_PLAYER;
import static app.fedilab.nitterizeme.activities.MainActivity.SET_INVIDIOUS_ENABLED;
import static app.fedilab.nitterizeme.activities.MainActivity.SET_NITTER_ENABLED;
import static app.fedilab.nitterizeme.activities.MainActivity.bibliogram_instances;
import static app.fedilab.nitterizeme.activities.MainActivity.instagram_domains;
import static app.fedilab.nitterizeme.activities.MainActivity.invidious_instances;
import static app.fedilab.nitterizeme.activities.MainActivity.nitter_instances;
import static app.fedilab.nitterizeme.activities.MainActivity.shortener_domains;
import static app.fedilab.nitterizeme.activities.MainActivity.twitter_domains;
import static app.fedilab.nitterizeme.activities.MainActivity.youtube_domains;
public class TransformActivity extends Activity {

View File

@ -1,4 +1,4 @@
package app.fedilab.nitterizeme;
package app.fedilab.nitterizeme.activities;
/* Copyright 2020 Thomas Schneider
*
* This file is a part of UntrackMe
@ -46,6 +46,11 @@ import org.jsoup.nodes.Element;
import java.io.IOException;
import app.fedilab.nitterizeme.R;
import app.fedilab.nitterizeme.helpers.PlayerChromeClient;
import app.fedilab.nitterizeme.helpers.Utils;
public class WebviewPlayerActivity extends AppCompatActivity {
private static final int EXTERNAL_STORAGE_REQUEST_CODE = 84;

View File

@ -1,4 +1,4 @@
package app.fedilab.nitterizeme;
package app.fedilab.nitterizeme.adapters;
/* Copyright 2020 Thomas Schneider
*
* This file is a part of UntrackMe
@ -32,13 +32,17 @@ import androidx.recyclerview.widget.RecyclerView;
import java.util.List;
import app.fedilab.nitterizeme.BuildConfig;
import app.fedilab.nitterizeme.R;
import app.fedilab.nitterizeme.entities.AppInfo;
public class AppInfoAdapter extends RecyclerView.Adapter {
private static final int LAYOUT_TITLE = 0;
private static final int LAYOUT_INFO = 1;
private List<AppInfo> appInfos;
AppInfoAdapter(List<AppInfo> appInfos) {
public AppInfoAdapter(List<AppInfo> appInfos) {
this.appInfos = appInfos;
}

View File

@ -1,4 +1,4 @@
package app.fedilab.nitterizeme;
package app.fedilab.nitterizeme.adapters;
/* Copyright 2020 Thomas Schneider
*
* This file is a part of UntrackMe
@ -33,17 +33,21 @@ import androidx.recyclerview.widget.RecyclerView;
import java.util.List;
import java.util.Locale;
import static app.fedilab.nitterizeme.MainActivity.APP_PREFS;
import static app.fedilab.nitterizeme.MainActivity.SET_BIBLIOGRAM_HOST;
import static app.fedilab.nitterizeme.MainActivity.SET_INVIDIOUS_HOST;
import static app.fedilab.nitterizeme.MainActivity.SET_NITTER_HOST;
import app.fedilab.nitterizeme.R;
import app.fedilab.nitterizeme.entities.Instance;
import app.fedilab.nitterizeme.helpers.Utils;
import static app.fedilab.nitterizeme.activities.MainActivity.APP_PREFS;
import static app.fedilab.nitterizeme.activities.MainActivity.SET_BIBLIOGRAM_HOST;
import static app.fedilab.nitterizeme.activities.MainActivity.SET_INVIDIOUS_HOST;
import static app.fedilab.nitterizeme.activities.MainActivity.SET_NITTER_HOST;
public class InstanceAdapter extends RecyclerView.Adapter {
private List<Instance> instances;
private InstanceAdapter instanceAdapter;
InstanceAdapter(List<Instance> instances) {
public InstanceAdapter(List<Instance> instances) {
this.instances = instances;
this.instanceAdapter = this;
}
@ -140,7 +144,7 @@ public class InstanceAdapter extends RecyclerView.Adapter {
}
void evalLatency() {
public void evalLatency() {
for (Instance instance : instances) {
instance.setLatency(0);
Thread thread = new Thread() {

View File

@ -1,4 +1,4 @@
package app.fedilab.nitterizeme;
package app.fedilab.nitterizeme.entities;
/* Copyright 2020 Thomas Schneider
*
* This file is a part of UntrackMe
@ -15,33 +15,33 @@ package app.fedilab.nitterizeme;
* see <http://www.gnu.org/licenses>. */
class AppInfo {
public class AppInfo {
private String domain;
private android.content.pm.ApplicationInfo ApplicationInfo;
private String title = null;
String getDomain() {
public String getDomain() {
return domain;
}
void setDomain(String domain) {
public void setDomain(String domain) {
this.domain = domain;
}
android.content.pm.ApplicationInfo getApplicationInfo() {
public android.content.pm.ApplicationInfo getApplicationInfo() {
return ApplicationInfo;
}
void setApplicationInfo(android.content.pm.ApplicationInfo applicationInfo) {
public void setApplicationInfo(android.content.pm.ApplicationInfo applicationInfo) {
ApplicationInfo = applicationInfo;
}
String getTitle() {
public String getTitle() {
return title;
}
void setTitle(String title) {
public void setTitle(String title) {
this.title = title;
}
}

View File

@ -1,4 +1,4 @@
package app.fedilab.nitterizeme;
package app.fedilab.nitterizeme.entities;
/* Copyright 2020 Thomas Schneider
*
@ -14,7 +14,7 @@ package app.fedilab.nitterizeme;
*
* You should have received a copy of the GNU General Public License along with UntrackMe; if not,
* see <http://www.gnu.org/licenses>. */
class Instance {
public class Instance {
private String domain;
private long latency = -1;
@ -23,55 +23,55 @@ class Instance {
private boolean cloudflare = false;
private String locale;
String getDomain() {
public String getDomain() {
return domain;
}
void setDomain(String domain) {
public void setDomain(String domain) {
this.domain = domain;
}
long getLatency() {
public long getLatency() {
return latency;
}
void setLatency(long latency) {
public void setLatency(long latency) {
this.latency = latency;
}
boolean isChecked() {
public boolean isChecked() {
return checked;
}
void setChecked(boolean checked) {
public void setChecked(boolean checked) {
this.checked = checked;
}
instanceType getType() {
public instanceType getType() {
return type;
}
void setType(instanceType type) {
public void setType(instanceType type) {
this.type = type;
}
boolean isCloudflare() {
public boolean isCloudflare() {
return cloudflare;
}
void setCloudflare(boolean cloudflare) {
public void setCloudflare(boolean cloudflare) {
this.cloudflare = cloudflare;
}
String getLocale() {
public String getLocale() {
return locale;
}
void setLocale(String locale) {
public void setLocale(String locale) {
this.locale = locale;
}
enum instanceType {
public enum instanceType {
INVIDIOUS,
NITTER,
BIBLIOGRAM

View File

@ -1,4 +1,4 @@
package app.fedilab.nitterizeme;
package app.fedilab.nitterizeme.helpers;
/* Copyright 2020 Thomas Schneider
*
* This file is a part of UntrackMe
@ -43,7 +43,7 @@ public class PlayerChromeClient extends WebChromeClient implements MediaPlayer.O
private Activity activity;
PlayerChromeClient(Activity activity, WebView webView, FrameLayout activityNonVideoView, ViewGroup activityVideoView) {
public PlayerChromeClient(Activity activity, WebView webView, FrameLayout activityNonVideoView, ViewGroup activityVideoView) {
this.activity = activity;
this.isVideoFullscreen = false;
this.webView = webView;
@ -56,7 +56,7 @@ public class PlayerChromeClient extends WebChromeClient implements MediaPlayer.O
*
* @param callback A VideoEnabledWebChromeClient.ToggledFullscreenCallback callback
*/
void setOnToggledFullscreen(ToggledFullscreenCallback callback) {
public void setOnToggledFullscreen(ToggledFullscreenCallback callback) {
this.toggledFullscreenCallback = callback;
}

View File

@ -1,4 +1,4 @@
package app.fedilab.nitterizeme;
package app.fedilab.nitterizeme.helpers;
/* Copyright 2020 Thomas Schneider
*
* This file is a part of UntrackMe
@ -36,11 +36,11 @@ import java.util.regex.Pattern;
import javax.net.ssl.HttpsURLConnection;
import static android.content.Context.DOWNLOAD_SERVICE;
import static app.fedilab.nitterizeme.MainActivity.shortener_domains;
import static app.fedilab.nitterizeme.activities.MainActivity.shortener_domains;
class Utils {
public class Utils {
static final String RECEIVE_STREAMING_URL = "receive_streaming_url";
public static final String RECEIVE_STREAMING_URL = "receive_streaming_url";
private static final String[] UTM_PARAMS = {
"utm_\\w+",
@ -71,7 +71,7 @@ class Utils {
};
private static String urlRegex = "(?i)\\b((?:[a-z][\\w-]+:(?:/{1,3}|[a-z0-9%])|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,10}/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))";
static final Pattern urlPattern = Pattern.compile(
public static final Pattern urlPattern = Pattern.compile(
urlRegex,
Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL);
@ -80,7 +80,7 @@ class Utils {
*
* @param urls ArrayList<String> URL to check
*/
static void checkUrl(ArrayList<String> urls) {
public static void checkUrl(ArrayList<String> urls) {
URL url;
String newURL = null;
String comingURl;
@ -129,7 +129,7 @@ class Utils {
* @param domain String domain name
* @return long delay
*/
static long ping(String domain) {
public static long ping(String domain) {
long timeDifference = -2;
try {
long beforeTime = System.currentTimeMillis();
@ -171,7 +171,7 @@ class Utils {
* @param context Context
* @param url String download url
*/
static void manageDownloadsNoPopup(final Context context, final String url) {
public static void manageDownloadsNoPopup(final Context context, final String url) {
final DownloadManager.Request request;
try {

View File

@ -21,7 +21,7 @@
android:layout_height="match_parent"
android:layout_margin="@dimen/fab_margin"
android:scrollbars="none"
tools:context=".AboutActivity">
tools:context=".activities.AboutActivity">
<LinearLayout
android:layout_width="match_parent"

View File

@ -19,7 +19,7 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
tools:context=".activities.MainActivity">
<com.google.android.material.appbar.AppBarLayout
android:layout_width="match_parent"

View File

@ -19,7 +19,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
tools:context=".WebviewPlayerActivity">
tools:context=".activities.WebviewPlayerActivity">
<FrameLayout
android:id="@+id/webview_container"

View File

@ -22,7 +22,7 @@
android:layout_height="match_parent"
android:scrollbars="none"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context=".MainActivity"
tools:context=".activities.MainActivity"
tools:showIn="@layout/activity_main">
<androidx.constraintlayout.widget.ConstraintLayout

View File

@ -1,7 +1,7 @@
<menu 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"
tools:context="app.fedilab.nitterizeme.MainActivity">
tools:context="app.fedilab.nitterizeme.activities.MainActivity">
<item
android:id="@+id/action_about"
android:icon="@drawable/ic_info_outline"

View File

@ -1,7 +1,7 @@
<menu 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"
tools:context="app.fedilab.nitterizeme.WebviewPlayerActivity">
tools:context="app.fedilab.nitterizeme.activities.WebviewPlayerActivity">
<item
android:id="@+id/action_share"
android:icon="@drawable/ic_share"