use of com.nutomic.syncthingandroid.model.Options in project syncthing-android by syncthing.
the class MainActivity method showUsageReportingDialog.
/**
* Displays dialog asking user to accept/deny usage reporting.
*/
private void showUsageReportingDialog() {
final DialogInterface.OnClickListener listener = (dialog, which) -> {
Options options = getApi().getOptions();
switch(which) {
case DialogInterface.BUTTON_POSITIVE:
getApi().getSystemInfo(systemInfo -> {
options.urAccepted = systemInfo.urVersionMax;
});
break;
case DialogInterface.BUTTON_NEGATIVE:
options.urAccepted = Options.USAGE_REPORTING_DENIED;
break;
case DialogInterface.BUTTON_NEUTRAL:
Uri uri = Uri.parse("https://data.syncthing.net");
startActivity(new Intent(Intent.ACTION_VIEW, uri));
break;
}
getApi().editSettings(getApi().getGui(), options, this);
};
getApi().getUsageReport(report -> {
@SuppressLint("InflateParams") View v = LayoutInflater.from(MainActivity.this).inflate(R.layout.dialog_usage_reporting, null);
TextView tv = v.findViewById(R.id.example);
tv.setText(report);
new AlertDialog.Builder(MainActivity.this).setTitle(R.string.usage_reporting_dialog_title).setView(v).setPositiveButton(R.string.yes, listener).setNegativeButton(R.string.no, listener).setNeutralButton(R.string.open_website, listener).show();
});
}
use of com.nutomic.syncthingandroid.model.Options in project syncthing-android by syncthing.
the class RestApi method setUsageReporting.
public void setUsageReporting(Boolean acceptUsageReporting) {
Options options = getOptions();
if (options == null) {
Log.e(TAG, "setUsageReporting called while options == null");
return;
}
options.urAccepted = acceptUsageReporting ? mUrVersionMax : Options.USAGE_REPORTING_DENIED;
synchronized (mConfigLock) {
mConfig.options = options;
}
}
Aggregations