mirror of
https://github.com/encounter/SDL.git
synced 2025-12-08 21:17:45 +00:00
Add SDL_IsTablet() to Android and iOS SDL.
This commit is contained in:
@@ -5,6 +5,7 @@ import java.io.InputStream;
|
||||
import java.util.Arrays;
|
||||
import java.util.Hashtable;
|
||||
import java.lang.reflect.Method;
|
||||
import java.lang.Math;
|
||||
|
||||
import android.app.*;
|
||||
import android.content.*;
|
||||
@@ -776,6 +777,23 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method is called by SDL using JNI.
|
||||
*/
|
||||
public static boolean isTablet() {
|
||||
DisplayMetrics metrics = new DisplayMetrics();
|
||||
Activity sdlActivity = (Activity)getContext();
|
||||
sdlActivity.getWindowManager().getDefaultDisplay().getMetrics(metrics);
|
||||
|
||||
double dWidthInches = metrics.widthPixels / (double)metrics.densityDpi;
|
||||
double dHeightInches = metrics.heightPixels / (double)metrics.densityDpi;
|
||||
|
||||
double dDiagonal = Math.sqrt((dWidthInches * dWidthInches) + (dHeightInches * dHeightInches));
|
||||
|
||||
// If our diagonal size is seven inches or greater, we consider ourselves a tablet.
|
||||
return (dDiagonal > 7.0);
|
||||
}
|
||||
|
||||
/**
|
||||
* This method is called by SDL using JNI.
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user