Christophe Beyls
47e46fc4b9
update campus map for 2020
2020-01-04 20:55:44 +01:00
Christophe Beyls
e8eed7eabf
suppress deprecation build warning in ThemeUtils
2020-01-04 20:39:04 +01:00
Christophe Beyls
4a719fade7
bump version code for release 1.7.0
2020-01-04 20:30:31 +01:00
Christophe Beyls
877d584d04
replace the database update modal dialog with auto-update. Add a retry button to the bottom sheet error message in case of failure.
2020-01-03 23:34:54 +01:00
Christophe Beyls
476dda8ddf
implement workaround to prevent ViewPager2 from conflicting with vertical scroll in the pages
2020-01-03 17:11:32 +01:00
Christophe Beyls
4b2beb5802
use a darker red color in white theme for main tracks and warnings
2020-01-03 16:13:40 +01:00
Christophe Beyls
4c3b689e7f
implement Dark theme and tweak Material theme
...
Close #27
2020-01-02 22:49:00 +01:00
Christophe Beyls
0de52dcca9
update ICalendarWriter to use Okio's BufferedSink instead of Writer fo better performance
2019-12-27 17:32:28 +01:00
Christophe Beyls
d83c2f9b8d
fix Bookmarks filter menu item icon tinting
2019-12-23 03:10:56 +01:00
Christophe Beyls
0fcd6f4cbe
upgrade room, material components, browser, paging
2019-12-21 16:37:23 +01:00
Christophe Beyls
85555a64eb
upgrade Gradle plugin, CoordinatorLayout, Room
2019-12-09 21:13:17 +01:00
Christophe Beyls
338c0424ea
upgrade RecyclerView and ViewPager2 to stable versions
2019-11-21 13:45:51 +01:00
Christophe Beyls
48a2afb446
upgrade Material Components library to 1.1.0-beta02
2019-11-19 13:13:57 +01:00
Christophe Beyls
94aa852cd2
migrate to ViewPager2
2019-11-14 01:22:27 +01:00
Christophe Beyls
b5f3eb7bf6
bump compile and target SDK to 29 and update libraries to take advantage of the new APIs
2019-11-10 14:44:18 +01:00
Christophe Beyls
2ae81c048a
Use the Dialog theme to inflate the layout in RoomImageDialogFragment
2019-11-09 23:19:18 +01:00
Christophe Beyls
d1beb53ccf
Tint all icons using the proper theme-independent color
2019-11-09 22:21:30 +01:00
Christophe Beyls
0cf6443b4b
Simplify dialog themes
2019-11-09 17:59:39 +01:00
Christophe Beyls
7f6c0a1674
rename Widget.Fosdem.** styles to Widget.App.**
2019-11-09 17:49:22 +01:00
Christophe Beyls
b766e38d00
Use default error colors from material theme attributes for error Snackbar and to highlight conflicting bookmarks
2019-11-07 23:12:52 +01:00
Christophe Beyls
0752dbc6ee
Tint the error Snackbar using colorError
2019-11-07 14:00:12 +01:00
Christophe Beyls
207b5b45a1
Add rules and styles to allow the resources shrinker to remove drawable resources of unused widgets
2019-11-06 03:12:45 +01:00
Christophe Beyls
acb54082ea
Disable regular scrollbar in RecyclerView when enabling fast scroll
2019-11-06 02:25:19 +01:00
Christophe Beyls
d8997c4b0c
Switch to better default ProGuard rules
2019-11-06 02:22:40 +01:00
Christophe Beyls
e4642abd67
Reduce APK size by removing unused classes from Material Components library
2019-11-05 23:17:23 +01:00
Christophe Beyls
afe9cfbbbc
Migrate all themes and styles to Material Components
...
Update Material Components library to 1.1.0-beta01
2019-11-04 23:43:10 +01:00
Christophe Beyls
445ef03b7a
Upgrade RecyclerView, Room and OkHttp libraries
2019-10-30 00:04:22 +01:00
Christophe Beyls
777e53f063
Implement LiveDataFactory.scheduler() to simplify scheduling of loadings and automatic refreshes
2019-10-30 00:01:52 +01:00
Christophe Beyls
4448012751
Code cleanups:
...
- use requireXXX() methods when available to avoid NPE warnings
- add missing annotations
2019-10-29 22:20:43 +01:00
Christophe Beyls
9bb5ecdcef
Revert "Delay IntervalLiveData refresh to allow the previous result to be dispatched on active even when it's already expired"
...
This reverts commit 2f166836
2019-10-29 20:05:16 +01:00
Christophe Beyls
31fd331812
Handle case where onItemRangeMoved() has more than 1 item moving in ConcatAdapter
2019-10-15 20:28:51 +02:00
Christophe Beyls
57181b2697
Make MultiChoiceHelper Lifecycle-aware and SavedState-aware
2019-10-14 23:35:36 +02:00
Christophe Beyls
ce740e876e
Upgrade Gradle plugin, Room and RecyclerView to latest stable versions
2019-10-09 22:40:35 +02:00
Christophe Beyls
16fd2d49a1
Implement workaround for disappearing menu items bug, fixes #47
2019-09-21 00:39:29 +02:00
Christophe Beyls
118e5c050e
upgrade AndroidX libraries to their new stable versions and remove the build tools version from the build.gradle file
2019-09-05 21:41:25 +02:00
Christophe Beyls
9cb9612ea7
upgrade OkHttp to newest bugfix release
2019-09-05 13:44:45 +02:00
Christophe Beyls
36b0755029
Attempt to enable TLS 1.2 (and 1.1) on older Android versions
2019-09-04 23:58:43 +02:00
Christophe Beyls
399f5567a2
Migrate network stack to OkHttp and Okio
2019-09-04 23:54:44 +02:00
Christophe Beyls
0f4bc111a1
Update Gradle plugin for Studio 3.5
2019-09-04 21:52:07 +02:00
Christophe Beyls
4ed57c77b6
Embed vector drawable animators directly in the AVD files
2019-08-15 22:39:20 +02:00
Christophe Beyls
000f10e8fb
Upgrade libraries to their latest stable version
2019-08-15 14:45:24 +02:00
Christophe Beyls
2a4bedbccf
Implement an AnimatedStateListDrawable for the bookmark status icon
2019-05-11 22:11:02 +02:00
Christophe Beyls
6b92cd9651
Upgrade alpha AndroidX libraries
2019-05-11 21:21:06 +02:00
Christophe Beyls
50200ebed5
Replace compound drawable PNG icons with vector drawables
2019-04-25 01:24:45 +02:00
Christophe Beyls
35159d7372
Enable R8 full mode and bytecode optimizations to slim down the app even more
2019-04-24 23:45:06 +02:00
Christophe Beyls
9c1db446d2
Group ObjectAnimators in progress bar animated vector drawable, now that the AAPT2 bug has been fixed in Gradle plugin 3.4
2019-04-24 23:43:36 +02:00
Christophe Beyls
043cbfaf26
Update RecyclerView to the latest alpha version which includes bugfixes
2019-04-24 23:39:48 +02:00
Christophe Beyls
6c3655e205
Use the new built-in Transformations.distinctUntilChanged()
2019-04-24 23:38:00 +02:00
Christophe Beyls
1d4aa090c4
Remove deprecated method calls
2019-04-24 00:05:10 +02:00
Christophe Beyls
53da049c4a
Update various dependencies to their latest alpha version
2019-04-23 23:54:46 +02:00
Christophe Beyls
f35b755bea
Enable Java 8 language support and refactor code to use lambdas and try-with-resources
2019-04-04 01:31:10 +02:00
Christophe Beyls
2f16683674
Delay IntervalLiveData refresh to allow the previous result to be dispatched on active even when it's already expired
2019-03-08 00:03:01 +01:00
Christophe Beyls
29af6e4601
Replace deprecated methods with newer equivalents
2019-02-05 21:20:09 +01:00
Christophe Beyls
1c926b1cfd
Simpler implementation of up navigation fix from track screen to main activity
2019-02-05 20:48:03 +01:00
Christophe Beyls
214a6dfe71
Enhance up navigation from track Activity to main Activity: don't re-create the main Activity
...
Closes #7 , closes #23
2019-02-04 21:24:09 +01:00
Christophe Beyls
d7e888bbd7
Enhance up navigation from event details to track Activity
2019-02-04 20:38:12 +01:00
Christophe Beyls
1bbb4ad824
Use the new postprocessing DSL block to configure code and resources shrinking
...
Stop using reflection to instantiate fragments in MainActivity
2019-02-03 23:05:40 +01:00
Christophe Beyls
a21bfcd275
Fix NullPointerException when the RecyclerView's adapter in LiveListFragment finishes updating asynchronously after the fragment is detached
2019-02-02 23:35:57 +01:00
Christophe Beyls
e83311cef4
Prepare for release 1.6.2
2019-02-02 12:09:04 +01:00
Christophe Beyls
dd25e82c1e
Fix: prevent crash on sime devices in case of duplicate bookmark
2019-02-02 12:08:10 +01:00
Christophe Beyls
355221e540
Prepare for minor release 1.6.1
2019-02-02 11:55:25 +01:00
Christophe Beyls
12bbb8a31a
Updated campus map image for 2019
2019-02-02 11:54:51 +01:00
Christophe Beyls
65cc597f74
Use the database Executor to execute one-shot queries
2019-01-30 13:55:37 +01:00
Christophe Beyls
a3dfdb3da4
New feature: bookmarks list sharing through Android Beam (NFC)
2019-01-29 21:22:30 +01:00
Christophe Beyls
a4348a168b
Add back deprecation warning suppression in ThemeUtils
2019-01-29 21:20:03 +01:00
Christophe Beyls
97f7a50275
Don't trigger updates in TrackScheduleEventActivity on database changes: retrieve a snapshot of the schedule instead
2019-01-29 21:16:43 +01:00
Christophe Beyls
700ad50eb9
Move bookmark status into its own ViewModel controlled by the activity and integrate a bottom app bar with a floating action button to manage bookmark status.
...
Auto-hide the top toolbar on scroll in event details screens
Remove legacy UnderlinePageIndicator. Swiping is still possible.
2019-01-29 12:55:21 +01:00
Christophe Beyls
2e17feb3ef
Remove legacy parent activity meta-data
2019-01-29 12:39:24 +01:00
Christophe Beyls
75512c1364
Improve NfcUtils to provide methods to convert data from and to NdefRecord
2019-01-28 20:47:44 +01:00
Christophe Beyls
5f3b8f945d
Make LinkClickListener safer
2019-01-28 16:59:48 +01:00
Christophe Beyls
5985d3bd82
Adjust time padding in schedule item layout and change the highlighted time background color to accent color
2019-01-28 16:39:46 +01:00
Christophe Beyls
573b5c4544
Improve initial display of data in RecyclerViewFragment
2019-01-28 15:21:53 +01:00
Christophe Beyls
31e2ddd609
Update NFC callbacks to allow returning any kind of NdefRecord, and use NdefRecord.createMime() to create the records
2019-01-28 14:45:33 +01:00
Christophe Beyls
794fd3ca9c
Bump paging library version to 2.1.0 and Room to 2.1.0-alpha04
2019-01-28 14:03:08 +01:00
Christophe Beyls
4df07a40b3
Refactor all database code to use Room, LiveData and the pagination library ( #42 )
...
* Bump minSDK version to 16 because SQLite < 3.7.11 doesn't support syntax 'CREATE TABLE IF NOT EXISTS' for FTS tables
* Reimplement search results screen using pagination, share a ViewModel between the Activity and the Fragment to allow updating the same fragment instance
* Preserve scroll position 0 in live fragments to ensure the insert/remove animation will be visible
* Simplify MultiChoiceHelper to always dispatch selection changes to the adapter using a payload, which prevents item crossfading on selection state change
* Use withLayer() for better performance of progress bar fade out animation
2019-01-28 13:30:07 +01:00
Christophe Beyls
bc27d4af49
Mirror the drawer shadow image for RTL configuration
2019-01-27 21:13:28 +01:00
Christophe Beyls
c33f7b23e3
Improve RTL support in all layouts
...
Disable RTL mode for TabLayout
Fix RTL support of CollapsingToolbarLayout
Use android:textAppearance attribute instead of style when possible.
2019-01-27 19:35:56 +01:00
Christophe Beyls
924e089e86
Replace legacy horizontal progress bar with material horizontal progress bar backport implementation on API <21
2019-01-27 02:56:08 +01:00
Christophe Beyls
b79e29a67c
Performance fix: ensure the ViewPager is only made visible when the adapter is set to avoid it to layout pages too early
2019-01-25 02:00:48 +01:00
Christophe Beyls
7e15f7de55
Use a consumable LiveData event to report the schedule download result to UI in place of LocalBroadcastManager
...
Use a simple AtomicBoolean instead of a lock to prevent concurrent downloads
2019-01-24 20:20:50 +01:00
Christophe Beyls
2a7b1439cc
Rewrite LiveRoomStatusesLiveData to not inherit from AsyncTaskLiveData and not cancel the running download task
2019-01-23 21:37:02 +01:00
Christophe Beyls
18e69e8860
Make RecyclerView INVISIBLE instead of GONE to prevent relayout causing blinking items
2019-01-22 00:35:54 +01:00
Christophe Beyls
133a247544
Don't perform identical searches twice in SearchResultActivity, and display the error message about query size using a Snackbar instead of a dialog
2019-01-18 00:53:07 +01:00
Christophe Beyls
e438eca1c3
Code cleanups and remove unused resources
2019-01-07 02:41:53 +01:00
Christophe Beyls
d9d656017e
Update preferences library to alpha02
2019-01-06 00:44:57 +01:00
Christophe Beyls
9b6339737d
Bump version number to 1.6.0
2019-01-06 00:42:27 +01:00
Christophe Beyls
cdf4cc46b6
Update used libraries in the README and about screen
2019-01-06 00:42:04 +01:00
Christophe Beyls
90087e1539
Properly handle '@' in URLs
2019-01-05 23:37:09 +01:00
Christophe Beyls
79cedff72f
Update DatabaseManager.getYear() to ensure it's never called from the main thread and compute the year from the Event day whenever possible
2019-01-05 23:13:26 +01:00
Christophe Beyls
48318d1f4f
Refactor TrackScheduleListFragment to use a RecyclerView instead of a ListView and removed remaining ListView-specific code
2019-01-02 11:11:49 +01:00
Christophe Beyls
6d569f27da
Refactor PersonsListFragment to use a RecyclerView with fast scrolling instead of a ListView
2018-12-30 20:42:58 +01:00
Christophe Beyls
f8d97d0270
Update RecyclerViewFragment to stop using a custom RecyclerView and allow overriding the creation of the RecyclerView
2018-12-30 19:36:15 +01:00
Christophe Beyls
311a7c8e89
Remove warning about deleted method in ConcatAdapter
2018-12-30 03:44:46 +01:00
Christophe Beyls
166907578a
Use Material style fast scroll thumb and track drawables on API<21
2018-12-29 22:02:56 +01:00
Christophe Beyls
e873f6d62a
Use CollapsingToolbarLayout to implement the extended header in PersonInfoActivity
2018-12-17 22:02:40 +01:00
Christophe Beyls
961a6b0c8e
Replace custom widgets with Material components for SnackBar, NavigationView, FAB and TabLayout
2018-12-16 19:47:20 +01:00
Christophe Beyls
a7a62ebd15
Use the newer ViewPropertyAnimator API to fade out the progress bar
2018-12-16 16:45:51 +01:00
Christophe Beyls
b09ad57411
Pass the parent view to the header view LayoutInflater in PersonInfoListFragment
2018-12-15 22:20:25 +01:00
Christophe Beyls
05c229a313
Update the settings screen to Preferences library 1.1.0
2018-12-15 14:33:06 +01:00
Christophe Beyls
e92766abaa
Migrate to AndroidX and reorganize imports
2018-12-13 04:19:20 +01:00
Christophe Beyls
ca89d4b325
Fix deprecation warnings
2018-12-13 03:50:08 +01:00
Christophe Beyls
50307373b8
Moved ConcatAdapter out of the support library private package
2018-12-13 03:30:28 +01:00
Christophe Beyls
96e1a9302d
Use static factory method to retrieve LoaderManager instances
2018-12-13 01:54:30 +01:00
Christophe Beyls
8bd33a04ec
Upgrade to support libraries 28.0.0
2018-10-17 02:23:51 +02:00
Christophe Beyls
40ba5569ae
Removed obsolete class SafeLoaderUtils
2018-09-26 23:16:44 +02:00
Christophe Beyls
d9b0301f04
Updated Gradle plugin to 3.2.0
2018-09-26 23:13:30 +02:00
Christophe Beyls
a9336e7384
Update PhotoView and Lifecycle extensions dependencies to their latest stable release
2018-07-24 17:08:12 +02:00
Christophe Beyls
5c82c7edae
Update version code for next minor release
2018-07-24 17:00:48 +02:00
Christophe Beyls
f021b1cdea
Added start/end layout attributes where missing instead of falling back to left/right
2018-07-24 16:57:46 +02:00
Christophe Beyls
d68432d252
Added room status ton event details ContentDescription in lists for visually impaired people
2018-07-24 16:29:08 +02:00
Christophe Beyls
1fdedba500
Added missing @NonNull annotations
2018-06-17 22:41:29 +02:00
Christophe Beyls
2ba84ae11c
Use onSupportNavigateUp() for up navigation
2018-06-17 22:30:48 +02:00
Christophe Beyls
909e4d1aff
Migrate the settings screen to the preferences support library.
...
Added some custom layouts to fix small display issues
2018-06-17 22:22:07 +02:00
Christophe Beyls
e0b93b8959
Renamed animator-v11 folder since the project now has minSDK > 11
2018-06-17 18:22:05 +02:00
Christophe Beyls
df3ec2e7a6
Updated AppCompat to 27.1.1 and removed Loader hacks which are no longer necessary
2018-06-17 18:11:37 +02:00
Christophe Beyls
65178e5b5a
Implement a custom MovementMethod to properly support clickable spans with text selection. Fixes #38
2018-06-08 23:13:29 +02:00
Christophe Beyls
2f2f3e705d
Fixed version code for next release
2018-01-31 01:17:39 +01:00
Christophe Beyls
e95fb8740e
Merge branch 'master' into feature/room_status
2018-01-31 00:51:24 +01:00
Christophe Beyls
a0e5dbb14a
Switch nav URLs to https
2018-01-31 00:05:05 +01:00
Christophe Beyls
f54a5ccd02
Added "Volunteer" link in main menu, fixes #29
2018-01-31 00:01:21 +01:00
Christophe Beyls
955c17feee
Move the "About" dialog to the settings screen
2018-01-30 23:47:09 +01:00
Christophe Beyls
1f85faa66b
Updated room status url for production and adjusted timings
2018-01-30 18:34:44 +01:00
Christophe Beyls
9f367e65a0
Fix: properly schedule the room status strategy update when the days list changes
2018-01-30 16:56:38 +01:00
Christophe Beyls
a1ba1d2c5e
Added notes for implementors on how to disable room status support
2018-01-30 16:49:28 +01:00
Christophe Beyls
ab338dad67
Display room status in event lists, event details screen & room dialog title
2018-01-30 16:32:39 +01:00
Christophe Beyls
21a89885d0
Properly handle the case when the system clock is turned backwards in TrackScheduleListFragment
2018-01-30 15:58:27 +01:00
Christophe Beyls
439fcf973f
Removed unnecessary toolbar titleTextAppearance attribute
2018-01-29 23:35:45 +01:00
Christophe Beyls
aacb75954d
Use DatabaseUtils where applicable to simplify code
2018-01-29 18:16:10 +01:00
Christophe Beyls
892e6ccf7a
Update the version code for the next release
2018-01-29 17:50:00 +01:00
Christophe Beyls
655057f93e
Implemented complex refresh logic for Room Statuses
2018-01-28 22:24:26 +01:00
Christophe Beyls
2561ebdf44
Merge branch 'master' into feature/room_status
...
# Conflicts:
# app/src/main/java/be/digitalia/fosdem/api/FosdemApi.java
2018-01-27 21:50:52 +01:00
Christophe Beyls
56b69585ad
Use LiveData instead of local broadcasts to update the ProgressBar in MainActivity.
...
This simplifies code and allows the progress bar to always reflect the current status.
2018-01-27 02:13:05 +01:00
Christophe Beyls
74e0c1270c
Fix: disable the up navigation button while the event is loading
2018-01-27 00:41:02 +01:00
Christophe Beyls
d7ddcc4ad7
Migrate all non-Cursor Loaders code to LiveData & ViewModel
2018-01-27 00:00:05 +01:00
Christophe Beyls
9b39c73615
Removed unnecessary use of ViewConfigurationCompat
2018-01-22 15:01:34 +01:00
Christophe Beyls
10c06ac6dc
Merge branch 'master' into feature/room_status
2018-01-18 15:47:12 +01:00
Christophe Beyls
ed3f4daf86
Removed dependency to Context in HttpUtils
2018-01-18 15:10:03 +01:00
Christophe Beyls
d859676d62
Added the Room Status API
2018-01-17 21:10:36 +01:00
Edward Betts
0f5eba3593
Correct a spelling mistake.
2018-01-13 14:01:57 +00:00
Christophe Beyls
40d2485c0d
Use the new "implementation" qualifier for dependencies
2018-01-12 00:09:23 +01:00
Christophe Beyls
96b48a5d68
Added adaptive launcher icon and shortcut icons
2018-01-11 00:16:01 +01:00
Christophe Beyls
1304bc147d
Disable unnecessary permissions on recent Android versions
2018-01-09 22:18:20 +01:00
Christophe Beyls
3f989d6c34
Bump minSdkVersion to 15 which is the minimum one required by the Custom tabs library
2018-01-09 22:11:21 +01:00
Christophe Beyls
dccbb8e74b
Optimized the FOSDEM title VectorDrawable
2018-01-09 15:49:05 +01:00
Christophe Beyls
f48d275909
Added support for JobScheduler and notification channels in Android O
2018-01-09 15:44:36 +01:00
Christophe Beyls
b16bf335b7
Updated code to the latest support library and build tools.
...
MinSDK is now 14; removed legacy code
2018-01-03 17:04:01 +01:00
Christophe Beyls
5f3f09f0b3
Use LocalBroadcastCursor to listen for DB changes instead of ContentResolver with fake Uris
2017-10-07 23:55:32 +02:00
Christophe Beyls
66bb625955
Drop support for API 7-8 devices.
...
It's been a good time!
2017-05-21 19:55:32 +02:00
Christophe Beyls
92c98f0929
Prepare for minor release 1.4.6
2017-05-06 19:09:14 +02:00
Christophe Beyls
1519401b54
Added basic Chrome custom tabs integration to open browser links with a more integrated look when available
2017-05-06 19:07:48 +02:00