Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
114 commits
Select commit Hold shift + click to select a range
2f5b1f6
Change package name
RankoR May 1, 2026
ed9d970
Add "perf" build type
RankoR May 2, 2026
de9d73f
Drop unused ABIs and simplify flavor dimensions
RankoR May 2, 2026
271b8b8
Rename to "Gallery"
RankoR May 2, 2026
1ceb260
Change icon
RankoR May 3, 2026
f5eb712
Change icon color for different build types
RankoR May 3, 2026
995d837
Add dependency hashes verification
RankoR May 3, 2026
007588b
Make gradlew executable
RankoR May 3, 2026
3c90b9f
Adjust GitHub Actions
RankoR May 3, 2026
f68bf43
Fix deps hashes
RankoR May 3, 2026
7129df3
Replace ReFra strings references with Gallery
RankoR May 4, 2026
fdd9d1f
Use our own version code and name
RankoR May 4, 2026
9bd2545
Change APK base name to Gallery
RankoR May 5, 2026
f9a5983
Change app_dev to clarify it's a fork
RankoR May 5, 2026
352e166
Update LICENSE
RankoR May 5, 2026
03963f6
Update README.md
RankoR May 5, 2026
9fc44e2
Add intent filters for iamges/videos collections and URLs
RankoR May 5, 2026
fd2b07c
Fix remote videos playback
RankoR May 5, 2026
366f3d6
Add READ_MEDIA_AUDIO and READ_MEDIA_VISUAL_USER_SELECTED and remove M…
RankoR May 13, 2026
a786160
Ignore JKS in Git
RankoR May 13, 2026
3339516
Remove maps from build
RankoR May 13, 2026
e65c1bc
Add a script to quickly build and replace release version in the GOS …
RankoR May 13, 2026
60dc4ca
Upgrade Gradle and dependencies hashes
RankoR May 21, 2026
ff7ab0a
Remove app name changing feature
RankoR May 21, 2026
b502cab
Add monochrome icon override to fix themed icon
RankoR May 21, 2026
b9dc851
Clarify that donations are going to ReFra
RankoR May 21, 2026
9a46f7d
Add strings overrides verification
RankoR May 21, 2026
4616b10
Include `app.properties` in repo
RankoR May 22, 2026
016bbc0
Improve README instructions
RankoR May 22, 2026
f3854ce
Remove changelog functionality
RankoR May 24, 2026
67e989f
Remove location browsing from help tips
RankoR May 24, 2026
ef73711
Remove fastlane
RankoR May 24, 2026
da5eb60
Remove Vault functionality
RankoR May 25, 2026
792ca95
Fix secure MediaStore review handling
RankoR May 25, 2026
f289478
Remove FCast support
RankoR May 25, 2026
0048392
Fix biometric prompt crash in standalone media viewer
RankoR May 25, 2026
fabeb3c
Remove scripts not needed anymore
RankoR May 25, 2026
29137f1
Remove maps variants and location timeline UI
RankoR May 26, 2026
24f8a47
Handle potential activity start crashes
RankoR May 26, 2026
f8736c9
Restore user-deleted bundled ML models via copy
RankoR May 26, 2026
0b352e1
fix: status bar icons always dark in media view when autoContrast is off
IacobIonut01 May 26, 2026
3d7c150
fix: skip NNAPI for quantized CLIP models to fix extremely slow class…
IacobIonut01 May 26, 2026
a406c14
fix: handle missing ACCESS_NETWORK_STATE permission gracefully
IacobIonut01 May 26, 2026
0000f93
fix: release motion player when swiping to non-motion photo (#867)
IacobIonut01 May 26, 2026
f0a7532
fix: limit concurrent copy operations to prevent crash on large batch…
IacobIonut01 May 26, 2026
db9fe7e
feat: search through image descriptions and metadata text fields
IacobIonut01 May 26, 2026
b4d32a2
fix: add imePadding to MetadataEditSheet bottom sheet
IacobIonut01 May 26, 2026
398c9ec
fix: initialize drag tracking state regardless of prior selection
IacobIonut01 May 26, 2026
2118e08
feat: add search bar to copy/move album picker sheets
IacobIonut01 May 26, 2026
92d2054
fix: remove animated sticky header offset to prevent grid realignment…
IacobIonut01 May 26, 2026
250908c
fix: allow move/copy to all albums when app has MANAGE_MEDIA permission
IacobIonut01 May 26, 2026
8253216
fix: preserve original DATE_TAKEN and DATE_ADDED when overriding edit…
IacobIonut01 May 23, 2026
78379f7
fix: use filename-parsed date as fallback when MediaStore DATE_TAKEN …
IacobIonut01 May 23, 2026
b03077d
feat: persist MediaStore rescan tracking in Room database
IacobIonut01 May 13, 2026
7c80c6f
fix: reset forced screen orientation when leaving video player (#880)
IacobIonut01 May 25, 2026
f7d6dd1
fix: sync MediaView status bar with followTheme logic and enableEdgeT…
IacobIonut01 May 25, 2026
a0b78da
fix: remove stale status bar restore in MediaViewScreen onDispose
IacobIonut01 May 25, 2026
d61beb8
perf: optimize cold startup from ~900ms to ~350ms
IacobIonut01 May 25, 2026
767ee80
feat(security): add metadata isolation settings
IacobIonut01 May 13, 2026
f98a0c5
feat(security): add per-file isolated metadata parsing (#825)
IacobIonut01 May 13, 2026
87db637
feat(security): add sandboxed HEIF/AVIF/JXL image decoding (#826)
IacobIonut01 May 13, 2026
77fb647
Polish setup screen layout
RankoR May 28, 2026
a211144
Use mmap for ML models instead of copying
RankoR May 28, 2026
c561c9c
refactor: move shared element to content box and switch sharedBounds …
IacobIonut01 May 24, 2026
d1dcb50
fix: change StandaloneActivity to extend AppCompatActivity to prevent…
IacobIonut01 May 25, 2026
c205d2c
fix: empty media padding with aboveGridContent and hide collection ca…
IacobIonut01 May 25, 2026
19d010a
fix: use calendar-day difference for timeline date grouping
IacobIonut01 May 26, 2026
a70b39e
fix: copy/move media to SD card folders instead of internal storage
IacobIonut01 May 26, 2026
c2f8c22
fix: notify Files URI after move/copy so ContentObservers refresh
IacobIonut01 May 31, 2026
c7140ef
fix: add taskAffinity to StandaloneActivity to fix back navigation (#…
IacobIonut01 May 31, 2026
4243829
fix: use PointerEventPass.Initial for grid pinch-zoom to prevent scro…
IacobIonut01 May 31, 2026
2b573fe
fix: deduplicate pagerMedia by ID to prevent duplicate key crash in H…
IacobIonut01 May 31, 2026
d4b8716
Improve ONNX inference handling
RankoR Jun 4, 2026
c7234d8
Remove editor save override
RankoR Jun 5, 2026
eb298b2
Set minSdk to 36
RankoR Jun 10, 2026
7e63d00
Restrict media export picker results
RankoR Jun 10, 2026
9614899
Harden cross-volume media moves
RankoR Jun 10, 2026
eeeca7e
Close sandbox IPC resources safely
RankoR Jun 10, 2026
1b4d3c0
Refresh standalone review state for new intents
RankoR Jun 10, 2026
6e3442a
Disable app backups
RankoR Jun 10, 2026
884d8ff
Remove example tests
RankoR Jun 11, 2026
ef95070
Synchronize ONNX session close with inference
RankoR Jun 11, 2026
324677c
Implement crop intent handling
RankoR Jul 7, 2026
e2c1809
Harden secure media review handling
RankoR Jul 13, 2026
7511468
Harden media copy scheduling and failure handling
RankoR Jul 14, 2026
5e427d7
Harden media decoding and preserve safe image and video handling
RankoR Jul 16, 2026
dcd9854
Require opt-in and sandbox media analysis decoding
RankoR Jul 18, 2026
9a269e3
Fold gos resource overrides into main
RankoR Jul 29, 2026
bb6d3d8
Remove catch-all intent filter from StandaloneActivity
RankoR Jul 29, 2026
90caee2
Remove stale per-variant Room schemas
RankoR Jul 29, 2026
ea7fa7f
Move media models and repositories out of the domain layer
RankoR Jul 29, 2026
f51e352
Extract widget storage into a repository
RankoR Jul 29, 2026
cd81763
Page and cancel MediaStore queries properly
RankoR Jul 29, 2026
05fc122
Publish inserted media only after the write completes
RankoR Jul 29, 2026
b321138
Run the MediaStore paging test on an emulator in CI
RankoR Jul 29, 2026
4da0efc
Store embeddings as blobs instead of JSON text
RankoR Jul 29, 2026
918d192
Reconcile the search index in pages
RankoR Jul 29, 2026
57d5d8d
Move CategoryWithMediaCount into the model package
RankoR Jul 29, 2026
a936a1e
Publish generated categories through a staging table
RankoR Jul 29, 2026
f9b27cd
Derive collection counts and sizes from live media
RankoR Jul 29, 2026
59bbc2f
Keep the search field in sync while typing
RankoR Jul 29, 2026
0c1d3ef
Guard vector math against degenerate input
RankoR Jul 29, 2026
2278014
Use the item count plural everywhere
RankoR Jul 29, 2026
74e3045
Check external crop output uris by uid
RankoR Jul 29, 2026
1c08187
Keep grid scrolling off the recomposition hot path
RankoR Jul 29, 2026
8cf8fb0
Delete unused media helpers
RankoR Jul 29, 2026
0ccff1e
Rebuild the database on any schema mismatch
RankoR Jul 29, 2026
6111bda
Name SaveFormat cases in Kotlin style
RankoR Jul 29, 2026
036ad63
Normalize import order and formatting
RankoR Jul 29, 2026
e4d71f1
Let the search field own its text
RankoR Jul 29, 2026
e8b4dad
Require crop output to be owned by the caller or us
RankoR Jul 29, 2026
d97a950
Stop wiping user-authored data on schema bumps
RankoR Jul 29, 2026
332b1aa
Remove dead code and inert manifest declarations
RankoR Jul 29, 2026
a988056
Accept non-MediaStore crop outputs the caller can write
RankoR Jul 30, 2026
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
  •  
  •  
  •  
2 changes: 0 additions & 2 deletions .github/FUNDING.yml

This file was deleted.

61 changes: 61 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: Build application

on: [pull_request, push]

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v5
with:
submodules: true
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 21
cache: gradle

- name: Run unit tests
run: ./gradlew :app:testDebugUnitTest --no-daemon

- name: Build instrumentation tests
run: ./gradlew :app:assembleDebugAndroidTest --no-daemon

- name: Build with Gradle
run: ./gradlew :app:assembleDebug --no-daemon

media-store-device-test:
needs: build
runs-on: ubuntu-latest
timeout-minutes: 30

steps:
- uses: actions/checkout@v5
with:
submodules: true
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 21
cache: gradle

- name: Enable KVM
run: |
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' \
| sudo tee /etc/udev/rules.d/99-kvm4all.rules
sudo udevadm control --reload-rules
sudo udevadm trigger --name-match=kvm

- name: Run MediaStore paging test
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: 36
arch: x86_64
disable-animations: true
script: >-
./gradlew :app:connectedDebugAndroidTest
-Pandroid.testInstrumentationRunnerArguments.class=com.dot.gallery.feature_node.data.data_source.mediastore.queries.MediaFlowPagingDeviceTest
--no-daemon
179 changes: 0 additions & 179 deletions .github/workflows/nightly.yml

This file was deleted.

Loading