Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release/1.19.2 #1643

Merged
merged 70 commits into from
Aug 25, 2024
Merged
Changes from all commits
Commits
Show all changes
70 commits
Select commit Hold shift + click to select a range
9c3513f
Merge pull request #1563 from oxen-io/release/1.18.5
ThomasSession Jul 23, 2024
8ad7005
Adding back the fullscreen intent permission
ThomasSession Jul 23, 2024
fc5c7a7
Merge pull request #1566 from oxen-io/release/1.18.6
ThomasSession Jul 24, 2024
631d93c
Replace kapt with ksp and update dependencies (#1560)
simophin Jul 24, 2024
0a08eb6
Fix leak Response body
Jul 24, 2024
64c7224
Merge pull request #1568 from bemusementpark/fix-body
bemusementpark Jul 25, 2024
ac4f252
Fix longpress message fails
Jul 25, 2024
a495ec2
Merge pull request #1570 from bemusementpark/longpress
ThomasSession Jul 25, 2024
dec02ce
Fix double closing on memory file (#1579)
simophin Jul 29, 2024
fbbef48
Merge pull request #1564 from oxen-io/feature/adding-back-fullscreen-…
ThomasSession Jul 31, 2024
60c111d
Removing the snodes version patch
ThomasSession Jul 31, 2024
137a26c
KeepAliveService doesn't seem to be used anywhere
ThomasSession Aug 1, 2024
33f23e5
Another unused or referenced service
ThomasSession Aug 1, 2024
2a5f86e
Merge pull request #1587 from oxen-io/feature/remove-snode-version-patch
ThomasSession Aug 1, 2024
2f135a6
Cleaning up foreground service calls
ThomasSession Aug 1, 2024
d8bcb83
Fix app exit after Lock Screen
Jul 27, 2024
268b6cc
Fix crashes on conversation screen (#1590)
simophin Aug 1, 2024
fb7c24a
Update app/src/main/java/org/thoughtcrime/securesms/service/KeyCachin…
ThomasSession Aug 1, 2024
7dcfba4
Update app/src/main/java/org/thoughtcrime/securesms/service/KeyCachin…
ThomasSession Aug 1, 2024
e71f650
Update app/src/main/java/org/thoughtcrime/securesms/service/WebRtcCal…
ThomasSession Aug 1, 2024
a56e1d0
Merge pull request #1591 from oxen-io/feature/service-clean-up
ThomasSession Aug 1, 2024
b93ec3b
Optimise Snode and Snode.Version
Aug 2, 2024
41ab9b9
Updated logic for hiding the input in conversation
ThomasSession Aug 2, 2024
9ce3ab4
Added a background to emoji variations popup
ThomasSession Aug 2, 2024
482f169
Refactor SnodeApi
Aug 2, 2024
48554fa
[SES-2494] Applying proper styling for message request
ThomasSession Aug 2, 2024
c1d40cd
Optimise SnodesAPI
Aug 3, 2024
3c8302f
Optimise SnodeAPI further
Aug 3, 2024
6e1ed8c
Add SnodeTest
Aug 3, 2024
5417660
Improve Version to cap parts at 16-bits rather than masking them
Aug 3, 2024
2125502
Refactor a few MessagingModuleConfiguration function calls
Aug 3, 2024
61cb602
Simplify and document some functions
Aug 3, 2024
f5d1deb
Add shared SecureRandom instance
Aug 3, 2024
cd1a064
Merge pull request #1596 from oxen-io/feature/clean-ups
ThomasSession Aug 5, 2024
fa0abef
Fix Snode Version CACHE usage
Aug 5, 2024
f9ace6a
Add LruCache and thread-safety
Aug 5, 2024
415264e
Merge pull request #1594 from bemusementpark/shared-random
bemusementpark Aug 5, 2024
2960edd
Fix removeDuplicates
Aug 5, 2024
41f5fcc
Merge branch 'dev' into more-snodes
Aug 5, 2024
982e23b
Merge branch 'dev' into release/1.19.0
ThomasSession Aug 5, 2024
8a9faa1
Fix SnodeAPI error thrown outside of Promise
Aug 5, 2024
c6c1aa6
Merge pull request #1597 from oxen-io/release/1.19.0
ThomasSession Aug 5, 2024
d6c5ab2
Merge pull request #1593 from bemusementpark/more-snodes
bemusementpark Aug 5, 2024
f865f9f
Merge branch 'dev' into merge/1.19.0
ThomasSession Aug 8, 2024
007e705
Merge pull request #1607 from oxen-io/merge/1.19.0
ThomasSession Aug 8, 2024
50929b8
Merge remote-tracking branch 'origin/dev' into release/1.19.1
Aug 14, 2024
5a248da
Merge pull request #1618 from oxen-io/release/1.19.1
simophin Aug 14, 2024
93a2890
Removing unrequired APi checks (#1620)
ThomasSession Aug 15, 2024
bc6718e
Feature/resource cleanup (#1623)
ThomasSession Aug 18, 2024
f379604
Feature/convo capitalised (#1624)
ThomasSession Aug 18, 2024
16d6efb
SES-2524 - Rewrite media gallery in Compose (#1619)
simophin Aug 19, 2024
8093393
Removing unsed UI tests (#1625)
ThomasSession Aug 19, 2024
2a438ac
Add missing play button on media gallery page (#1626)
simophin Aug 19, 2024
6701cb1
SES-2437 - fix broken path animation (#1627)
ThomasSession Aug 19, 2024
9919f71
[SES-2512] Rewrite ProfilePictureView (#1622)
simophin Aug 19, 2024
43c6e86
Bumped version code
ThomasSession Aug 20, 2024
8fc6679
Revert "[SES-2512] Rewrite ProfilePictureView (#1622)" (#1629)
simophin Aug 20, 2024
70f217c
Using open documents so that the downloads can be accessed (#1631)
ThomasSession Aug 21, 2024
ab2e374
Replaced MLKit with ZXing for QR code scanning (#1630)
AL-Session Aug 21, 2024
eea54d1
Add back action mode title (#1633)
simophin Aug 21, 2024
d5ff61f
[SES-2574] Fix crash on gallery screen (#1632)
simophin Aug 21, 2024
0fa8a6e
Merge branch 'dev' into release/1.19.2
ThomasSession Aug 21, 2024
245241e
Fix search ANR (#1634)
simophin Aug 21, 2024
e731c7d
Fix/ip2 country out of memory (#1628)
ThomasSession Aug 21, 2024
b14f8f6
Using the proper icon (#1635)
ThomasSession Aug 21, 2024
20e1fbc
Merge branch 'dev' into release/1.19.2
ThomasSession Aug 21, 2024
8e10e1a
Incorrect copy for denied permission (#1636)
simophin Aug 22, 2024
55c49ec
Merge branch 'dev' into release/1.19.2
ThomasSession Aug 22, 2024
afbb713
Applied save-crash workaround (#1640)
AL-Session Aug 23, 2024
a50e304
Removing resources
ThomasSession Aug 25, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
87 changes: 31 additions & 56 deletions app/build.gradle
Original file line number Diff line number Diff line change
@@ -1,38 +1,20 @@

buildscript {
repositories {
google()
mavenCentral()
}
dependencies {
classpath "com.android.tools.build:gradle:$gradlePluginVersion"
classpath files('libs/gradle-witness.jar')
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlinVersion"
classpath "com.google.gms:google-services:$googleServicesVersion"
classpath "com.google.dagger:hilt-android-gradle-plugin:$daggerVersion"
}
}

plugins {
id 'kotlin-kapt'
id 'com.google.devtools.ksp'
id 'com.google.dagger.hilt.android'
}

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'witness'
apply plugin: 'kotlin-kapt'
apply plugin: 'kotlin-parcelize'
apply plugin: 'kotlinx-serialization'
apply plugin: 'dagger.hilt.android.plugin'

configurations.all {
exclude module: "commons-logging"
configurations.forEach {
it.exclude module: "commons-logging"
}

def canonicalVersionCode = 379
def canonicalVersionName = "1.19.1"
def canonicalVersionCode = 380
def canonicalVersionName = "1.19.2"

def postFixSize = 10
def abiPostFix = ['armeabi-v7a' : 1,
@@ -67,13 +49,9 @@ android {
}

packagingOptions {
exclude 'LICENSE.txt'
exclude 'LICENSE'
exclude 'NOTICE'
exclude 'asm-license.txt'
exclude 'META-INF/LICENSE'
exclude 'META-INF/NOTICE'
exclude 'META-INF/proguard/androidx-annotations.pro'
resources {
excludes += ['LICENSE.txt', 'LICENSE', 'NOTICE', 'asm-license.txt', 'META-INF/LICENSE', 'META-INF/NOTICE', 'META-INF/proguard/androidx-annotations.pro']
}
}

splits {
@@ -88,8 +66,9 @@ android {
buildFeatures {
compose true
}

composeOptions {
kotlinCompilerExtensionVersion '1.4.7'
kotlinCompilerExtensionVersion '1.5.14'
}

defaultConfig {
@@ -111,8 +90,8 @@ android {
buildConfigField "String", "USER_AGENT", "\"OWA\""
buildConfigField "String[]", "LANGUAGES", "new String[]{\"" + autoResConfig().collect { s -> s.replace('-r', '_') }.join('", "') + '"}'
buildConfigField "int", "CANONICAL_VERSION_CODE", "$canonicalVersionCode"
resourceConfigurations += []

resConfigs autoResConfig()
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
// The following argument makes the Android Test Orchestrator run its
// "pm clear" command after each test invocation. This command ensures
@@ -172,7 +151,7 @@ android {
}
}

applicationVariants.all { variant ->
applicationVariants.forEach { variant ->
variant.outputs.each { output ->
def abiName = output.getFilter("ABI") ?: 'universal'
def postFix = abiPostFix.get(abiName, 0)
@@ -183,10 +162,6 @@ android {
}
}

lintOptions {
abortOnError true
baseline file("lint-baseline.xml")
}

testOptions {
unitTests {
@@ -195,7 +170,6 @@ android {
}

buildFeatures {
dataBinding true
viewBinding true
}

@@ -215,9 +189,11 @@ android {
}
}

task testPlayDebugUnitTestCoverageReport(type: JacocoReport, dependsOn: "testPlayDebugUnitTest") {
tasks.register('testPlayDebugUnitTestCoverageReport', JacocoReport) {
dependsOn 'testPlayDebugUnitTest'

reports {
xml.enabled = true
xml.required = true
}

// Add files that should not be listed in the report (e.g. generated Files from dagger)
@@ -235,12 +211,20 @@ android {
// This is enabled with 'enableUnitTestCoverage' in the 'debug' build type.
executionData.from = "${project.buildDir}/outputs/unit_test_code_coverage/playDebugUnitTest/testPlayDebugUnitTest.exec"
}


testNamespace 'network.loki.messenger.test'
lint {
abortOnError true
baseline file('lint-baseline.xml')
}
}

dependencies {

implementation("com.google.dagger:hilt-android:2.46.1")
kapt("com.google.dagger:hilt-android-compiler:2.44")
implementation("com.google.dagger:hilt-android:$daggerHiltVersion")
ksp("com.google.dagger:hilt-compiler:$daggerHiltVersion")
ksp("androidx.hilt:hilt-compiler:$jetpackHiltVersion")

implementation "androidx.appcompat:appcompat:$appcompatVersion"
implementation 'androidx.recyclerview:recyclerview:1.2.1'
@@ -260,6 +244,7 @@ dependencies {
implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
implementation "androidx.paging:paging-runtime-ktx:$pagingVersion"
implementation 'androidx.activity:activity-ktx:1.5.1'
implementation 'androidx.activity:activity-compose:1.5.1'
implementation 'androidx.fragment:fragment-ktx:1.5.3'
implementation "androidx.core:core-ktx:$coreVersion"
implementation "androidx.work:work-runtime-ktx:2.7.1"
@@ -281,18 +266,14 @@ dependencies {
implementation 'commons-net:commons-net:3.7.2'
implementation 'com.github.chrisbanes:PhotoView:2.1.3'
implementation "com.github.bumptech.glide:glide:$glideVersion"
annotationProcessor "com.github.bumptech.glide:compiler:$glideVersion"
kapt "com.github.bumptech.glide:compiler:$glideVersion"
implementation "com.github.bumptech.glide:compose:1.0.0-beta01"
ksp "com.github.bumptech.glide:ksp:$glideVersion"
implementation 'com.makeramen:roundedimageview:2.1.0'
implementation 'com.pnikosis:materialish-progress:1.5'
implementation 'org.greenrobot:eventbus:3.0.0'
implementation 'pl.tajchert:waitingdots:0.1.0'
implementation 'com.vanniktech:android-image-cropper:4.5.0'
implementation 'com.melnykov:floatingactionbutton:1.3.0'
implementation 'com.google.zxing:android-integration:3.1.0'
implementation "com.google.dagger:hilt-android:$daggerVersion"
kapt "com.google.dagger:hilt-compiler:$daggerVersion"
implementation 'com.google.zxing:core:3.2.1'
implementation ('com.davemorrissey.labs:subsampling-scale-image-view:3.6.0') {
exclude group: 'com.android.support', module: 'support-annotations'
}
@@ -304,7 +285,6 @@ dependencies {
exclude group: 'com.squareup.okhttp', module: 'okhttp-urlconnection'
}
implementation 'com.annimon:stream:1.1.8'
implementation project(':stickyheader')
implementation 'com.github.dmytrodanylyk.circular-progress-button:library:1.1.3-S2'
implementation 'androidx.sqlite:sqlite-ktx:2.3.1'
implementation 'net.zetetic:sqlcipher-android:4.5.4@aar'
@@ -370,7 +350,6 @@ dependencies {
testImplementation 'org.conscrypt:conscrypt-openjdk-uber:2.5.2' // For Robolectric
testImplementation 'app.cash.turbine:turbine:1.1.0'


implementation 'com.github.bumptech.glide:compose:1.0.0-alpha.5'
implementation "androidx.compose.ui:ui:$composeVersion"
implementation "androidx.compose.animation:animation:$composeVersion"
@@ -389,7 +368,8 @@ dependencies {
implementation "androidx.camera:camera-lifecycle:1.3.2"
implementation "androidx.camera:camera-view:1.3.2"

implementation "com.google.mlkit:barcode-scanning:17.2.0"
// Note: ZXing 3.5.3 is the latest stable release as of 2024/08/21
implementation "com.google.zxing:core:$zxingVersion"
}

static def getLastCommitTimestamp() {
@@ -410,8 +390,3 @@ def autoResConfig() {
.collect { matcher -> matcher.group(1) }
.sort()
}

// Allow references to generated code
kapt {
correctErrorTypes = true
}
3 changes: 1 addition & 2 deletions app/src/androidTest/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="network.loki.messenger.test">
xmlns:android="http://schemas.android.com/apk/res/android">
<application>
<uses-library android:name="android.test.runner"
android:required="false" />
Original file line number Diff line number Diff line change
@@ -40,7 +40,11 @@ import org.session.libsignal.utilities.guava.Optional
import org.thoughtcrime.securesms.conversation.v2.ConversationActivityV2
import org.thoughtcrime.securesms.conversation.v2.input_bar.InputBar
import org.thoughtcrime.securesms.home.HomeActivity
import org.thoughtcrime.securesms.mms.GlideApp
import com.bumptech.glide.Glide

/**
* Currently not used as part of our CI/Deployment processes !!!!
*/

@RunWith(AndroidJUnit4::class)
@LargeTest
@@ -71,7 +75,7 @@ class HomeActivityTests {
onView(allOf(isDescendantOfA(withId(R.id.inputBar)),withId(R.id.inputBarEditText))).perform(ViewActions.replaceText(messageToSend))
if (linkPreview != null) {
val activity = activityMonitor.waitForActivity() as ConversationActivityV2
val glide = GlideApp.with(activity)
val glide = Glide.with(activity)
activity.findViewById<InputBar>(R.id.inputBar).updateLinkPreviewDraft(glide, linkPreview)
}
onView(allOf(isDescendantOfA(withId(R.id.inputBar)),inputButtonWithDrawable(R.drawable.ic_arrow_up))).perform(ViewActions.click())
@@ -107,7 +111,7 @@ class HomeActivityTests {
}


private fun goToMyChat() {
/* private fun goToMyChat() {
onView(withId(R.id.newConversationButton)).perform(ViewActions.click())
onView(withId(R.id.createPrivateChatButton)).perform(ViewActions.click())
// new chat
@@ -122,7 +126,7 @@ class HomeActivityTests {
onView(withId(R.id.publicKeyEditText)).perform(ViewActions.typeText(copied))
onView(withId(R.id.publicKeyEditText)).perform(ViewActions.closeSoftKeyboard())
onView(withId(R.id.createPrivateChatButton)).perform(ViewActions.click())
}
}*/

@Test
fun testLaunches_dismiss_seedView() {
@@ -145,7 +149,7 @@ class HomeActivityTests {
onView(withId(R.id.seedReminderView)).check(matches(not(isDisplayed())))
}

@Test
/* @Test
fun testChat_withSelf() {
setupLoggedInState()
goToMyChat()
@@ -176,7 +180,7 @@ class HomeActivityTests {

onView(isRoot()).perform(waitFor(1000)) // no other way for this to work apparently
onView(withText(dialogPromptText)).check(matches(isDisplayed()))
}
}*/

/**
* Perform action of waiting for a specific time.
11 changes: 3 additions & 8 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -291,10 +291,6 @@
android:name="org.thoughtcrime.securesms.scribbles.StickerSelectActivity"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"
android:theme="@style/Theme.Session.ForceDark" />
<activity
android:name="com.theartofdev.edmodo.cropper.CropImageActivity"
android:screenOrientation="portrait"
android:theme="@style/Theme.AppCompat" />
<activity
android:name="org.thoughtcrime.securesms.ShortcutLauncherActivity"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"
@@ -310,6 +306,8 @@
android:name="android.support.PARENT_ACTIVITY"
android:value="org.thoughtcrime.securesms.home.HomeActivity" />
</activity>
<activity android:name="org.thoughtcrime.securesms.media.MediaOverviewActivity" />

<service android:enabled="true" android:name="org.thoughtcrime.securesms.service.WebRtcCallService"
android:foregroundServiceType="microphone"
android:exported="false" />
@@ -328,7 +326,6 @@
<action android:name="android.service.chooser.ChooserTargetService" />
</intent-filter>
</service>
<service android:name="org.thoughtcrime.securesms.service.GenericForegroundService" />
<receiver
android:name="org.thoughtcrime.securesms.notifications.MarkReadReceiver"
android:enabled="true"
@@ -440,9 +437,7 @@
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<service
android:name="org.thoughtcrime.securesms.jobmanager.KeepAliveService"
android:enabled="@bool/enable_alarm_manager" />

<uses-library
android:name="com.sec.android.app.multiwindow"
android:required="false" />
Original file line number Diff line number Diff line change
@@ -4,12 +4,8 @@
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Build;
import android.os.Build.VERSION;
import android.os.Build.VERSION_CODES;
import androidx.annotation.NonNull;

import androidx.fragment.app.FragmentActivity;
import android.view.KeyEvent;

import org.session.libsession.utilities.TextSecurePreferences;
import org.session.libsession.utilities.dynamiclanguage.DynamicLanguageActivityHelper;
Loading