Show mailbox onboarding/download info

if the mailbox is not yet set up.
This commit is contained in:
Torsten Grote
2022-02-08 11:32:41 -03:00
parent 8b3dae6daf
commit e14773985d
17 changed files with 882 additions and 10 deletions

View File

@@ -477,6 +477,17 @@
android:value="org.briarproject.briar.android.conversation.ConversationActivity" />
</activity>
<activity
android:name=".android.mailbox.MailboxActivity"
android:exported="false"
android:label="@string/mailbox_settings_title"
android:parentActivityName="org.briarproject.briar.android.settings.SettingsActivity"
android:theme="@style/BriarTheme">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="org.briarproject.briar.android.settings.SettingsActivity" />
</activity>
</application>
<queries>

View File

@@ -46,6 +46,7 @@ import org.briarproject.briar.android.login.ChangePasswordActivity;
import org.briarproject.briar.android.login.OpenDatabaseFragment;
import org.briarproject.briar.android.login.PasswordFragment;
import org.briarproject.briar.android.login.StartupActivity;
import org.briarproject.briar.android.mailbox.MailboxActivity;
import org.briarproject.briar.android.navdrawer.NavDrawerActivity;
import org.briarproject.briar.android.navdrawer.TransportsActivity;
import org.briarproject.briar.android.panic.PanicPreferencesActivity;
@@ -250,4 +251,6 @@ public interface ActivityComponent {
void inject(RssFeedDeleteFeedDialogFragment fragment);
void inject(ConnectViaBluetoothActivity connectViaBluetoothActivity);
void inject(MailboxActivity mailboxActivity);
}

View File

@@ -0,0 +1,75 @@
package org.briarproject.briar.android.mailbox;
import android.os.Bundle;
import android.view.MenuItem;
import android.widget.ProgressBar;
import org.briarproject.bramble.api.nullsafety.MethodsNotNullByDefault;
import org.briarproject.bramble.api.nullsafety.ParametersNotNullByDefault;
import org.briarproject.briar.R;
import org.briarproject.briar.android.activity.ActivityComponent;
import org.briarproject.briar.android.activity.BriarActivity;
import javax.inject.Inject;
import androidx.annotation.Nullable;
import androidx.lifecycle.ViewModelProvider;
import static android.view.View.INVISIBLE;
import static android.view.View.VISIBLE;
@MethodsNotNullByDefault
@ParametersNotNullByDefault
public class MailboxActivity extends BriarActivity {
@Inject
ViewModelProvider.Factory viewModelFactory;
private MailboxViewModel viewModel;
private ProgressBar progressBar;
@Override
public void injectActivity(ActivityComponent component) {
component.inject(this);
viewModel = new ViewModelProvider(this, viewModelFactory)
.get(MailboxViewModel.class);
}
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_mailbox);
progressBar = findViewById(R.id.progressBar);
if (viewModel.getState().getValue() == null) {
progressBar.setVisibility(VISIBLE);
}
if (savedInstanceState == null) {
viewModel.getState().observe(this, state -> {
if (state instanceof MailboxState.NotSetup) {
onNotSetup();
}
});
}
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == android.R.id.home) {
onBackPressed();
return true;
}
return super.onOptionsItemSelected(item);
}
private void onNotSetup() {
progressBar.setVisibility(INVISIBLE);
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragmentContainer, new SetupIntroFragment(),
SetupIntroFragment.TAG)
.commit();
}
}

View File

@@ -12,8 +12,7 @@ public interface MailboxModule {
@Binds
@IntoMap
@ViewModelKey(MailboxPairViewModel.class)
ViewModel bindMailboxViewModel(
MailboxPairViewModel mailboxPairViewModel);
@ViewModelKey(MailboxViewModel.class)
ViewModel bindMailboxViewModel(MailboxViewModel mailboxViewModel);
}

View File

@@ -0,0 +1,10 @@
package org.briarproject.briar.android.mailbox;
class MailboxState {
static class NotSetup extends MailboxState {
}
// TODO add other states
}

View File

@@ -12,6 +12,7 @@ import org.briarproject.bramble.api.lifecycle.LifecycleManager;
import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
import org.briarproject.bramble.api.system.AndroidExecutor;
import org.briarproject.bramble.util.StringUtils;
import org.briarproject.briar.android.mailbox.MailboxState.NotSetup;
import org.briarproject.briar.android.qrcode.QrCodeDecoder;
import org.briarproject.briar.android.viewmodel.DbViewModel;
@@ -24,32 +25,35 @@ import javax.inject.Inject;
import androidx.annotation.Nullable;
import androidx.annotation.UiThread;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import static java.util.logging.Level.INFO;
import static java.util.logging.Logger.getLogger;
@UiThread
@NotNullByDefault
class MailboxPairViewModel extends DbViewModel
class MailboxViewModel extends DbViewModel
implements QrCodeDecoder.ResultCallback {
private static final Logger LOG =
getLogger(MailboxPairViewModel.class.getName());
private static final int VERSION_REQUIRED = 32;
private static final Logger LOG =
getLogger(MailboxViewModel.class.getName());
@SuppressWarnings("CharsetObjectCanBeUsed") // Requires minSdkVersion >= 19
private static final Charset ISO_8859_1 = Charset.forName("ISO-8859-1");
private static final int VERSION_REQUIRED = 32;
private final CryptoComponent crypto;
private final QrCodeDecoder qrCodeDecoder;
private final MutableLiveData<MailboxState> state = new MutableLiveData<>();
@Nullable
private String onionAddress = null;
@Nullable
private String setupToken = null;
@Inject
MailboxPairViewModel(
MailboxViewModel(
Application app,
@DatabaseExecutor Executor dbExecutor,
LifecycleManager lifecycleManager,
@@ -60,9 +64,29 @@ class MailboxPairViewModel extends DbViewModel
super(app, dbExecutor, lifecycleManager, db, androidExecutor);
this.crypto = crypto;
qrCodeDecoder = new QrCodeDecoder(androidExecutor, ioExecutor, this);
checkIfSetup();
}
@UiThread
private void checkIfSetup() {
runOnDbThread(() -> {
// TODO really check if mailbox is setup/paired/linked
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
state.postValue(new NotSetup());
});
}
@UiThread
LiveData<MailboxState> getState() {
return state;
}
@Override
@IoExecutor
public void onQrCodeDecoded(Result result) {
LOG.info("Got result from decoder");
byte[] bytes = result.getText().getBytes(ISO_8859_1);

View File

@@ -0,0 +1,76 @@
package org.briarproject.briar.android.mailbox;
import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toast;
import org.briarproject.bramble.api.nullsafety.MethodsNotNullByDefault;
import org.briarproject.bramble.api.nullsafety.ParametersNotNullByDefault;
import org.briarproject.briar.R;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import static android.content.Intent.ACTION_SEND;
import static android.content.Intent.EXTRA_TEXT;
import static android.widget.Toast.LENGTH_LONG;
@MethodsNotNullByDefault
@ParametersNotNullByDefault
public class SetupDownloadFragment extends Fragment {
static final String TAG = SetupDownloadFragment.class.getName();
@Nullable
@Override
public View onCreateView(LayoutInflater inflater,
@Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_mailbox_setup_download,
container, false);
Button shareLinkButton = v.findViewById(R.id.shareLinkButton);
Button scanButton = v.findViewById(R.id.scanButton);
shareLinkButton.setOnClickListener(this::shareLink);
scanButton.setOnClickListener(this::scanCode);
return v;
}
@Override
public void onStart() {
super.onStart();
requireActivity().setTitle(R.string.mailbox_setup_title);
}
private void shareLink(View v) {
Context ctx = requireContext();
String fdroid = ctx.getString(R.string.mailbox_share_fdroid);
String gplay = ctx.getString(R.string.mailbox_share_gplay);
String download = ctx.getString(R.string.mailbox_share_download);
String text = ctx.getString(R.string.mailbox_share_text, fdroid, gplay,
download);
Intent sendIntent = new Intent();
sendIntent.setAction(ACTION_SEND);
sendIntent.putExtra(EXTRA_TEXT, text);
sendIntent.setType("text/plain");
Intent shareIntent = Intent.createChooser(sendIntent, null);
try {
startActivity(shareIntent);
} catch (ActivityNotFoundException e) {
Toast.makeText(ctx, R.string.error_start_activity, LENGTH_LONG)
.show();
}
}
private void scanCode(View v) {
Toast.makeText(requireContext(), "TODO", LENGTH_LONG).show();
}
}

View File

@@ -0,0 +1,47 @@
package org.briarproject.briar.android.mailbox;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import org.briarproject.bramble.api.nullsafety.MethodsNotNullByDefault;
import org.briarproject.bramble.api.nullsafety.ParametersNotNullByDefault;
import org.briarproject.briar.R;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import static org.briarproject.briar.android.util.UiUtils.showFragment;
@MethodsNotNullByDefault
@ParametersNotNullByDefault
public class SetupIntroFragment extends Fragment {
static final String TAG = SetupIntroFragment.class.getName();
@Nullable
@Override
public View onCreateView(LayoutInflater inflater,
@Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_mailbox_setup_intro,
container, false);
Button button = v.findViewById(R.id.continueButton);
button.setOnClickListener(view -> {
FragmentManager fm = getParentFragmentManager();
Fragment f = new SetupDownloadFragment();
showFragment(fm, f, SetupDownloadFragment.TAG);
});
return v;
}
@Override
public void onStart() {
super.onStart();
requireActivity().setTitle(R.string.mailbox_setup_title);
}
}

View File

@@ -1,6 +1,7 @@
package org.briarproject.briar.android.settings;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
@@ -8,6 +9,7 @@ import android.view.View;
import org.briarproject.bramble.api.nullsafety.MethodsNotNullByDefault;
import org.briarproject.bramble.api.nullsafety.ParametersNotNullByDefault;
import org.briarproject.briar.R;
import org.briarproject.briar.android.mailbox.MailboxActivity;
import org.briarproject.briar.android.util.ActivityLaunchers.GetImageAdvanced;
import javax.inject.Inject;
@@ -74,7 +76,8 @@ public class SettingsFragment extends PreferenceFragmentCompat {
requireNonNull(findPreference(PREF_KEY_MAILBOX));
if (viewModel.shouldEnableMailbox()) {
prefMailbox.setOnPreferenceClickListener(preference -> {
// TODO show mailbox status/onboarding
Intent i = new Intent(requireContext(), MailboxActivity.class);
startActivity(i);
return true;
});
} else {

View File

@@ -0,0 +1,124 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="200dp"
android:height="160dp"
android:viewportWidth="250"
android:viewportHeight="200">
<path
android:fillColor="#15212D"
android:pathData="M95.436,100.233C95.436,93.523 100.876,88.084 107.585,88.084H130.365C137.074,88.084 142.514,93.523 142.514,100.233V123.012C142.514,129.722 137.074,135.161 130.365,135.161H107.585C100.876,135.161 95.436,129.722 95.436,123.012V100.233Z" />
<path
android:fillColor="#15212D"
android:pathData="M102.336,10.261C102.336,4.594 106.93,0 112.597,0H131.836C137.503,0 142.097,4.594 142.097,10.261V29.5C142.097,35.167 137.503,39.761 131.836,39.761H112.597C106.93,39.761 102.336,35.167 102.336,29.5V10.261Z" />
<path
android:fillColor="#15212D"
android:pathData="M34.818,148.09C34.818,143.427 38.599,139.646 43.262,139.646H59.093C63.757,139.646 67.537,143.427 67.537,148.09V163.921C67.537,168.585 63.757,172.365 59.093,172.365H43.262C38.599,172.365 34.818,168.585 34.818,163.921V148.09Z" />
<path
android:fillColor="#15212D"
android:pathData="M110.024,186.044C110.024,183.557 112.04,181.541 114.527,181.541H122.971C125.458,181.541 127.475,183.557 127.475,186.044V194.488C127.475,196.976 125.458,198.992 122.971,198.992H114.527C112.04,198.992 110.024,196.976 110.024,194.488V186.044Z" />
<path
android:fillColor="#15212D"
android:pathData="M173.713,141.6C173.713,134.89 179.152,129.451 185.862,129.451H208.641C215.351,129.451 220.79,134.89 220.79,141.6V164.38C220.79,171.089 215.351,176.528 208.641,176.528H185.862C179.152,176.528 173.713,171.089 173.713,164.38V141.6Z" />
<path
android:fillColor="#15212D"
android:pathData="M232.049,95.416C232.049,92.928 234.065,90.912 236.553,90.912H244.997C247.484,90.912 249.5,92.928 249.5,95.416V103.86C249.5,106.347 247.484,108.363 244.997,108.363H236.553C234.065,108.363 232.049,106.347 232.049,103.86V95.416Z" />
<path
android:fillColor="#657D99"
android:fillType="evenOdd"
android:pathData="M120.481,84.227V45.268H122.481V84.227H120.481Z" />
<path
android:fillColor="#657D99"
android:fillType="evenOdd"
android:pathData="M117.685,176.101L117.685,139.646H119.685L119.685,176.101H117.685Z" />
<path
android:fillColor="#657D99"
android:fillType="evenOdd"
android:pathData="M3.28,108.445L4.046,106.598C4.338,106.719 4.66,106.787 5.003,106.787H7.114V108.787H5.003C4.393,108.787 3.811,108.665 3.28,108.445ZM11.336,108.787V106.787H13.447C13.79,106.787 14.113,106.719 14.405,106.598L15.171,108.445C14.64,108.665 14.058,108.787 13.447,108.787H11.336ZM17.951,97.95H15.951V95.839C15.951,95.496 15.883,95.174 15.762,94.882L17.609,94.116C17.829,94.646 17.951,95.229 17.951,95.839V97.95ZM7.114,91.336H5.003C4.393,91.336 3.811,91.457 3.28,91.678L4.046,93.525C4.338,93.404 4.66,93.336 5.003,93.336H7.114V91.336ZM0.5,102.172H2.5V104.283C2.5,104.626 2.568,104.949 2.689,105.241L0.842,106.007C0.622,105.476 0.5,104.894 0.5,104.283V102.172ZM0.5,97.95H2.5V95.839C2.5,95.496 2.568,95.174 2.689,94.882L0.842,94.116C0.622,94.646 0.5,95.229 0.5,95.839V97.95ZM11.336,91.336V93.336H13.447C13.79,93.336 14.113,93.404 14.405,93.525L15.171,91.678C14.64,91.457 14.058,91.336 13.447,91.336H11.336ZM17.951,102.172H15.951V104.283C15.951,104.626 15.883,104.949 15.762,105.241L17.609,106.007C17.829,105.476 17.951,104.894 17.951,104.283V102.172Z" />
<path
android:fillColor="#74B816"
android:fillType="evenOdd"
android:pathData="M41.177,64.517V62.648H43.177V64.517H41.177ZM41.177,71.991V68.254H43.177V71.991H41.177ZM41.177,79.465V75.728H43.177V79.465H41.177ZM41.177,86.938V83.202H43.177V86.938H41.177ZM41.177,94.412V90.675H43.177V94.412H41.177ZM41.177,99.018V98.149H43.177V99.018H44.91V101.018H39.681V99.018H41.177ZM24.705,101.018H22.209V99.018H24.705V101.018ZM34.689,101.018H29.697V99.018H34.689V101.018ZM52.107,101.018H50.374V99.018H54.854V101.018H54.107V102.148H52.107V101.018ZM61.844,101.018H58.349V99.018H61.844V101.018ZM67.087,101.018H65.339V99.018H67.087C68.048,99.018 68.966,99.209 69.805,99.557L69.039,101.404C68.439,101.156 67.78,101.018 67.087,101.018ZM72.187,106.118C72.187,105.425 72.049,104.766 71.8,104.166L73.648,103.4C73.995,104.239 74.187,105.157 74.187,106.118C74.187,106.812 74.325,107.47 74.574,108.07L72.726,108.836C72.378,107.998 72.187,107.079 72.187,106.118ZM52.107,110.668V106.408H54.107V110.668H52.107ZM79.287,113.218C78.326,113.218 77.408,113.027 76.569,112.679L77.335,110.832C77.935,111.081 78.594,111.218 79.287,111.218H81.59V113.218H79.287ZM88.5,113.218H86.197V111.218H88.5V113.218ZM52.107,119.188V114.928H54.107V119.188H52.107ZM52.107,127.709V123.449H54.107V127.709H52.107ZM52.107,134.099V131.969H54.107V134.099H52.107Z" />
<path
android:fillColor="#74B816"
android:fillType="evenOdd"
android:pathData="M105.214,134.93L105.602,132.968C106.242,133.095 106.905,133.161 107.585,133.161H109.484V135.161H107.585C106.774,135.161 105.981,135.082 105.214,134.93ZM128.466,135.161V133.161H130.365C131.045,133.161 131.708,133.095 132.347,132.968L132.736,134.93C131.969,135.082 131.176,135.161 130.365,135.161H128.466ZM137.115,133.115L136.002,131.453C137.11,130.712 138.064,129.757 138.805,128.65L140.467,129.762C139.58,131.087 138.44,132.228 137.115,133.115ZM142.514,102.131H140.514V100.233C140.514,99.553 140.447,98.89 140.32,98.25L142.282,97.862C142.434,98.629 142.514,99.422 142.514,100.233V102.131ZM140.467,93.483L138.805,94.595C138.064,93.488 137.11,92.534 136.002,91.792L137.115,90.13C138.44,91.017 139.58,92.158 140.467,93.483ZM109.484,88.084H107.585C106.774,88.084 105.981,88.163 105.214,88.315L105.602,90.277C106.242,90.151 106.905,90.084 107.585,90.084H109.484V88.084ZM100.835,90.13L101.948,91.792C100.84,92.534 99.886,93.488 99.145,94.595L97.483,93.483C98.37,92.158 99.51,91.017 100.835,90.13ZM95.436,121.114H97.436V123.012C97.436,123.693 97.503,124.355 97.63,124.995L95.668,125.383C95.516,124.616 95.436,123.824 95.436,123.012V121.114ZM97.483,129.762L99.145,128.65C99.886,129.757 100.84,130.712 101.948,131.453L100.835,133.115C99.51,132.228 98.37,131.087 97.483,129.762ZM95.436,117.317H97.436V113.521H95.436V117.317ZM95.436,109.724H97.436V105.928H95.436V109.724ZM95.436,102.131H97.436V100.233C97.436,99.553 97.503,98.89 97.63,98.25L95.668,97.862C95.516,98.629 95.436,99.422 95.436,100.233V102.131ZM113.28,88.084V90.084H117.077V88.084H113.28ZM120.873,88.084V90.084H124.67V88.084H120.873ZM128.466,88.084V90.084H130.365C131.045,90.084 131.708,90.151 132.347,90.277L132.736,88.315C131.969,88.163 131.176,88.084 130.365,88.084H128.466ZM142.514,105.928H140.514V109.724H142.514V105.928ZM142.514,113.521H140.514V117.317H142.514V113.521ZM142.514,121.114H140.514V123.012C140.514,123.693 140.447,124.355 140.32,124.995L142.282,125.383C142.434,124.616 142.514,123.824 142.514,123.012V121.114ZM124.67,135.161V133.161H120.873V135.161H124.67ZM117.077,135.161V133.161H113.28V135.161H117.077Z" />
<path
android:fillColor="#74B816"
android:fillType="evenOdd"
android:pathData="M188.618,86.539V84.674H190.618V86.539H188.618ZM188.618,93.999V90.269H190.618V93.999H188.618ZM188.618,97.729H190.618V98.594H191.517V100.594H190.618V101.183H188.618V97.729ZM199.112,100.594H195.315V98.594H199.112V100.594ZM206.707,100.594H202.91V98.594H206.707V100.594ZM214.303,100.594H210.505V98.594H214.303V100.594ZM221.898,100.594H218.1V98.594H221.898V100.594ZM227.595,100.594H225.696V98.594H227.595V100.594ZM188.618,107.537V104.36H190.618V107.537H188.618ZM188.618,111.303V110.715H190.618V111.359C190.865,111.387 191.109,111.425 191.35,111.472L190.962,113.434C190.528,113.349 190.079,113.303 189.618,113.303H187.737V111.303H188.618ZM153.881,113.303H152V111.303H153.881V113.303ZM161.405,113.303H157.643V111.303H161.405V113.303ZM168.928,113.303H165.166V111.303H168.928V113.303ZM176.452,113.303H172.69V111.303H176.452V113.303ZM183.975,113.303H180.214V111.303H183.975V113.303ZM195.34,116.361C194.837,115.611 194.19,114.964 193.44,114.462L194.552,112.8C195.52,113.448 196.353,114.281 197.001,115.249L195.34,116.361ZM196.498,120.183C196.498,119.722 196.453,119.273 196.367,118.839L198.329,118.451C198.44,119.012 198.498,119.591 198.498,120.183V121.203H196.498V120.183ZM196.498,124.261V123.242H198.498V124.261H196.498Z" />
<path
android:fillColor="#74B816"
android:fillType="evenOdd"
android:pathData="M183.491,176.297L183.879,174.335C184.519,174.462 185.182,174.528 185.862,174.528H187.76V176.528H185.862C185.051,176.528 184.258,176.449 183.491,176.297ZM206.743,176.528V174.528H208.641C209.322,174.528 209.985,174.462 210.624,174.335L211.012,176.297C210.246,176.449 209.453,176.528 208.641,176.528H206.743ZM215.392,174.482L214.279,172.82C215.387,172.079 216.341,171.125 217.082,170.017L218.744,171.13C217.857,172.455 216.717,173.595 215.392,174.482ZM220.79,143.498H218.79V141.6C218.79,140.92 218.724,140.257 218.597,139.617L220.559,139.229C220.711,139.996 220.79,140.789 220.79,141.6V143.498ZM218.744,134.85L217.082,135.963C216.341,134.855 215.387,133.901 214.279,133.159L215.392,131.497C216.717,132.384 217.857,133.525 218.744,134.85ZM187.76,129.451H185.862C185.051,129.451 184.258,129.531 183.491,129.682L183.879,131.644C184.519,131.518 185.182,131.451 185.862,131.451H187.76V129.451ZM179.112,131.497L180.225,133.159C179.117,133.901 178.163,134.855 177.421,135.963L175.759,134.85C176.646,133.525 177.787,132.384 179.112,131.497ZM173.713,162.481H175.713V164.38C175.713,165.06 175.78,165.723 175.906,166.362L173.944,166.751C173.793,165.984 173.713,165.191 173.713,164.38V162.481ZM175.759,171.13L177.421,170.017C178.163,171.125 179.117,172.079 180.225,172.82L179.112,174.482C177.787,173.595 176.646,172.455 175.759,171.13ZM173.713,158.685H175.713V154.888H173.713V158.685ZM173.713,151.092H175.713V147.295H173.713V151.092ZM173.713,143.498H175.713V141.6C175.713,140.92 175.78,140.257 175.906,139.617L173.944,139.229C173.793,139.996 173.713,140.789 173.713,141.6V143.498ZM191.557,129.451V131.451H195.354V129.451H191.557ZM199.15,129.451V131.451H202.947V129.451H199.15ZM206.743,129.451V131.451H208.641C209.322,131.451 209.985,131.518 210.624,131.644L211.012,129.682C210.246,129.531 209.453,129.451 208.641,129.451H206.743ZM220.79,147.295H218.79V151.092H220.79V147.295ZM220.79,154.888H218.79V158.685H220.79V154.888ZM220.79,162.481H218.79V164.38C218.79,165.06 218.724,165.723 218.597,166.362L220.559,166.751C220.711,165.984 220.79,165.191 220.79,164.38V162.481ZM202.947,176.528V174.528H199.15V176.528H202.947ZM195.354,176.528V174.528H191.557V176.528H195.354Z" />
<path
android:fillColor="#435B77"
android:fillType="evenOdd"
android:pathData="M110.594,39.566L110.982,37.604C111.503,37.707 112.042,37.761 112.597,37.761H115.001V39.761H112.597C111.911,39.761 111.242,39.694 110.594,39.566ZM129.431,39.761V37.761H131.836C132.39,37.761 132.93,37.707 133.45,37.604L133.838,39.566C133.191,39.694 132.521,39.761 131.836,39.761H129.431ZM137.537,38.033L136.424,36.371C137.326,35.767 138.103,34.99 138.706,34.089L140.368,35.201C139.619,36.32 138.656,37.284 137.537,38.033ZM142.097,12.666H140.097V10.261C140.097,9.707 140.042,9.167 139.939,8.646L141.901,8.258C142.029,8.906 142.097,9.576 142.097,10.261V12.666ZM140.368,4.56L138.706,5.672C138.103,4.771 137.326,3.994 136.424,3.39L137.537,1.728C138.656,2.477 139.619,3.441 140.368,4.56ZM115.001,0H112.597C111.911,0 111.242,0.067 110.594,0.195L110.982,2.157C111.503,2.054 112.042,2 112.597,2H115.001V0ZM106.895,1.728L108.008,3.39C107.106,3.994 106.33,4.771 105.726,5.672L104.064,4.56C104.813,3.441 105.777,2.477 106.895,1.728ZM102.336,27.095H104.336V29.5C104.336,30.054 104.39,30.594 104.493,31.114L102.531,31.503C102.403,30.855 102.336,30.185 102.336,29.5V27.095ZM104.064,35.201L105.726,34.089C106.33,34.99 107.106,35.767 108.008,36.371L106.895,38.033C105.777,37.284 104.813,36.32 104.064,35.201ZM102.336,22.285H104.336V17.476H102.336V22.285ZM102.336,12.666H104.336V10.261C104.336,9.707 104.39,9.167 104.493,8.646L102.531,8.258C102.403,8.906 102.336,9.576 102.336,10.261V12.666ZM119.811,0V2H124.621V0H119.811ZM129.431,0V2H131.836C132.39,2 132.93,2.054 133.45,2.157L133.838,0.195C133.191,0.067 132.521,0 131.836,0H129.431ZM142.097,17.476H140.097V22.285H142.097V17.476ZM142.097,27.095H140.097V29.5C140.097,30.054 140.042,30.594 139.939,31.114L141.901,31.503C142.029,30.855 142.097,30.185 142.097,29.5V27.095ZM124.621,39.761V37.761H119.811V39.761H124.621Z" />
<path
android:fillColor="#435B77"
android:fillType="evenOdd"
android:pathData="M40.03,171.724L40.796,169.877C41.553,170.191 42.384,170.365 43.262,170.365H45.241V172.365H43.262C42.117,172.365 41.025,172.137 40.03,171.724ZM57.114,172.365V170.365H59.093C59.971,170.365 60.802,170.191 61.559,169.877L62.325,171.724C61.33,172.137 60.238,172.365 59.093,172.365H57.114ZM67.537,150.069H65.537V148.09C65.537,147.213 65.363,146.381 65.049,145.624L66.896,144.858C67.309,145.853 67.537,146.945 67.537,148.09V150.069ZM45.241,139.646H43.262C42.117,139.646 41.025,139.874 40.03,140.287L40.796,142.135C41.553,141.821 42.384,141.646 43.262,141.646H45.241V139.646ZM34.818,161.943H36.818V163.921C36.818,164.799 36.993,165.63 37.306,166.387L35.459,167.153C35.046,166.158 34.818,165.066 34.818,163.921V161.943ZM34.818,157.985H36.818V154.027H34.818V157.985ZM34.818,150.069H36.818V148.09C36.818,147.213 36.993,146.381 37.306,145.624L35.459,144.858C35.046,145.853 34.818,146.945 34.818,148.09V150.069ZM49.199,139.646V141.646H53.157V139.646H49.199ZM57.114,139.646V141.646H59.093C59.971,141.646 60.802,141.821 61.559,142.135L62.325,140.287C61.33,139.874 60.238,139.646 59.093,139.646H57.114ZM67.537,154.027H65.537V157.985H67.537V154.027ZM67.537,161.943H65.537V163.921C65.537,164.799 65.363,165.63 65.049,166.387L66.896,167.154C67.309,166.158 67.537,165.066 67.537,163.921V161.943ZM53.157,172.365V170.365H49.199V172.365H53.157Z" />
<path
android:fillColor="#435B77"
android:fillType="evenOdd"
android:pathData="M112.803,198.65L113.569,196.803C113.862,196.924 114.184,196.992 114.527,196.992H116.638V198.992H114.527C113.917,198.992 113.334,198.87 112.803,198.65ZM120.86,198.992V196.992H122.971C123.314,196.992 123.636,196.924 123.929,196.803L124.695,198.65C124.164,198.87 123.582,198.992 122.971,198.992H120.86ZM127.475,188.155H125.475V186.044C125.475,185.701 125.407,185.379 125.285,185.087L127.133,184.321C127.353,184.852 127.475,185.434 127.475,186.044V188.155ZM116.638,181.541H114.527C113.917,181.541 113.334,181.663 112.803,181.883L113.569,183.73C113.862,183.609 114.184,183.541 114.527,183.541H116.638V181.541ZM110.024,192.377H112.024V194.488C112.024,194.832 112.092,195.154 112.213,195.446L110.365,196.212C110.145,195.681 110.024,195.099 110.024,194.488V192.377ZM110.024,188.155H112.024V186.044C112.024,185.701 112.092,185.379 112.213,185.087L110.365,184.321C110.145,184.852 110.024,185.434 110.024,186.044V188.155ZM120.86,181.541V183.541H122.971C123.314,183.541 123.636,183.609 123.929,183.73L124.695,181.883C124.164,181.663 123.582,181.541 122.971,181.541H120.86ZM127.475,192.377H125.475V194.488C125.475,194.832 125.407,195.154 125.285,195.446L127.133,196.212C127.353,195.681 127.475,195.099 127.475,194.488V192.377Z" />
<path
android:fillColor="#657D99"
android:fillType="evenOdd"
android:pathData="M178.996,79.823L179.762,77.976C180.48,78.274 181.269,78.439 182.101,78.439H184.003V80.439H182.101C181.001,80.439 179.952,80.22 178.996,79.823ZM195.412,80.439V78.439H197.314C198.146,78.439 198.935,78.274 199.653,77.976L200.419,79.823C199.463,80.22 198.414,80.439 197.314,80.439H195.412ZM205.427,59.015H203.427V57.113C203.427,56.281 203.262,55.492 202.964,54.774L204.811,54.008C205.208,54.964 205.427,56.013 205.427,57.113V59.015ZM184.003,49H182.101C181.001,49 179.952,49.219 178.996,49.616L179.762,51.463C180.48,51.165 181.269,51 182.101,51H184.003V49ZM173.988,70.424H175.988V72.326C175.988,73.158 176.153,73.947 176.451,74.665L174.604,75.432C174.207,74.475 173.988,73.426 173.988,72.326V70.424ZM173.988,66.621H175.988V62.818H173.988V66.621ZM173.988,59.015H175.988V57.113C175.988,56.281 176.153,55.492 176.451,54.774L174.604,54.008C174.207,54.964 173.988,56.013 173.988,57.113V59.015ZM187.806,49V51H191.609V49H187.806ZM195.412,49V51H197.314C198.146,51 198.935,51.165 199.653,51.463L200.419,49.616C199.463,49.219 198.414,49 197.314,49H195.412ZM205.427,62.818H203.427V66.621H205.427V62.818ZM205.427,70.424H203.427V72.326C203.427,73.158 203.262,73.947 202.964,74.665L204.811,75.432C205.208,74.475 205.427,73.426 205.427,72.326V70.424ZM191.609,80.439V78.439H187.806V80.439H191.609Z" />
<path
android:fillColor="#435B77"
android:fillType="evenOdd"
android:pathData="M234.829,108.021L235.595,106.174C235.887,106.295 236.209,106.363 236.553,106.363H238.664V108.363H236.553C235.942,108.363 235.36,108.241 234.829,108.021ZM242.886,108.363V106.363H244.997C245.34,106.363 245.662,106.295 245.954,106.174L246.72,108.021C246.189,108.241 245.607,108.363 244.997,108.363H242.886ZM249.5,97.526H247.5V95.416C247.5,95.072 247.432,94.75 247.311,94.458L249.158,93.692C249.378,94.223 249.5,94.805 249.5,95.416V97.526ZM238.664,90.912H236.553C235.942,90.912 235.36,91.034 234.829,91.254L235.595,93.101C235.887,92.98 236.209,92.912 236.553,92.912H238.664V90.912ZM232.049,101.749H234.049V103.86C234.049,104.203 234.117,104.525 234.238,104.817L232.391,105.583C232.171,105.052 232.049,104.47 232.049,103.86V101.749ZM232.049,97.526H234.049V95.416C234.049,95.072 234.117,94.75 234.238,94.458L232.391,93.692C232.171,94.223 232.049,94.805 232.049,95.416V97.526ZM242.886,90.912V92.912H244.997C245.34,92.912 245.662,92.98 245.954,93.101L246.72,91.254C246.189,91.034 245.607,90.912 244.997,90.912H242.886ZM249.5,101.749H247.5V103.86C247.5,104.203 247.432,104.525 247.311,104.817L249.158,105.583C249.378,105.052 249.5,104.47 249.5,103.86V101.749Z" />
<path
android:fillColor="#82C91E"
android:pathData="M29.825,34.377V53.66C29.825,55.226 31.1,56.517 32.682,56.517H34.021C35.586,56.517 36.877,55.226 36.877,53.66V34.377H29.825Z" />
<path
android:fillColor="#82C91E"
android:pathData="M36.861,25.083V21.452C36.861,19.887 35.586,18.596 34.021,18.596H32.682C31.116,18.596 29.825,19.887 29.825,21.452V25.083H36.861Z" />
<path
android:fillColor="#82C91E"
android:pathData="M52.514,40.735V21.452C52.514,19.887 51.239,18.596 49.674,18.596H48.334C46.769,18.596 45.478,19.887 45.478,21.452V40.735H52.514Z" />
<path
android:fillColor="#82C91E"
android:pathData="M45.478,50.029V53.66C45.478,55.225 46.769,56.516 48.334,56.516H49.674C51.239,56.516 52.53,55.225 52.53,53.66V50.029H45.478Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M28.696,41.865H25.065C23.5,41.865 22.209,43.14 22.209,44.721V46.061C22.209,47.626 23.484,48.917 25.065,48.917H28.696V41.865Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M57.274,41.865H37.99V48.917H57.274C58.839,48.917 60.13,47.626 60.13,46.061V44.721C60.13,43.14 58.839,41.865 57.274,41.865Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M44.348,26.213H25.065C23.5,26.213 22.209,27.488 22.209,29.069V30.408C22.209,31.974 23.484,33.265 25.065,33.265H44.348V26.213Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M57.274,26.213H53.643V33.265H57.274C58.839,33.265 60.13,31.99 60.13,30.408V29.069C60.13,27.488 58.839,26.213 57.274,26.213Z" />
<path
android:fillColor="#95DE2D"
android:fillType="evenOdd"
android:pathData="M108.864,99.496H129.086C129.852,99.496 130.587,99.801 131.129,100.343C131.671,100.886 131.975,101.622 131.975,102.39L131.975,127.191C131.975,128.296 130.688,128.899 129.841,128.191L124.6,123.804H108.864C108.098,123.804 107.363,123.499 106.821,122.956C106.279,122.413 105.975,121.677 105.975,120.91V102.39C105.975,101.622 106.279,100.886 106.821,100.343C107.363,99.801 108.098,99.496 108.864,99.496ZM116.549,112.318H110.597V104.126H127.353V112.318H121.499V115.152H123.64C124.026,115.152 124.22,115.619 123.947,115.893L119.331,120.517C119.161,120.686 118.887,120.686 118.718,120.517L114.102,115.893C113.829,115.619 114.022,115.152 114.408,115.152H116.549V112.318Z" />
<path
android:fillColor="#82C91E"
android:pathData="M190.408,151.152V162.299C190.408,163.204 191.145,163.95 192.059,163.95H192.833C193.738,163.95 194.484,163.204 194.484,162.299V151.152H190.408Z" />
<path
android:fillColor="#82C91E"
android:pathData="M194.475,145.779V143.68C194.475,142.775 193.738,142.029 192.833,142.029H192.059C191.154,142.029 190.408,142.775 190.408,143.68V145.779H194.475Z" />
<path
android:fillColor="#82C91E"
android:pathData="M203.523,154.827V143.68C203.523,142.775 202.786,142.029 201.881,142.029H201.107C200.202,142.029 199.456,142.775 199.456,143.68V154.827H203.523Z" />
<path
android:fillColor="#82C91E"
android:pathData="M199.456,160.201V162.3C199.456,163.204 200.202,163.951 201.107,163.951H201.881C202.786,163.951 203.533,163.204 203.533,162.3V160.201H199.456Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M189.755,155.48H187.656C186.751,155.48 186.005,156.217 186.005,157.131V157.905C186.005,158.81 186.742,159.556 187.656,159.556H189.755V155.48Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M206.275,155.48H195.128V159.556H206.275C207.18,159.556 207.926,158.81 207.926,157.905V157.131C207.926,156.217 207.18,155.48 206.275,155.48Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M198.803,146.433H187.656C186.751,146.433 186.005,147.17 186.005,148.084V148.859C186.005,149.763 186.742,150.51 187.656,150.51H198.803V146.433Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M206.275,146.433H204.176V150.51H206.275C207.18,150.51 207.926,149.773 207.926,148.859V148.084C207.926,147.17 207.18,146.433 206.275,146.433Z" />
</vector>

View File

@@ -0,0 +1,124 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="200dp"
android:height="160dp"
android:viewportWidth="250"
android:viewportHeight="200">
<path
android:fillColor="#F6FAFE"
android:pathData="M95.436,100.737C95.436,94.027 100.876,88.588 107.585,88.588H130.365C137.074,88.588 142.514,94.027 142.514,100.737V123.516C142.514,130.226 137.074,135.665 130.365,135.665H107.585C100.876,135.665 95.436,130.226 95.436,123.516V100.737Z" />
<path
android:fillColor="#F6FAFE"
android:pathData="M102.336,10.765C102.336,5.098 106.93,0.504 112.597,0.504H131.836C137.503,0.504 142.097,5.098 142.097,10.765V30.004C142.097,35.671 137.503,40.265 131.836,40.265H112.597C106.93,40.265 102.336,35.671 102.336,30.004V10.765Z" />
<path
android:fillColor="#F6FAFE"
android:pathData="M34.818,148.594C34.818,143.931 38.599,140.151 43.262,140.151H59.093C63.757,140.151 67.537,143.931 67.537,148.594V164.426C67.537,169.089 63.757,172.869 59.093,172.869H43.262C38.599,172.869 34.818,169.089 34.818,164.426V148.594Z" />
<path
android:fillColor="#F6FAFE"
android:pathData="M110.024,186.549C110.024,184.061 112.04,182.045 114.527,182.045H122.971C125.458,182.045 127.475,184.061 127.475,186.549V194.992C127.475,197.48 125.458,199.496 122.971,199.496H114.527C112.04,199.496 110.024,197.48 110.024,194.992V186.549Z" />
<path
android:fillColor="#F6FAFE"
android:pathData="M173.713,142.104C173.713,135.395 179.152,129.955 185.862,129.955H208.641C215.351,129.955 220.79,135.395 220.79,142.104V164.884C220.79,171.593 215.351,177.033 208.641,177.033H185.862C179.152,177.033 173.713,171.593 173.713,164.884V142.104Z" />
<path
android:fillColor="#F6FAFE"
android:pathData="M232.049,95.92C232.049,93.432 234.065,91.416 236.553,91.416H244.997C247.484,91.416 249.5,93.432 249.5,95.92V104.364C249.5,106.851 247.484,108.867 244.997,108.867H236.553C234.065,108.867 232.049,106.851 232.049,104.364V95.92Z" />
<path
android:fillColor="#657D99"
android:fillType="evenOdd"
android:pathData="M120.481,84.731V45.772H122.481V84.731H120.481Z" />
<path
android:fillColor="#657D99"
android:fillType="evenOdd"
android:pathData="M117.685,176.605L117.685,140.151H119.685L119.685,176.605H117.685Z" />
<path
android:fillColor="#657D99"
android:fillType="evenOdd"
android:pathData="M3.28,108.949L4.046,107.102C4.338,107.223 4.66,107.291 5.003,107.291H7.114V109.291H5.003C4.393,109.291 3.811,109.169 3.28,108.949ZM11.336,109.291V107.291H13.447C13.79,107.291 14.113,107.223 14.405,107.102L15.171,108.949C14.64,109.169 14.058,109.291 13.447,109.291H11.336ZM17.951,98.454H15.951V96.343C15.951,96 15.883,95.678 15.762,95.386L17.609,94.62C17.829,95.151 17.951,95.733 17.951,96.343V98.454ZM7.114,91.84H5.003C4.393,91.84 3.811,91.962 3.28,92.182L4.046,94.029C4.338,93.908 4.66,93.84 5.003,93.84H7.114V91.84ZM0.5,102.676H2.5V104.787C2.5,105.131 2.568,105.453 2.689,105.745L0.842,106.511C0.622,105.98 0.5,105.398 0.5,104.787V102.676ZM0.5,98.454H2.5V96.343C2.5,96 2.568,95.678 2.689,95.386L0.842,94.62C0.622,95.151 0.5,95.733 0.5,96.343V98.454ZM11.336,91.84V93.84H13.447C13.79,93.84 14.113,93.908 14.405,94.029L15.171,92.182C14.64,91.962 14.058,91.84 13.447,91.84H11.336ZM17.951,102.676H15.951V104.787C15.951,105.131 15.883,105.453 15.762,105.745L17.609,106.511C17.829,105.98 17.951,105.398 17.951,104.787V102.676Z" />
<path
android:fillColor="#74B816"
android:fillType="evenOdd"
android:pathData="M41.177,65.021V63.153H43.177V65.021H41.177ZM41.177,72.495V68.758H43.177V72.495H41.177ZM41.177,79.969V76.232H43.177V79.969H41.177ZM41.177,87.443V83.706H43.177V87.443H41.177ZM41.177,94.916V91.179H43.177V94.916H41.177ZM41.177,99.522V98.653H43.177V99.522H44.91V101.522H39.681V99.522H41.177ZM24.705,101.522H22.209V99.522H24.705V101.522ZM34.689,101.522H29.697V99.522H34.689V101.522ZM52.107,101.522H50.374V99.522H54.854V101.522H54.107V102.652H52.107V101.522ZM61.844,101.522H58.349V99.522H61.844V101.522ZM67.087,101.522H65.339V99.522H67.087C68.048,99.522 68.966,99.713 69.805,100.061L69.039,101.908C68.439,101.66 67.78,101.522 67.087,101.522ZM72.187,106.622C72.187,105.929 72.049,105.27 71.8,104.67L73.648,103.904C73.995,104.743 74.187,105.661 74.187,106.622C74.187,107.316 74.325,107.974 74.574,108.574L72.726,109.34C72.378,108.502 72.187,107.583 72.187,106.622ZM52.107,111.172V106.912H54.107V111.172H52.107ZM79.287,113.722C78.326,113.722 77.408,113.531 76.569,113.183L77.335,111.336C77.935,111.585 78.594,111.722 79.287,111.722H81.59V113.722H79.287ZM88.5,113.722H86.197V111.722H88.5V113.722ZM52.107,119.692V115.432H54.107V119.692H52.107ZM52.107,128.213V123.953H54.107V128.213H52.107ZM52.107,134.603V132.473H54.107V134.603H52.107Z" />
<path
android:fillColor="#74B816"
android:fillType="evenOdd"
android:pathData="M105.214,135.434L105.602,133.472C106.242,133.599 106.905,133.665 107.585,133.665H109.484V135.665H107.585C106.774,135.665 105.981,135.586 105.214,135.434ZM128.466,135.665V133.665H130.365C131.045,133.665 131.708,133.599 132.347,133.472L132.736,135.434C131.969,135.586 131.176,135.665 130.365,135.665H128.466ZM137.115,133.619L136.002,131.957C137.11,131.216 138.064,130.262 138.805,129.154L140.467,130.267C139.58,131.591 138.44,132.732 137.115,133.619ZM142.514,102.635H140.514V100.737C140.514,100.057 140.447,99.394 140.32,98.754L142.282,98.366C142.434,99.133 142.514,99.926 142.514,100.737V102.635ZM140.467,93.987L138.805,95.1C138.064,93.992 137.11,93.038 136.002,92.296L137.115,90.634C138.44,91.521 139.58,92.662 140.467,93.987ZM109.484,88.588H107.585C106.774,88.588 105.981,88.668 105.214,88.819L105.602,90.781C106.242,90.655 106.905,90.588 107.585,90.588H109.484V88.588ZM100.835,90.634L101.948,92.296C100.84,93.038 99.886,93.992 99.145,95.1L97.483,93.987C98.37,92.662 99.51,91.521 100.835,90.634ZM95.436,121.618H97.436V123.516C97.436,124.197 97.503,124.86 97.63,125.499L95.668,125.887C95.516,125.121 95.436,124.328 95.436,123.516V121.618ZM97.483,130.267L99.145,129.154C99.886,130.262 100.84,131.216 101.948,131.957L100.835,133.619C99.51,132.732 98.37,131.591 97.483,130.267ZM95.436,117.822H97.436V114.025H95.436V117.822ZM95.436,110.228H97.436V106.432H95.436V110.228ZM95.436,102.635H97.436V100.737C97.436,100.057 97.503,99.394 97.63,98.754L95.668,98.366C95.516,99.133 95.436,99.926 95.436,100.737V102.635ZM113.28,88.588V90.588H117.077V88.588H113.28ZM120.873,88.588V90.588H124.67V88.588H120.873ZM128.466,88.588V90.588H130.365C131.045,90.588 131.708,90.655 132.347,90.781L132.736,88.819C131.969,88.668 131.176,88.588 130.365,88.588H128.466ZM142.514,106.432H140.514V110.228H142.514V106.432ZM142.514,114.025H140.514V117.822H142.514V114.025ZM142.514,121.618H140.514V123.516C140.514,124.197 140.447,124.86 140.32,125.499L142.282,125.887C142.434,125.121 142.514,124.328 142.514,123.516V121.618ZM124.67,135.665V133.665H120.873V135.665H124.67ZM117.077,135.665V133.665H113.28V135.665H117.077Z" />
<path
android:fillColor="#74B816"
android:fillType="evenOdd"
android:pathData="M188.618,87.043V85.178H190.618V87.043H188.618ZM188.618,94.503V90.773H190.618V94.503H188.618ZM188.618,98.233H190.618V99.098H191.517V101.098H190.618V101.687H188.618V98.233ZM199.112,101.098H195.315V99.098H199.112V101.098ZM206.707,101.098H202.91V99.098H206.707V101.098ZM214.303,101.098H210.505V99.098H214.303V101.098ZM221.898,101.098H218.1V99.098H221.898V101.098ZM227.595,101.098H225.696V99.098H227.595V101.098ZM188.618,108.042V104.864H190.618V108.042H188.618ZM188.618,111.807V111.219H190.618V111.863C190.865,111.891 191.109,111.929 191.35,111.976L190.962,113.938C190.528,113.853 190.079,113.807 189.618,113.807H187.737V111.807H188.618ZM153.881,113.807H152V111.807H153.881V113.807ZM161.405,113.807H157.643V111.807H161.405V113.807ZM168.928,113.807H165.166V111.807H168.928V113.807ZM176.452,113.807H172.69V111.807H176.452V113.807ZM183.975,113.807H180.214V111.807H183.975V113.807ZM195.34,116.865C194.837,116.115 194.19,115.468 193.44,114.966L194.552,113.304C195.52,113.952 196.353,114.785 197.001,115.753L195.34,116.865ZM196.498,120.687C196.498,120.226 196.453,119.777 196.367,119.343L198.329,118.955C198.44,119.516 198.498,120.095 198.498,120.687V121.707H196.498V120.687ZM196.498,124.765V123.746H198.498V124.765H196.498Z" />
<path
android:fillColor="#74B816"
android:fillType="evenOdd"
android:pathData="M183.491,176.801L183.879,174.839C184.519,174.966 185.182,175.033 185.862,175.033H187.76V177.033H185.862C185.051,177.033 184.258,176.953 183.491,176.801ZM206.743,177.033V175.033H208.641C209.322,175.033 209.985,174.966 210.624,174.839L211.012,176.801C210.246,176.953 209.453,177.033 208.641,177.033H206.743ZM215.392,174.986L214.279,173.324C215.387,172.583 216.341,171.629 217.082,170.521L218.744,171.634C217.857,172.959 216.717,174.099 215.392,174.986ZM220.79,144.002H218.79V142.104C218.79,141.424 218.724,140.761 218.597,140.121L220.559,139.733C220.711,140.5 220.79,141.293 220.79,142.104V144.002ZM218.744,135.354L217.082,136.467C216.341,135.359 215.387,134.405 214.279,133.663L215.392,132.002C216.717,132.889 217.857,134.029 218.744,135.354ZM187.76,129.955H185.862C185.051,129.955 184.258,130.035 183.491,130.186L183.879,132.148C184.519,132.022 185.182,131.955 185.862,131.955H187.76V129.955ZM179.112,132.002L180.225,133.663C179.117,134.405 178.163,135.359 177.421,136.467L175.759,135.354C176.646,134.029 177.787,132.889 179.112,132.002ZM173.713,162.985H175.713V164.884C175.713,165.564 175.78,166.227 175.906,166.866L173.944,167.255C173.793,166.488 173.713,165.695 173.713,164.884V162.985ZM175.759,171.634L177.421,170.521C178.163,171.629 179.117,172.583 180.225,173.324L179.112,174.986C177.787,174.099 176.646,172.959 175.759,171.634ZM173.713,159.189H175.713V155.392H173.713V159.189ZM173.713,151.596H175.713V147.799H173.713V151.596ZM173.713,144.002H175.713V142.104C175.713,141.424 175.78,140.761 175.906,140.121L173.944,139.733C173.793,140.5 173.713,141.293 173.713,142.104V144.002ZM191.557,129.955V131.955H195.354V129.955H191.557ZM199.15,129.955V131.955H202.947V129.955H199.15ZM206.743,129.955V131.955H208.641C209.322,131.955 209.985,132.022 210.624,132.148L211.012,130.186C210.246,130.035 209.453,129.955 208.641,129.955H206.743ZM220.79,147.799H218.79V151.596H220.79V147.799ZM220.79,155.392H218.79V159.189H220.79V155.392ZM220.79,162.985H218.79V164.884C218.79,165.564 218.724,166.227 218.597,166.866L220.559,167.255C220.711,166.488 220.79,165.695 220.79,164.884V162.985ZM202.947,177.033V175.033H199.15V177.033H202.947ZM195.354,177.033V175.033H191.557V177.033H195.354Z" />
<path
android:fillColor="#435B77"
android:fillType="evenOdd"
android:pathData="M110.594,40.07L110.982,38.108C111.503,38.211 112.042,38.265 112.597,38.265H115.001V40.265H112.597C111.911,40.265 111.242,40.198 110.594,40.07ZM129.431,40.265V38.265H131.836C132.39,38.265 132.93,38.211 133.45,38.108L133.838,40.07C133.191,40.198 132.521,40.265 131.836,40.265H129.431ZM137.537,38.537L136.424,36.875C137.326,36.271 138.103,35.494 138.706,34.592L140.368,35.705C139.619,36.824 138.656,37.787 137.537,38.537ZM142.097,13.17H140.097V10.765C140.097,10.211 140.042,9.671 139.939,9.151L141.901,8.762C142.029,9.41 142.097,10.08 142.097,10.765V13.17ZM140.368,5.064L138.706,6.176C138.103,5.275 137.326,4.498 136.424,3.894L137.537,2.232C138.656,2.981 139.619,3.945 140.368,5.064ZM115.001,0.504H112.597C111.911,0.504 111.242,0.571 110.594,0.699L110.982,2.661C111.503,2.558 112.042,2.504 112.597,2.504H115.001V0.504ZM106.895,2.232L108.008,3.894C107.106,4.498 106.33,5.275 105.726,6.176L104.064,5.064C104.813,3.945 105.777,2.981 106.895,2.232ZM102.336,27.599H104.336V30.004C104.336,30.558 104.39,31.098 104.493,31.618L102.531,32.007C102.403,31.359 102.336,30.689 102.336,30.004V27.599ZM104.064,35.705L105.726,34.592C106.33,35.494 107.106,36.271 108.008,36.875L106.895,38.537C105.777,37.787 104.813,36.824 104.064,35.705ZM102.336,22.789H104.336V17.98H102.336V22.789ZM102.336,13.17H104.336V10.765C104.336,10.211 104.39,9.671 104.493,9.151L102.531,8.762C102.403,9.41 102.336,10.08 102.336,10.765V13.17ZM119.811,0.504V2.504H124.621V0.504H119.811ZM129.431,0.504V2.504H131.836C132.39,2.504 132.93,2.558 133.45,2.661L133.838,0.699C133.191,0.571 132.521,0.504 131.836,0.504H129.431ZM142.097,17.98H140.097V22.789H142.097V17.98ZM142.097,27.599H140.097V30.004C140.097,30.558 140.042,31.098 139.939,31.618L141.901,32.007C142.029,31.359 142.097,30.689 142.097,30.004V27.599ZM124.621,40.265V38.265H119.811V40.265H124.621Z" />
<path
android:fillColor="#435B77"
android:fillType="evenOdd"
android:pathData="M40.03,172.228L40.796,170.381C41.553,170.695 42.384,170.869 43.262,170.869H45.241V172.869H43.262C42.117,172.869 41.025,172.641 40.03,172.228ZM57.114,172.869V170.869H59.093C59.971,170.869 60.802,170.695 61.559,170.381L62.325,172.228C61.33,172.641 60.238,172.869 59.093,172.869H57.114ZM67.537,150.573H65.537V148.594C65.537,147.717 65.363,146.885 65.049,146.128L66.896,145.362C67.309,146.358 67.537,147.449 67.537,148.594V150.573ZM45.241,140.151H43.262C42.117,140.151 41.025,140.378 40.03,140.791L40.796,142.639C41.553,142.325 42.384,142.151 43.262,142.151H45.241V140.151ZM34.818,162.447H36.818V164.426C36.818,165.303 36.993,166.134 37.306,166.891L35.459,167.658C35.046,166.662 34.818,165.57 34.818,164.426V162.447ZM34.818,158.489H36.818V154.531H34.818V158.489ZM34.818,150.573H36.818V148.594C36.818,147.717 36.993,146.885 37.306,146.128L35.459,145.362C35.046,146.358 34.818,147.449 34.818,148.594V150.573ZM49.199,140.151V142.151H53.157V140.151H49.199ZM57.114,140.151V142.151H59.093C59.971,142.151 60.802,142.325 61.559,142.639L62.325,140.791C61.33,140.378 60.238,140.151 59.093,140.151H57.114ZM67.537,154.531H65.537V158.489H67.537V154.531ZM67.537,162.447H65.537V164.426C65.537,165.303 65.363,166.134 65.049,166.891L66.896,167.658C67.309,166.662 67.537,165.57 67.537,164.426V162.447ZM53.157,172.869V170.869H49.199V172.869H53.157Z" />
<path
android:fillColor="#435B77"
android:fillType="evenOdd"
android:pathData="M112.803,199.154L113.569,197.307C113.862,197.428 114.184,197.496 114.527,197.496H116.638V199.496H114.527C113.917,199.496 113.334,199.374 112.803,199.154ZM120.86,199.496V197.496H122.971C123.314,197.496 123.636,197.428 123.929,197.307L124.695,199.154C124.164,199.374 123.582,199.496 122.971,199.496H120.86ZM127.475,188.66H125.475V186.549C125.475,186.205 125.407,185.883 125.285,185.591L127.133,184.825C127.353,185.356 127.475,185.938 127.475,186.549V188.66ZM116.638,182.045H114.527C113.917,182.045 113.334,182.167 112.803,182.387L113.569,184.234C113.862,184.113 114.184,184.045 114.527,184.045H116.638V182.045ZM110.024,192.881H112.024V194.992C112.024,195.336 112.092,195.658 112.213,195.95L110.365,196.716C110.145,196.185 110.024,195.603 110.024,194.992V192.881ZM110.024,188.66H112.024V186.549C112.024,186.205 112.092,185.883 112.213,185.591L110.365,184.825C110.145,185.356 110.024,185.938 110.024,186.549V188.66ZM120.86,182.045V184.045H122.971C123.314,184.045 123.636,184.113 123.929,184.234L124.695,182.387C124.164,182.167 123.582,182.045 122.971,182.045H120.86ZM127.475,192.881H125.475V194.992C125.475,195.336 125.407,195.658 125.285,195.95L127.133,196.716C127.353,196.185 127.475,195.603 127.475,194.992V192.881Z" />
<path
android:fillColor="#657D99"
android:fillType="evenOdd"
android:pathData="M178.996,80.327L179.762,78.48C180.48,78.778 181.269,78.943 182.101,78.943H184.003V80.943H182.101C181.001,80.943 179.952,80.724 178.996,80.327ZM195.412,80.943V78.943H197.314C198.146,78.943 198.935,78.778 199.653,78.48L200.419,80.327C199.463,80.724 198.414,80.943 197.314,80.943H195.412ZM205.427,59.519H203.427V57.617C203.427,56.785 203.262,55.996 202.964,55.278L204.811,54.512C205.208,55.468 205.427,56.517 205.427,57.617V59.519ZM184.003,49.504H182.101C181.001,49.504 179.952,49.723 178.996,50.12L179.762,51.967C180.48,51.669 181.269,51.504 182.101,51.504H184.003V49.504ZM173.988,70.928H175.988V72.83C175.988,73.662 176.153,74.451 176.451,75.169L174.604,75.936C174.207,74.979 173.988,73.93 173.988,72.83V70.928ZM173.988,67.125H175.988V63.322H173.988V67.125ZM173.988,59.519H175.988V57.617C175.988,56.785 176.153,55.996 176.451,55.278L174.604,54.512C174.207,55.468 173.988,56.517 173.988,57.617V59.519ZM187.806,49.504V51.504H191.609V49.504H187.806ZM195.412,49.504V51.504H197.314C198.146,51.504 198.935,51.669 199.653,51.967L200.419,50.12C199.463,49.723 198.414,49.504 197.314,49.504H195.412ZM205.427,63.322H203.427V67.125H205.427V63.322ZM205.427,70.928H203.427V72.83C203.427,73.662 203.262,74.451 202.964,75.169L204.811,75.936C205.208,74.979 205.427,73.93 205.427,72.83V70.928ZM191.609,80.943V78.943H187.806V80.943H191.609Z" />
<path
android:fillColor="#435B77"
android:fillType="evenOdd"
android:pathData="M234.829,108.525L235.595,106.678C235.887,106.799 236.209,106.867 236.553,106.867H238.664V108.867H236.553C235.942,108.867 235.36,108.745 234.829,108.525ZM242.886,108.867V106.867H244.997C245.34,106.867 245.662,106.799 245.954,106.678L246.72,108.525C246.189,108.745 245.607,108.867 244.997,108.867H242.886ZM249.5,98.031H247.5V95.92C247.5,95.576 247.432,95.254 247.311,94.962L249.158,94.196C249.378,94.727 249.5,95.309 249.5,95.92V98.031ZM238.664,91.416H236.553C235.942,91.416 235.36,91.538 234.829,91.758L235.595,93.605C235.887,93.484 236.209,93.416 236.553,93.416H238.664V91.416ZM232.049,102.253H234.049V104.364C234.049,104.707 234.117,105.029 234.238,105.321L232.391,106.087C232.171,105.556 232.049,104.974 232.049,104.364V102.253ZM232.049,98.031H234.049V95.92C234.049,95.576 234.117,95.254 234.238,94.962L232.391,94.196C232.171,94.727 232.049,95.309 232.049,95.92V98.031ZM242.886,91.416V93.416H244.997C245.34,93.416 245.662,93.484 245.954,93.605L246.72,91.758C246.189,91.538 245.607,91.416 244.997,91.416H242.886ZM249.5,102.253H247.5V104.364C247.5,104.707 247.432,105.029 247.311,105.321L249.158,106.087C249.378,105.556 249.5,104.974 249.5,104.364V102.253Z" />
<path
android:fillColor="#82C91E"
android:pathData="M29.825,34.881V54.164C29.825,55.73 31.1,57.021 32.682,57.021H34.021C35.586,57.021 36.877,55.73 36.877,54.164V34.881H29.825Z" />
<path
android:fillColor="#82C91E"
android:pathData="M36.861,25.587V21.956C36.861,20.391 35.586,19.1 34.021,19.1H32.682C31.116,19.1 29.825,20.391 29.825,21.956V25.587H36.861Z" />
<path
android:fillColor="#82C91E"
android:pathData="M52.514,41.239V21.956C52.514,20.391 51.239,19.1 49.674,19.1H48.334C46.769,19.1 45.478,20.391 45.478,21.956V41.239H52.514Z" />
<path
android:fillColor="#82C91E"
android:pathData="M45.478,50.533V54.164C45.478,55.729 46.769,57.02 48.334,57.02H49.674C51.239,57.02 52.53,55.729 52.53,54.164V50.533H45.478Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M28.696,42.369H25.065C23.5,42.369 22.209,43.644 22.209,45.225V46.565C22.209,48.13 23.484,49.421 25.065,49.421H28.696V42.369Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M57.274,42.369H37.99V49.421H57.274C58.839,49.421 60.13,48.13 60.13,46.565V45.225C60.13,43.644 58.839,42.369 57.274,42.369Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M44.348,26.717H25.065C23.5,26.717 22.209,27.992 22.209,29.573V30.913C22.209,32.478 23.484,33.769 25.065,33.769H44.348V26.717Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M57.274,26.717H53.643V33.769H57.274C58.839,33.769 60.13,32.494 60.13,30.912V29.573C60.13,27.992 58.839,26.717 57.274,26.717Z" />
<path
android:fillColor="#95DE2D"
android:fillType="evenOdd"
android:pathData="M108.864,100H129.086C129.852,100 130.587,100.305 131.129,100.848C131.671,101.39 131.975,102.126 131.975,102.894L131.975,127.695C131.975,128.8 130.688,129.403 129.841,128.695L124.6,124.308H108.864C108.098,124.308 107.363,124.003 106.821,123.46C106.279,122.917 105.975,122.181 105.975,121.414V102.894C105.975,102.126 106.279,101.39 106.821,100.848C107.363,100.305 108.098,100 108.864,100ZM116.549,112.823H110.597V104.63H127.353V112.823H121.499V115.656H123.64C124.026,115.656 124.22,116.123 123.947,116.397L119.331,121.021C119.161,121.19 118.887,121.19 118.718,121.021L114.102,116.397C113.829,116.123 114.022,115.656 114.408,115.656H116.549V112.823Z" />
<path
android:fillColor="#82C91E"
android:pathData="M190.408,151.656V162.803C190.408,163.708 191.145,164.454 192.059,164.454H192.833C193.738,164.454 194.484,163.708 194.484,162.803V151.656H190.408Z" />
<path
android:fillColor="#82C91E"
android:pathData="M194.475,146.283V144.184C194.475,143.279 193.738,142.533 192.833,142.533H192.059C191.154,142.533 190.408,143.279 190.408,144.184V146.283H194.475Z" />
<path
android:fillColor="#82C91E"
android:pathData="M203.523,155.331V144.184C203.523,143.279 202.786,142.533 201.881,142.533H201.107C200.202,142.533 199.456,143.279 199.456,144.184V155.331H203.523Z" />
<path
android:fillColor="#82C91E"
android:pathData="M199.456,160.705V162.804C199.456,163.709 200.202,164.455 201.107,164.455H201.881C202.786,164.455 203.533,163.709 203.533,162.804V160.705H199.456Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M189.755,155.984H187.656C186.751,155.984 186.005,156.721 186.005,157.635V158.409C186.005,159.314 186.742,160.061 187.656,160.061H189.755V155.984Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M206.275,155.984H195.128V160.061H206.275C207.18,160.061 207.926,159.314 207.926,158.409V157.635C207.926,156.721 207.18,155.984 206.275,155.984Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M198.803,146.937H187.656C186.751,146.937 186.005,147.674 186.005,148.588V149.363C186.005,150.267 186.742,151.014 187.656,151.014H198.803V146.937Z" />
<path
android:fillColor="#95DE2D"
android:pathData="M206.275,146.937H204.176V151.014H206.275C207.18,151.014 207.926,150.277 207.926,149.363V148.588C207.926,147.674 207.18,146.937 206.275,146.937Z" />
</vector>

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/fragmentContainer"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ProgressBar
android:id="@+id/progressBar"
style="?android:progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:visibility="invisible"
tools:visibility="visible" />
</FrameLayout>

View File

@@ -0,0 +1,76 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
tools:context=".android.mailbox.MailboxActivity">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/imageView"
android:layout_width="@dimen/hero_rect_width"
android:layout_height="@dimen/hero_rect_width"
android:layout_marginHorizontal="@dimen/margin_xlarge"
android:layout_marginTop="@dimen/margin_xlarge"
app:layout_constraintBottom_toTopOf="@+id/introView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.25"
app:layout_constraintVertical_chainStyle="packed"
app:srcCompat="@drawable/ic_mailbox"
app:tint="@color/briar_brand_green"
tools:ignore="ContentDescription" />
<TextView
android:id="@+id/introView"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/margin_xlarge"
android:layout_marginTop="@dimen/margin_xlarge"
android:layout_marginBottom="@dimen/margin_large"
android:text="@string/mailbox_setup_intro"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1"
app:layout_constraintBottom_toTopOf="@+id/shareLinkButton"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/imageView" />
<Button
android:id="@+id/shareLinkButton"
style="@style/BriarButtonFlat.Positive"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/margin_large"
android:drawablePadding="8dp"
android:text="@string/mailbox_setup_download_link"
app:layout_constraintBottom_toTopOf="@+id/scanButton"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:visibility="visible" />
<Button
android:id="@+id/scanButton"
style="@style/BriarButton"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_margin="@dimen/margin_large"
android:drawablePadding="8dp"
android:text="@string/mailbox_setup_button_scan"
app:drawableLeftCompat="@drawable/ic_qr_code"
app:drawableStartCompat="@drawable/ic_qr_code"
app:drawableTint="@color/button_text"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:visibility="visible" />
</androidx.constraintlayout.widget.ConstraintLayout>
</ScrollView>

View File

@@ -0,0 +1,59 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
tools:context=".android.mailbox.MailboxActivity">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/margin_xlarge"
android:layout_marginTop="@dimen/margin_xlarge"
app:layout_constraintBottom_toTopOf="@+id/introView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.25"
app:layout_constraintVertical_chainStyle="packed"
app:srcCompat="@drawable/ic_mailbox_onboarding"
tools:ignore="ContentDescription" />
<TextView
android:id="@+id/introView"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/margin_xlarge"
android:layout_marginTop="@dimen/margin_xlarge"
android:layout_marginBottom="@dimen/margin_large"
android:text="@string/mailbox_setup_intro"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1"
app:layout_constraintBottom_toTopOf="@+id/continueButton"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/imageView" />
<Button
android:id="@+id/continueButton"
style="@style/BriarButton"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_margin="@dimen/margin_large"
android:drawablePadding="8dp"
android:text="@string/continue_button"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:visibility="visible" />
</androidx.constraintlayout.widget.ConstraintLayout>
</ScrollView>

View File

@@ -614,6 +614,20 @@
<!-- Mailbox -->
<string name="mailbox_settings_title">Mailbox</string>
<string name="mailbox_setup_title">Mailbox Setup</string>
<string name="mailbox_setup_intro">Once you set up a Mailbox for Briar, you will be able to send and receive messages even if you are not online.\n
\nYou can install Briar Mailbox on a spare device which will act as a forwarder for your messages (for best connectivity, the Mailbox device should stay charged and online at all times).</string>
<string name="mailbox_setup_download">Once you installed the Briar Mailbox app on a spare device, you can link it with this device by scanning the Mailbox QR code on the next screen.\n
\nYou can find Briar Mailbox on F-Droid or Google Play.</string>
<string name="mailbox_setup_download_link">Share Download Link</string>
<string name="mailbox_setup_button_scan">Scan Mailbox QR code</string>
<string name="mailbox_share_text">You can install the Briar Mailbox app from one of those sources:\n
\nF-Droid: %1$s
\nGoogle Play: %2$s
\nDirect Download: %3$s</string>
<string name="mailbox_share_fdroid" translatable="false">https://f-droid.org/packages/org.briarproject.mailbox/</string>
<string name="mailbox_share_gplay" translatable="false">https://play.google.com/store/apps/details?id=org.briarproject.mailbox</string>
<string name="mailbox_share_download" translatable="false">https://briarproject.org/apk</string>
<!-- Conversation Settings -->
<string name="disappearing_messages_title">Disappearing messages</string>