Loading cmds/wm/src/com/android/commands/wm/Wm.java +30 −5 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.commands.wm; import android.content.Context; import android.graphics.Point; import android.graphics.Rect; import android.os.RemoteException; import android.os.ServiceManager; Loading Loading @@ -87,9 +88,22 @@ public class Wm { } private void runDisplaySize() throws Exception { String size = nextArgRequired(); String size = nextArg(); int w, h; if ("reset".equals(size)) { if (size == null) { Point initialSize = new Point(); Point baseSize = new Point(); try { mWm.getInitialDisplaySize(Display.DEFAULT_DISPLAY, initialSize); mWm.getBaseDisplaySize(Display.DEFAULT_DISPLAY, baseSize); System.out.println("Physical size: " + initialSize.x + "x" + initialSize.y); if (!initialSize.equals(baseSize)) { System.out.println("Override size: " + baseSize.x + "x" + baseSize.y); } } catch (RemoteException e) { } return; } else if ("reset".equals(size)) { w = h = -1; } else { int div = size.indexOf('x'); Loading Loading @@ -120,9 +134,20 @@ public class Wm { } private void runDisplayDensity() throws Exception { String densityStr = nextArgRequired(); String densityStr = nextArg(); int density; if ("reset".equals(densityStr)) { if (densityStr == null) { try { int initialDensity = mWm.getInitialDisplayDensity(Display.DEFAULT_DISPLAY); int baseDensity = mWm.getBaseDisplayDensity(Display.DEFAULT_DISPLAY); System.out.println("Physical density: " + initialDensity); if (initialDensity != baseDensity) { System.out.println("Override density: " + baseDensity); } } catch (RemoteException e) { } return; } else if ("reset".equals(densityStr)) { density = -1; } else { try { Loading Loading @@ -231,7 +256,7 @@ public class Wm { " wm density [reset|DENSITY]\n" + " wm overscan [reset|LEFT,TOP,RIGHT,BOTTOM]\n" + "\n" + "wm size: override display size.\n" + "wm size: return or override display size.\n" + "\n" + "wm density: override display density.\n" + "\n" + Loading core/java/android/view/IWindowManager.aidl +4 −0 Original line number Diff line number Diff line Loading @@ -60,8 +60,12 @@ interface IWindowManager in IInputContext inputContext); boolean inputMethodClientHasFocus(IInputMethodClient client); void getInitialDisplaySize(int displayId, out Point size); void getBaseDisplaySize(int displayId, out Point size); void setForcedDisplaySize(int displayId, int width, int height); void clearForcedDisplaySize(int displayId); int getInitialDisplayDensity(int displayId); int getBaseDisplayDensity(int displayId); void setForcedDisplayDensity(int displayId, int density); void clearForcedDisplayDensity(int displayId); Loading services/java/com/android/server/wm/WindowManagerService.java +40 −0 Original line number Diff line number Diff line Loading @@ -7291,6 +7291,7 @@ public class WindowManagerService extends IWindowManager.Stub return false; } @Override public void getInitialDisplaySize(int displayId, Point size) { synchronized (mWindowMap) { final DisplayContent displayContent = getDisplayContentLocked(displayId); Loading @@ -7303,6 +7304,19 @@ public class WindowManagerService extends IWindowManager.Stub } } @Override public void getBaseDisplaySize(int displayId, Point size) { synchronized (mWindowMap) { final DisplayContent displayContent = getDisplayContentLocked(displayId); if (displayContent != null) { synchronized(displayContent.mDisplaySizeLock) { size.x = displayContent.mBaseDisplayWidth; size.y = displayContent.mBaseDisplayHeight; } } } } @Override public void setForcedDisplaySize(int displayId, int width, int height) { if (mContext.checkCallingOrSelfPermission( Loading Loading @@ -7405,6 +7419,32 @@ public class WindowManagerService extends IWindowManager.Stub } } @Override public int getInitialDisplayDensity(int displayId) { synchronized (mWindowMap) { final DisplayContent displayContent = getDisplayContentLocked(displayId); if (displayContent != null) { synchronized(displayContent.mDisplaySizeLock) { return displayContent.mInitialDisplayDensity; } } } return -1; } @Override public int getBaseDisplayDensity(int displayId) { synchronized (mWindowMap) { final DisplayContent displayContent = getDisplayContentLocked(displayId); if (displayContent != null) { synchronized(displayContent.mDisplaySizeLock) { return displayContent.mBaseDisplayDensity; } } } return -1; } @Override public void setForcedDisplayDensity(int displayId, int density) { if (mContext.checkCallingOrSelfPermission( Loading Loading
cmds/wm/src/com/android/commands/wm/Wm.java +30 −5 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.commands.wm; import android.content.Context; import android.graphics.Point; import android.graphics.Rect; import android.os.RemoteException; import android.os.ServiceManager; Loading Loading @@ -87,9 +88,22 @@ public class Wm { } private void runDisplaySize() throws Exception { String size = nextArgRequired(); String size = nextArg(); int w, h; if ("reset".equals(size)) { if (size == null) { Point initialSize = new Point(); Point baseSize = new Point(); try { mWm.getInitialDisplaySize(Display.DEFAULT_DISPLAY, initialSize); mWm.getBaseDisplaySize(Display.DEFAULT_DISPLAY, baseSize); System.out.println("Physical size: " + initialSize.x + "x" + initialSize.y); if (!initialSize.equals(baseSize)) { System.out.println("Override size: " + baseSize.x + "x" + baseSize.y); } } catch (RemoteException e) { } return; } else if ("reset".equals(size)) { w = h = -1; } else { int div = size.indexOf('x'); Loading Loading @@ -120,9 +134,20 @@ public class Wm { } private void runDisplayDensity() throws Exception { String densityStr = nextArgRequired(); String densityStr = nextArg(); int density; if ("reset".equals(densityStr)) { if (densityStr == null) { try { int initialDensity = mWm.getInitialDisplayDensity(Display.DEFAULT_DISPLAY); int baseDensity = mWm.getBaseDisplayDensity(Display.DEFAULT_DISPLAY); System.out.println("Physical density: " + initialDensity); if (initialDensity != baseDensity) { System.out.println("Override density: " + baseDensity); } } catch (RemoteException e) { } return; } else if ("reset".equals(densityStr)) { density = -1; } else { try { Loading Loading @@ -231,7 +256,7 @@ public class Wm { " wm density [reset|DENSITY]\n" + " wm overscan [reset|LEFT,TOP,RIGHT,BOTTOM]\n" + "\n" + "wm size: override display size.\n" + "wm size: return or override display size.\n" + "\n" + "wm density: override display density.\n" + "\n" + Loading
core/java/android/view/IWindowManager.aidl +4 −0 Original line number Diff line number Diff line Loading @@ -60,8 +60,12 @@ interface IWindowManager in IInputContext inputContext); boolean inputMethodClientHasFocus(IInputMethodClient client); void getInitialDisplaySize(int displayId, out Point size); void getBaseDisplaySize(int displayId, out Point size); void setForcedDisplaySize(int displayId, int width, int height); void clearForcedDisplaySize(int displayId); int getInitialDisplayDensity(int displayId); int getBaseDisplayDensity(int displayId); void setForcedDisplayDensity(int displayId, int density); void clearForcedDisplayDensity(int displayId); Loading
services/java/com/android/server/wm/WindowManagerService.java +40 −0 Original line number Diff line number Diff line Loading @@ -7291,6 +7291,7 @@ public class WindowManagerService extends IWindowManager.Stub return false; } @Override public void getInitialDisplaySize(int displayId, Point size) { synchronized (mWindowMap) { final DisplayContent displayContent = getDisplayContentLocked(displayId); Loading @@ -7303,6 +7304,19 @@ public class WindowManagerService extends IWindowManager.Stub } } @Override public void getBaseDisplaySize(int displayId, Point size) { synchronized (mWindowMap) { final DisplayContent displayContent = getDisplayContentLocked(displayId); if (displayContent != null) { synchronized(displayContent.mDisplaySizeLock) { size.x = displayContent.mBaseDisplayWidth; size.y = displayContent.mBaseDisplayHeight; } } } } @Override public void setForcedDisplaySize(int displayId, int width, int height) { if (mContext.checkCallingOrSelfPermission( Loading Loading @@ -7405,6 +7419,32 @@ public class WindowManagerService extends IWindowManager.Stub } } @Override public int getInitialDisplayDensity(int displayId) { synchronized (mWindowMap) { final DisplayContent displayContent = getDisplayContentLocked(displayId); if (displayContent != null) { synchronized(displayContent.mDisplaySizeLock) { return displayContent.mInitialDisplayDensity; } } } return -1; } @Override public int getBaseDisplayDensity(int displayId) { synchronized (mWindowMap) { final DisplayContent displayContent = getDisplayContentLocked(displayId); if (displayContent != null) { synchronized(displayContent.mDisplaySizeLock) { return displayContent.mBaseDisplayDensity; } } } return -1; } @Override public void setForcedDisplayDensity(int displayId, int density) { if (mContext.checkCallingOrSelfPermission( Loading