Théo Poizat
245dfc714d
Display sparkle button in mobile app bar to launch AI Scribe
...
- Same icon than for desktop
- Displayed only if AI Scribe is enabled
2026-03-25 11:52:35 +07:00
Théo Poizat
089eb7b75f
Fix correct grammar icon not present in submenu getIcon
2026-03-25 11:52:35 +07:00
Théo Poizat
b28dea732a
Fix AI Scribe overlay button display in iOS
...
The button was never displayed because the selectionchange event listener was loaded when the WebView was not entirely loaded so selectionchange event were never fired.
Now we setup selection listener when the WebView is loaded instead of created.
2026-03-25 11:52:35 +07:00
Théo Poizat
03c70922a0
Fix selection coordinates in mobile
...
Because the HTML editor is different, we need a different selector to get the editable element.
We also need to add a small offset to the coordinates to avoid positionning the overlay icon above native selection UI in mobile. For example, Android adds a marker at the beginning and the end of the selection and we do not want to display the Scribe overlay icon above this marker.
2026-03-25 11:52:35 +07:00
Théo Poizat
9e601caa86
Enable AI scribe in mobile
2026-03-25 11:52:35 +07:00
Théo Poizat
0f4ed4537e
Remove unused localizations arguments in Scribe suggestion
2026-03-25 11:52:35 +07:00
Théo Poizat
5abce414d4
Guard Scribe suggestion loading if interactor is null
2026-03-25 11:52:35 +07:00
Théo Poizat
5bdcff5aba
Extract Scribe menu item text and icons in components
2026-03-25 11:52:35 +07:00
Théo Poizat
d5a3400bb4
Allow boxShadow to be changed in AIScribeBar
...
We will need a custom boxShadow for mobile version.
2026-03-25 11:52:35 +07:00
Théo Poizat
4c75ec863d
Extract AI Scribe menu item component
...
Scribe is always composed of menu (aka category) and submenu (aka action) :
- submenu item UI was already in an UI only component. I moved it to items folder.
- menu item UI was mixed in a component with desktop related UX. So I extract the UI to create an UI only component. I moved it also to items folder.
2026-03-25 11:52:35 +07:00
Théo Poizat
08899b1598
Extract AI Scribe suggestion logic
...
In Scribe desktop, the suggestion is displayed in a popup.
In Scribe mobile, it will be displayed in a full screen modal.
But it share the same logic about loading, success and error.
So here I extract this logic and use it in the AI Scribe desktop to be able to use it later in AI Scribe mobile.
2026-03-25 11:52:35 +07:00
Dat H. Pham
16b1de1b48
Bump version to v0.26.6
2026-03-24 22:19:31 +07:00
Dat Vu
8fff83a735
[HOT-FIX] Download attachment is failed on iOS ( #4405 )
2026-03-24 22:16:43 +07:00
Dat H. Pham
6a34e27340
Bump version to v0.26.5
2026-03-23 14:02:53 +07:00
Dat Vu
4899002b87
TF-4394 Fix TXT preview is broken ( #4396 )
2026-03-23 13:47:44 +07:00
Dat Vu
8a9901a0a4
TF-4384 Fix page not found 404 error when refreshing label views ( #4390 )
2026-03-21 17:23:18 +07:00
Dat H. Pham
8d82eac16f
Bump version to v0.26.4-rc01
2026-03-20 10:15:13 +07:00
dab246
651115c304
TF-4368 Auto trigger load more when get all email return < 20 emails
2026-03-20 10:15:13 +07:00
Dat H. Pham
7907df3140
Bump version to v0.26.3-rc01
2026-03-20 10:15:13 +07:00
dab246
2d19bc908d
TF-4368 Add more log trace for getAllEmail & forceQueryAllEmailsForWeb
2026-03-20 10:15:13 +07:00
dab246
9854592a4c
TF-4368 Add more log trace for load more email
2026-03-20 10:15:13 +07:00
Dat H. Pham
7ecf5d8e53
bump version to v0.26.2-rc01
2026-03-20 10:15:13 +07:00
dab246
cdc7d711f5
TF-4368 Add log to tracing refresh change emails on Sentry
2026-03-20 10:15:13 +07:00
dab246
80c368be62
TF-4368 Add verifying actual merged email IDs, not just count.
2026-03-20 10:15:13 +07:00
dab246
bf1bab478c
TF-4368 Add the delete/shrink regression case and assert the requested limit.
2026-03-20 10:15:13 +07:00
dab246
72aceff481
TF-4368 Add named parameters to mock setup for consistency.
2026-03-20 10:15:13 +07:00
dab246
2d45909ad1
TF-4368 Add tearDown for consistency with other test groups.
2026-03-20 10:15:13 +07:00
dab246
23a3e9243e
TF-4368 Add unit test for refreshChanges method
2026-03-20 10:15:13 +07:00
dab246
a28d5b3527
TF-4368 Fix cannot scroll in email list
2026-03-20 10:15:13 +07:00
Dat Vu
eecdf75f5e
TF-4384 Add ADR-0074 Resolve label refresh 404 by introducing explicit labelId ( #4387 )
2026-03-19 17:13:31 +07:00
dab246
e2c158d633
TF-4373 Add E2E test for test case delete thread to trash on mobile
2026-03-12 15:15:03 +07:00
dab246
bb9dca10de
TF-4373 Fix deletion is not working when thread is enabled
2026-03-12 15:15:03 +07:00
dab246
a838912f5c
TF-4367 Add test case for Emails with Re\u00A0: / Tr\u00A0:.
2026-03-11 13:33:28 +07:00
dab246
a8e0bf6167
TF-4367 Remove the duplicated closeEmailDetailedView helper from this mixin.
2026-03-11 13:33:28 +07:00
dab246
9e9e666518
TF-4367 Add E2E test for test case forward email is forwarded when change language on mobile
2026-03-11 13:33:28 +07:00
dab246
12b9ad4a40
TF-4367 Add E2E test for test case reply email is replied when change language on mobile
2026-03-11 13:33:28 +07:00
dab246
b7287d4b5c
TF-4367 Add E2E test for test case forward email when change language on mobile
2026-03-11 13:33:28 +07:00
dab246
8246dd66fd
TF-4367 Add E2E test for test case reply email when change language on mobile
2026-03-11 13:33:28 +07:00
dab246
88f9643072
TF-4367 Add unit test for apply Reply/Forward prefix for subject when compose email
2026-03-11 13:33:28 +07:00
dab246
d256b5ca52
TF-4367 Update logic apply Reply/Forward prefix for subject when compose email
2026-03-11 13:33:28 +07:00
dab246
4a94f088d5
TF-4367 Fix duplicated Re: prefix when reply email with French locale
2026-03-11 13:33:28 +07:00
Dat H. Pham
edaa094f62
Bump version to v0.26.1
2026-03-10 11:10:26 +07:00
dab246
b7594a4adb
fix: The message field in UnknownRemoteException is typed as String? and the condition will always be false.
2026-03-10 11:06:16 +07:00
dab246
572bf6ba81
fix: The code parameter must be propagated through the inheritance chain.
2026-03-10 11:06:16 +07:00
dab246
8a21e35d1e
fix: Prefer reusing AppBaseException instead of redefining the exception contract CacheException and RemoteException
2026-03-10 11:06:16 +07:00
Dat H. Pham
236ad5f075
Override props method for CacheException
2026-03-10 11:06:16 +07:00
Dat H. Pham
3e39f59f20
Fixup Constant some token exception
2026-03-10 11:06:16 +07:00
dab246
437c46f5ff
fix(sentry): resolve minified exception types on web release
2026-03-10 11:06:16 +07:00
dab246
2e8a11e7eb
refactor(sentry): standardize exceptions to prevent Sentry minification
2026-03-10 11:06:16 +07:00
dab246
296548a781
fix(sentry): sync dist parameter to resolve minified stack traces
2026-03-10 11:06:16 +07:00