-
Notifications
You must be signed in to change notification settings - Fork 528
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open email from desktop notification #7438
Conversation
We got it to a state where we think it works sufficiently well. Commits need some cleanup and then it should be merged. |
a3bcaf6
to
8c4f6b1
Compare
253b444
to
a59240e
Compare
I put the commit to refactor EntityClient into the same PR but I can easily split it if you think it's better |
I re-wrote the commits so that they make more sense, please lmk if I messed something up, especially authorship. |
a59240e
to
af8a7a2
Compare
} | ||
|
||
const cachedEntity = await this.storage.get(typeRef, listId, elementId) | ||
let cachedEntity: T | null | ||
if (cacheMode == CacheMode.Cache) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should probably use === here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
absolutely!
af8a7a2
to
3e6e852
Compare
646d849
to
ed9ec09
Compare
The fix for SSE and fix for Android are mostly unrelated but |
ed9ec09
to
6051c78
Compare
6051c78
to
d50f493
Compare
Overwrite identifier if it changed, do not duplicate user ids.
#7373 Co-authored-by: paw <paw-hub@users.noreply.github.com> Co-authored-by: ivk <ivk@tutao.de>
d50f493
to
c1ee285
Compare
// make sure that we display *something* in the list | ||
await this.setListId(folderToUse) | ||
} | ||
if (this.stickyMailId != elementId) return |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
!==
?
const folderToUse = await this.selectFolderToUse(folder ?? null) | ||
await this.setListId(folderToUse) | ||
// Selecting folder is async, check that the target hasn't changed inbetween | ||
if (this.loadingTargetId != loadingTargetId) return |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
!==
?
|
||
private readonly renderConfig: RenderConfig<Mail, MailRow> = { | ||
itemHeight: size.list_row_height, | ||
multiselectionAllowed: MultiselectMode.Enabled, | ||
createElement: (dom: HTMLElement) => { | ||
const mailRow = new MailRow(false, (entity) => this.mailViewModel.listModel?.onSingleExclusiveSelection(entity)) | ||
const mailRow = new MailRow(false, (entity) => this.attrs?.onSingleExclusiveSelection(entity)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can this.attrs
ever be null?
Show a message if the email to be opened is no longer there. Keep track of explicitly opened email independent of the list state. Handle offline errors. Fix URL and ViewSlider handling Close #7373 Co-authored-by: jat <jat@tutao.de> Co-authored-by: paw <paw-hub@users.noreply.github.com>
This improves readability and hopefully makes it harder to mix up the arguments.
c1ee285
to
8760401
Compare
No description provided.