mirror of
https://github.com/M66B/FairEmail.git
synced 2025-02-20 21:27:07 +00:00
Added mailto workaround
This commit is contained in:
parent
aaf0814fea
commit
b012071535
1 changed files with 15 additions and 0 deletions
|
@ -41,6 +41,7 @@ import androidx.preference.PreferenceManager;
|
|||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
|
||||
public class ActivityCompose extends ActivityBase implements FragmentManager.OnBackStackChangedListener {
|
||||
|
@ -102,6 +103,20 @@ public class ActivityCompose extends ActivityBase implements FragmentManager.OnB
|
|||
args = new Bundle();
|
||||
|
||||
Uri uri = intent.getData();
|
||||
|
||||
// Workaround mailto in email address
|
||||
if (uri == null && intent.hasExtra(Intent.EXTRA_EMAIL))
|
||||
try {
|
||||
String[] to = intent.getStringArrayExtra(Intent.EXTRA_EMAIL);
|
||||
if (to != null && to.length == 1 &&
|
||||
to[0] != null && to[0].startsWith("mailto:")) {
|
||||
uri = Uri.parse(to[0]);
|
||||
intent.removeExtra(Intent.EXTRA_EMAIL);
|
||||
}
|
||||
} catch (Throwable ex) {
|
||||
Log.w(ex);
|
||||
}
|
||||
|
||||
if (uri != null && "mailto".equalsIgnoreCase(uri.getScheme())) {
|
||||
// https://www.ietf.org/rfc/rfc2368.txt
|
||||
MailTo mailto = MailTo.parse(uri.toString());
|
||||
|
|
Loading…
Reference in a new issue