mirror of
https://github.com/DrKLO/Telegram.git
synced 2024-12-22 14:35:03 +01:00
parent
dff98476dd
commit
f83a1b56ff
6 changed files with 93 additions and 66 deletions
|
@ -80,7 +80,7 @@ android {
|
|||
defaultConfig {
|
||||
minSdkVersion 8
|
||||
targetSdkVersion 19
|
||||
versionCode 331
|
||||
versionCode 332
|
||||
versionName "1.9.0"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1364,7 +1364,7 @@ public class ChatActivity extends BaseFragment implements NotificationCenter.Not
|
|||
args.putString("videoPath", videoPath);
|
||||
VideoEditorActivity fragment = new VideoEditorActivity(args);
|
||||
fragment.setDelegate(this);
|
||||
presentFragment(fragment);
|
||||
presentFragment(fragment, false, true);
|
||||
} else {
|
||||
processSendingVideo(videoPath, 0, 0, 0, 0, null);
|
||||
}
|
||||
|
|
|
@ -629,7 +629,7 @@ public class ChatProfileActivity extends BaseFragment implements NotificationCen
|
|||
count = info.participants.size();
|
||||
}
|
||||
|
||||
if (count != 0 && onlineCount > 0) {
|
||||
if (count != 0 && onlineCount > 1) {
|
||||
onlineText.setText(Html.fromHtml(String.format("%s, <font color='#357aa8'>%d %s</font>", LocaleController.formatPluralString("Members", count), onlineCount, LocaleController.getString("Online", R.string.Online))));
|
||||
} else {
|
||||
onlineText.setText(LocaleController.formatPluralString("Members", count));
|
||||
|
|
|
@ -760,15 +760,16 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa
|
|||
|
||||
public void fixLayout() {
|
||||
if (AndroidUtilities.isTablet()) {
|
||||
final ViewTreeObserver obs = actionBarLayout.getViewTreeObserver();
|
||||
obs.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
|
||||
actionBarLayout.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
|
||||
@Override
|
||||
public void onGlobalLayout() {
|
||||
needLayout();
|
||||
if (actionBarLayout != null) {
|
||||
if (Build.VERSION.SDK_INT < 16) {
|
||||
obs.removeGlobalOnLayoutListener(this);
|
||||
actionBarLayout.getViewTreeObserver().removeGlobalOnLayoutListener(this);
|
||||
} else {
|
||||
obs.removeOnGlobalLayoutListener(this);
|
||||
actionBarLayout.getViewTreeObserver().removeOnGlobalLayoutListener(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
|
@ -12,6 +12,7 @@ import android.annotation.TargetApi;
|
|||
import android.content.res.Configuration;
|
||||
import android.graphics.SurfaceTexture;
|
||||
import android.media.MediaPlayer;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.view.Gravity;
|
||||
import android.view.LayoutInflater;
|
||||
|
@ -76,6 +77,7 @@ public class VideoEditorActivity extends BaseFragment implements TextureView.Sur
|
|||
|
||||
private final Object sync = new Object();
|
||||
private Thread thread = null;
|
||||
private long createTime = 0;
|
||||
|
||||
private int rotationValue = 0;
|
||||
private int originalWidth = 0;
|
||||
|
@ -106,7 +108,7 @@ public class VideoEditorActivity extends BaseFragment implements TextureView.Sur
|
|||
AndroidUtilities.RunOnUIThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if (videoPlayer.isPlaying()) {
|
||||
if (videoPlayer != null && videoPlayer.isPlaying()) {
|
||||
float startTime = videoTimelineView.getLeftProgress() * videoDuration;
|
||||
float endTime = videoTimelineView.getRightProgress() * videoDuration;
|
||||
if (startTime == endTime) {
|
||||
|
@ -186,6 +188,15 @@ public class VideoEditorActivity extends BaseFragment implements TextureView.Sur
|
|||
if (videoTimelineView != null) {
|
||||
videoTimelineView.destroy();
|
||||
}
|
||||
if (videoPlayer != null) {
|
||||
try {
|
||||
videoPlayer.stop();
|
||||
videoPlayer.release();
|
||||
videoPlayer = null;
|
||||
} catch (Exception e) {
|
||||
FileLog.e("tmessages", e);
|
||||
}
|
||||
}
|
||||
super.onFragmentDestroy();
|
||||
}
|
||||
|
||||
|
@ -323,13 +334,15 @@ public class VideoEditorActivity extends BaseFragment implements TextureView.Sur
|
|||
parent.removeView(fragmentView);
|
||||
}
|
||||
}
|
||||
fixLayoutInternal();
|
||||
createTime = System.currentTimeMillis();
|
||||
return fragmentView;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onResume() {
|
||||
super.onResume();
|
||||
fixLayout();
|
||||
fixLayoutInternal();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -479,14 +492,7 @@ public class VideoEditorActivity extends BaseFragment implements TextureView.Sur
|
|||
textureView.setLayoutParams(layoutParams);
|
||||
}
|
||||
|
||||
private void fixLayout() {
|
||||
if (originalSizeTextView == null) {
|
||||
return;
|
||||
}
|
||||
originalSizeTextView.getViewTreeObserver().addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
|
||||
@Override
|
||||
public boolean onPreDraw() {
|
||||
originalSizeTextView.getViewTreeObserver().removeOnPreDrawListener(this);
|
||||
private void fixLayoutInternal() {
|
||||
if (!AndroidUtilities.isTablet() && getParentActivity().getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
|
||||
FrameLayout.LayoutParams layoutParams = (FrameLayout.LayoutParams) videoContainerView.getLayoutParams();
|
||||
layoutParams.topMargin = AndroidUtilities.dp(16);
|
||||
|
@ -534,9 +540,29 @@ public class VideoEditorActivity extends BaseFragment implements TextureView.Sur
|
|||
}
|
||||
fixVideoSize();
|
||||
videoTimelineView.clearFrames();
|
||||
return false;
|
||||
}
|
||||
|
||||
private void fixLayout() {
|
||||
if (originalSizeTextView == null) {
|
||||
return;
|
||||
}
|
||||
if (createTime < System.currentTimeMillis() - 3000) {
|
||||
originalSizeTextView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
|
||||
@Override
|
||||
public void onGlobalLayout() {
|
||||
if (originalSizeTextView != null) {
|
||||
if (Build.VERSION.SDK_INT < 16) {
|
||||
originalSizeTextView.getViewTreeObserver().removeGlobalOnLayoutListener(this);
|
||||
} else {
|
||||
originalSizeTextView.getViewTreeObserver().removeOnGlobalLayoutListener(this);
|
||||
}
|
||||
}
|
||||
fixLayoutInternal();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
fixLayoutInternal();
|
||||
}
|
||||
}
|
||||
|
||||
private void play() {
|
||||
|
@ -571,7 +597,7 @@ public class VideoEditorActivity extends BaseFragment implements TextureView.Sur
|
|||
});
|
||||
videoPlayer.start();
|
||||
synchronized (sync) {
|
||||
if (thread != null) {
|
||||
if (thread == null) {
|
||||
thread = new Thread(progressRunnable);
|
||||
thread.start();
|
||||
}
|
||||
|
|
|
@ -69,7 +69,7 @@ public class AvatarUpdater implements NotificationCenter.NotificationCenterDeleg
|
|||
|
||||
public void openGallery() {
|
||||
try {
|
||||
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
|
||||
Intent photoPickerIntent = new Intent(Intent.ACTION_GET_CONTENT);
|
||||
photoPickerIntent.setType("image/*");
|
||||
parentFragment.getParentActivity().startActivityForResult(photoPickerIntent, 14);
|
||||
} catch (Exception e) {
|
||||
|
|
Loading…
Reference in a new issue