diff --git a/apps/multiplatform/android/build.gradle.kts b/apps/multiplatform/android/build.gradle.kts index 419fef90b9..c16aced912 100644 --- a/apps/multiplatform/android/build.gradle.kts +++ b/apps/multiplatform/android/build.gradle.kts @@ -9,13 +9,13 @@ plugins { } android { - compileSdk = 35 + compileSdk = 36 defaultConfig { applicationId = "chat.simplex.app" namespace = "chat.simplex.app" minSdk = 26 - targetSdk = 35 + targetSdk = 36 // !!! // skip version code after release to F-Droid, as it uses two version codes versionCode = (extra["android.version_code"] as String).toInt() diff --git a/apps/multiplatform/android/src/main/AndroidManifest.xml b/apps/multiplatform/android/src/main/AndroidManifest.xml index 64d7a03cf7..5fa9c7fefa 100644 --- a/apps/multiplatform/android/src/main/AndroidManifest.xml +++ b/apps/multiplatform/android/src/main/AndroidManifest.xml @@ -35,6 +35,8 @@ + + android:enableOnBackInvokedCallback="false" + android:theme="@style/Theme.SimpleX" + tools:ignore="UnusedAttribute"> diff --git a/apps/multiplatform/common/build.gradle.kts b/apps/multiplatform/common/build.gradle.kts index a03a7d4b27..ca19cdea3a 100644 --- a/apps/multiplatform/common/build.gradle.kts +++ b/apps/multiplatform/common/build.gradle.kts @@ -158,13 +158,13 @@ kotlin { android { namespace = "chat.simplex.common" - compileSdk = 35 + compileSdk = 36 sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml") defaultConfig { minSdk = 26 } - testOptions.targetSdk = 34 - lint.targetSdk = 34 + testOptions.targetSdk = 36 + lint.targetSdk = 36 val isAndroid = gradle.startParameter.taskNames.find { val lower = it.lowercase() lower.contains("release") || lower.startsWith("assemble") || lower.startsWith("install") diff --git a/apps/multiplatform/gradle.properties b/apps/multiplatform/gradle.properties index 6224646940..069a1a20b8 100644 --- a/apps/multiplatform/gradle.properties +++ b/apps/multiplatform/gradle.properties @@ -31,7 +31,7 @@ desktop.version_name=7.1-beta.6 desktop.version_code=167 kotlin.version=2.1.20 -gradle.plugin.version=8.7.0 +gradle.plugin.version=8.10.1 compose.version=1.8.2 # Choose sqlite or postgres backend diff --git a/src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt b/src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt index e3a12eaf39..b648386f87 100644 --- a/src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt +++ b/src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt @@ -1123,6 +1123,15 @@ SEARCH m USING INTEGER PRIMARY KEY (rowid=?) LEFT-JOIN SEARCH g USING INTEGER PRIMARY KEY (rowid=?) LEFT-JOIN SEARCH h USING INDEX idx_sent_probe_hashes_sent_probe_id (sent_probe_id=?) +Query: + SELECT s.member_relations_vector, r.index_in_group + FROM group_members s, group_members r + WHERE s.local_display_name = ? AND r.local_display_name = ? + +Plan: +SCAN s +SEARCH r USING AUTOMATIC PARTIAL COVERING INDEX (local_display_name=?) + Query: SELECT t.roster_transfer_id, t.roster_version, t.roster_digest, t.sending_owner_gm_id, t.broker_ts, t.roster_msg_chat_binding, t.roster_msg_signatures, t.roster_msg_body @@ -4201,15 +4210,6 @@ SEARCH c USING INTEGER PRIMARY KEY (rowid=?) SEARCH cs USING INTEGER PRIMARY KEY (rowid=?) LEFT-JOIN SEARCH m USING INTEGER PRIMARY KEY (rowid=?) LEFT-JOIN -Query: - SELECT s.member_relations_vector, r.index_in_group - FROM group_members s, group_members r - WHERE s.local_display_name = ? AND r.local_display_name = ? - -Plan: -SCAN s -SEARCH r USING AUTOMATIC PARTIAL COVERING INDEX (local_display_name=?) - Query: SELECT smp_server_id, host, port, key_hash, basic_auth, preset, tested, enabled, role_storage, role_proxy, role_names @@ -7501,9 +7501,9 @@ Query: SELECT contact_domain_resolved_at, contact_domain_expires_at FROM contact Plan: SEARCH contact_profiles USING INTEGER PRIMARY KEY (rowid=?) -Query: SELECT contact_id FROM contacts WHERE user_id = ? AND chat_item_ttl > 0 OR chat_item_ttl IS NULL +Query: SELECT contact_id FROM contacts WHERE user_id = ? AND (chat_item_ttl > 0 OR chat_item_ttl IS NULL) Plan: -SCAN contacts +SEARCH contacts USING INDEX idx_contacts_chat_ts (user_id=?) Query: SELECT contact_id FROM contacts WHERE user_id = ? AND deleted = 0 Plan: @@ -7623,9 +7623,9 @@ Query: SELECT group_id FROM groups WHERE inv_queue_info = ? AND user_id = ? LIMI Plan: SEARCH groups USING INDEX sqlite_autoindex_groups_2 (user_id=?) -Query: SELECT group_id FROM groups WHERE user_id = ? AND chat_item_ttl > 0 OR chat_item_ttl IS NULL +Query: SELECT group_id FROM groups WHERE user_id = ? AND (chat_item_ttl > 0 OR chat_item_ttl IS NULL) Plan: -SCAN groups +SEARCH groups USING INDEX sqlite_autoindex_groups_2 (user_id=?) Query: SELECT group_id FROM groups WHERE user_id = ? AND creating_in_progress = 1 AND created_at <= ? Plan: @@ -7663,6 +7663,10 @@ Query: SELECT image FROM contact_profiles WHERE display_name = ? LIMIT 1 Plan: SEARCH contact_profiles USING INDEX contact_profiles_index (display_name=?) +Query: SELECT index_in_group, member_relations_vector FROM group_members WHERE local_display_name = ? +Plan: +SCAN group_members + Query: SELECT issue_failed_since, issue_error FROM badge_purchases Plan: SCAN badge_purchases diff --git a/website/src/crowdfunding.html b/website/src/crowdfunding.html index a4faa67dc8..4beddd2151 100644 --- a/website/src/crowdfunding.html +++ b/website/src/crowdfunding.html @@ -1033,7 +1033,7 @@ templateEngineOverride: njk
-
520KMonthly users
+
600KMonthly users
@@ -1048,8 +1048,8 @@ templateEngineOverride: njk
-

520,000
monthly users

-

Grown with zero marketing spend: hundreds of user posts, podcasts and videos, and $650,000 in user donations, before any paid features.

+

Over 600,000
monthly users

+

Organic growth: hundreds of user posts, podcasts and videos, and $650,000 in user donations, before any paid features.

Only $1.7M investment over 4 years — more capital efficient than most startups.

@@ -1074,7 +1074,7 @@ templateEngineOverride: njk
Users
-
520,000 active monthly,
+
600,000 active monthly,
organic growth
@@ -1084,7 +1084,7 @@ templateEngineOverride: njk
Businesses
-
20+ offer customer
+
50+ offer customer
support
diff --git a/website/src/img/crowdfunding/simplex-chat-pitch-deck.pdf b/website/src/img/crowdfunding/simplex-chat-pitch-deck.pdf index c35540061c..62ceb5ed48 100644 Binary files a/website/src/img/crowdfunding/simplex-chat-pitch-deck.pdf and b/website/src/img/crowdfunding/simplex-chat-pitch-deck.pdf differ diff --git a/website/src/img/crowdfunding/simplex-growth-2.png b/website/src/img/crowdfunding/simplex-growth-2.png index 671865cbe6..901532dca3 100644 Binary files a/website/src/img/crowdfunding/simplex-growth-2.png and b/website/src/img/crowdfunding/simplex-growth-2.png differ