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
Dat Vu
8fff83a735
[HOT-FIX] Download attachment is failed on iOS ( #4405 )
2026-03-24 22:16:43 +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
dab246
651115c304
TF-4368 Auto trigger load more when get all email return < 20 emails
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
dab246
cdc7d711f5
TF-4368 Add log to tracing refresh change emails on Sentry
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
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
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
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
777b47159d
TF-4354 Remove all logic related to Label Visibility in Settings
2026-03-05 10:32:56 +07:00
dab246
de083b3aff
TF-4354 Hide Label in Preference View when label capability is not supported
2026-03-05 10:32:56 +07:00
dab246
3cdf65866a
TF-4354 Activate Label by default for all users
2026-03-05 10:32:56 +07:00
dab246
8187040b10
feat(Label): fix miss inject websocket when label setting not change
2026-03-05 10:32:56 +07:00
dab246
b2338a1160
feat(Label): Use capability-aware label availability in websocket injection.
2026-03-05 10:32:56 +07:00
dab246
2e6e1fcdc8
feat(Label): Add depend on settings to register websocket for label
2026-03-05 10:32:56 +07:00
dab246
a70a338608
feat: Use execute in parallel for faster request time
2026-03-05 10:32:56 +07:00
dab246
add55a9d55
feat: Use min for easier to read
2026-03-05 10:32:56 +07:00
dab246
41817091c1
feat: Fix loop uses sinceState instead of newSinceState, causing infinite loops.
2026-03-05 10:32:56 +07:00
dab246
4fea45d062
feat: Persist label state after get all labels
2026-03-05 10:32:56 +07:00
dab246
9c211c05ef
feat: Auto sync label from web socket
2026-03-05 10:32:56 +07:00
dab246
c49e48ae1b
feat: Add repository/interactor for get label changes
2026-03-05 10:32:56 +07:00
dab246
987ea410c5
feat: Implement get label changes
2026-03-05 10:32:56 +07:00
dab246
73134d2833
TF-4303 Change order for label action
2026-03-05 10:32:56 +07:00
Dat Vu
084c98865b
fix(web): Cannot typing text when create new rule filter on Safari ( #4350 )
2026-02-27 14:52:33 +07:00
Dat Vu
d785e6a879
fix(web): Cannot typing text when create new folder on Safari for the first time ( #4349 )
2026-02-27 14:07:51 +07:00
Dat H. Pham
e90f503792
TF-4344 In desktop view, selected language not well update
2026-02-25 09:57:27 +07:00
Dat Vu
9afe4d89e3
TF-4336 Fix INBOX should be above Favorite folder ( #4340 )
2026-02-24 11:58:22 +07:00
Dat Vu
9cd75b2885
TF-4339 Fix CORS issue on openid-configuration call ( #4342 )
2026-02-23 17:18:20 +07:00
dab246
b98fa17f69
TF-4337 Fix translate properly in french sending failed modal
2026-02-23 13:44:51 +07:00
Dat Vu
1c1d50a9d2
Fix email list does not automatically refill after bulk delete ( #4323 )
2026-02-12 16:02:12 +07:00
dab246
0db3845133
TF-4329 Fix rogue mailbox set request for favorite
2026-02-12 11:16:33 +07:00
Dat H. Pham
d02676dfb7
Retry with separated Dio to avoid Deadlock in error queue
2026-02-10 16:58:58 +07:00
Dat H. Pham
b14bb6acc0
Update ADR for OIDC token refresh
2026-02-10 16:58:58 +07:00
Dat H. Pham
8fe935ac30
fix infinitive loop when 401 before expired token
2026-02-10 16:58:58 +07:00
Dat H. Pham
f36dd7c40a
fix: add more info in log
2026-02-10 16:58:58 +07:00
dab246
e55283abb8
fix: Add log trace to send log to Sentry and print to web console for validate refresh token
2026-02-10 16:58:58 +07:00
dab246
ada44dd5d0
fix(auth): handle 400 error during token refresh flow
2026-02-10 16:58:58 +07:00
dab246
eb1805d010
fix: remove refreshingTokensOIDC method is not used in repository
2026-02-10 16:58:58 +07:00