Fix: Android platform.screen.mainScreen props are not invalidated after orientation change

Resolves #3270
This commit is contained in:
Rossen Hristov
2016-12-12 09:51:45 +02:00
parent b77903f3be
commit 3e461cd38c
9 changed files with 95 additions and 23 deletions

View File

@@ -3,6 +3,12 @@ import definition = require("platform");
import utils = require("utils/utils");
import * as enumsModule from "ui/enums";
declare module "platform" {
export interface ScreenMetrics {
_invalidate(): void;
}
}
const MIN_TABLET_PIXELS = 600;
export module platformNames {
@@ -103,6 +109,11 @@ class Device implements definition.Device {
class MainScreen implements definition.ScreenMetrics {
private _metrics: android.util.DisplayMetrics;
public _invalidate(): void {
this._metrics = null;
}
private get metrics(): android.util.DisplayMetrics {
if (!this._metrics) {
this._metrics = new android.util.DisplayMetrics();

View File

@@ -98,6 +98,11 @@ class Device implements definition.Device {
class MainScreen implements definition.ScreenMetrics {
private _screen: UIScreen;
_invalidate(){
//
}
private get screen(): UIScreen {
if (!this._screen) {
this._screen = utils.ios.getter(UIScreen, UIScreen.mainScreen);