mirror of
https://github.com/flutter-webrtc/flutter-webrtc
synced 2025-07-07 21:55:37 +00:00
Fix screen capture orientation for landscape-native devices (#1854)
- Corrects isDeviceOrientationPortrait() to properly detect device orientation - Fixes virtual display dimensions for tablets and embedded devices - Resolves issue where ROTATION_0 was incorrectly assumed to be portrait Fixes #1852 Co-authored-by: Josh Galicic josh.galicic@hunterlab.com
This commit is contained in:
@ -15,6 +15,7 @@ import android.view.Surface;
|
||||
import android.view.WindowManager;
|
||||
import android.app.Activity;
|
||||
import android.hardware.display.DisplayManager;
|
||||
import android.util.DisplayMetrics;
|
||||
import android.hardware.display.VirtualDisplay;
|
||||
import android.media.projection.MediaProjectionManager;
|
||||
import android.os.Looper;
|
||||
@ -76,9 +77,11 @@ public class OrientationAwareScreenCapturer implements VideoCapturer, VideoSink
|
||||
}
|
||||
|
||||
private boolean isDeviceOrientationPortrait() {
|
||||
final int surfaceRotation = windowManager.getDefaultDisplay().getRotation();
|
||||
|
||||
return surfaceRotation != Surface.ROTATION_90 && surfaceRotation != Surface.ROTATION_270;
|
||||
final Display display = windowManager.getDefaultDisplay();
|
||||
final DisplayMetrics metrics = new DisplayMetrics();
|
||||
display.getRealMetrics(metrics);
|
||||
|
||||
return metrics.heightPixels > metrics.widthPixels;
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user