Commit Graph

134 Commits

Author SHA1 Message Date
adbenitez 34ab6bd458 remove duplicated settings in advanced 2024-05-15 05:49:25 +02:00
adbenitez ab03c02d3e remove subject setting 2024-05-07 18:54:52 +02:00
adbenitez 431ab02bf5 Merge remote-tracking branch 'upstream/main' 2024-05-07 18:15:56 +02:00
B. Petersen 6332d53794 rename section for account, password, imap, folders etc. to 'Server' 2024-05-06 16:17:33 +02:00
B. Petersen c93cdc5898 move 'password and account' to advanced, together with folder settings 2024-05-06 16:17:33 +02:00
B. Petersen c74adafbc3 move 'show classic emails' to advanced; it is no longer a recommended option to take care of 2024-05-06 16:17:33 +02:00
B. Petersen 3dcadf8f68 important advanced moved up: log, stats, experimental (we want ppl to play around), app access (discouraged), password and account (discouraged, often not needed, otoh, very bottom is a common place for that) 2024-05-06 16:17:33 +02:00
B. Petersen 4395b4a123 tune down AutoCrypt 2024-05-06 16:17:33 +02:00
adbenitez a46221335f Merge remote-tracking branch 'upstream/main' 2024-03-09 18:27:28 -05:00
B. Petersen 4d52d84bf2 add missing translations 2024-03-07 13:01:34 +01:00
adbenitez eafeda8d74 Merge remote-tracking branch 'upstream/main' 2024-02-07 18:48:42 -05:00
Hocuri 81b321f740 Add self-reporting button (#2910)
Depends on https://github.com/deltachat/deltachat-core-rust/pull/5129

Part of https://github.com/deltachat/deltachat-android/issues/2909
2024-02-07 20:23:55 +01:00
adbenitez 3660fe87a8 Merge remote-tracking branch 'upstream/main' 2024-02-01 04:39:27 -05:00
bjoern 8cb9d42750 add an option to 'Read System Address Book' (#2950)
with chatmail, providers exist that allow to send encrypted mails only.
pulling in the system address book unconditionally for chatmail will harm UX
as for most of these addresses,
no public key will be known until eg. a QR code is scanned.

we may think this over in the future.
note, that one usually also can create a Delta Chat chat from the address book,
so, this works also without having Delta Chat pulled in all addresses
(which has some issues, https://github.com/deltachat/deltachat-android/issues/2923 )
2024-02-01 09:34:15 +01:00
B. Petersen ee67c1d217 reactions are no longer experimental
by the reactions support being added to desktop, ubuntu-touch and iOS,
this also ends the experimental time on android :)
2024-01-19 00:23:10 +01:00
adbenitez 7098e7fa2e remove pref_system_emoji preference 2023-11-17 20:57:34 +01:00
adbenitez 5e6d997f13 remove broadcast and reactions experimental toggle 2023-11-13 18:56:30 +01:00
adbenitez b19091e5aa remove camera button from attachment selector
also always display the location streaming button
2023-11-13 18:52:31 +01:00
adbenitez e500738954 remove built-in camera 2023-11-08 12:24:11 +01:00
adbenitez 841b893770 remove "watch sent folder" option 2023-11-07 23:28:24 +01:00
adbenitez 1ea13ce279 enable reactions by default, tweak default reactions 2023-11-05 02:02:36 +01:00
adbenitez e0af047c61 prefer system emojis by default 2023-11-04 23:30:10 +01:00
adbenitez b06f5fe3f4 add Privacy section to settings 2023-10-29 04:09:45 +01:00
adbenitez 4543569c34 Merge remote-tracking branch 'upstream/main' 2023-10-21 19:32:22 +02:00
bjoern 2d01fd9b6f sending reactions (#2680)
* add basic reaction view

* reuse pill background

* make pill border a little more visible; this affects sended reactions as well as received ones

* use 🤣 instead of 😂 to differ more from 😢

also, 😂 is a bit outdated for younger generations
(so is probably 🤣 but not that much)
(alternative would be 💀 for laughing,
but that is probably not compatible between generations)

* use 🙁 instead of 😢 for 'sad' to distict from lol

lol gets revered to 😂 as
🤣 seems to be even a more non-go (thanks for expertise, young folks!)

* wording: we add one reaction, not many

* show/hide add-reaction-view together with action mode

* pass message&view to showAddReactionView()

* add sendReactions() api

* create AddReactionView class

* send reactions on click

* hide AddReactiobView on sending emoji

* detect self-reaction

* feat: remove selections

* position AddReactionView atop of parent view

* move AddReactionView up a bit

* padding top/bottom

* center for now, this also postpones rtl/ltr

* force initial layout

* move slightly more off the bubble, keep away a bit from screen margin

* move AddReactionsView left/right depending on incoming/outgoing mails

* do not allow reactions in read-only chats

* do not allow to react to videochat-invitations and info; the latter may makes sense at some point, however, to lower burder on other implementations, we do not send them for now

* hide reaction-picker when leaving action mode with 'back'

* hide reaction-picker when leaving action mode with 'back'

* scroll reaction-panel together with recyclerview; this does not happen if new messages come in, however, this is a minor (and a stable panel position can be regarded even as a feature)

* add sending reactions as an experimental feature as long not at least all system display reactions

* clarify that reactions are currently not seen by all members

* prefer View.INVISIBLE over offscreen hack
2023-10-20 15:17:24 +02:00
adbenitez 3507cb28c6 Merge remote-tracking branch 'upstream/stable' 2023-09-29 12:55:42 +02:00
B. Petersen ecd8558e7f reword 'Built-In Camera' to 'In-App Camera'
built-in may also refer to the camera hardware build into you phone,
esp. on some translations this may get confusing
2023-09-28 22:23:32 +02:00
adbenitez c952fb33e2 Merge remote-tracking branch 'upstream/stable' 2023-09-28 01:05:16 +02:00
B. Petersen 30d4febee7 use system camera as default
the system camera has usually more features (flash, physical zoom, filter)
and is less buggy than the mostly unmaintained built-in one.
also, the system camera seems to be more supported
(isDeviceSupported() is not needed) and does not require to ask for permission.

there is still a switch in "advanced settings" to use the old built-in camera,
however, at some point we may remove the old code completely.
2023-09-27 18:22:55 +02:00
adbenitez afad51e4fa Merge remote-tracking branch 'upstream/master' 2023-03-26 01:39:32 -04:00
bjoern 3cede346f3 add multi-device-setup (#2493)
* add DcBackupProvider add receiveBackup() wrappers

* add 'Add Another Device' item to settings

* add android-ifaddrs

core-rust uses getifaddrs() which is not available on android ndk.
pull in the code from https://github.com/morristech/android-ifaddrs
that provides an implementation.

* add BackupProviderActivity

* make SVG-hack reusable

* add BackupProviderFragment

* prepare scanning backup codes

* Revert "add android-ifaddrs"

This reverts commit 33b1424427620396f282805d37f8e05c67758546.

* more logging

* call receiveBackup() on scanning DC_QR_BACKUP

* Fixup for recvmmsg fallback

* protect BackupProviderActivity by system secret

* show transfer progress as provided form the core; hide qr-code once scanned

* add a permanent notification for the provider

* clarify what we are waiting for

* add a permanent notification for the receiver

* ask before finishing BackupProviderActivity

* it is fine to cancel the abort question by tapping outside the alert

* remove outdated comment from 'keep screen on'

* add and check TRANSFER_MODE

* rename BackupProviderActivity to BackupTransferActivity

* use our base activity

* start/stop IO in base activity

* use BackupTransferActivity also for scanning

* add BackupReceiverFragment

* show detailed transfer progress

* show details instead of percent during preparation, for now

* launch chatlist and remove welcome when transfer is done

* redirect to chatlist automatically after transfer succeeded

* reword

* make log accessible from send and receive activities

* bump version

* show error if backup provider creation fails

* remove unneeded format()

* show some context in the errors alerts, hide QR code sooner

* calculate transfer percentage as specified

* show a 'close' instead of a 'back' button to make visually clear, things are aborted (there is a quesion anyway)

* add option to copy backup-qr-code to clipboard

* remove vague retry statement, core will show a detailed error soon

* warn about QR codes on clipboard getting invalidated

* make basic strings translatable

* add troubleshooting menu item (once help is evolved, it may be a more visible button, may be localized, may be offline)

* rename to backup_transfer_fragment.xml

* add detailed instructions

* move 1,2,3 layout to the .xml

* fix layout

* use text size used elsewhere

* do best effort to show SSID on sending device

* make SSID code reusable for receiver

* adapt to otherwise used font style

* show ssid also for receiver

* minor refactorings

* make qr code subtitle translatable

* tune down 'same network hint' on scanning device

* add progress bar to provider

* add progress bar to receiver

* bump version

* use 'Add Second Device' wording

this seems slightly catchier as "Add Another Device"
and has less "A" esp. in "Add as Another Device" :)

also at least translation to german seems nicer ("Zweitgerät"),
most ppl will use max. two devices, but even if more,
that should still be fine.

this was also the first intuition also by other devs in their mockups,
so we'll give it a try.

* use "Exporting/Preparing/Prepared Account" wording

let's give that a try - "Account" is also widely used,
so that seems to make some sense.
even if not 100% fitting,
it seems better than introducing the new term "Collection".

* refine abort question

* Update res/layout/backup_provider_fragment.xml

Co-authored-by: Hocuri <hocuri@gmx.de>

* Update src/org/thoughtcrime/securesms/qr/BackupProviderFragment.java

Co-authored-by: Hocuri <hocuri@gmx.de>

* Update src/org/thoughtcrime/securesms/qr/BackupReceiverFragment.java

Co-authored-by: Hocuri <hocuri@gmx.de>

* Update src/org/thoughtcrime/securesms/qr/BackupTransferActivity.java

Co-authored-by: Hocuri <hocuri@gmx.de>

* Update src/org/thoughtcrime/securesms/qr/BackupReceiverFragment.java

Co-authored-by: Hocuri <hocuri@gmx.de>

* remove string duplicate

* refine 1,2,3

* simplify string ids

* focus on what matters

---------

Co-authored-by: link2xt <link2xt@testrun.org>
Co-authored-by: Hocuri <hocuri@gmx.de>
2023-03-24 15:22:26 +01:00
adbenitez 951c58e69e Merge remote-tracking branch 'upstream/master' 2023-03-15 10:58:45 -04:00
adbenitez 75f3a7c0df tweak main menu and settings 2023-03-13 19:45:09 -04:00
adbenitez 2e0b8ea654 Merge remote-tracking branch 'upstream/master' 2022-02-01 18:01:36 -05:00
Hocuri 0bc9f4735c Add OnlyFetchMvbox option (#2206)
* [WIP] Add OnlyFetchMvbox option

* Update res/values/strings.xml

* Adapt to the core changes

* Update res/values/strings.xml

Co-authored-by: bjoern <r10s@b44t.com>

* Remove unnecessary startIo() addition

* Update res/values/strings.xml

Co-authored-by: bjoern <r10s@b44t.com>

Co-authored-by: bjoern <r10s@b44t.com>
2022-01-31 17:47:52 +01:00
adbenitez 1f7ae6852d Merge remote-tracking branch 'upstream/master' 2022-01-22 14:12:39 -05:00
Asiel Díaz Benítez eb25a5e78c add "developer mode" preference (#2196)
* add "developer mode" preference

* activate WebContentsDebugging also after restart

as the preference option is persisted,
we should call setWebContentsDebuggingEnabled() not only on flag changes.

* capitalize option name, shorter description

* prefer 'can' over 'may'; the latter is very formal

* add Prefs.isDeveloperModeEnabled()

Co-authored-by: B. Petersen <r10s@b44t.com>
2022-01-22 11:01:48 +01:00
adbenitez 170afbb74d Merge remote-tracking branch 'upstream/master' 2022-01-13 02:30:41 -05:00
Asiel Díaz Benítez 003ca291ac remove inbox_watch and mvbox_watch options from advanced settings (#2182)
* remove inbox_watch and mvbox_watch options from advanced settings

* don't show warning dialog when SENTBOX_WATCH is disabled
2022-01-09 17:49:39 +01:00
adbenitez 4b75149c8b allow to disable Subject 2021-11-11 23:30:56 -05:00
adbenitez 90e64b4e56 Merge remote-tracking branch 'upstream/master' 2021-10-13 15:37:01 -04:00
Hocuri d8913cf17e Adapt to new direct share api (#1852)
Fix #1777
2021-10-13 17:33:55 +02:00
adbenitez 2a269ffc3c enable broadcast feature by default 2021-10-03 02:29:19 -04:00
bjoern e71f5d9bba broadcasts android ui (#2060)
* add broadcasts ffi

* add 'broadcast' options to menu, chat, profile etc.

* generate initial broadcast names

* reword broadcast hint

* make 'Broadcasts Lists' experimental; while on that, also add a confirmation dialog to the location streaming switch (wording taken from ios)

* Update res/values/strings.xml

Co-authored-by: Hocuri <hocuri@gmx.de>

* comment on strings.xml

* tweak 'experimental' appearing, avoid the 'test tube'-emoji that is not supported on many devices

Co-authored-by: Hocuri <hocuri@gmx.de>
2021-09-30 15:44:17 +02:00
bjoern beb601bc06 do not download large messages automatically (#2045)
* add download-ffi methods

* add 'Download' button for incomplete messages

* show 'downloading' animation

* make download_limit configurable

* set button to 'disabled' and text to 'Downloading...' on downloading; color does not really reflect that yet, but that can probably be tweaked by xml

* make 'download message body' translatable
2021-09-13 23:07:49 +02:00
bjoern 7da9d1026f use translated string for 'Video chat instance' (#1978) 2021-07-19 14:55:57 +02:00
Hocuri b3fea81bed Implement a basic connectivity view
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
2021-07-08 22:50:22 +02:00
Hocuri 8c0fac43c4 Remove screenlock (#1942)
* Remove screen lock feature, move the two remaining "App access" options into "Advanced"

Locking the app was removed a long time ago, so in "App access" in the
settings, the only two remaining items were "Screen security" and
"Incognito keyboard".

* Remove the now-unused strings

* remove app-access-category from main settings screen

Co-authored-by: B. Petersen <r10s@b44t.com>
2021-06-02 11:21:47 +02:00
B. Petersen 5c034c6e59 add comments in duplicated files 2020-12-22 13:22:05 +01:00
B. Petersen e076ca45ba tune down usage of screen-lock
for various reasons,
screen-lock will be removed completely in one of the next versions.

- if screen-lock was enabled before, add a warning
  and keep the options (user can switch screen-lock on and off
  until it will be finally removed)

- if screen lock was disabled before,
  hide the corresponding options,
  (the user will not be able to enable screen-lock anymore)

reasons for removing are:

- hard maintainability on different android versions, see discussions at
  https://github.com/deltachat/deltachat-android/issues/1208 and
  https://github.com/deltachat/deltachat-android/pull/1279 and
  https://github.com/deltachat/deltachat-android/pull/1319 and offline.
  ftr, also the used api createConfirmDeviceCredentialIntent() is deprectated,
  so another set of api calls would be needed in the soon future.

- compared to the effort, few security is added,
  the function is only available if the system is protected anyway,
  one just have to repeat the system secret.

- might even worsen overall security - if app login secret is peeked,
  and attacker will also have the system secret.

- the functions stands in the way of moving forward to a
  cross-platform solution (however, not sure if this will really come)
2020-09-17 16:26:19 +02:00