|
|
|
@ -272,6 +272,49 @@ public class FragmentRule extends FragmentBase {
|
|
|
|
|
getString(R.string.title_rule_action_remark, data.folder.getDisplayName(getContext())));
|
|
|
|
|
tvActionRemark.setVisibility(View.VISIBLE);
|
|
|
|
|
|
|
|
|
|
loadRule();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
protected void onException(Bundle args, Throwable ex) {
|
|
|
|
|
Helper.unexpectedError(getContext(), getViewLifecycleOwner(), ex);
|
|
|
|
|
}
|
|
|
|
|
}.execute(this, args, "rule:accounts");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void onActivityResult(int requestCode, int resultCode, Intent data) {
|
|
|
|
|
Log.i("Request=" + requestCode + " result=" + resultCode + " data=" + data);
|
|
|
|
|
if (resultCode == RESULT_OK) {
|
|
|
|
|
if (requestCode == ActivityView.REQUEST_SENDER) {
|
|
|
|
|
if (data != null)
|
|
|
|
|
handlePickContact(data);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void handlePickContact(Intent data) {
|
|
|
|
|
Cursor cursor = null;
|
|
|
|
|
try {
|
|
|
|
|
Uri uri = data.getData();
|
|
|
|
|
if (uri != null)
|
|
|
|
|
cursor = getContext().getContentResolver().query(uri,
|
|
|
|
|
new String[]{
|
|
|
|
|
ContactsContract.CommonDataKinds.Email.ADDRESS
|
|
|
|
|
},
|
|
|
|
|
null, null, null);
|
|
|
|
|
if (cursor != null && cursor.moveToFirst())
|
|
|
|
|
etSender.setText(cursor.getString(0));
|
|
|
|
|
} catch (Throwable ex) {
|
|
|
|
|
Log.e(ex);
|
|
|
|
|
Helper.unexpectedError(getContext(), getViewLifecycleOwner(), ex);
|
|
|
|
|
} finally {
|
|
|
|
|
if (cursor != null)
|
|
|
|
|
cursor.close();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void loadRule() {
|
|
|
|
|
Bundle rargs = new Bundle();
|
|
|
|
|
rargs.putLong("id", id);
|
|
|
|
|
|
|
|
|
@ -364,45 +407,6 @@ public class FragmentRule extends FragmentBase {
|
|
|
|
|
}.execute(FragmentRule.this, rargs, "rule:get");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
protected void onException(Bundle args, Throwable ex) {
|
|
|
|
|
Helper.unexpectedError(getContext(), getViewLifecycleOwner(), ex);
|
|
|
|
|
}
|
|
|
|
|
}.execute(this, args, "rule:accounts");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void onActivityResult(int requestCode, int resultCode, Intent data) {
|
|
|
|
|
Log.i("Request=" + requestCode + " result=" + resultCode + " data=" + data);
|
|
|
|
|
if (resultCode == RESULT_OK) {
|
|
|
|
|
if (requestCode == ActivityView.REQUEST_SENDER) {
|
|
|
|
|
if (data != null)
|
|
|
|
|
handlePickContact(data);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void handlePickContact(Intent data) {
|
|
|
|
|
Cursor cursor = null;
|
|
|
|
|
try {
|
|
|
|
|
Uri uri = data.getData();
|
|
|
|
|
if (uri != null)
|
|
|
|
|
cursor = getContext().getContentResolver().query(uri,
|
|
|
|
|
new String[]{
|
|
|
|
|
ContactsContract.CommonDataKinds.Email.ADDRESS
|
|
|
|
|
},
|
|
|
|
|
null, null, null);
|
|
|
|
|
if (cursor != null && cursor.moveToFirst())
|
|
|
|
|
etSender.setText(cursor.getString(0));
|
|
|
|
|
} catch (Throwable ex) {
|
|
|
|
|
Log.e(ex);
|
|
|
|
|
Helper.unexpectedError(getContext(), getViewLifecycleOwner(), ex);
|
|
|
|
|
} finally {
|
|
|
|
|
if (cursor != null)
|
|
|
|
|
cursor.close();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void onActionTrash() {
|
|
|
|
|
new DialogBuilderLifecycle(getContext(), getViewLifecycleOwner())
|
|
|
|
|
.setMessage(R.string.title_ask_delete_rule)
|
|
|
|
|