aboutsummaryrefslogtreecommitdiff
path: root/app (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Refactor and de-duplicate markdown code (#1086)Sergei Kozelko2022-10-0815-689/+502
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add todos to places that need more markdown fixes * Parse spoilers and headings in sidebar * Assign anonymous MarkwonPlugin to a variable Prepare code for a future refactoring * Assign click listener lambda to a variable Prepare code for a future refactoring * Add function for creating Markwon with full markdown All the builders had the same plugins applied to them, except for BetterLinkMovement. But it is safe to add the plugin as it just adjusts link interactions. Also some plugins are now applied in a different order but it doesn't change anything in this case. * Add function for creating Markwon with only links support * Extract UrlMenuBottomSheetFragment creation * Add functions for creating MarkwonAdapters * Replace linkify with newInstance for BetterLinkMovementMethod Because varargs weren't used, the two methods are identical
* Fix crash in debug build by using fully qualified class name for ↵Sergei Kozelko2022-09-2512-14/+14
| | | | | | | | | | layoutmanager (#1130) When the class name is relative, Android tries to resolve it against applicationId. However it does not match the package because of `.debug` suffix so it tries to load the wrong class. This results in ClassNotFoundException and a crash. Using fully qualified class name fixes it as the system can use the class name as is.
* Fix spoiler interactions with links and long clicks (#1129)Sergei Kozelko2022-09-2511-10/+135
| | | | | | | | | | | | | | | | | | * Prioritize clicks on hidden spoilers over links Extend BetterLinkMovementMethod to override selection of span that will be touched and give spoilers and links following priorities: 1. Hidden spoiler 2. Non-spoiler span (i.e. link) 3. Shown spoiler #609 * Ignore long clicks on spoilers Ignore long clicks if it is a SpoilerSpan. Also don't apply highlight because it breaks spoiler effect. #529
* Rewrite spoiler parsing (#1104)Sergei Kozelko2022-09-251-65/+90
| | | | | | | | | | * Rewrite spoiler parsing to properly support nested spoilers and code blocks Parse all the spoilers, ignoring spoiler brackets that intersect with code spans. Detect all the spoilers that are nested and mark them accordingly. Delete all spoiler brackets that were matched. Add SpoilerSpans for non-nested ranges. * Simplify offset calculation
* Fixed Gray Overlay in Image (#1111)MChen3212022-09-211-5/+13
| | | | | * Added a clear search bar text button * Made caption disappear/show when tapping on image and removed gray overlay when no caption.
* Fix 'Suggested Title' bug (#1120)Kurian Vithayathil2022-09-211-2/+3
| | | | | - Fixed issue where a post's suggested titles would fail to generate Co-authored-by: Kurian Vithayathil <no.reply@github.com>
* Minor bugs fixed.Docile-Alligator2022-09-213-11/+11
|
* Fix reply markdown (#1098)Sergei Kozelko2022-09-216-84/+55
| | | | | | | | | | | | | | | | | | * Display comment body the same way as post body when replying There are two views that support markdown, one of them was used to display post titles and comments, the other - post bodies. The views are configured differently even though post and comment bodies should be displayed the same way. Now post and comment bodies are displayed by the same view. * Rename extra keys from TEXT to TITLE Now these extra keys are used only by post title, reflect this in the name. * Remove markdown support from post title view * Fix reply styling Co-authored-by: Docile-Alligator <25734209+Docile-Alligator@users.noreply.github.com>
* Don't trim leading whitespaces (#1072)scria10002022-09-216-8/+24
| | | Co-authored-by: Docile-Alligator <25734209+Docile-Alligator@users.noreply.github.com>
* Allow parallel installation of debug and release versions (#636)sal0max2022-09-214-3/+10
| | | | | | * Allow parallel installation of debug and release versions ...by adding '.debug' suffix to application id * add separate app name resource for debug build
* Show OP badge on restored comment (#1016)Andrei Shpakovskiy2022-09-214-2/+17
|
* Fix memory leak on ConnectivityManager (#1066)Michael Manganiello2022-09-211-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Leak found using LeakCanary. Steps: 1. Enable the LeakCanary dependency. 1. Open the app. 1. Go to the "All" tab. 1. Open any post, and go back to the post list. Leak trace: ``` 2022-09-04 17:56:05.904 32018-32018/ml.docilealligator.infinityforreddit.debug D/LeakCanary: ┬─── │ GC Root: System class │ ├─ android.net.ConnectivityManager class │ Leaking: NO (a class is never leaking) │ ↓ static ConnectivityManager.sInstance │ ~~~~~~~~~ ├─ android.net.ConnectivityManager instance │ Leaking: UNKNOWN │ Retaining 114 B in 5 objects │ mContext instance of ml.docilealligator.infinityforreddit.activities.ViewPostDetailActivity with mDestroyed = true │ ↓ ConnectivityManager.mContext │ ~~~~~~~~ ╰→ ml.docilealligator.infinityforreddit.activities.ViewPostDetailActivity instance Leaking: YES (ObjectWatcher was watching this because ml.docilealligator.infinityforreddit.activities. ViewPostDetailActivity received Activity#onDestroy() callback and Activity#mDestroyed is true) Retaining 1.8 MB in 27752 objects key = 22e99901-9689-4f70-b88c-092a4a7efad9 watchDurationMillis = 5518 retainedDurationMillis = 517 mApplication instance of ml.docilealligator.infinityforreddit.Infinity mBase instance of androidx.appcompat.view.ContextThemeWrapper ``` Solution based on [this StackOverflow answer](https://stackoverflow.com/a/41431693)
* Start utilizing view binding (#1013)Taco2022-09-217-171/+120
|
* Version 5.3.3.Docile-Alligator2022-09-192-3/+3
|
* Update translation contributors (#1108)StephenTheMoldovan2022-09-191-1/+1
|
* Fix app crashes on start up on Android < 6.0.Docile-Alligator2022-09-191-4/+3
|
* delete "/" in filtering multireddit pathWladimir Kirianov2022-09-181-1/+1
|
* Update multireddit apply filter text (#712)user_7272022-09-181-1/+1
| | | | | * Update multireddit apply filter text A "/" is needed at the end of the path in order for the filter to be applied correctly to the multireddit. Also, any characters that are not lowercase will also make it not apply properly.
* Version 5.3.2.Docile-Alligator2022-09-161-2/+2
|
* Fix redgifs download issues.Docile-Alligator2022-09-1613-771/+856
|
* Update libraries.Docile-Alligator2022-09-101-2/+3
|
* Merge branch 'master' of github.com:Docile-Alligator/Infinity-For-RedditDocile-Alligator2022-09-091-5/+7
|\
| * Update gradle wrapper (#1006)Taco2022-09-091-5/+7
| | | | | | | | | | * Update gradle wrapper * Update AGP, fix gradle deprecations
* | Update libraries.Docile-Alligator2022-09-091-5/+5
|/
* Use simpler DrawerLayout methods (#1015)Taco2022-09-091-3/+3
|
* refactor: Extract CopyTextBottomSheetFragment display logic (#969)Sergei Kozelko2022-09-097-39/+31
|
* Remove unnecessary uses of DrawableCompat. (#1045)Isira Seneviratne2022-09-0910-54/+38
|
* Fix markdown in rules screen (#1050)Sergei Kozelko2022-09-093-18/+63
| | | | | * Display tables in rules screen * Parse spoiler and headings in rules screen
* Added a clear search bar text button (#1063)MChen3212022-09-093-0/+32
|
* Fix memory leak on BigImageViewer (#1067)Michael Manganiello2022-09-093-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Leak found using LeakCanary. Steps: 1. Enable the LeakCanary dependency. 1. Open the app. 1. Open any post image, and go back. According to `Piasy/BigImageViewer` documentation, [Initialize section](https://github.com/Piasy/BigImageViewer/blob/9cc045e8146dc8833a487576745f17158bae4a4a/README.md#initialize), the app context must be used to avoid memory leaks. Leak trace: ``` 2022-09-04 19:51:38.154 13332-13332/ml.docilealligator.infinityforreddit.debug D/LeakCanary: ┬─── │ GC Root: Thread object │ ├─ android.os.HandlerThread instance │ Leaking: NO (PathClassLoader↓ is not leaking) │ Thread name: 'LeakCanary-Heap-Dump' │ ↓ Thread.contextClassLoader ├─ dalvik.system.PathClassLoader instance │ Leaking: NO (BigImageViewer↓ is not leaking and A ClassLoader is never leaking) │ ↓ ClassLoader.runtimeInternalObjects ├─ java.lang.Object[] array │ Leaking: NO (BigImageViewer↓ is not leaking) │ ↓ Object[257] ├─ com.github.piasy.biv.BigImageViewer class │ Leaking: NO (a class is never leaking) │ ↓ static BigImageViewer.sInstance │ ~~~~~~~~~ ├─ com.github.piasy.biv.BigImageViewer instance │ Leaking: UNKNOWN │ Retaining 969.9 kB in 14812 objects │ ↓ BigImageViewer.mImageLoader │ ~~~~~~~~~~~~ ├─ com.github.piasy.biv.loader.glide.GlideImageLoader instance │ Leaking: UNKNOWN │ Retaining 969.9 kB in 14811 objects │ ↓ GlideImageLoader.mRequestManager │ ~~~~~~~~~~~~~~~ ├─ com.bumptech.glide.RequestManager instance │ Leaking: UNKNOWN │ Retaining 969.9 kB in 14808 objects │ context instance of ml.docilealligator.infinityforreddit.activities.ViewPostDetailActivity with mDestroyed = true │ ↓ RequestManager.context │ ~~~~~~~ ╰→ ml.docilealligator.infinityforreddit.activities.ViewPostDetailActivity instance Leaking: YES (ObjectWatcher was watching this because ml.docilealligator.infinityforreddit.activities. ViewPostDetailActivity received Activity#onDestroy() callback and Activity#mDestroyed is true) Retaining 966.2 kB in 14703 objects key = f69c74cc-521e-4f6c-b5c8-8f787e27df75 watchDurationMillis = 5547 retainedDurationMillis = 541 mApplication instance of ml.docilealligator.infinityforreddit.Infinity mBase instance of androidx.appcompat.view.ContextThemeWrapper ```
* Update ExoPlayer.Docile-Alligator2022-09-0825-1936/+1303
|
* Version 5.3.1.Docile-Alligator2022-09-065-313/+12
|
* Fix stupid Redgifs API issue.Docile-Alligator2022-09-0454-121/+6559
|
* Version 5.3.0.Docile-Alligator2022-08-272-3/+3
|
* Minor bugs fixed.Docile-Alligator2022-08-261-1/+5
|
* Show an indicator for the current sort type.Docile-Alligator2022-08-2113-39/+145
|
* Show an indicator for the current sort type in SortTypeBottomSheetFragment.Docile-Alligator2022-08-219-27/+66
|
* Version 5.3.0-beta1.Docile-Alligator2022-08-162-4/+2
|
* Receive events in HistoryPostFragment.Docile-Alligator2022-08-161-6/+399
|
* Update Redgifs API.Docile-Alligator2022-08-154-13/+35
|
* Show urls in ShareLinkBottomSheetFragment.Docile-Alligator2022-08-152-2/+40
|
* Apply custom theme to settings page.Docile-Alligator2022-08-1577-239/+518
|
* Apply custom theme to the header of the navigation drawer.Docile-Alligator2022-08-144-16/+14
|
* Heading markdown fix (#908)Sergei Kozelko2022-08-1411-15/+165
| | | | | | | | | | | | | | | | | | * Copy heading parser and adjust it to match Reddit behavior Unlike CommonMark, Reddit does not require space after #. This behavior is coded in a private static function, so the only way to override it is to copy everything and use the modified copy instead of the default parser. * Use RedditHeadingPlugin instead of regexes * Apply plugins to post body when writing a comment This fixes display when writing comment to a post that contains spoilers or headings without space * Apply plugins to parent comment body when writing a comment This fixes display when replying to a comment that contains strikethrough text
* Fix post content is not parsed in other types of posts.Docile-Alligator2022-08-148-96/+131
|
* Fix saved comments not shown when clicking Saved option in the bottom ↵Docile-Alligator2022-08-134-8/+4
| | | | navigation bar.
* Merge branch 'master' of github.com:Docile-Alligator/Infinity-For-RedditDocile-Alligator2022-08-131-5/+5
|\
| * Merge pull request #844 from SenseiSchizo/feature/stringTypoFixWladimir Kirianov2022-08-121-5/+5
| |\ | | | | | | Fixed typos in strings.xml
| | * Fix misinterpretation of stringsNan2022-07-221-8/+8
| | |
| | * Fixed typosNan2022-07-221-13/+13
| | |