init commit,

This commit is contained in:
louiscklaw
2025-05-28 09:55:51 +08:00
commit efe70ceb69
8042 changed files with 951668 additions and 0 deletions

View File

@@ -0,0 +1,101 @@
# Using Android gitignore template: https://github.com/github/gitignore/blob/HEAD/Android.gitignore
# Built application files
*.apk
*.aar
*.ap_
*.aab
# Files for the ART/Dalvik VM
*.dex
# Java class files
*.class
# Generated files
bin/
gen/
out/
# Uncomment the following line in case you need and you don't have the release build type files in your app
# release/
# Gradle files
.gradle/
build/
# Local configuration file (sdk path, etc)
local.properties
# Proguard folder generated by Eclipse
proguard/
# Log Files
*.log
# Android Studio Navigation editor temp files
.navigation/
# Android Studio captures folder
captures/
# IntelliJ
*.iml
.idea/workspace.xml
.idea/tasks.xml
.idea/gradle.xml
.idea/assetWizardSettings.xml
.idea/dictionaries
.idea/libraries
# Android Studio 3 in .gitignore file.
.idea/caches
.idea/modules.xml
# Comment next line if keeping position of elements in Navigation Editor is relevant for you
.idea/navEditor.xml
# Keystore files
# Uncomment the following lines if you do not want to check your keystore files in.
#*.jks
#*.keystore
# External native build folder generated in Android Studio 2.2 and later
.externalNativeBuild
.cxx/
# Google Services (e.g. APIs or Firebase)
# google-services.json
# Freeline
freeline.py
freeline/
freeline_project_description.json
# fastlane
fastlane/report.xml
fastlane/Preview.html
fastlane/screenshots
fastlane/test_output
fastlane/readme.md
# Version control
vcs.xml
# lint
lint/intermediates/
lint/generated/
lint/outputs/
lint/tmp/
# lint/reports/
# Android Profiling
*.hprof
# Cordova plugins for Capacitor
capacitor-cordova-android-plugins
# Copied web assets
app/src/main/assets/public
# Generated Config files
app/src/main/assets/capacitor.config.json
app/src/main/assets/capacitor.plugins.json
app/src/main/res/xml/config.xml

View File

@@ -0,0 +1,2 @@
/build/*
!/build/.npmkeep

View File

@@ -0,0 +1,54 @@
apply plugin: 'com.android.application'
android {
namespace "app.vger.voyager"
compileSdk rootProject.ext.compileSdkVersion
defaultConfig {
applicationId "app.vger.voyager"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 260
versionName "2.17.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
aaptOptions {
// Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps.
// Default: https://android.googlesource.com/platform/frameworks/base/+/282e181b58cf72b6ca770dc7ca5f91f135444502/tools/aapt/AaptAssets.cpp#61
ignoreAssetsPattern '!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~'
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
repositories {
flatDir{
dirs '../capacitor-cordova-android-plugins/src/main/libs', 'libs'
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation "androidx.appcompat:appcompat:$androidxAppCompatVersion"
implementation "androidx.coordinatorlayout:coordinatorlayout:$androidxCoordinatorLayoutVersion"
implementation "androidx.core:core-splashscreen:$coreSplashScreenVersion"
implementation project(':capacitor-android')
testImplementation "junit:junit:$junitVersion"
androidTestImplementation "androidx.test.ext:junit:$androidxJunitVersion"
androidTestImplementation "androidx.test.espresso:espresso-core:$androidxEspressoCoreVersion"
implementation project(':capacitor-cordova-android-plugins')
}
apply from: 'capacitor.build.gradle'
try {
def servicesJSON = file('google-services.json')
if (servicesJSON.text) {
apply plugin: 'com.google.gms.google-services'
}
} catch(Exception e) {
logger.info("google-services.json not found, google-services plugin not applied. Push Notifications won't work")
}

View File

@@ -0,0 +1,35 @@
// DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN
android {
compileOptions {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
}
apply from: "../capacitor-cordova-android-plugins/cordova.variables.gradle"
dependencies {
implementation project(':capacitor-community-app-icon')
implementation project(':capacitor-app')
implementation project(':capacitor-browser')
implementation project(':capacitor-filesystem')
implementation project(':capacitor-haptics')
implementation project(':capacitor-keyboard')
implementation project(':capacitor-network')
implementation project(':capacitor-share')
implementation project(':capacitor-status-bar')
implementation project(':capacitor-android-nav-mode')
implementation project(':capacitor-application-context')
implementation project(':capacitor-biometric-lock')
implementation project(':capacitor-clear-cache')
implementation project(':capacitor-launch-native')
implementation project(':capacitor-plugin-safe-area')
implementation project(':capacitor-stash-media')
implementation project(':capacitor-tips')
}
if (hasProperty('postBuildExtras')) {
postBuildExtras()
}

View File

@@ -0,0 +1,21 @@
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile

View File

@@ -0,0 +1,26 @@
package com.getcapacitor.myapp;
import static org.junit.Assert.*;
import android.content.Context;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.platform.app.InstrumentationRegistry;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Instrumented test, which will execute on an Android device.
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
@Test
public void useAppContext() throws Exception {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
assertEquals("com.getcapacitor.app", appContext.getPackageName());
}
}

View File

@@ -0,0 +1,654 @@
<?xml version="1.0" encoding="utf-8" ?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:configChanges="orientation|keyboardHidden|keyboard|navigation|screenSize|locale|smallestScreenSize|screenLayout|uiMode"
android:name=".MainActivity"
android:label="@string/title_activity_main"
android:theme="@style/AppTheme.NoActionBarLaunch"
android:launchMode="singleTask"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter android:label="@string/lemmy_link">
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="vger" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="https"/>
<!--#AUTO_GEN_INSTANCE_LIST_DO_NOT_TOUCH#-->
<data android:host="ani.social" />
<data android:host="aussie.zone" />
<data android:host="awful.systems" />
<data android:host="burggit.moe" />
<data android:host="discuss.online" />
<data android:host="discuss.tchncs.de" />
<data android:host="feddit.org" />
<data android:host="feddit.dk" />
<data android:host="feddit.it" />
<data android:host="feddit.nl" />
<data android:host="feddit.nu" />
<data android:host="feddit.uk" />
<data android:host="hexbear.net" />
<data android:host="infosec.pub" />
<data android:host="jlai.lu" />
<data android:host="lemdro.id" />
<data android:host="leminal.space" />
<data android:host="lemm.ee" />
<data android:host="lemmings.world" />
<data android:host="lemmy.blahaj.zone" />
<data android:host="lemmy.ca" />
<data android:host="lemmy.dbzer0.com" />
<data android:host="lemmy.eco.br" />
<data android:host="lemmy.ml" />
<data android:host="lemmy.nz" />
<data android:host="lemmy.one" />
<data android:host="lemmy.sdf.org" />
<data android:host="lemmy.today" />
<data android:host="lemmy.world" />
<data android:host="lemmy.zip" />
<data android:host="lemmygrad.ml" />
<data android:host="lemmynsfw.com" />
<data android:host="lemy.lol" />
<data android:host="mander.xyz" />
<data android:host="midwest.social" />
<data android:host="monero.town" />
<data android:host="pawb.social" />
<data android:host="programming.dev" />
<data android:host="reddthat.com" />
<data android:host="sh.itjust.works" />
<data android:host="slrpnk.net" />
<data android:host="sopuli.xyz" />
<data android:host="startrek.website" />
<data android:host="szmer.info" />
<data android:host="thelemmy.club" />
<data android:host="ttrpg.network" />
<data android:host="vger.social" />
<!--#INSTANCE_LIST_END#-->
</intent-filter>
</activity>
<activity-alias
android:label="@string/title_activity_main"
android:icon="@mipmap/planetary"
android:name=".planetary"
android:enabled="false"
android:exported="true"
android:targetActivity=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter android:label="@string/lemmy_link">
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="vger" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="https"/>
<!--#AUTO_GEN_INSTANCE_LIST_DO_NOT_TOUCH#-->
<data android:host="ani.social" />
<data android:host="aussie.zone" />
<data android:host="awful.systems" />
<data android:host="burggit.moe" />
<data android:host="discuss.online" />
<data android:host="discuss.tchncs.de" />
<data android:host="feddit.org" />
<data android:host="feddit.dk" />
<data android:host="feddit.it" />
<data android:host="feddit.nl" />
<data android:host="feddit.nu" />
<data android:host="feddit.uk" />
<data android:host="hexbear.net" />
<data android:host="infosec.pub" />
<data android:host="jlai.lu" />
<data android:host="lemdro.id" />
<data android:host="leminal.space" />
<data android:host="lemm.ee" />
<data android:host="lemmings.world" />
<data android:host="lemmy.blahaj.zone" />
<data android:host="lemmy.ca" />
<data android:host="lemmy.dbzer0.com" />
<data android:host="lemmy.eco.br" />
<data android:host="lemmy.ml" />
<data android:host="lemmy.nz" />
<data android:host="lemmy.one" />
<data android:host="lemmy.sdf.org" />
<data android:host="lemmy.today" />
<data android:host="lemmy.world" />
<data android:host="lemmy.zip" />
<data android:host="lemmygrad.ml" />
<data android:host="lemmynsfw.com" />
<data android:host="lemy.lol" />
<data android:host="mander.xyz" />
<data android:host="midwest.social" />
<data android:host="monero.town" />
<data android:host="pawb.social" />
<data android:host="programming.dev" />
<data android:host="reddthat.com" />
<data android:host="sh.itjust.works" />
<data android:host="slrpnk.net" />
<data android:host="sopuli.xyz" />
<data android:host="startrek.website" />
<data android:host="szmer.info" />
<data android:host="thelemmy.club" />
<data android:host="ttrpg.network" />
<data android:host="vger.social" />
<!--#INSTANCE_LIST_END#-->
</intent-filter>
</activity-alias>
<activity-alias
android:label="@string/title_activity_main"
android:icon="@mipmap/psych"
android:name=".psych"
android:enabled="false"
android:exported="true"
android:targetActivity=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter android:label="@string/lemmy_link">
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="vger" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="https"/>
<!--#AUTO_GEN_INSTANCE_LIST_DO_NOT_TOUCH#-->
<data android:host="ani.social" />
<data android:host="aussie.zone" />
<data android:host="awful.systems" />
<data android:host="burggit.moe" />
<data android:host="discuss.online" />
<data android:host="discuss.tchncs.de" />
<data android:host="feddit.org" />
<data android:host="feddit.dk" />
<data android:host="feddit.it" />
<data android:host="feddit.nl" />
<data android:host="feddit.nu" />
<data android:host="feddit.uk" />
<data android:host="hexbear.net" />
<data android:host="infosec.pub" />
<data android:host="jlai.lu" />
<data android:host="lemdro.id" />
<data android:host="leminal.space" />
<data android:host="lemm.ee" />
<data android:host="lemmings.world" />
<data android:host="lemmy.blahaj.zone" />
<data android:host="lemmy.ca" />
<data android:host="lemmy.dbzer0.com" />
<data android:host="lemmy.eco.br" />
<data android:host="lemmy.ml" />
<data android:host="lemmy.nz" />
<data android:host="lemmy.one" />
<data android:host="lemmy.sdf.org" />
<data android:host="lemmy.today" />
<data android:host="lemmy.world" />
<data android:host="lemmy.zip" />
<data android:host="lemmygrad.ml" />
<data android:host="lemmynsfw.com" />
<data android:host="lemy.lol" />
<data android:host="mander.xyz" />
<data android:host="midwest.social" />
<data android:host="monero.town" />
<data android:host="pawb.social" />
<data android:host="programming.dev" />
<data android:host="reddthat.com" />
<data android:host="sh.itjust.works" />
<data android:host="slrpnk.net" />
<data android:host="sopuli.xyz" />
<data android:host="startrek.website" />
<data android:host="szmer.info" />
<data android:host="thelemmy.club" />
<data android:host="ttrpg.network" />
<data android:host="vger.social" />
<!--#INSTANCE_LIST_END#-->
</intent-filter>
</activity-alias>
<activity-alias
android:label="@string/title_activity_main"
android:icon="@mipmap/space"
android:name=".space"
android:enabled="false"
android:exported="true"
android:targetActivity=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter android:label="@string/lemmy_link">
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="vger" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="https"/>
<!--#AUTO_GEN_INSTANCE_LIST_DO_NOT_TOUCH#-->
<data android:host="ani.social" />
<data android:host="aussie.zone" />
<data android:host="awful.systems" />
<data android:host="burggit.moe" />
<data android:host="discuss.online" />
<data android:host="discuss.tchncs.de" />
<data android:host="feddit.org" />
<data android:host="feddit.dk" />
<data android:host="feddit.it" />
<data android:host="feddit.nl" />
<data android:host="feddit.nu" />
<data android:host="feddit.uk" />
<data android:host="hexbear.net" />
<data android:host="infosec.pub" />
<data android:host="jlai.lu" />
<data android:host="lemdro.id" />
<data android:host="leminal.space" />
<data android:host="lemm.ee" />
<data android:host="lemmings.world" />
<data android:host="lemmy.blahaj.zone" />
<data android:host="lemmy.ca" />
<data android:host="lemmy.dbzer0.com" />
<data android:host="lemmy.eco.br" />
<data android:host="lemmy.ml" />
<data android:host="lemmy.nz" />
<data android:host="lemmy.one" />
<data android:host="lemmy.sdf.org" />
<data android:host="lemmy.today" />
<data android:host="lemmy.world" />
<data android:host="lemmy.zip" />
<data android:host="lemmygrad.ml" />
<data android:host="lemmynsfw.com" />
<data android:host="lemy.lol" />
<data android:host="mander.xyz" />
<data android:host="midwest.social" />
<data android:host="monero.town" />
<data android:host="pawb.social" />
<data android:host="programming.dev" />
<data android:host="reddthat.com" />
<data android:host="sh.itjust.works" />
<data android:host="slrpnk.net" />
<data android:host="sopuli.xyz" />
<data android:host="startrek.website" />
<data android:host="szmer.info" />
<data android:host="thelemmy.club" />
<data android:host="ttrpg.network" />
<data android:host="vger.social" />
<!--#INSTANCE_LIST_END#-->
</intent-filter>
</activity-alias>
<activity-alias
android:label="@string/title_activity_main"
android:icon="@mipmap/original"
android:name=".original"
android:enabled="false"
android:exported="true"
android:targetActivity=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter android:label="@string/lemmy_link">
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="vger" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="https"/>
<!--#AUTO_GEN_INSTANCE_LIST_DO_NOT_TOUCH#-->
<data android:host="ani.social" />
<data android:host="aussie.zone" />
<data android:host="awful.systems" />
<data android:host="burggit.moe" />
<data android:host="discuss.online" />
<data android:host="discuss.tchncs.de" />
<data android:host="feddit.org" />
<data android:host="feddit.dk" />
<data android:host="feddit.it" />
<data android:host="feddit.nl" />
<data android:host="feddit.nu" />
<data android:host="feddit.uk" />
<data android:host="hexbear.net" />
<data android:host="infosec.pub" />
<data android:host="jlai.lu" />
<data android:host="lemdro.id" />
<data android:host="leminal.space" />
<data android:host="lemm.ee" />
<data android:host="lemmings.world" />
<data android:host="lemmy.blahaj.zone" />
<data android:host="lemmy.ca" />
<data android:host="lemmy.dbzer0.com" />
<data android:host="lemmy.eco.br" />
<data android:host="lemmy.ml" />
<data android:host="lemmy.nz" />
<data android:host="lemmy.one" />
<data android:host="lemmy.sdf.org" />
<data android:host="lemmy.today" />
<data android:host="lemmy.world" />
<data android:host="lemmy.zip" />
<data android:host="lemmygrad.ml" />
<data android:host="lemmynsfw.com" />
<data android:host="lemy.lol" />
<data android:host="mander.xyz" />
<data android:host="midwest.social" />
<data android:host="monero.town" />
<data android:host="pawb.social" />
<data android:host="programming.dev" />
<data android:host="reddthat.com" />
<data android:host="sh.itjust.works" />
<data android:host="slrpnk.net" />
<data android:host="sopuli.xyz" />
<data android:host="startrek.website" />
<data android:host="szmer.info" />
<data android:host="thelemmy.club" />
<data android:host="ttrpg.network" />
<data android:host="vger.social" />
<!--#INSTANCE_LIST_END#-->
</intent-filter>
</activity-alias>
<activity-alias
android:label="@string/title_activity_main"
android:icon="@mipmap/galactic"
android:name=".galactic"
android:enabled="false"
android:exported="true"
android:targetActivity=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter android:label="@string/lemmy_link">
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="vger" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="https"/>
<!--#AUTO_GEN_INSTANCE_LIST_DO_NOT_TOUCH#-->
<data android:host="ani.social" />
<data android:host="aussie.zone" />
<data android:host="awful.systems" />
<data android:host="burggit.moe" />
<data android:host="discuss.online" />
<data android:host="discuss.tchncs.de" />
<data android:host="feddit.org" />
<data android:host="feddit.dk" />
<data android:host="feddit.it" />
<data android:host="feddit.nl" />
<data android:host="feddit.nu" />
<data android:host="feddit.uk" />
<data android:host="hexbear.net" />
<data android:host="infosec.pub" />
<data android:host="jlai.lu" />
<data android:host="lemdro.id" />
<data android:host="leminal.space" />
<data android:host="lemm.ee" />
<data android:host="lemmings.world" />
<data android:host="lemmy.blahaj.zone" />
<data android:host="lemmy.ca" />
<data android:host="lemmy.dbzer0.com" />
<data android:host="lemmy.eco.br" />
<data android:host="lemmy.ml" />
<data android:host="lemmy.nz" />
<data android:host="lemmy.one" />
<data android:host="lemmy.sdf.org" />
<data android:host="lemmy.today" />
<data android:host="lemmy.world" />
<data android:host="lemmy.zip" />
<data android:host="lemmygrad.ml" />
<data android:host="lemmynsfw.com" />
<data android:host="lemy.lol" />
<data android:host="mander.xyz" />
<data android:host="midwest.social" />
<data android:host="monero.town" />
<data android:host="pawb.social" />
<data android:host="programming.dev" />
<data android:host="reddthat.com" />
<data android:host="sh.itjust.works" />
<data android:host="slrpnk.net" />
<data android:host="sopuli.xyz" />
<data android:host="startrek.website" />
<data android:host="szmer.info" />
<data android:host="thelemmy.club" />
<data android:host="ttrpg.network" />
<data android:host="vger.social" />
<!--#INSTANCE_LIST_END#-->
</intent-filter>
</activity-alias>
<activity-alias
android:label="@string/title_activity_main"
android:icon="@mipmap/pride"
android:name=".pride"
android:enabled="false"
android:exported="true"
android:targetActivity=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter android:label="@string/lemmy_link">
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="vger" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="https"/>
<!--#AUTO_GEN_INSTANCE_LIST_DO_NOT_TOUCH#-->
<data android:host="ani.social" />
<data android:host="aussie.zone" />
<data android:host="awful.systems" />
<data android:host="burggit.moe" />
<data android:host="discuss.online" />
<data android:host="discuss.tchncs.de" />
<data android:host="feddit.org" />
<data android:host="feddit.dk" />
<data android:host="feddit.it" />
<data android:host="feddit.nl" />
<data android:host="feddit.nu" />
<data android:host="feddit.uk" />
<data android:host="hexbear.net" />
<data android:host="infosec.pub" />
<data android:host="jlai.lu" />
<data android:host="lemdro.id" />
<data android:host="leminal.space" />
<data android:host="lemm.ee" />
<data android:host="lemmings.world" />
<data android:host="lemmy.blahaj.zone" />
<data android:host="lemmy.ca" />
<data android:host="lemmy.dbzer0.com" />
<data android:host="lemmy.eco.br" />
<data android:host="lemmy.ml" />
<data android:host="lemmy.nz" />
<data android:host="lemmy.one" />
<data android:host="lemmy.sdf.org" />
<data android:host="lemmy.today" />
<data android:host="lemmy.world" />
<data android:host="lemmy.zip" />
<data android:host="lemmygrad.ml" />
<data android:host="lemmynsfw.com" />
<data android:host="lemy.lol" />
<data android:host="mander.xyz" />
<data android:host="midwest.social" />
<data android:host="monero.town" />
<data android:host="pawb.social" />
<data android:host="programming.dev" />
<data android:host="reddthat.com" />
<data android:host="sh.itjust.works" />
<data android:host="slrpnk.net" />
<data android:host="sopuli.xyz" />
<data android:host="startrek.website" />
<data android:host="szmer.info" />
<data android:host="thelemmy.club" />
<data android:host="ttrpg.network" />
<data android:host="vger.social" />
<!--#INSTANCE_LIST_END#-->
</intent-filter>
</activity-alias>
<activity-alias
android:label="@string/title_activity_main"
android:icon="@mipmap/holidays"
android:name=".holidays"
android:enabled="false"
android:exported="true"
android:targetActivity=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter android:label="@string/lemmy_link">
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="vger" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="https"/>
<!--#AUTO_GEN_INSTANCE_LIST_DO_NOT_TOUCH#-->
<data android:host="ani.social" />
<data android:host="aussie.zone" />
<data android:host="awful.systems" />
<data android:host="burggit.moe" />
<data android:host="discuss.online" />
<data android:host="discuss.tchncs.de" />
<data android:host="feddit.org" />
<data android:host="feddit.dk" />
<data android:host="feddit.it" />
<data android:host="feddit.nl" />
<data android:host="feddit.nu" />
<data android:host="feddit.uk" />
<data android:host="hexbear.net" />
<data android:host="infosec.pub" />
<data android:host="jlai.lu" />
<data android:host="lemdro.id" />
<data android:host="leminal.space" />
<data android:host="lemm.ee" />
<data android:host="lemmings.world" />
<data android:host="lemmy.blahaj.zone" />
<data android:host="lemmy.ca" />
<data android:host="lemmy.dbzer0.com" />
<data android:host="lemmy.eco.br" />
<data android:host="lemmy.ml" />
<data android:host="lemmy.nz" />
<data android:host="lemmy.one" />
<data android:host="lemmy.sdf.org" />
<data android:host="lemmy.today" />
<data android:host="lemmy.world" />
<data android:host="lemmy.zip" />
<data android:host="lemmygrad.ml" />
<data android:host="lemmynsfw.com" />
<data android:host="lemy.lol" />
<data android:host="mander.xyz" />
<data android:host="midwest.social" />
<data android:host="monero.town" />
<data android:host="pawb.social" />
<data android:host="programming.dev" />
<data android:host="reddthat.com" />
<data android:host="sh.itjust.works" />
<data android:host="slrpnk.net" />
<data android:host="sopuli.xyz" />
<data android:host="startrek.website" />
<data android:host="szmer.info" />
<data android:host="thelemmy.club" />
<data android:host="ttrpg.network" />
<data android:host="vger.social" />
<!--#INSTANCE_LIST_END#-->
</intent-filter>
</activity-alias>
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths" />
</provider>
</application>
<!-- Permissions -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="28" />
</manifest>

View File

@@ -0,0 +1,67 @@
package app.vger.voyager;
import android.app.AlertDialog;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.webkit.URLUtil;
import com.getcapacitor.BridgeActivity;
public class MainActivity extends BridgeActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// https://github.com/ionic-team/capacitor/issues/2840#issuecomment-891093722
//
// Use a transparent status bar and nav bar, and place the window behind the status bar
// and nav bar. Due to a chromium bug, we need to get the height of both bars
// and add it to the safe area insets. The native plugin is used to get this info.
// See https://bugs.chromium.org/p/chromium/issues/detail?id=1094366
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
getWindow().setDecorFitsSystemWindows(false);
getWindow().setStatusBarColor(0);
getWindow().setNavigationBarColor(0);
getWindow().setNavigationBarContrastEnforced(true);
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
// On older versions of android setDecorFitsSystemWindows doesn't exist yet, but it can
// be emulated with flags.
// It still must be P or greater, as that is the min version for getting the insets
// through the native plugin.
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR);
getWindow().setStatusBarColor(0);
getWindow().setNavigationBarColor(0);
}
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
if (intent.getAction() == Intent.ACTION_SEND) {
var newIntent = new Intent(Intent.ACTION_VIEW);
var potentialUrl = intent.getStringExtra(Intent.EXTRA_TEXT);
if (!URLUtil.isValidUrl(potentialUrl) || !potentialUrl.startsWith("https://")) {
new AlertDialog.Builder(bridge.getContext())
.setTitle("Unknown share data received")
.setMessage("Voyager only accepts URLs to Lemmy content so that you can browse in-app.")
.setCancelable(true)
.setPositiveButton("OK", null)
.show();
return;
}
newIntent.setData(Uri.parse(potentialUrl));
bridge.onNewIntent(newIntent);
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB

View File

@@ -0,0 +1,16 @@
<vector android:width="200dp"
android:height="200dp"
android:viewportWidth="384"
android:viewportHeight="384"
xmlns:android="http://schemas.android.com/apk/res/android">
<group
android:scaleX="0.53"
android:scaleY="0.53"
android:pivotX="192"
android:pivotY="192">
<path
android:fillColor="#FF000000"
android:pathData="M349.23,94.88c-23.47,-24.33 -64.97,-19.46 -94.17,33.77 -21.18,-10.59 -40.83,-14.02 -63.06,-14.02s-41.88,3.43 -63.06,14.02c-29.2,-53.23 -70.7,-58.1 -94.17,-33.77 -26.62,27.6 -10.38,77.03 37.16,92.26 2.14,-11.13 7.03,-19.19 11.37,-26.34 5.43,-8.93 10.12,-16.65 10.12,-29.57 0,-12.23 -5.64,-21.92 -14.7,-25.27 -9.74,-3.6 -21.14,0.76 -30.55,11.66 -1.95,2.26 -5.33,2.88 -7.78,1.18a5.75,5.75 0,0 1,-1.12 -8.48c12.7,-14.84 28.94,-20.5 43.43,-15.15 13.7,5.06 22.22,18.88 22.22,36.06 0,16.14 -5.99,26 -11.78,35.54 -4.3,7.08 -8.42,13.78 -10,23.21A95.2,95.2 0,0 0,82 205.65c0,21.86 7.27,43.69 20.4,62.67l-2.92,0.2c-3.58,0.22 -7.06,1.59 -9.64,4.09a14.67,14.67 0,0 0,-4.28 13.22,14.77 14.77,0 0,0 15.41,12.05l27.55,-1.76a140.74,140.74 0,0 0,49.41 25.1,51.9 51.9,0 0,0 28.14,0 140.74,140.74 0,0 0,49.41 -25.1l27.55,1.76h0.08c7.35,0.45 14.06,-4.8 15.33,-12.05 0.87,-4.92 -0.71,-9.77 -4.28,-13.22a15.21,15.21 0,0 0,-9.64 -4.1l-2.91,-0.19c13.12,-18.98 20.4,-40.8 20.4,-62.67 0,-5.96 -0.39,-11.11 -1.15,-15.67 -1.58,-9.43 -5.7,-16.13 -10,-23.2 -5.8,-9.55 -11.78,-19.41 -11.78,-35.55 0,-17.18 8.51,-31 22.22,-36.06 14.5,-5.36 30.73,0.3 43.42,15.15a5.75,5.75 0,0 1,-1.11 8.48c-2.45,1.7 -5.83,1.08 -7.78,-1.18 -9.4,-10.9 -20.8,-15.25 -30.54,-11.66 -9.07,3.35 -14.7,13.04 -14.7,25.27 0,12.92 4.68,20.64 10.1,29.57 4.35,7.15 9.24,15.2 11.38,26.34 47.54,-15.23 63.78,-64.66 37.16,-92.26ZM136.2,287.3l-35.77,2.29 -0.42,0.01a6.4,6.4 0,0 1,-0.4 -12.77l35.78,-2.29a6.4,6.4 0,0 1,0.81 12.76ZM145.18,264.37a6.4,6.4 0,0 1,-8.3 3.6l-21.41,-8.44a6.4,6.4 0,1 1,4.69 -11.9l21.42,8.45a6.4,6.4 0,0 1,3.6 8.3ZM154.18,217.3a10.9,10.9 0,0 0,-9.79 11.89,7.67 7.67,0 1,1 -15.27,1.48 26.25,26.25 0,0 1,23.57 -28.64,26.25 26.25,0 0,1 28.64,23.57 7.67,7.67 0,0 1,-15.27 1.48,10.9 10.9,0 0,0 -11.89,-9.78ZM192,310.71a24.95,24.95 0,1 1,0 -49.9,24.95 24.95,0 0,1 0,49.9ZM229.82,217.31a10.9,10.9 0,0 0,-11.89 9.77,7.67 7.67,0 0,1 -15.27,-1.48 26.25,26.25 0,0 1,28.64 -23.57,26.25 26.25,0 0,1 23.57,28.64 7.67,7.67 0,1 1,-15.27 -1.48,10.9 10.9,0 0,0 -9.78,-11.89ZM238.82,264.37a6.4,6.4 0,0 1,3.6 -8.29l21.41,-8.44a6.4,6.4 0,0 1,4.7 11.9l-21.43,8.43a6.38,6.38 0,0 1,-8.29 -3.6ZM284.38,276.83a6.4,6.4 0,1 1,-0.82 12.76l-35.77,-2.3a6.4,6.4 0,1 1,0.81 -12.75l35.78,2.29Z"
android:strokeWidth="0"/>
</group>
</vector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout 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"
tools:context=".MainActivity">
<WebView
android:layout_width="match_parent"
android:layout_height="match_parent" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@mipmap/galactic_background"/>
<foreground android:drawable="@mipmap/galactic_foreground"/>
</adaptive-icon>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@mipmap/holidays_background"/>
<foreground android:drawable="@mipmap/holidays_foreground"/>
</adaptive-icon>

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@mipmap/ic_launcher_background"/>
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
</adaptive-icon>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@mipmap/original_background"/>
<foreground android:drawable="@mipmap/original_foreground"/>
</adaptive-icon>

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@mipmap/planetary_background"/>
<foreground android:drawable="@mipmap/planetary_foreground"/>
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
</adaptive-icon>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@mipmap/pride_background"/>
<foreground android:drawable="@mipmap/pride_foreground"/>
</adaptive-icon>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@mipmap/psych_background"/>
<foreground android:drawable="@mipmap/psych_foreground"/>
</adaptive-icon>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@mipmap/space_background"/>
<foreground android:drawable="@mipmap/space_foreground"/>
</adaptive-icon>

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

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