diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml
new file mode 100644
index 0000000..3612118
--- /dev/null
+++ b/.github/workflows/android.yml
@@ -0,0 +1,26 @@
+name: Android CI
+
+# on:
+# push:
+# branches: [ main ]
+# pull_request:
+# branches: [ main ]
+
+jobs:
+ build:
+
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v2
+ - name: set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'temurin'
+ cache: gradle
+
+ - name: Grant execute permission for gradlew
+ run: chmod +x gradlew
+ - name: Build with Gradle
+ run: ./gradlew build
diff --git a/.github/workflows/gradle-wrapper-validation.yml b/.github/workflows/gradle-wrapper-validation.yml
new file mode 100644
index 0000000..e4dd7f5
--- /dev/null
+++ b/.github/workflows/gradle-wrapper-validation.yml
@@ -0,0 +1,10 @@
+name: "Validate Gradle Wrapper"
+# on: [push, pull_request]
+
+jobs:
+ validation:
+ name: "Validation"
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - uses: gradle/wrapper-validation-action@v1
diff --git a/.github/workflows/super-linter.yml b/.github/workflows/super-linter.yml
new file mode 100644
index 0000000..ffa8a15
--- /dev/null
+++ b/.github/workflows/super-linter.yml
@@ -0,0 +1,29 @@
+# This workflow executes several linters on changed files based on languages used in your code base whenever
+# you push a code or open a pull request.
+#
+# You can adjust the behavior by modifying this file.
+# For more information, see:
+# https://github.com/github/super-linter
+name: Lint Code Base
+
+# on:
+# push:
+# branches: [ main ]
+# pull_request:
+# branches: [ main ]
+jobs:
+ run-lint:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v2
+ with:
+ # Full git history is needed to get a proper list of changed files within `super-linter`
+ fetch-depth: 0
+
+ - name: Lint Code Base
+ uses: github/super-linter@v4
+ env:
+ VALIDATE_ALL_CODEBASE: false
+ DEFAULT_BRANCH: main
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.gitignore b/.gitignore
index cc7bb17..aa724b7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,4 +13,3 @@
.externalNativeBuild
.cxx
local.properties
-release-key.jks
\ No newline at end of file
diff --git a/README.md b/README.md
index e8cffaf..2d08889 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
-
+
@@ -10,31 +10,6 @@
Tiny app to redirect outgoing calls to Signal/Telegram/Threema/Whatsapp.
----
-
-
-
-
-
-
-
-
----
-
-
- Screenshots
-
-
-
-
-
-
-
-
-
-
-
-
You can cancel redirection by clicking on `Redirecting to..` popup.
## Permissions
@@ -62,4 +37,4 @@ Licensed under the [Public Domain](https://www.svgrepo.com/page/licensing/#PD).
### Original Author
-[This software](https://github.com/x13a/Red) was originally developed by [x13a](https://github.com/x13a), but it has been archived by the owner on Jun 22, 2022.
\ No newline at end of file
+This software was originally developed by https://github.com/x13a, but it has been archived by the owner on Jun 22, 2022.
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 0637905..7f6f5a7 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@ android {
applicationId = "partisan.weforge.xyz.pulse"
minSdk = 29
targetSdk = 34
- versionCode = 12
- versionName = "1.4.0"
+ versionCode = 9
+ versionName = "1.3.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
@@ -50,13 +50,6 @@ android {
lint {
disable += 'MissingTranslation'
}
-
- dependenciesInfo {
- // Disables dependency metadata when building APKs (for IzzyOnDroid/F-Droid)
- includeInApk = false
- // Disables dependency metadata when building Android App Bundles (for Google Play)
- includeInBundle = false
- }
}
dependencies {
diff --git a/app/src/main/java/partisan/weforge/xyz/pulse/PopupWindow.kt b/app/src/main/java/partisan/weforge/xyz/pulse/PopupWindow.kt
index d5f4aa1..835f2ab 100644
--- a/app/src/main/java/partisan/weforge/xyz/pulse/PopupWindow.kt
+++ b/app/src/main/java/partisan/weforge/xyz/pulse/PopupWindow.kt
@@ -9,24 +9,21 @@ import android.net.Uri
import android.view.Gravity
import android.view.LayoutInflater
import android.view.WindowManager
-import android.view.ContextThemeWrapper
import android.widget.TextView
-import android.animation.ObjectAnimator
-import android.widget.ProgressBar
import androidx.annotation.RequiresPermission
import java.lang.ref.WeakReference
import java.util.*
import kotlin.concurrent.timerTask
class PopupWindow(
- ctx: Context,
+ private val ctx: Context,
private val service: WeakReference?,
) {
- private val themedCtx = ContextThemeWrapper(ctx, R.style.Theme_Pulse)
- private val prefs = Preferences(themedCtx)
- private val windowManager = themedCtx.getSystemService(WindowManager::class.java)
- private val audioManager = themedCtx.getSystemService(AudioManager::class.java)
- private val view = LayoutInflater.from(themedCtx).inflate(R.layout.popup, null)
+ private val prefs = Preferences(ctx)
+ private val windowManager = ctx.getSystemService(WindowManager::class.java)
+ private val audioManager = ctx.getSystemService(AudioManager::class.java)
+ @Suppress("InflateParams")
+ private val view = LayoutInflater.from(ctx).inflate(R.layout.popup, null)
private val layoutParams = WindowManager.LayoutParams().apply {
format = PixelFormat.TRANSLUCENT
flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
@@ -48,7 +45,7 @@ class PopupWindow(
fun preview() {
remove()
layoutParams.y = prefs.popupPosition
- val destinations = listOf(
+ val destinations = mutableListOf(
R.string.destination_signal,
R.string.destination_telegram,
R.string.destination_threema,
@@ -83,7 +80,6 @@ class PopupWindow(
service.cancelCall()
}, prefs.redirectionDelay)
setDescription(destinationId)
- startProgressAnimation(prefs.redirectionDelay)
if (!add()) {
timer?.cancel()
service.placeCallUnmodified()
@@ -91,46 +87,33 @@ class PopupWindow(
}
private fun setDescription(id: Int) {
- view.findViewById(R.id.description).text = themedCtx.getString(
+ view.findViewById(R.id.description).text = ctx.getString(
R.string.popup,
- themedCtx.getString(id),
+ ctx.getString(id),
)
}
- private fun startProgressAnimation(duration: Long) {
- val bar = view.findViewById(R.id.progress)
- bar.max = 100
- bar.progress = 0
- val animator = ObjectAnimator.ofInt(bar, "progress", 100)
- animator.duration = duration
- animator.start()
- }
-
@RequiresPermission(Manifest.permission.CALL_PHONE)
private fun call(data: Uri) {
- Intent(Intent.ACTION_VIEW).apply {
- this.data = data
- flags = Intent.FLAG_ACTIVITY_NEW_TASK
- themedCtx.startActivity(this)
+ Intent(Intent.ACTION_VIEW).let {
+ it.data = data
+ it.flags = Intent.FLAG_ACTIVITY_NEW_TASK
+ ctx.startActivity(it)
}
}
private fun add(): Boolean {
try {
windowManager?.addView(view, layoutParams)
- } catch (exc: WindowManager.BadTokenException) {
- return false
- }
+ } catch (exc: WindowManager.BadTokenException) { return false }
return true
}
private fun remove(): Boolean {
try {
windowManager?.removeView(view)
- } catch (_: IllegalArgumentException) {
- } catch (_: WindowManager.BadTokenException) {
- return false
- }
+ } catch (exc: IllegalArgumentException) {
+ } catch (exc: WindowManager.BadTokenException) { return false }
return true
}
diff --git a/app/src/main/res/drawable/progress_drawable.xml b/app/src/main/res/drawable/progress_drawable.xml
deleted file mode 100644
index 8349831..0000000
--- a/app/src/main/res/drawable/progress_drawable.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-
- -
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/layout/popup.xml b/app/src/main/res/layout/popup.xml
index 1b46631..03b30b0 100644
--- a/app/src/main/res/layout/popup.xml
+++ b/app/src/main/res/layout/popup.xml
@@ -1,41 +1,20 @@
-
+ card_view:cardBackgroundColor="@android:color/transparent"
+ card_view:cardCornerRadius="32dp"
+ card_view:cardElevation="0dp"
+ card_view:contentPadding="0dp">
-
+ android:background="@color/popup"
+ android:padding="16dp"
+ android:textColor="@color/black"
+ android:textSize="16sp" />
-
-
-
-
-
+
\ No newline at end of file
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml
index ad74a04..3e4e33f 100644
--- a/app/src/main/res/values/themes.xml
+++ b/app/src/main/res/values/themes.xml
@@ -7,9 +7,6 @@
- @color/teal_200
- @color/black
-
- - @color/white
- - @color/black
- - @style/TextAppearance.Material3.BodyMedium
+
\ No newline at end of file
diff --git a/data/IzzyOnDroidButton.svg b/data/IzzyOnDroidButton.svg
deleted file mode 100644
index 64cf6af..0000000
--- a/data/IzzyOnDroidButton.svg
+++ /dev/null
@@ -1,75 +0,0 @@
-
-
\ No newline at end of file
diff --git a/data/icon.png b/data/icon.png
deleted file mode 100644
index b7e0249..0000000
Binary files a/data/icon.png and /dev/null differ
diff --git a/data/icon_appstore.png b/data/icon_appstore.png
deleted file mode 100644
index cedd458..0000000
Binary files a/data/icon_appstore.png and /dev/null differ
diff --git a/data/icon_appstore.svg b/data/icon_appstore.svg
deleted file mode 100644
index 4b1375c..0000000
--- a/data/icon_appstore.svg
+++ /dev/null
@@ -1,197 +0,0 @@
-
-
diff --git a/data/playstore-promo-graphic.png b/data/playstore-promo-graphic.png
deleted file mode 100644
index fd22a85..0000000
Binary files a/data/playstore-promo-graphic.png and /dev/null differ
diff --git a/data/screenshot-redirecting.png b/data/screenshot-redirecting.png
deleted file mode 100644
index c4df362..0000000
Binary files a/data/screenshot-redirecting.png and /dev/null differ
diff --git a/data/screenshot.png b/data/screenshot.png
deleted file mode 100644
index 92a3059..0000000
Binary files a/data/screenshot.png and /dev/null differ
diff --git a/fastlane/metadata/android/en-US/changelogs/10.txt b/fastlane/metadata/android/en-US/changelogs/10.txt
deleted file mode 100644
index 1b0de33..0000000
--- a/fastlane/metadata/android/en-US/changelogs/10.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Forked from Red and renamed to Pulse.
-Changed Icons and graphic.
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/11.txt b/fastlane/metadata/android/en-US/changelogs/11.txt
deleted file mode 100644
index 062b81d..0000000
--- a/fastlane/metadata/android/en-US/changelogs/11.txt
+++ /dev/null
@@ -1 +0,0 @@
-Added material you icon.
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/12.txt b/fastlane/metadata/android/en-US/changelogs/12.txt
deleted file mode 100644
index 6011cef..0000000
--- a/fastlane/metadata/android/en-US/changelogs/12.txt
+++ /dev/null
@@ -1 +0,0 @@
-Added options to toggle and change priority to individual redirect services.
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/13.txt b/fastlane/metadata/android/en-US/changelogs/13.txt
deleted file mode 100644
index 664f914..0000000
--- a/fastlane/metadata/android/en-US/changelogs/13.txt
+++ /dev/null
@@ -1 +0,0 @@
-Updated metadata and removed some background Google BLOB to improve compliance with IzzyOnDroid repo.
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/14.txt b/fastlane/metadata/android/en-US/changelogs/14.txt
deleted file mode 100644
index 01c603f..0000000
--- a/fastlane/metadata/android/en-US/changelogs/14.txt
+++ /dev/null
@@ -1 +0,0 @@
-Fixed crash related to redirect popup
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/full_description.txt b/fastlane/metadata/android/en-US/full_description.txt
index 33e0227..6c498cd 100644
--- a/fastlane/metadata/android/en-US/full_description.txt
+++ b/fastlane/metadata/android/en-US/full_description.txt
@@ -1,13 +1,13 @@
-Tiny app to redirect outgoing calls to Signal/Telegram/Threema/Whatsapp if available.
+Tiny app to redirect outgoing calls to Signal/Telegram/Threema if available.
You can cancel redirection by clicking on "Redirecting to.." popup.
Permissions:
-* `ACCESS_NETWORK_STATE` - check internet is available
-* `CALL_PHONE` - make a call via messenger
-* `READ_CONTACTS` - check contact has a messenger record
-* `SYSTEM_ALERT_WINDOW` - show redirecting popup and launch an activity from background
-* `CALL_REDIRECTION` - process outgoing call
+* ACCESS_NETWORK_STATE - check internet is available
+* CALL_PHONE - make a call via messenger
+* READ_CONTACTS - check contact has a messenger record
+* SYSTEM_ALERT_WINDOW - show redirecting popup and launch an activity from background
+* CALL_REDIRECTION - process outgoing call
All permissions are mandatory.
diff --git a/fastlane/metadata/android/en-US/images/featureGraphic.png b/fastlane/metadata/android/en-US/images/featureGraphic.png
index fd22a85..4473ebc 100644
Binary files a/fastlane/metadata/android/en-US/images/featureGraphic.png and b/fastlane/metadata/android/en-US/images/featureGraphic.png differ
diff --git a/fastlane/metadata/android/en-US/images/icon.png b/fastlane/metadata/android/en-US/images/icon.png
index cedd458..efc5b16 100644
Binary files a/fastlane/metadata/android/en-US/images/icon.png and b/fastlane/metadata/android/en-US/images/icon.png differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png
index 4107576..8b9cbff 100644
Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png and b/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png
deleted file mode 100644
index 8054120..0000000
Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png and /dev/null differ
diff --git a/fastlane/metadata/android/en-US/short_description.txt b/fastlane/metadata/android/en-US/short_description.txt
index 9a08a39..0abcbf9 100644
--- a/fastlane/metadata/android/en-US/short_description.txt
+++ b/fastlane/metadata/android/en-US/short_description.txt
@@ -1 +1 @@
-Redirect outgoing calls to Signal/Telegram/Threema/Whatsapp
+Redirect outgoing calls to Signal/Telegram/Threema
diff --git a/fastlane/metadata/android/en-US/title.txt b/fastlane/metadata/android/en-US/title.txt
index fe8f965..d30c108 100644
--- a/fastlane/metadata/android/en-US/title.txt
+++ b/fastlane/metadata/android/en-US/title.txt
@@ -1 +1 @@
-Pulse
\ No newline at end of file
+Red
diff --git a/fastlane/metadata/android/fr-FR/full_description.txt b/fastlane/metadata/android/fr-FR/full_description.txt
index 52007ec..d7bd9b5 100644
--- a/fastlane/metadata/android/fr-FR/full_description.txt
+++ b/fastlane/metadata/android/fr-FR/full_description.txt
@@ -1,15 +1,15 @@
-Petite application redirigereant les appels sortants vers Signal/Telegram/Threema/Whatsapp si ils sont
+Petite application redirigereant les appels sortants vers Signal/Telegram/Threema si ils sont
disponibles.
Vous pouvez annuler la redirection en cliquant sur la fenêtre contextuelle "Redirection vers...".
Autorisations:
-* `ACCESS_NETWORK_STATE` - Vérifié la disponibilité d\'accès à internet
-* `CALL_PHONE` - Passer un appel via messenger
-* `READ_CONTACTS` - Vérifier que le contact a un enregistreur de message
-* `SYSTEM_ALERT_WINDOW` - Afficher une fenêtre contextuelle de redirection et lancer une activité en
+* ACCESS_NETWORK_STATE - Vérifié la disponibilité d\'accès à internet
+* CALL_PHONE - Passer un appel via messenger
+* READ_CONTACTS - Vérifier que le contact a un enregistreur de message
+* SYSTEM_ALERT_WINDOW - Afficher une fenêtre contextuelle de redirection et lancer une activité en
arrière-plan
-* `CALL_REDIRECTION` - Traiter les appels sortants
+* CALL_REDIRECTION - Traiter les appels sortants
Toutes les autorisations sont obligatoires.
diff --git a/fastlane/metadata/android/fr-FR/short_description.txt b/fastlane/metadata/android/fr-FR/short_description.txt
index f14d074..8eec792 100644
--- a/fastlane/metadata/android/fr-FR/short_description.txt
+++ b/fastlane/metadata/android/fr-FR/short_description.txt
@@ -1 +1 @@
-Rediriger les appels sortants vers Signal/Telegram/Threema/Whatsapp
+Rediriger les appels sortants vers Signal/Telegram/Threema
diff --git a/fastlane/metadata/android/fr-FR/title.txt b/fastlane/metadata/android/fr-FR/title.txt
index f56e47b..d30c108 100644
--- a/fastlane/metadata/android/fr-FR/title.txt
+++ b/fastlane/metadata/android/fr-FR/title.txt
@@ -1 +1 @@
-Pulse
+Red
diff --git a/fastlane/metadata/android/ru-RU/full_description.txt b/fastlane/metadata/android/ru-RU/full_description.txt
index ac72662..933fa76 100644
--- a/fastlane/metadata/android/ru-RU/full_description.txt
+++ b/fastlane/metadata/android/ru-RU/full_description.txt
@@ -1,14 +1,14 @@
-Мини приложение для перенаправления исходящих вызовов в Signal/Telegram/Threema/Whatsapp.
+Мини приложение для перенаправления исходящих вызовов в Signal/Telegram/Threema.
Вы можете отменить перенаправление, кликнув на всплывающее сообщение "Перенаправление в..".
Разрешения:
-* `ACCESS_NETWORK_STATE` - проверить наличие интернета
-* `CALL_PHONE` - позвонить через мессенджер
-* `READ_CONTACTS - проверить контакт на наличие записи из мессенджера
-* `SYSTEM_ALERT_WINDOW` - показать всплывающее сообщение о перенаправлении и запустить активити из
+* ACCESS_NETWORK_STATE - проверить наличие интернета
+* CALL_PHONE - позвонить через мессенджер
+* READ_CONTACTS - проверить контакт на наличие записи из мессенджера
+* SYSTEM_ALERT_WINDOW - показать всплывающее сообщение о перенаправлении и запустить активити из
фона
-* `CALL_REDIRECTION` - обработать исходящий вызов
+* CALL_REDIRECTION - обработать исходящий вызов
Все разрешения обязательны для работы приложения.
diff --git a/fastlane/metadata/android/ru-RU/short_description.txt b/fastlane/metadata/android/ru-RU/short_description.txt
index b8ddc1b..3efc5bd 100644
--- a/fastlane/metadata/android/ru-RU/short_description.txt
+++ b/fastlane/metadata/android/ru-RU/short_description.txt
@@ -1 +1 @@
-Перенаправление исходящих вызовов в Signal/Telegram/Threema/Whatsapp
+Перенаправление исходящих вызовов в Signal/Telegram/Threema
diff --git a/fastlane/metadata/android/ru-RU/title.txt b/fastlane/metadata/android/ru-RU/title.txt
index f56e47b..d30c108 100644
--- a/fastlane/metadata/android/ru-RU/title.txt
+++ b/fastlane/metadata/android/ru-RU/title.txt
@@ -1 +1 @@
-Pulse
+Red