Commit Graph
11025 Commits
Author SHA1 Message Date
Hans-Christoph Steiner aebcc1edd6 port 1.x swap startup to 2.x
The whole swap setup was designed around having certain tiny background
processes start at app start.  They are designed to be very low impact, run
at lowest priority, and be scheduled via WorkManager.

port was in 0f73f9ca0e
2026-07-10 15:45:24 +02:00
Hans-Christoph Steiner e697808519 Merge branch 'donation-icons' into 'master'
🖼️ add opencollective/liberapay/bitcoin/litecoin donation icons

Closes #3321

See merge request fdroid/fdroidclient!1696
2026-07-10 10:44:56 +00:00
Michael Pöhn 8d09dc01c3 🖼️ opencollective/liberapay/bitcoin/litecoin icons
This adds colorful icons to the donation section on the AppDetails
composable.
2026-07-09 18:37:12 +02:00
Hans-Christoph Steiner 413dc46222 Merge branch 'disable-nearby-sdk-25-and-older' into 'master'
remove Nearby from menu on SDK<26, it is borked

See merge request fdroid/fdroidclient!1692
2026-07-09 09:26:22 +00:00
Hans-Christoph Steiner 4dd8572596 remove Nearby from menu on SDK<26, it is borked
Looks like there would have to be "desugaring" or something like included to
make it work, since `java.nio` was added in SDK 26:

```
java.lang.NoSuchMethodError: No virtual method toPath()Ljava/nio/file/Path; in class Ljava/io/File; or its super classes (declaration of 'java.io.File' appears in /system/framework/core-oj.jar)
    at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:927)
    at org.fdroid.fdroid.nearby.LocalRepoManager.writeIndexJar(LocalRepoManager.java:289)
    at org.fdroid.fdroid.nearby.LocalRepoManager.generateIndex(LocalRepoManager.java:265)
    at org.fdroid.fdroid.nearby.LocalRepoService.runProcess(LocalRepoService.java:107)
    at org.fdroid.fdroid.nearby.LocalRepoService$GenerateLocalRepoThread.run(LocalRepoService.java:96)
```
2026-07-09 09:25:28 +00:00
Michael Pöhn 95911e2ccb Merge branch 'check-for-updates-menu' into 'master'
add "Check for updates" menu item to MyApps, #3171

See merge request fdroid/fdroidclient!1693
2026-07-09 08:55:39 +00:00
Hans-Christoph Steiner 2b019f958b add "Check for updates" menu item to MyApps, #3171 2026-07-09 08:55:15 +00:00
Michael Pöhn 0bbb8530ce Merge branch 'log-error-to-port' into 'master'
log error if ROM hasn't ported additional_repos.xml to JSON

See merge request fdroid/fdroidclient!1685
2026-07-09 08:34:22 +00:00
Hans-Christoph Steiner 15c0a4a7b4 log error if ROM hasn't ported additional_repos.xml to JSON
fdroid-website@9bdf0905f9
fdroid-website!1508
2026-07-09 08:33:50 +00:00
Hans-Christoph Steiner f2b1ee6b0b Merge branch 'swap_fix' into 'master'
improve security of swap feature

See merge request fdroid/fdroidclient!1682
2026-07-08 19:15:30 +00:00
Hans-Christoph Steiner b56e58f749 this code base uses integer values for SDK_INT checks 2026-07-08 20:43:31 +02:00
mnbogner cf996d28d2 restored some removed code and added some logigng based on pr feedback 2026-07-08 11:35:59 -07:00
mnbogner b707215a11 added ipv6 support 2026-07-08 11:28:10 -07:00
mnbogner 3695c4b80c updates based on pr suggestions to avoid unintentional dns lookups 2026-07-08 10:32:09 -07:00
mnbogner 0f95122faf fix result mismatch and observer loop 2026-07-08 10:32:09 -07:00
mnbogner 176a0351b1 restored some removed code and added some logigng based on pr feedback 2026-07-08 10:32:09 -07:00
mnbogner cb4c29783a clear subnet info if wifi is disabled 2026-07-08 10:32:09 -07:00
mnbogner 27d8b2f159 added ipv6 support 2026-07-08 10:32:09 -07:00
mnbogner 2fade0c1df for improved security, a swap repo config will not be saved unless it's on the same wifi network as the device 2026-07-08 10:32:09 -07:00
Hans-Christoph Steiner e36f616b91 Merge branch 'weblate-f-droid-f-droid' into 'master'
Translations update from Hosted Weblate

See merge request fdroid/fdroidclient!1683
2026-07-08 13:47:32 +00:00
+44 f8305357a5 Translations update from weblate
Co-authored-by: -akku- <akkun11.open@gmail.com>
Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Co-authored-by: Aster <coil4129@users.noreply.hosted.weblate.org>
Co-authored-by: Danial Behzadi <dani.behzi@ubuntu.com>
Co-authored-by: Hamlet <h@mlet.me>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Hosted Weblate user 115094 <veselsem@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate user 152808 <anonymous0474@users.noreply.hosted.weblate.org>
Co-authored-by: Hồ Nhất Duy <axicenia@gmail.com>
Co-authored-by: Irene <ps86m042i@mozmail.com>
Co-authored-by: Jaxom <jaxom+weblate@tchack.xyz>
Co-authored-by: Jeff Huang <s8321414@gmail.com>
Co-authored-by: Jim Kats <jim-kats@hotmail.com>
Co-authored-by: Joel A <joeax910@student.liu.se>
Co-authored-by: John Doe <thraex@numericable.fr>
Co-authored-by: Kenpel <sarah.beara-weblate@vfemail.net>
Co-authored-by: Kibogr <kibogr@users.noreply.hosted.weblate.org>
Co-authored-by: Kristoffer Grundström <swedishsailfishosuser@tutanota.com>
Co-authored-by: Krit Autarawisead <morphine459@gmail.com>
Co-authored-by: Licaon Kter <licaon.kter@protonmail.com>
Co-authored-by: Liner Seven <linour7gmekiblo@gmail.com>
Co-authored-by: Lucas Sogaray <lucassogaray72@gmail.com>
Co-authored-by: LucasMZ <git@lucasmz.dev>
Co-authored-by: Marcel Kubík <xkubik3@mailbox.org>
Co-authored-by: Marija Grineviciute <marijagrine@protonmail.com>
Co-authored-by: Mickaël Binos <mickaelbinos@outlook.com>
Co-authored-by: Milan <mobrcian@hotmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Moo <hazap@hotmail.com>
Co-authored-by: Mārtiņš B(...) <user-154873@users.noreply.hosted.weblate.org>
Co-authored-by: Nifou <nifou@mailfence.com>
Co-authored-by: Omer I.S. <omeritzicschwartz@gmail.com>
Co-authored-by: Priit Jõerüüt <jrthwlate@users.noreply.hosted.weblate.org>
Co-authored-by: Relavavik <relavavik792@gmail.com>
Co-authored-by: Sadig Akhund <sadigaxund@gmail.com>
Co-authored-by: Tuomas Hietala <tuomas.hietala@iki.fi>
Co-authored-by: VfBFan <vfbfan@users.noreply.hosted.weblate.org>
Co-authored-by: Watchman89 <rplatte@hotmail.nl>
Co-authored-by: XianR <xian@users.noreply.hosted.weblate.org>
Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Co-authored-by: Yurt Page <yurtpage+weblate@gmail.com>
Co-authored-by: andrey <andrey@mailbox.org>
Co-authored-by: caviaz <sverrebesteman@gmail.com>
Co-authored-by: cyberboh <cybermay686@gmail.com>
Co-authored-by: ginger-co <ginger_co@outlook.com>
Co-authored-by: glemco <32201227+glemco@users.noreply.github.com>
Co-authored-by: jonnysemon <jonnysemon@users.noreply.hosted.weblate.org>
Co-authored-by: justcontributor <kty5663@gmail.com>
Co-authored-by: paul mayero <pmmayero@gmail.com>
Co-authored-by: ssantos <ssantos@web.de>
Co-authored-by: tedyurix <xxxtedtedi@gmail.com>
Co-authored-by: winver <kirillstuzhuk@gmail.com>
Co-authored-by: Алкуат Базарбеков <alkuat666@gmail.com>
Co-authored-by: ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝) <coool@mail.lv>
Translate-URL: https://hosted.weblate.org/projects/f-droid/client-changelog/et/
Translate-URL: https://hosted.weblate.org/projects/f-droid/client-changelog/fa/
Translate-URL: https://hosted.weblate.org/projects/f-droid/client-changelog/fr/
Translate-URL: https://hosted.weblate.org/projects/f-droid/client-changelog/gl/
Translate-URL: https://hosted.weblate.org/projects/f-droid/client-changelog/nl/
Translate-URL: https://hosted.weblate.org/projects/f-droid/client-changelog/ro/
Translate-URL: https://hosted.weblate.org/projects/f-droid/client-changelog/sl/
Translate-URL: https://hosted.weblate.org/projects/f-droid/client-changelog/sv/
Translate-URL: https://hosted.weblate.org/projects/f-droid/client-changelog/vi/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid-basic-metadata/el/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid-basic-metadata/fr/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid-basic-metadata/ko/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid-basic-metadata/uk/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid-metadata/ja/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/ar/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/az/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/bn_BD/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/de/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/es_AR/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/eu/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/fa/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/fi/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/fr/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/gl/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/he/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/hr/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/id/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/it/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/ja/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/kk/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/ko/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/lt/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/lv/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/nl/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/pt/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/pt_PT/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/ru/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/sk/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/sl/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/sv/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/sw/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/th/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/tr/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/uk/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/vi/
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/zh_Hant/
Translation: F-Droid/Client Changelog
Translation: F-Droid/F-Droid
Translation: F-Droid/F-Droid Basic metadata
Translation: F-Droid/F-Droid metadata
2026-07-07 16:33:21 +00:00
Michael Pöhn 5102ebe498 Merge branch 'maintain-changelog' into 'master'
add missing CHANGELOG.md entries; automate making release tags with changelogs included

Closes #3271

See merge request fdroid/fdroidclient!1688
2026-07-07 16:32:22 +00:00
Hans-Christoph Steiner 5b761bbca1 add script to make release tags
Now that the changelog entry is also include in the tag message, this
script makes sure that happens, and the entry also ends up in CHANGELOG.md
2026-07-03 15:49:05 +02:00
Hans-Christoph Steiner 611ad88870 fetch missing CHANGELOG.md entries from git tags
closes #3271

```python

import git
import os
import re
import sys

from colorama import Fore, Style
from datetime import date
from pathlib import Path

def main():
    private_token = os.getenv("PERSONAL_ACCESS_TOKEN")
    if not private_token:
        print(
            Fore.RED
            + "ERROR: GitLab Token not found in PERSONAL_ACCESS_TOKEN!"
            + Style.RESET_ALL
        )
        sys.exit(1)

    project_dir = Path(__file__).parent.parent
    changelog_file = project_dir / "CHANGELOG.md"
    changelog = changelog_file.read_text()
    releases = []
    for version, _ignored in re.findall(r"\#\# *(\S+) *\(([0-9-]+)\)", changelog):
        releases.append(version)

    repo = git.Repo(project_dir)
    new_changelog = ""
    for tag in sorted(
        repo.tags,
        key=lambda t: t.tag.tagged_date if t.tag is not None else 0,
        reverse=True,
    ):
        if tag.name in releases:
            print("Found", tag.name)
            break
        new_changelog += (
            f"### {tag.name} ({date.fromtimestamp(tag.tag.tagged_date)})\n\n"
        )
        new_changelog += tag.tag.message.split("-----")[0].replace(tag.name, "")
        new_changelog += "\n"
    changelog_file.write_text(re.sub(r"\n{3,}", r"\n\n", new_changelog + changelog))

if __name__ == "__main__":
    main()
```
2026-07-03 15:48:50 +02:00
Hans-Christoph Steiner a0f2b3d94d CHANGELOG.md: include entry for 1.23.2 2026-07-03 15:47:47 +02:00
Michael Pöhn ac088b17d8 Merge branch '2.0' into 'master'
Bug fixes, new categories and updates

See merge request fdroid/fdroidclient!1686
2026-06-27 01:16:31 +00:00
Torsten Grote 2abc7cbaa4 Move Market & Price category to Financial group 2026-06-24 13:39:08 -03:00
Torsten Grote d074610368 Fix cruft introduced when moving classes with IDE
which was now causing test compilation issues
2026-06-24 10:11:23 -03:00
Torsten Grote e9ce73c649 Add MR paragraph to CONTRIBUTING.md 2026-06-24 10:11:23 -03:00
Torsten Grote c1468276d4 Update CONTRIBUTING.md 2026-06-24 10:11:22 -03:00
Torsten Grote 47e62454f4 Update dependencies 2026-06-24 10:11:22 -03:00
Torsten Grote 2ba424a76d Add new categories 2026-06-24 10:11:21 -03:00
Torsten Grote 2bcf64d289 Check out LFS reference screenshots only in screenshot test 2026-06-24 10:11:21 -03:00
Torsten Grote 73c48aec19 Prevent updating ourselves from getting stuck
and allow to cancel our update when it is still waiting
2026-06-24 10:11:19 -03:00
Michael Pöhn 7512ac1110 Merge branch '2.0' into 'master'
Bug fixes for 2.0

Closes #3201, #3295, #3297, #3298, and #3300

See merge request fdroid/fdroidclient!1684
2026-06-16 07:56:54 +00:00
Torsten Grote eb126e3ac7 Hide keyboard before navigating to search result
Otherwise, the auto-hide comes late and looks sluggish after the destination has already loaded.
2026-06-15 15:15:01 -03:00
Torsten Grote 9aa80e4e9b Don't cache nightly deploy
because everything relevant should have been cached before already and uploading several GB of cache takes a lot of time
2026-06-15 15:15:00 -03:00
Torsten Grote 7d223cb4f4 Start WifiStateChangeService when starting SwapService 2026-06-15 15:14:59 -03:00
Torsten Grote b3aea44cf0 Also clip app icons in app lists
so they use rounded corners there as well
2026-06-15 15:14:59 -03:00
Torsten Grote 801b07c646 Improve apps details description animation
when it expands and collapses. Also simplifies the code by not having two times different descriptions in the view hierarchy.
2026-06-15 15:14:58 -03:00
Torsten Grote c1e4e27797 Auto-try legacy installer when install verification fails
This is useful for users with Google Advanced Protection who can use this to circumvent install restrictions and still use F-Droid. See #3201
2026-06-15 15:14:57 -03:00
Torsten Grote 751b00242b Fix dynamic colors for category group icons 2026-06-15 15:14:57 -03:00
Torsten Grote f4f6041518 Work around Chinese ROMs aborting installation pre-approval
There's a second code path for updates where we can't ask for pre-approval right away, so it needs to be triggered by the user when they see the UI. This code path gets hit for automatic updates or when the user wants to update many apps at once.

There we also measure time to abort and if it is faster than 250ms we continue without pre-approval.
2026-06-15 15:14:56 -03:00
Torsten Grote 2778299cb4 Show self-update notification also when user triggered update
before we were showing it only when the app was in foreground when it started to self-update
2026-06-15 15:14:55 -03:00
Torsten Grote 0231b58a2f Remove dependencies that are no longer needed
after removing the legacy code
2026-06-15 15:14:55 -03:00
Torsten Grote a2a857dae9 Merge branch 'hints-3.1.0' into 'master'
ComposeHints 3.1.0

See merge request fdroid/fdroidclient!1681
2026-06-15 17:21:16 +00:00
Torsten Grote 85b6ab3daf Update compose-hints to 3.1.1
this fixes an issue with the onboarding dialog scrolling, if a scroll was in progress
2026-06-15 13:57:40 -03:00
Viktor Mykhailiv adcb542362 Set global hint overlay color 2026-06-11 21:29:43 +01:00
Viktor Mykhailiv 42cea9d27d Show full-screen hints for Repo screens 2026-06-11 21:16:58 +01:00
Torsten Grote 5f0f7560e4 Merge branch 'weblate-f-droid-f-droid' into 'master'
Translations update from Hosted Weblate

See merge request fdroid/fdroidclient!1680
2026-06-11 19:09:24 +00:00