aboutsummaryrefslogtreecommitdiff
path: root/app/src/main (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-12-26New option in fab: go to top.Docile-Alligator10-46/+132
2022-12-24Fix ItemTouchHelper issue?Docile-Alligator4-13/+0
2022-12-23Delete unused mCommentIcon field (#1293)Sergei Kozelko1-7/+0
2022-12-23Delete unused isSortingComments field (#1292)Sergei Kozelko1-22/+6
Field value is always false
2022-12-23Show moderator author/user colors in more places, such as post lists and ↵cmp6-23/+72
history. Show moderator badging in post details as well as color. (#1288)
2022-12-23Inject Streamable api provider instead of Retrofit instance (#1217)Sergei Kozelko9-35/+54
Low effort/high impact case. Simple change that removes Retrofit instance creation from startup path because it is used only after receiving response from Reddit. Eliminates Retrofit instance creation completely if it is not used. Also improves type safety by replacing common Retrofit type with specific api type.
2022-12-23Allow importing theme as any text (#1275)Sergei Kozelko1-7/+12
* Allow importing theme as any text Browsers copy content as text/html and it caused theme import to fail * Coerce clipboard data to text Clipboard can have mime type of text even when it doesn't actually contain text. For example it can contain uri to text content provider. Using `coerceToText` automatically handles all cases and returns best text representation of content.
2022-12-23If an author is deleted and is clicked, don't switch to view user (#1287)cmp10-32/+68
* If an author is deleted and is clicked, don't switch to the view user detail activity, since it'll just error. * Fix a canStartActivity check.
2022-12-15Material You tweaks.Docile-Alligator1-7/+7
2022-12-15Clean up NetworkModule (#1276)Sergei Kozelko1-19/+22
Rename prefixes from `provides` to `provide` Add Named annotations to all OkHttp and Retrofit providers Remove RPAN OkHttp client
2022-12-15Keep the capital letteing of your Multireddit when displayed on the home bar ↵DeathPhantom771-2/+2
tab (#1279)
2022-12-10Minor UI tweaks.Docile-Alligator3-8/+4
2022-12-09Refactor onFetchMoreCommentFailed callback (#1263)Sergei Kozelko1-37/+33
Unified branches, extracted repeatedly used expressions. Fortunately both branches had the same logic, except for placeholder position hint calculation.
2022-12-04Version v5.4.0-beta1. Minor bugs fixed.Docile-Alligator1-2/+5
2022-12-04Version v5.4.0-beta1. Add authenticator to oauth retrofit.Docile-Alligator1-12/+2
2022-12-03Hide more options menu item in some activities.Docile-Alligator1-0/+7
2022-12-03Remove RPAN.Docile-Alligator33-1616/+1
2022-12-03Allow https redirection in ExoPlayer (#1261)scria10006-19/+12
2022-12-03Fix score shown inside CommentFullyCollapsedViewHolder even the score is hidden.Docile-Alligator2-7/+2
2022-12-03Fix placeholder position check (#1216)Sergei Kozelko1-78/+67
* Fix placeholder position check Because of the missed negation `placeholderPosition` could actually point to a different comment. As a result loaded comments would be displayed at a wrong position which could result in duplicated comments. * Extract placeholder search code Simple refactoring. The only notable change is that now technically `placeholderPosition` can be -1. In practice that should never happen, but I added checks anyways
2022-12-03Match parent for the bottom app bar in ViewRedditGalleryImageOrGifFragment.Docile-Alligator1-1/+1
2022-12-03Fix bottom app bar not shown in ViewRedditGalleryImageOrGifFragment.Docile-Alligator2-4/+5
2022-12-03Fix a stupid bug that prevents posts from loading.Docile-Alligator1-5/+7
2022-12-03Notification permission.Docile-Alligator8-16/+91
2022-11-28Minor bugs fixed.Docile-Alligator2-6/+4
2022-11-28Dagger networking refactor (#1125)Kurian Vithayathil4-253/+308
* Separate network dependency injection module - Moved network-related dependencies into a separate module - Consolidated common dependencies to save resources constructing a http client/retrofit * Separate construction of access token interceptor * Create providers for Context and Application to be injectable * Refactor AppModule and AppComponent - Use component builder to store application context and provide to modules - Optimise AppModule providers * Use component factory to add component dependencies * Updated network dependencies to singleton. Add missing OAuth base url for oauth request Co-authored-by: Kurian Vithayathil <no.reply@github.com> Co-authored-by: Docile-Alligator <25734209+Docile-Alligator@users.noreply.github.com>
2022-11-27Minor bugs fixedDocile-Alligator1-1/+1
2022-11-27Use more precise viewholder type in PostGalleryTypeImageRecyclerViewAdapter ↵Sergei Kozelko1-31/+27
(#1229)
2022-11-27Sort type converters - part 2 (#1244)Sergei Kozelko10-200/+86
* Use and store sort type as enum for comments * Use and store sort type as enum for posts * Use sort type enum for search * Remove unused reddit api methods These were missed in the first "sort type" pr
2022-11-27Fix Imgur bug for insecure mp4 links (#1240)scria10002-14/+22
2022-11-27Remove unused Post fields (#1212)Sergei Kozelko7-61/+14
* Remove unused isHiddenInRecyclerView Post field Was used only for reads and was always false * Remove unused isHiddenManuallyByUser Post field Was only written to and read for serialization. Never used for any logic
2022-11-25Store only first level replies as children (#1222)Sergei Kozelko5-27/+48
* Show the current image index in gallery in PostFragment. * Fixed issue where filters applied to same feed were behaving incorrectly (#1172) * Fix ItemTouchHelper and gallery swipe gesture fighting each other. * Show correct image in the gallery in ViewRedditGalleryActivity. * Swipe to view images in a gallery in Card Layout 2. * Fix gallery layout issues. * Remove `commentData` argument that is always an empty ArrayList * Return top level comments in addition to expanded comments after parsing Since 0f1c4d loading more comments loads not only first level replies, but also deeper comments. Because of this `expandedComments` can contain those deep replies if `expandChildren` is true. Adding `expandedComments` to parent causes a bug because parent's children are supposed to be only next level replies. Because of previously mentioned changes that is not true. Now expanding parent comment results in duplicate comments: one of them correctly comes from the parent of duplicated comment. The other one is shown because it is incorrectly stored in the parent of "load more comments" button. This comment separates top level comments (fist level replies) and expanded comments. `expandedComments` are still used for display, but only first level replies are added to the parent * Add debug assertion for children depth Co-authored-by: Docile-Alligator <25734209+Docile-Alligator@users.noreply.github.com> Co-authored-by: Aidan223 <110802888+Aidan223@users.noreply.github.com>
2022-11-19Minor code improvements (#1218)Anatolii Afanasev16-83/+30
* Move mAccessToken and mAccountName initialization upper * Marked INSTANCE as a volatile to be DCL compliant * fix a typo in a method name and remove redundant switch * remove redundant ifs * removed DCL on RedditDataRoomDatabase as its controlled by dagger * remove redundant ifs in PostGalleryActivity as nColumns can be either 2 or 3 only * replace MediaStore.Video.Media.IS_PENDING with MediaStore.MediaColumns.IS_PENDING * reverting simplified ifs as it going to be used in the future * reverting HistoryPostViewModel
2022-11-19Remove unused download events (#1236)Sergei Kozelko4-29/+0
* Remove unused DownloadRedditVideoEvent * Remove unused DownloadMediaEvent
2022-11-18Sort type converters (#1211)Sergei Kozelko7-194/+135
* Create and add to Retrofit SortTypeConverterFactory * Clean up SortType class Mark fields as final, annotate nullability * Use SortType enums as query arguments * Use optional query arguments to simplify code Retrofit ignores null values, so there is no need to remove them from arguments manually
2022-11-18hide keyboard when choosing account from bottom sheet (#1231)Patrick Demers1-0/+3
2022-11-14New option: Settings->Interface->Comment->Comment Divider Type.Docile-Alligator6-6/+66
2022-11-14Swipe to see gallery images in PostDetailRecyclerViewAdapter.Docile-Alligator5-228/+289
2022-11-14Swipe to see gallery images in HistoryPostFragment.Docile-Alligator3-56/+530
2022-11-14Send correct image index when opening the image in gallery posts.Docile-Alligator1-13/+5
2022-11-14Swipe to see images in gallery in gallery layout.Docile-Alligator5-138/+422
2022-11-13Fix gallery layout issues.Docile-Alligator2-36/+36
2022-11-13Swipe to view images in a gallery in Card Layout 2.Docile-Alligator5-68/+474
2022-11-13Show correct image in the gallery in ViewRedditGalleryActivity.Docile-Alligator1-2/+5
2022-11-13Fix ItemTouchHelper and gallery swipe gesture fighting each other.Docile-Alligator6-25/+66
2022-11-13Fixed issue where filters applied to same feed were behaving incorrectly (#1172)Aidan2231-6/+6
2022-11-12Show the current image index in gallery in PostFragment.Docile-Alligator5-34/+69
2022-11-12Swipe between gallery images in PostFragment.Docile-Alligator29-84/+832
2022-11-11Switch loading more comments to /morechildren endpoint (#1186)Sergei Kozelko6-83/+167
* Load more comments from /morechildren endpoint Previous implementation requested comments from /api/info which returned the comments themselves but did not include any information about their children. Also /api/info does not allow to specify sort type. On the other hand /morechildren supports sort type and it will be added in a later commit. I am not proud of this implementation, but I had to fight with both Reddit api response and existing code. The problem with api response is that it is a flat list of comments, not a tree structure. So the tree has to be rebuilt on our end. And the problem with existing code is that it merges "more children" node into its parent but then adds a placeholder anyways. The code relies on the fact that parent comment will be located before any of its children in the response. The code sequentially processes comments, tries to find their parents and either adds them to the tree or puts in a "top-level" array which will be handled by outside code. One possible problem is the removal of `depth` argument from parsing as I couldn't find a way to fit it in the new logic. However I also didn't experience any problems with it during my testing and the response seems to always contain depth key. Moreover current depth handling logic in ParseComment#parseCommentRecursion is broken because it does not increment depth when making a recursive call. * Store moreChildren ids instead of fullnames /morechildren endpoint accepts ids instead of fullnames so there is no point in converting ids to fullnames and back * Send all comment ids to Reddit so it can select what to display itself Sending all ids allows Reddit to sort them properly. Since the number of comments can be very bing, it requires using POST request instead of GET. This commit changes the meaning of Comment#moreChildrenIds field, now it stores only ids of comments that are not yet loaded. This simplifies the code and removes the need for Comment#moreChildrenStartingIndex * Fetch more comments with current sort type
2022-11-08New option: Settings->Interface->Comment->Hide the Number of Votes.Docile-Alligator3-18/+36