* revert unneeded changed introduced at #1975 - the timer is to update relative timestamps, data reloading is not needed and driven by events
* load chatlist async
* debounce chatlist loading
* add comment to the code
* hide question from request panel for now, if needed we can do something more specific in the future
* remove 'Done' toast to avoid problems with lost activity
for whatever reason,
i just got a crash related to the toast that could not find its activity,
probably we should have used the app context and not the activity.
however, the toast was annoying me already,
there is no point in adding it, the change is visible instantly to the user
on the screen.
* add 'Archived Chats' menu entry
the menu entry is at the place where the 'Contact Requests' were before -
that way, ppl may find existing contact requests easier.
moreover, it is now possible to access 'Archived Chats'
without endless scrolling ;)
* for archived requests, show both tags
* show a hint when 'Archived Chats' is empty
* contact requests do not display unread count; do not retrieve it and do not show text in bold
See deltachat/deltachat-core-rust#2514
Fixes#1963Fixes#1890
Before deleting a chat the user is asked for confirmation. Before blocking not, because blocking is not "destructive" (i.e. can be completely reverted by unblocking the contact). I'm wondering whether we should show a snackbar with an Undo button though, but we can probably wait for user feedback on this.
* Start removing deaddrop chat
* Generally works
* Fix the buttons
(it's not easy to not show one of the buttons in
ConstraintLayout; if problems turn up, we should probably
just not use ConstraintLayout)
* fix more things
* restartLoader() instead of notifyDataSetChanged() because the latter didn't do anything
* Archived badge
* Rename "Contact request" to "Request"
* oops
* Remove setStockTranslation(8, context.getString(R.string.chat_contact_request));
* Remove commented-out code, we probably won't need it
* Don't show "Delete" button for 1:1 chats
* Get rid of short flickering when declining a request
* Set the app's night mode to match the preference
This added 6ms to startup time, but I think that's OK, as
we will also be able to use more `-night` views in the future
* Make "Accept" text a bit brighter and easier to read in dark mode
* Check if the chattype is Group instead of members.length == 1
I couldn't measure whether the app actually loads faster, as it varies a
lot (3.5s-4.5s on my device), but I could see that `getInstance()`
doesn't need 100ms-300ms on the main thread anymore.
- 'Getting new messages…' is not always fitting,
the messages may be old or they are not visible as messags at all
(read receipts, setup-contact, sync).
'Updating…' is better fitting here.
- 'Getting new messages…' is a bit too long and results in
linebreaks on smaller devices.
* capitalize some strings
as discussed several times on different channels,
nowadays, it is more usual to use capitalized titles;
fitting better to existing environments.
this pr capitalizes menu entries, buttons and titles;
"titles" include all name of all settings.
whats left lowercase (just to have a clear focus):
- states
- values
- whole sentences
- titles mentioned in whole sentences
(nb: there is the rough idea of having something as "Group or Subject"
instead of just "Group" -
this change is also easier with the new capitalisation rules ;)
as this all does not affect other languages
(they have their own rules),
we should be careful not to force re-translations.
* fix typos
in a multi-device-setup,
if deviceB scans a setup-contact QR code shown on deviceA,
it is misleading to say that the QR code was withdrawn
and can be revived.
actually, the QR code was never withdrawn by the user.
this is fixed by this pr.
(at some point, we want to sync QR codes across devices,
but even then, there may be siutuations where things are not in sync)
moreover,
the wording is more explicit about what is usually done with the qr code;
this is esp. helpful, when scanning a printed QR code without much context.
- Imediately hide the compose panel when you left the group and
EVENT_CHAT_CHANGED was sent
- Hide the "Leave" button if you are not a member of a group. I solved
this by checking `canSend()`; I could also have checked
`dc_is_contact_in_chat(CONTACT_ID_SELF)`, but this would be more
complexity for now.
When we add the possibility to leave mailing lists, the core will have
to explicitly tell the UI whether it's possible to leave a chat, but
that's not for now.
the code-part of this pr is pretty simple, most work was already done in core at deltachat/deltachat-core-rust#2512
* add DC_QR_{WITHDRAW|REVIVE}_VERIFY{CONTACT|GROUP} constants
* ask to withdraw/revive qr codes
* reword redraw hints, fix typos
* reword revive statement
* Update res/values/strings.xml: Add "by others"
* Apply suggestions from comradekingu's code review
Co-authored-by: Allan Nordhøy <epost@anotheragency.no>
Co-authored-by: Hocuri <hocuri@gmx.de>
Co-authored-by: Allan Nordhøy <epost@anotheragency.no>
The non-squashed original commits are available at 243bd3a56:
* First, quick and dirty version
* Basic HTML connectivity view
* Codestyle, automatically refresh
* Make it accessible from the settings
* Improve usability
I did some user-testing with my family, these are the results:
- Added an emoji to the html page (red dot for not connected, and so on)
- Adapted error messages for SMTP:
"Not started" -> "(You did not try to send a message recently)"
"🟢 Connected" -> "🟢 Your last message was sent successfully"
- "Not connected" is misleading, because they think that this means that there is no internet connection.
But "Not connected" can have other causes, like, a not responding server or a changed-but-not-updated-in-DC password
Possible solutions:
- "Not connected" -> "Not connected with gmx.de" (or whatever comes after the '@' in configured_addr). The problem: some people have an own domain for their emails, but no own servers. "Not connected with <your domain>" and might make them think that the problem is that DC tries to connect to the server <your domain>, while the server is hosted at Strato.com.
- We can ask the system whether there currently is network and then show another error message. The problem: Sometimes the system is wrong.
* Remove error_network
* Remove server_response string
* Move `getConnectivitySummary()` to `DcHelper`
* Implement the changes we agreed on
* Remove string error_no_network
* small fixes
* Clarify disappearing message hint
I got the user feedback that it's not clear that this setting only applies for this chat/group and is not a global setting like device/server deletion
* incorporate feedback to disappearing messages hint
Co-authored-by: B. Petersen <r10s@b44t.com>