Commit graph

5739 commits

Author SHA1 Message Date
Phillip Thelen
85b374a354 fix type definition 2025-06-15 13:35:32 +02:00
Sophie LE MASLE
39ab1287c1 Translated using Weblate (French)
Currently translated at 100.0% (1540 of 1540 strings)

Translation: Habitica Android/Main Strings
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/fr/
2025-06-13 18:16:16 +02:00
Hafiz
650c1049ba Skill Description font fixes
Set skill description to use FontWeight.Normal
Set Button fontweight to use FontWeight.Medium
2025-06-13 09:31:33 -05:00
Hafiz
7ca86538e3 Use WindowInsetsListener to adjust chat layout
Remove old applyScrollContentWindowInsets helper and IME listeners
Add ViewCompat.setOnApplyWindowInsetsListener on root view
Translate chatBarView and recyclerView by IME height and pad for nav-bar insets
Force initial inset dispatch with ViewCompat.requestApplyInsets()
2025-06-13 09:27:44 -05:00
Hafiz
f374acad5c set chat empty state gray700_gray10 2025-06-13 09:09:30 -05:00
Hafiz
64f2942e7a Reduces bottom margin for empty state title 2025-06-13 09:07:48 -05:00
Hafiz
8ab3546696 remove DiffCallback implementation 2025-06-12 16:43:09 -05:00
Hafiz
51953283f1 Wait until viewpager finished laying out page for checking active filter 2025-06-12 14:19:46 -05:00
Hafiz
b41ef037ae Use skilldialog bottomsheet with mystery items, also add typesafety 2025-06-12 14:08:28 -05:00
Hafiz
1773907fb2 Add transformation item to SkillDialog
add isTransformationItem flag to SkillDialog: hide MP chip & spacer and update button label to “Use on Party” when true.
2025-06-12 13:26:41 -05:00
Summer_GUI
435c10f80d Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1540 of 1540 strings)

Translation: Habitica Android/Main Strings
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/zh_Hans/
2025-06-12 18:13:20 +02:00
Hafiz
0981e78e23 Task ViewHolder binding Markdown parsing check & DiffUtil
- Check if text contains markdown before setting title/notes
- Override getDiffCallback to enable RecyclerView DiffUtil updates
2025-06-12 18:13:15 +02:00
Jaime Martí
bfb3983c11 Translated using Weblate (Spanish)
Currently translated at 100.0% (1540 of 1540 strings)

Translation: Habitica Android/Main Strings
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/es/
2025-06-12 00:33:50 +02:00
Hafiz
86edc4ac7e Skill dialog tweaks
- Set MP cost text to medium weight
- Update skill description to 16sp regular
- Fix text size/weight in pause damage bottom sheet
- Adjust 'Use Skill' button for consistency (16sp medium, 12dp radius, 43dp height)
- Reduce horizontal padding on MP cost chip by ~6-7dp per side
- (Also tweak to text for "Pause/Resume Damage" text)
2025-06-11 13:11:22 -05:00
Hafiz
5f1648f2ef Set chat empty state text view invisible initially 2025-06-11 12:54:47 -05:00
Hafiz
d69b300bf3 small title/description/spacing tweak to empty chat text
chat empty state: split into title and description TextViews with spacing
2025-06-11 12:53:33 -05:00
Hafiz
6a5d135756 Remove extra bottom spacing showing on chat 2025-06-11 12:41:57 -05:00
Hafiz
a1a5385212 Revert "Skip redundant markdown parses to reduce flash"
This reverts commit 1bfb5b3ff3.
2025-06-11 10:13:12 -05:00
Phillip Thelen
2e3bde0735 Fix emoji parsing 2025-06-11 13:06:21 +02:00
Phillip Thelen
9633025778 convert emoji map to kotlin and remove duplicate map entries 2025-06-11 13:06:05 +02:00
Hafiz
6732eaee20 Fix crash that occurs when tapping GroupPlanMemberList
Constrain GroupPlanMemberList bottom sheet height to prevent infinite-measure crash
2025-06-11 11:11:17 +02:00
Hafiz
e7e28ff44c Fix chat box sliding under keyboard when long pressing text
Slide ChatBarView under IME instead of padding to preserve text selection handles
2025-06-11 11:10:58 +02:00
Mohammed Alaa
4c1e3fb1ed Enhance analytics logic 2025-06-11 11:10:20 +02:00
Weblate
cb3d44c8db Merge branch 'origin/main' into Weblate. 2025-06-11 11:09:02 +02:00
Hafiz
4c15fcd32a Show empty chat text when there are no messages
When chatMessages is empty, set the RecyclerView state to EMPTY and fade in the empty-state TextView; otherwise switch back to DISPLAYING_DATA and hide the TextView.
2025-06-11 11:08:56 +02:00
Hafiz
a4ff489e51 Show empty state view once messages load (Or no messages)
In ChatFragment.setChatMessages(), update the RecyclerViewEmptySupport’s state to EMPTY when the message list is empty or to DISPLAYING_DATA otherwise. This replaces the loading spinner with the correct empty or data UI.
2025-06-11 11:08:56 +02:00
Weblate
da470b1d59 Merge branch 'origin/main' into Weblate. 2025-06-11 11:08:39 +02:00
Hafiz
061eeea313 Fix GIF animation by checking Drawable
In onSuccess, use if (drawable is Animatable) to start GIFs instead of checking the Coil Image result.
2025-06-11 11:08:34 +02:00
Weblate
21f4790014 Merge branch 'origin/main' into Weblate. 2025-06-11 11:08:10 +02:00
Hafiz
1bfb5b3ff3 Skip redundant markdown parses to reduce flash
Track last-parsed Spanned in existingMarkdownText/Notes and bail out if identical, so we don’t reset the view’s content (markdown in title/notes) every bind.

View height still recalculates on refresh (minor layout flash), but the markdown text no longer "flickers".
2025-06-11 11:08:03 +02:00
Weblate
08d0194031 Merge branch 'origin/main' into Weblate. 2025-06-11 11:07:26 +02:00
Hafiz
c8d42dfbf0 Retrieve rewards after clearing cache
- Inject inventory repository into BasePreferencesFragment
- Retrieve rewards after clearing cache
2025-06-11 11:07:20 +02:00
Weblate
5e1c2a7ecb Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1539 of 1539 strings)

Translated using Weblate (German)

Currently translated at 82.1% (1264 of 1539 strings)

Merge branch 'origin/main' into Weblate.

Merge branch 'origin/main' into Weblate.

Merge branch 'origin/main' into Weblate.

Translated using Weblate (Indonesian)

Currently translated at 64.8% (997 of 1538 strings)

Translated using Weblate (Spanish (Latin America))

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Spanish (Latin America))

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Spanish (Latin America))

Currently translated at 100.0% (16 of 16 strings)

Translated using Weblate (Spanish (Latin America))

Currently translated at 100.0% (17 of 17 strings)

Translated using Weblate (Spanish (Latin America))

Currently translated at 100.0% (10 of 10 strings)

Translated using Weblate (Spanish (Latin America))

Currently translated at 2.2% (34 of 1538 strings)

Translated using Weblate (Spanish (Latin America))

Currently translated at 96.8% (62 of 64 strings)

Translated using Weblate (Spanish (Latin America))

Currently translated at 100.0% (3 of 3 strings)

Translated using Weblate (Chinese (Traditional))

Currently translated at 75.2% (1158 of 1538 strings)

Merge branch 'origin/main' into Weblate.

Merge branch 'origin/main' into Weblate.

Merge branch 'origin/main' into Weblate.

Merge branch 'origin/main' into Weblate.

Translated using Weblate (Polish)

Currently translated at 70.2% (1081 of 1538 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (17 of 17 strings)

Translated using Weblate (Polish)

Currently translated at 70.2% (1081 of 1538 strings)

Translated using Weblate (Polish)

Currently translated at 70.2% (1081 of 1538 strings)

Translated using Weblate (Polish)

Currently translated at 70.2% (1081 of 1538 strings)

Translated using Weblate (Polish)

Currently translated at 70.2% (1081 of 1538 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (64 of 64 strings)

Translated using Weblate (Polish)

Currently translated at 68.7% (1057 of 1538 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (1538 of 1538 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (1538 of 1538 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (1538 of 1538 strings)

Translated using Weblate (Indonesian)

Currently translated at 100.0% (64 of 64 strings)

Translated using Weblate (Indonesian)

Currently translated at 62.8% (967 of 1538 strings)

Translated using Weblate (Chinese (Simplified))

Currently translated at 100.0% (64 of 64 strings)

Translated using Weblate (Chinese (Simplified))

Currently translated at 100.0% (1538 of 1538 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (16 of 16 strings)

Translated using Weblate (Dutch)

Currently translated at 59.9% (922 of 1538 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (1538 of 1538 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 91.0% (1400 of 1538 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (1538 of 1538 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (1538 of 1538 strings)

Translated using Weblate (Chinese (Simplified))

Currently translated at 99.7% (1534 of 1538 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (64 of 64 strings)

setup styling

Continue setup screen work

update dependencies

remove device name library

Implement more onboarding screens

Begin building new onboarding flow

Co-authored-by: Angela Yulenis Ramos Carreño <yulieeniss@gmail.com>
Co-authored-by: Céu <marcel.ufscar@gmail.com>
Co-authored-by: Fabrizio Duarte <fabrizionahu11@gmail.com>
Co-authored-by: Ian Lucero Yoel <ianlucerito17@gmail.com>
Co-authored-by: Jaime Martí <jaumemarti77@icloud.com>
Co-authored-by: LaiYi <lysinexxin@163.com>
Co-authored-by: Laura Fleckenstein <fleckenstein_laura@web.de>
Co-authored-by: Mateusz Nycz <mat.nycz@onet.pl>
Co-authored-by: Muhammad Hanafi <Hanafi1987@outlook.com>
Co-authored-by: Nina Łapaj <ninapaj@gmail.com>
Co-authored-by: Phillip Thelen <phillip@habitica.com>
Co-authored-by: Saalima Aaseman <aaseman.bio@gmail.com>
Co-authored-by: Sam Hou <samhou777@outlook.com>
Co-authored-by: Summer_GUI <heyang94@163.com>
Co-authored-by: V Aar <v.vanderaar@gmail.com>
Co-authored-by: Viktor Révész <rviktor@ivankapal.com>
Co-authored-by: Weblate <noreply@weblate.org>
Co-authored-by: cloudzzy <truskawka412@gmail.com>
Translate-URL: https://translate.habitica.com/projects/habitica-android/common/es_419/
Translate-URL: https://translate.habitica.com/projects/habitica-android/common/hu/
Translate-URL: https://translate.habitica.com/projects/habitica-android/common/id/
Translate-URL: https://translate.habitica.com/projects/habitica-android/common/pl/
Translate-URL: https://translate.habitica.com/projects/habitica-android/common/zh_Hans/
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/de/
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/es/
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/es_419/
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/hu/
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/id/
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/nl/
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/pl/
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/pt_BR/
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/zh_Hans/
Translate-URL: https://translate.habitica.com/projects/habitica-android/main-strings/zh_Hant/
Translate-URL: https://translate.habitica.com/projects/habitica-android/profile/es_419/
Translate-URL: https://translate.habitica.com/projects/habitica-android/sidebar/es_419/
Translate-URL: https://translate.habitica.com/projects/habitica-android/sidebar/pl/
Translate-URL: https://translate.habitica.com/projects/habitica-android/store/es_419/
Translate-URL: https://translate.habitica.com/projects/habitica-android/tutorial/es_419/
Translate-URL: https://translate.habitica.com/projects/habitica-android/tutorial/nl/
Translate-URL: https://translate.habitica.com/projects/habitica-android/wearos/es_419/
Translate-URL: https://translate.habitica.com/projects/habitica-android/wearos/nl/
Translation: Habitica Android/Common
Translation: Habitica Android/Main Strings
Translation: Habitica Android/Profile
Translation: Habitica Android/Sidebar
Translation: Habitica Android/Store
Translation: Habitica Android/Tutorial
Translation: Habitica Android/Wearos
2025-06-11 09:58:55 +02:00
Hafiz
98b684fb27 Merge branch 'feedback-updates' 2025-06-10 16:59:00 -05:00
Hafiz
eedb70e3d8 SkillDialog feedback updates
Update sheet handle
Box is now 70×70dp
Tone down text weights
Set chip bg to Blue500@24%
Adjust chip text colors
Use designed MP icon
Match “Use Skill” button style
2025-06-10 16:56:27 -05:00
Hafiz
8dc10bfdbd Remove "Groups" section from challenge filter 2025-06-10 16:06:35 -05:00
Hafiz
98c1098b86 Scales up quest pixel art in party details
Introduces a forceScaleUp option to PixelArtView, used for gifs on the party details.
2025-06-09 18:30:55 +02:00
Hafiz
2955c4e020 Fixes incorrect week calculation for monthly repeats
Using the built-in "week of month" value meant that any days before the 1st counted as “week 1,” so selecting the first Monday sometimes grabbed a date that actually belonged to a partial week from the previous month.

The new approach replaces that by taking the numeric day (1-31) and grouping 1-7 as week 1, 8–14 as week 2, and so on - so "first Monday" really means the first Monday falling in days 1–7 of that month, not a stray day from a partial week.
2025-06-09 18:29:50 +02:00
Hafiz
94b69a9a7b Fix zh string to match customization shop name and prevent crash
Update zh string resource so customization shop name matches and prevents index crash

Note: (zh) Maintains context
2025-06-09 18:25:26 +02:00
Hafiz
f281e2ec0f (WearOS) Removes task observer after all tasks are completed
The task observer is now only removed after all tasks are completed, allowing due tasks to be checked.
2025-06-09 18:24:53 +02:00
Phillip Thelen
0461cc35f5 Show static images for widgets 2025-06-06 14:04:04 +02:00
Phillip Thelen
2237d638f6 fix cron dialog disappearing when rotating 2025-06-06 14:04:04 +02:00
Phillip Thelen
7255539dea fix crash when play store is not available 2025-06-06 14:04:04 +02:00
Phillip Thelen
004a46170c fix crash when backstack gets too large 2025-06-06 14:04:04 +02:00
Phillip Thelen
3fbf0a7fad fix out of bounds crashes 2025-06-06 14:04:04 +02:00
Phillip Thelen
5effa31db3 Improve logging for activity nav events 2025-06-06 14:04:04 +02:00
Phillip Thelen
d9be2c41ad bump code 2025-06-06 14:03:10 +02:00
Phillip Thelen
f2964e9a30 bump version 2025-06-06 14:03:10 +02:00
Hafiz
6913582b91 Skill dialog bottom sheet
Bottom sheet dialog for displaying skill information
Includes a new composable view: SkillDialog
2025-06-06 13:54:05 +02:00
Hafiz
ef2229e438 Revert logic determining active filters for todos
Ensures that the correct filter is applied when determining if a filter
is active for todo tasks
2025-06-06 13:52:34 +02:00