Commit graph

2774 commits

Author SHA1 Message Date
tibbi
1b1fac9b56 flip some checks at Portrait photos to make it quicker 2020-04-24 17:48:26 +02:00
tibbi
aa4af8a292 make folders distinct before checking if they should be visible 2020-04-24 14:40:55 +02:00
tibbi
26e96418b6 speed up some folder visibility checks 2020-04-24 11:22:38 +02:00
tibbi
0a98fd0536 catch exceptions thrown at getting file date taken 2020-04-23 23:02:38 +02:00
tibbi
db210e8bd1 speed up the sidebar date and time formatter at scrolling 2020-04-23 22:34:58 +02:00
tibbi
f8c80c2a5f speed up the fastscroller date text fetching 2020-04-23 22:24:42 +02:00
tibbi
c57b3edac5 minor code style update 2020-04-23 21:21:55 +02:00
tibbi
582048590f do not allow clicking the play/pause at fullscreen videos 2020-04-21 18:00:15 +02:00
tibbi
ea1f4781e0 set up the bottom action buttons before displaying 2020-04-21 17:52:02 +02:00
tibbi
f9d581925b fixing the glitch with bottom actionbar being at the top 2020-04-21 17:49:49 +02:00
tibbi
38aea1cdeb moving some video related icons to Commons 2020-04-21 13:14:29 +02:00
tibbi
b75c58fa0c use the extended navigation bar height check at the video fragment too 2020-04-20 23:00:09 +02:00
tibbi
0aa268ce29 properly handle authentication skipping at videos too 2020-04-20 22:21:25 +02:00
tibbi
bc37181dfd use the selected date format at grouping sections 2020-04-20 20:29:28 +02:00
tibbi
638dab9d97 do not ask for authentication on every screen, at locked folders 2020-04-20 20:22:33 +02:00
tibbi
a1e0d07798 fix a glitch with fullscreen view bottom actions being at the top 2020-04-20 20:11:57 +02:00
tibbi
5ca662103b removing the folder locking check from a few places to avoid duplication 2020-04-18 15:30:43 +02:00
tibbi
f251fec964 use more descriptive variable naming at unlocking 2020-04-18 13:10:50 +02:00
tibbi
8ece25d033 properly handle folder locking at shortcuts and widgets 2020-04-18 13:09:46 +02:00
tibbi
e765332e3b making the visibility toggling function a bit clearer to read 2020-04-18 12:27:39 +02:00
tibbi
8ca190d8ef do not add a folder to Included ones in a specific case, it is confusing 2020-04-18 12:26:38 +02:00
tibbi
22cfd20b58 make sure to rescan a folder after deleting .nomedia file 2020-04-18 11:52:12 +02:00
tibbi
e37f42a93c move location showing on map into Commons 2020-04-18 11:38:19 +02:00
tibbi
aa7300fc35 updating placeholder texts a bit 2020-04-18 10:32:13 +02:00
tibbi
c20f6fed0f updating Subsampling scale image view + null check 2020-04-14 22:49:05 +02:00
tibbi
ed501572d1 shortening some code by importing more specific mediastore classes 2020-04-14 16:25:27 +02:00
tibbi
c1f7f3eada improving file type recognition at third party intents 2020-04-09 15:49:13 +02:00
tibbi
44e07edb81 move folder sorting handling in Commons 2020-03-26 12:28:49 +01:00
tibbi
3e401bb3af moving some extension functions into Commons 2020-03-25 22:41:44 +01:00
tibbi
53d48cce6d adding some old editor improvements, do not request storage permission 2020-03-19 18:34:37 +01:00
tibbi
1a05ea8db4 do not require the Storage permission at video player activity 2020-03-19 17:32:46 +01:00
tibbi
70a0d0f7a9 properly handle content uris as Panorama Videos 2020-03-19 17:24:56 +01:00
tibbi
83ab2ad56e properly handle panorama photos without storage access 2020-03-19 16:37:57 +01:00
tibbi
ffd15a417a at repeated file loading by content uri, check also if file is panorama 2020-03-19 16:29:22 +01:00
tibbi
518fc9ec1b try loading image by its content uri, if real path fails 2020-03-19 16:22:06 +01:00
tibbi
82bf87d154 changing the way folders are fetched, do not rely on BUCKET_ID 2020-03-18 23:48:51 +01:00
tibbi
327e30e0ef hide the Manage Hidden Folders in the app settings on Android 10+ 2020-03-18 23:15:35 +01:00
tibbi
bdccb98895 use Scoped Storage at importing app settings 2020-03-18 23:10:20 +01:00
tibbi
2262829077 fix #1785, properly handle deleting playing videos 2020-03-18 21:40:23 +01:00
tibbi
c25ce6eafe fix a glitch at including/excluding folders 2020-03-07 23:21:22 +01:00
tibbi
23b7e2fef1 fix #1772, add the old editor back in the foss app flavor 2020-03-05 23:17:48 +01:00
tibbi
de48742daa avoid showing portrait photos on the main screen 2020-03-05 20:02:31 +01:00
tibbi
97436ba004 breaking an if/else statement into multiple lines 2020-03-04 14:44:27 +01:00
tibbi
1634ed47a8 do not rescan .nomedia file at hiding a folder, it can delete the file 2020-03-03 16:55:24 +01:00
tibbi
f7735df137 show the No Date Takens found error message only in some cases 2020-03-01 23:31:46 +01:00
tibbi
387eccbadd do not refresh media at playing fullscreen videos, should fix some reseting 2020-03-01 23:05:04 +01:00
tibbi
9c31b8d01e adding a null check at checking invalid folders 2020-03-01 22:38:57 +01:00
tibbi
a16bbfbcf9 fix #1765, properly handle videos at slideshows 2020-03-01 10:42:08 +01:00
tibbi
ada0661d89 fix video gestures when Gesture Down To Close is disabled 2020-03-01 10:19:31 +01:00
tibbi
be8f6762c5 removing a redundant function 2020-02-28 22:55:40 +01:00
tibbi
4c2c330cbc check null exoplayer at skipping 2020-02-28 22:53:08 +01:00
tibbi
3f95a8f6ca mention video fast forwarding with double clicks at the Whats New window 2020-02-28 20:05:06 +01:00
Leo Pham
d917e42b72 Add proprietary and foss product flavors
The introduction of the proprietary PhotoEditor SDK prevented this app from
being truly free and open source, and so F-Droid could no longer build the app.
By adding a licensing flavor dimension, we segregate the non-FOSS code to a
separate version, while providing a FOSS version without the editor.

To build the proprietary version, select one of the proprietary build variants
from Build Variants pane in Android Studio (on the left side of the window).

Fixes #1706.
2020-02-28 22:46:13 +11:00
tibbi
e2021bcc54 show a better error message at fixing date taken values, if none found 2020-02-23 11:50:16 +01:00
tibbi
17e7fb523d show a clearer error toast at cancelling the editing 2020-02-23 11:44:53 +01:00
tibbi
7be86580d7 do not show the error toast at getting folders to scan 2020-02-23 10:42:04 +01:00
uhm0311
de852799b1 Not to refresh and show all media even query text is not empty. 2020-02-21 15:20:28 +09:00
tibbi
f187a36ebb shortening some code 2020-02-20 12:11:38 +01:00
tibbi
b2da6f5080 skip by 10s at clicking on the curr/max video durations too 2020-02-20 12:04:16 +01:00
tibbi
da8aaa71d0 handle double clicks on volume/brightness controllers too 2020-02-20 11:45:51 +01:00
tibbi
0d7aa81442 adding a double tap listener at the volume/brightness controllers 2020-02-18 15:56:16 +01:00
tibbi
c7bc916784 simplify the brightness/volume area clicks, use a gesture detector 2020-02-18 12:09:23 +01:00
tibbi
f1e5be6f60 shortening some code 2020-02-17 22:55:03 +01:00
tibbi
641df80b21 apply the double tap skipping on the separate window player too 2020-02-17 22:45:50 +01:00
tibbi
f175c71621 fix #1223, updating video player gestures a bit
add double tap to skip forward/backward, double tap center to toggle
play/pause
2020-02-17 22:22:17 +01:00
tibbi
60b3023564 lets use the same instant medium changer width at images 2020-02-17 20:37:40 +01:00
tibbi
7abdd059eb reduce the instant changer width 2020-02-17 20:34:23 +01:00
tibbi
018ec4b0a5 tweaking instant video changing by screen side clicks, remove some views 2020-02-17 20:19:33 +01:00
tibbi
5cc0a804b6 after editing update exif first, the last modified 2020-02-12 22:55:18 +01:00
tibbi
067caeeeeb always copy over exif data at file editing 2020-02-12 22:42:30 +01:00
tibbi
2f0bf7cbec do all that thumbnail fetching only if there is no custom image set 2020-02-12 17:15:04 +01:00
tibbi
57e77abde0 removing a redundant parameter 2020-02-12 17:12:10 +01:00
tibbi
4dfa4c9ea8 make sure we get the proper thumbnail at file grouping too 2020-02-12 17:06:38 +01:00
tibbi
8a26a6c272 fix a glitch at determining if proper date taken and last modified should be fetched 2020-02-12 16:29:47 +01:00
tibbi
8e8cb0bd0f revert to the previous way of sorting by path, do not use parent path 2020-02-11 22:39:16 +01:00
tibbi
a385be80a8 use parent path at folder sorting 2020-02-11 10:06:53 +01:00
tibbi
da5f534539 fixing some folder sorting issues 2020-02-11 09:49:00 +01:00
tibbi
d029381271 renaming a renaming a variable to make it clearer 2020-02-10 23:48:06 +01:00
tibbi
f17ffb8642 properly copy over the exif data after image editing 2020-02-10 23:47:20 +01:00
tibbi
bd9dc8b04b properly handle empty size or dates at comparing 2020-02-10 22:09:06 +01:00
tibbi
b27877c109 make sort_value be empty by default 2020-02-10 22:05:51 +01:00
tibbi
21cc0b97bc properly update the database by adding the new sort_value column 2020-02-10 22:02:58 +01:00
tibbi
0e01026774 fixing some thumbnail and sorting related glitches 2020-02-10 21:59:35 +01:00
tibbi
8d5a47ce6c get proper file last modified value only when actually needed 2020-02-10 11:10:46 +01:00
tibbi
6f565f5828 upgrade the new editor to 7.0.10 2020-02-09 22:33:34 +01:00
tibbi
37d8f4babf store temporarily editor files at the cacheDir, not filesDir 2020-02-09 22:22:56 +01:00
tibbi
02bc49a259 avoid fetching files at a destroyed MainActivity 2020-02-07 20:18:06 +01:00
tibbi
0cfcba6c8f avoid fetching the same folder twice, or after exiting the app 2020-02-07 20:04:45 +01:00
tibbi
2476b97452 properly launch the main activity on first app use 2020-01-28 18:51:28 +01:00
ForgottenUmbrella
9877cbaf2c Remove unreachable branches in video completion handling
It is never the case that `loopVideos == true` in the `videoCompleted` handler,
since enabling that preference sets `repeatMode`, which in turn prevents the
player from reaching `STATE_ENDED`. Thus, the branches are unreachable.
2020-01-29 01:52:44 +11:00
ForgottenUmbrella
e83db406a9 Reset progress views on video loop
The previous loop method of seeking to the beginning at video completion ensured
that the seekbar and current time text were immediately reset. Using ExoPlayer's
own implementation of video looping means that `Player.STATE_ENDED` is no longer
reached, thus the UI no longer accurately tracks progress. Restore the old
behaviour by resetting the views on position discontinuity.
2020-01-29 01:52:44 +11:00
ForgottenUmbrella
f8315438d8 Let ExoPlayer handle video looping seamlessly
Now that videos are replacing the inefficient GIF format, gapless loops are
important. ExoPlayer's built-in mechanism prebuffers the video to enable this,
whereas the current implementation of seeking to the start presents a short but
noticeable delay between each loop.

Note that this change introduces an incompatibility with current behaviour: due
to google/ExoPlayer#6459, certain videos with broken audio tracks that played
fine before will no longer start. Disabling the audio track is a workaround to
re-enable looping playback, but ExoPlayer does not appear to expose a way to
check if the audio track is short enough to produce the bug.
2020-01-29 01:52:44 +11:00
tibbi
035d0363e3 fix #1723, recognize panoramic photos by a new xml tag too 2020-01-27 23:15:47 +01:00
tibbi
3e7f99fc01 fix #1725, properly remember last video playback position, if paused 2020-01-27 23:04:18 +01:00
tibbi
f4c02d1168 fix #1545, properly sort Favorites by date taken 2020-01-27 21:22:10 +01:00
tibbi
650a985a9c make the Date Taken from Fix Date Taken value be higher priority than mediastore 2020-01-27 21:05:05 +01:00
tibbi
2517170aeb store the fixed Date Taken values in the new table 2020-01-27 20:48:37 +01:00
tibbi
665690c819 removing an unused debug function 2020-01-27 20:34:59 +01:00
tibbi
817229a697 lets set wereFavoritesMigrated earlier to avoid some crashlooping 2020-01-27 17:22:16 +01:00
tibbi
409be79489 migrate favorites in the new table on app upgrade 2020-01-27 15:17:46 +01:00
tibbi
9d2239d1c1 really clear all Favorites at deleting the given folder 2020-01-27 15:05:17 +01:00
tibbi
86db0b8f19 fix unselecting invalid favorite items 2020-01-27 14:47:17 +01:00
tibbi
29a521d107 update Favorite too at updating a medium 2020-01-25 11:50:09 +01:00
tibbi
e578036a22 delete favorites at deleting media 2020-01-25 11:11:23 +01:00
tibbi
3ca8e685b8 shortening some code related to getting DAOs 2020-01-25 10:56:08 +01:00
tibbi
b9369139f1 renaming some DAO to Dao 2020-01-25 09:51:28 +01:00
tibbi
61c4db155d removing the favorite paths getting function from MediumDao 2020-01-25 09:39:56 +01:00
tibbi
a7b7881d73 moving the favorite toggling function into FavoritesDao 2020-01-25 09:34:33 +01:00
tibbi
fb0badeca5 adding a few more favorites related queries 2020-01-24 23:29:03 +01:00
tibbi
b867d2a2eb at deleting a file path from db, delete it from favorites too 2020-01-24 23:10:40 +01:00
tibbi
56d721b68a moving the isFavorite function at FavoritesDAO 2020-01-24 22:47:42 +01:00
tibbi
6b95c58559 try flipping some migration lines to avoid working on nonexistent tables 2020-01-18 23:29:03 +01:00
tibbi
631e9dea34 adding the actual DateTaken value column 2020-01-16 21:00:37 +01:00
tibbi
f1b380e6fa rename file_name column to filename 2020-01-16 20:57:12 +01:00
tibbi
daf87be965 adding 16:10 crop ratio, used mostly on tablets 2020-01-16 18:58:55 +01:00
tibbi
8035d90e36 store the file name in the date takens and favorites tables too 2020-01-16 11:28:01 +01:00
tibbi
402fccbc21 create an own table for storing favorite items too 2020-01-16 11:26:13 +01:00
tibbi
ca6b84be81 adding an index on DateTakens table 2020-01-15 23:00:52 +01:00
tibbi
aa0c21a209 change last_fixed field in DateTakens to int 2020-01-15 22:48:43 +01:00
tibbi
2daf7e045f fix #1715, properly edit png files, do not convert them to jpgs 2020-01-15 22:42:53 +01:00
tibbi
8b02b93161 create an own table DateTakens to be used at sorting 2020-01-15 21:43:39 +01:00
tibbi
9a6d1535ba do not show the portrait stripe at fullscreen view 2020-01-15 20:49:44 +01:00
tibbi
e3b921db4d adding some crashfixes related to extended details 2020-01-15 20:44:31 +01:00
tibbi
386c52a0ff fix some empty portrait photos creating blank thumbnails 2020-01-13 22:53:54 +01:00
tibbi
b2d0dff131 properly show the Portraits title at thumbnail grouping 2020-01-10 22:37:03 +01:00
tibbi
13a3f90595 optimize Portrait photo checking for better performance 2020-01-10 22:30:21 +01:00
tibbi
fa402c24b1 allow excluding the root folder again 2020-01-10 20:21:25 +01:00
tibbi
3185e3eea9 fix #1705, hide the keyboard at clicking path on Save As dialog 2020-01-10 19:43:35 +01:00
tibbi
e68a4ae99b decode the file path UI after editing an image 2020-01-09 10:08:41 +01:00
tibbi
9d5565be96 do not show Favorites and Recycle bin at the copy destination picker 2020-01-02 23:20:53 +01:00
tibbi
b1b9d11148 do not rely on SOURCE_IMAGE_PATH from the editor, store the original path 2020-01-02 19:25:13 +01:00
tibbi
6234050c7f fix #1668, properly delete empty folders when appropriate 2020-01-02 17:37:41 +01:00
tibbi
307e887fc5 fix #1695, do not allow filtering out all file types 2020-01-02 16:30:24 +01:00
tibbi
6fe62ee83b move the Focus editor tool at the end, show the best tools first 2019-12-27 20:08:11 +01:00
tibbi
c0cbbef748 adding a new crop aspect ratio 37:18 to be used instead of 18.5x9 2019-12-25 13:06:26 +01:00
tibbi
212ede449b properly handle SAF dialog in case the source of a copy/move is on sd 2019-12-24 23:37:52 +01:00
tibbi
04abffddb7 show an error message if editing fails 2019-12-24 19:05:19 +01:00
tibbi
b60ee07ea4 adding 5:4 and 4:5 crop aspect ratios 2019-12-20 22:25:37 +01:00
tibbi
bc4b088569 removing some old editor related shared preferences 2019-12-20 21:04:58 +01:00
tibbi
9b27a8fd75 remember the last used editor brush settings 2019-12-20 21:03:19 +01:00
tibbi
2c37b23e1e adding a 19:9 aspect ratio crop too 2019-12-20 20:40:26 +01:00
tibbi
58cedd24f6 adding a 2:1 crop aspect ratio 2019-12-20 20:38:32 +01:00
tibbi
3957532c72 fix #1669, add a workaround for refreshing file thumbnail after edit 2019-12-20 19:42:28 +01:00
tibbi
74612341f3 do not use Text Design module at the editor, it takes up too much space 2019-12-18 10:13:47 +01:00
tibbi
0b5b1925af adding the new editor in release notes 2019-12-17 22:51:05 +01:00
tibbi
99765a3735 more editor cleanup 2019-12-17 19:02:04 +01:00
tibbi
552dc97aa6 removing the unused parts of the old editor, use it only for crop intents 2019-12-17 18:44:46 +01:00
tibbi
68f9ceeea3 replacing the home made photo editor with PhotoEditorSDK 2019-12-17 18:16:30 +01:00
tibbi
37cb4f2608 updating commons to 5.21.0 2019-12-17 17:43:52 +01:00
tibbi
290ff6f993 adding extra null checks at extended details fetching 2019-12-16 20:54:34 +01:00
tibbi
c681f62c30 allow adding Resize at the bottom actions 2019-12-12 14:24:25 +01:00
tibbi
bd7ae6b182 removing the dividers from the file thumbnails list view too 2019-12-12 14:12:36 +01:00
tibbi
8dac3880d6 refreshing the directories list view UI, remove dividers 2019-12-12 14:05:46 +01:00
tibbi
fd52c7c225 implementing the Resize function at fullscreen resizing 2019-12-12 12:22:13 +01:00
tibbi
8ba998d3ae return both the resolution and path from the new dialog 2019-12-12 11:59:56 +01:00
tibbi
787a672c7f creating a dialog with resize and saving 2019-12-12 11:38:47 +01:00
tibbi
e632740972 just moving a function, no real change 2019-12-12 11:09:02 +01:00
tibbi
7fda22e5d5 adding a menu item at viewpager for resizing images 2019-12-12 11:07:34 +01:00
tibbi
230d028227 allow creating file shortcuts from the thumbnail view 2019-12-12 10:35:23 +01:00
tibbi
59ab305a84 updating gradle and commons 2019-12-11 12:23:24 +01:00
tibbi
041f8b77a9 updating commons, remember Export settings path 2019-12-03 23:53:00 +01:00
tibbi
d95b9c1129 migrate album covers at exporting/importing settings too 2019-12-03 22:45:59 +01:00
tibbi
f3168e5f97 fix a glitch at empty screen with direct subfolder grouping 2019-12-03 22:17:32 +01:00
tibbi
8e8f23e6d1 catch exceptions at fetching photo gps coordinates 2019-12-02 10:22:55 +01:00
tibbi
b5f72faf2d adding some resources null checks 2019-12-02 10:17:43 +01:00
tibbi
c0da2ef6c6 fix #1648, properly handle View intent with no data, launch main screen 2019-11-28 23:23:56 +01:00
tibbi
d06a01ea32 adding some more exclamation marks 2019-11-28 21:51:32 +01:00
tibbi
a1b390190e adding 2 more null checks 2019-11-27 22:28:38 +01:00
tibbi
1d0f129e85 adding some exclamation marks in preparation for sdk 29 2019-11-25 22:41:57 +01:00
tibbi
7affe4f6af adding some crashfixes at fullscreen fragments 2019-11-22 15:49:02 +01:00
tibbi
a2ef729170 removing a debug toast 2019-11-16 08:46:39 +01:00
tibbi
8c509ac525 fix #1544, allow picking videos as folder covers 2019-11-10 10:48:43 +01:00
tibbi
59be8838c4 toggle fullscreen mode on click on all devices, not just chromebooks 2019-11-10 10:39:45 +01:00
tibbi
35de514ee3 adding a null check at fetching photo path 2019-11-10 10:17:37 +01:00
tibbi
2d08bd3898 do not show (hidden) after cached folder, if inappropriate 2019-11-09 23:33:51 +01:00
tibbi
ff99d19176 make exception at Picasso onError image loading nullable 2019-11-05 11:07:31 +01:00
tibbi
1c7fbc19ad adding some OTG file recycle bin related improvements 2019-11-05 00:12:07 +01:00
tibbi
04ecb6e0b4 fix moving OTG files in the recycle bin 2019-11-04 23:36:08 +01:00
tibbi
556a775848 adding some OTG file related improvements 2019-11-04 22:22:39 +01:00
tibbi
503da545fc adding some crashfixes 2019-10-27 10:52:34 +01:00
tibbi
47c360f920 fix #1617, show proper filename at resuming the fullscreen view 2019-10-27 10:25:59 +01:00
tibbi
0d1db78e90 fix #1611, removing some portrait related crashes 2019-10-06 19:02:09 +02:00
tibbi
f821fc0727 do not allow changing portrait photos by clicking in fullscreen mode 2019-10-04 12:13:54 +02:00
tibbi
4848616d88 do not allow clicking empty portrait placeholders 2019-10-04 12:09:28 +02:00
tibbi
094ecbee19 updating commons to 5.18.2 2019-10-03 23:35:51 +02:00
tibbi
b6c919be85 load the proper Portrait image 2019-10-02 23:39:29 +02:00
tibbi
04e49086f8 store the currently visible portrait path at the fragment 2019-10-02 23:19:56 +02:00
tibbi
1dbe82e074 avoid calling a redundant click on portrait images 2019-10-02 23:11:25 +02:00
tibbi
17003c6ab1 focus the proper portrait photo at swiping the stripe 2019-10-02 22:13:04 +02:00
tibbi
efee783e1f minor cleanup, moving some code in separate functions 2019-10-02 21:07:05 +02:00
tibbi
fd34074a48 properly handle the default portrait image selection 2019-10-02 20:57:49 +02:00
tibbi
615f32935c minor code style update 2019-10-02 19:59:31 +02:00
tibbi
687b8697c8 update the current portrait photo on click 2019-10-02 19:53:12 +02:00
tibbi
420a6459e7 add portrait photo scrolling at selection 2019-10-02 19:51:09 +02:00
tibbi
d70dd26ea6 properly determine the default portrait photos cover 2019-10-02 19:36:50 +02:00
tibbi
29cd22bda7 improve portrait photos positioning 2019-10-02 19:25:27 +02:00
tibbi
3c151e27a6 allow sliding portrait photos to side 2019-10-02 16:43:41 +02:00
tibbi
1e9318a789 avoid accessing mMedium before it was initialized 2019-10-02 12:15:18 +02:00
tibbi
3ed598c2fd add portrait photos on a stripe 2019-10-02 11:46:09 +02:00
tibbi
f1a4e21d94 adding a portrait photo stripe 2019-10-01 23:13:17 +02:00