Android: ¿Cómo obtener el tamaño de pantalla real del dispositivo?

He intentado diferentes maneras de obtener el tamaño de la pantalla del dispositivo, pero siempre me devolvió el tamaño incorrecto (791x480 en lugar de854x480). Podría ser debido a la barra de navegación. Mi dispositivo está ejecutando JellyBean 4.1.1.

Lo intenté:

Display display = getWindowManager().getDefaultDisplay();  
Point size = new Point();
display.getSize(size);
OpenGLRenderer.widthScreen = size.x;
OpenGLRenderer.heightScreen = size.y;

Y:

DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
String resolution = dm.widthPixels + "x" + dm.heightPixels;

Estoy usando el siguiente código para hacer que la aplicación esté en pantalla completa:

setContentView(mGLSurfaceView);
mGLSurfaceView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);

Noté que en el logcat, se devuelve el tamaño correcto:

01-01 03:05:06.967: I/InputReader(1961): 
    Device reconfigured: id=8, name='cyttsp-spi', 
    surface size is now 480x854, mode is 1

En miAndroidManifest:

uses-sdk android:minSdkVersion="8" android:targetSdkVersion="16"

Solía:

Obtén la resolución de pantalla real en Ice Cream SandwichHTC Sensation Resolución RealObtener las dimensiones de la pantalla en píxeles

¿Por qué no puedo obtener el tamaño real (480x854)? ¿O cómo puedo usar la superficie devuelta por el "Dispositivo reconfigurado"?

Respuestas a la pregunta(4)

Su respuesta a la pregunta