Fix issues 1030 and 1033 (auto scroll when keyboard is showed + can't open sent image just right after
This commit is contained in:
parent
05af39683d
commit
5d9f5a3a7f
1 changed files with 7 additions and 7 deletions
|
@ -269,13 +269,13 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
public void showKeyboardVisibleMode() {
|
public void showKeyboardVisibleMode() {
|
||||||
LinphoneActivity.instance().hideMenu(true);
|
LinphoneActivity.instance().hideMenu(true);
|
||||||
contactPicture.setVisibility(View.GONE);
|
contactPicture.setVisibility(View.GONE);
|
||||||
//scrollToEnd();
|
scrollToEnd();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void hideKeyboardVisibleMode() {
|
public void hideKeyboardVisibleMode() {
|
||||||
LinphoneActivity.instance().hideMenu(false);
|
LinphoneActivity.instance().hideMenu(false);
|
||||||
contactPicture.setVisibility(View.VISIBLE);
|
contactPicture.setVisibility(View.VISIBLE);
|
||||||
//scrollToEnd();
|
scrollToEnd();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void invalidate() {
|
private void invalidate() {
|
||||||
|
@ -624,7 +624,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
latestImageMessages.put(newId, url);
|
latestImageMessages.put(newId, url);
|
||||||
|
|
||||||
if (useLinphoneMessageStorage)
|
if (useLinphoneMessageStorage)
|
||||||
saveImage(bitmap, newId, chatMessage);
|
url = saveImage(bitmap, newId, chatMessage);
|
||||||
|
|
||||||
displayImageMessage(newId, bitmap, System.currentTimeMillis(), false, State.InProgress, messagesLayout, url);
|
displayImageMessage(newId, bitmap, System.currentTimeMillis(), false, State.InProgress, messagesLayout, url);
|
||||||
scrollToEnd();
|
scrollToEnd();
|
||||||
|
@ -763,14 +763,14 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
private void saveImage(int id) {
|
private void saveImage(int id) {
|
||||||
byte[] rawImage = LinphoneActivity.instance().getChatStorage().getRawImageFromMessage(id);
|
byte[] rawImage = LinphoneActivity.instance().getChatStorage().getRawImageFromMessage(id);
|
||||||
Bitmap bm = BitmapFactory.decodeByteArray(rawImage, 0, rawImage.length);
|
Bitmap bm = BitmapFactory.decodeByteArray(rawImage, 0, rawImage.length);
|
||||||
if (saveImage(bm, id, null)) {
|
if (saveImage(bm, id, null) != null) {
|
||||||
Toast.makeText(getActivity(), getString(R.string.image_saved), Toast.LENGTH_SHORT).show();
|
Toast.makeText(getActivity(), getString(R.string.image_saved), Toast.LENGTH_SHORT).show();
|
||||||
} else {
|
} else {
|
||||||
Toast.makeText(getActivity(), getString(R.string.image_not_saved), Toast.LENGTH_LONG).show();
|
Toast.makeText(getActivity(), getString(R.string.image_not_saved), Toast.LENGTH_LONG).show();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean saveImage(Bitmap bm, int id, LinphoneChatMessage message) {
|
private String saveImage(Bitmap bm, int id, LinphoneChatMessage message) {
|
||||||
try {
|
try {
|
||||||
String path = Environment.getExternalStorageDirectory().toString();
|
String path = Environment.getExternalStorageDirectory().toString();
|
||||||
if (!path.endsWith("/"))
|
if (!path.endsWith("/"))
|
||||||
|
@ -805,11 +805,11 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
}
|
}
|
||||||
|
|
||||||
MediaStore.Images.Media.insertImage(getActivity().getContentResolver(),file.getAbsolutePath(),file.getName(),file.getName());
|
MediaStore.Images.Media.insertImage(getActivity().getContentResolver(),file.getAbsolutePath(),file.getName(),file.getName());
|
||||||
return true;
|
return file.getAbsolutePath();
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
return false;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private long hashBitmap(Bitmap bmp){
|
private long hashBitmap(Bitmap bmp){
|
||||||
|
|
Loading…
Reference in a new issue