error messages for publish avatar

This commit is contained in:
iNPUTmice 2014-08-05 12:21:08 +02:00
parent f8b4d5f338
commit 9aba9a4059
4 changed files with 37 additions and 12 deletions

View file

@ -69,7 +69,8 @@
android:layout_height="fill_parent"
android:layout_above="@+id/button_bar"
android:layout_below="@+id/hint"
android:layout_centerHorizontal="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:gravity="center_vertical"
android:orientation="vertical"
android:paddingLeft="8dp"
@ -83,12 +84,14 @@
android:textSize="18sp"/>
<TextView
android:id="@+id/hint_or_warning"
android:layout_marginTop="8dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/publish_avatar_explanation"
android:textColor="@color/primarytext"
android:textSize="14sp" />
android:textSize="14sp"
android:minLines="3" />
</LinearLayout>
</RelativeLayout>

View file

@ -271,4 +271,7 @@
<string name="publish_avatar">Publish avatar</string>
<string name="touch_to_choose_picture">Touch avatar to select picture from gallary</string>
<string name="publish_avatar_explanation">Please note: Everyone subscribed to your presence updates will be allowed to see this picture.</string>
<string name="publishing">Publishing&#8230;</string>
<string name="error_publish_avatar_server_reject">The server rejected your publication</string>
<string name="error_publish_avatar_converting">Something went wrong while converting your picture</string>
</resources>

View file

@ -1216,17 +1216,17 @@ public class XmppConnectionService extends Service {
if (result.getType() == IqPacket.TYPE_RESULT) {
callback.success(avatar);
} else {
callback.error(R.string.error, avatar);
callback.error(R.string.error_publish_avatar_server_reject, avatar);
}
}
});
} else {
callback.error(R.string.error, avatar);
callback.error(R.string.error_publish_avatar_server_reject, avatar);
}
}
});
} else {
callback.error(R.string.error, null);
callback.error(R.string.error_publish_avatar_converting, null);
}
}

View file

@ -22,6 +22,7 @@ public class PublishProfilePictureActivity extends XmppActivity {
private ImageView avatar;
private TextView accountTextView;
private TextView hintOrWarning;
private Button cancelButton;
private Button publishButton;
@ -33,19 +34,32 @@ public class PublishProfilePictureActivity extends XmppActivity {
@Override
public void success(Avatar object) {
finish();
runOnUiThread(new Runnable() {
@Override
public void run() {
finish();
}
});
}
@Override
public void error(int errorCode, Avatar object) {
// TODO Auto-generated method stub
public void error(final int errorCode, Avatar object) {
runOnUiThread(new Runnable() {
@Override
public void run() {
hintOrWarning.setText(errorCode);
hintOrWarning.setTextColor(getWarningTextColor());
publishButton.setText(R.string.publish_avatar);
enablePublishButton();
}
});
}
@Override
public void userInputRequried(PendingIntent pi, Avatar object) {
// TODO Auto-generated method stub
}
};
@ -57,11 +71,13 @@ public class PublishProfilePictureActivity extends XmppActivity {
this.cancelButton = (Button) findViewById(R.id.cancel_button);
this.publishButton = (Button) findViewById(R.id.publish_button);
this.accountTextView = (TextView) findViewById(R.id.account);
this.hintOrWarning = (TextView) findViewById(R.id.hint_or_warning);
this.publishButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (avatarUri != null) {
publishButton.setText(R.string.publishing);
disablePublishButton();
xmppConnectionService.publishAvatar(account, avatarUri,
avatarPublication);
@ -99,7 +115,7 @@ public class PublishProfilePictureActivity extends XmppActivity {
}
}
}
@Override
public boolean onOptionsItemSelected(MenuItem menuItem) {
super.onOptionsItemSelected(menuItem);
@ -133,13 +149,16 @@ public class PublishProfilePictureActivity extends XmppActivity {
uri, 384);
this.avatar.setImageBitmap(bm);
enablePublishButton();
this.publishButton.setText(R.string.publish_avatar);
this.hintOrWarning.setText(R.string.publish_avatar_explanation);
this.hintOrWarning.setTextColor(getPrimaryTextColor());
}
protected void enablePublishButton() {
this.publishButton.setEnabled(true);
this.publishButton.setTextColor(getPrimaryTextColor());
}
protected void disablePublishButton() {
this.publishButton.setEnabled(false);
this.publishButton.setTextColor(getSecondaryTextColor());