mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-11-05 13:26:48 +08:00
Apply getter check to determine if API is exposed as property or as method for iOS backward compatibility
This commit is contained in:
@@ -15,6 +15,9 @@ import timer = require("timer");
|
||||
import trace = require("trace");
|
||||
import types = require("utils/types");
|
||||
import platform = require("platform");
|
||||
|
||||
import * as utils from "utils/utils";
|
||||
|
||||
var sdkVersion = parseInt(platform.device.sdkVersion);
|
||||
|
||||
trace.enable();
|
||||
@@ -377,7 +380,8 @@ export var waitUntilReady = function (isReady: () => boolean, timeoutSec?: numbe
|
||||
var waitTime = 20 / 1000;
|
||||
var totalWaitTime = 0;
|
||||
while (true) {
|
||||
NSRunLoop.currentRunLoop().runUntilDate(<any>NSDate.dateWithTimeIntervalSinceNow(waitTime));
|
||||
utils.ios.getter(NSRunLoop, NSRunLoop.currentRunLoop).runUntilDate(<any>NSDate.dateWithTimeIntervalSinceNow(waitTime));
|
||||
|
||||
if (isReady()) {
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -3,6 +3,9 @@ import app = require("application");
|
||||
import TKUnit = require("./TKUnit");
|
||||
import commonTests = require("./application-tests-common");
|
||||
|
||||
import * as utils from "utils/utils";
|
||||
import getter = utils.ios.getter;
|
||||
|
||||
global.moduleMerge(commonTests, exports);
|
||||
|
||||
// >> application-ios-observer
|
||||
@@ -10,7 +13,7 @@ global.moduleMerge(commonTests, exports);
|
||||
if (app.ios) {
|
||||
var observer = app.ios.addNotificationObserver(UIDeviceBatteryLevelDidChangeNotification,
|
||||
function onReceiveCallback(notification: NSNotification) {
|
||||
var percent = UIDevice.currentDevice().batteryLevel * 100;
|
||||
var percent = getter(UIDevice, UIDevice.currentDevice).batteryLevel * 100;
|
||||
var message = "Battery: " + percent + "%";
|
||||
////console.log(message);
|
||||
});
|
||||
|
||||
@@ -4,6 +4,8 @@ import buttons = require("ui/button");
|
||||
import app = require("application");
|
||||
import platform = require("platform");
|
||||
|
||||
import * as utils from "utils/utils";
|
||||
|
||||
function printDeviceInfoAndroid() {
|
||||
console.log("android.os.Build.DEVICE = " + android.os.Build.DEVICE); //android.os.Build.DEVICE = hammerhead
|
||||
console.log("android.os.Build.VERSION.SDK = " + android.os.Build.VERSION.SDK); //android.os.Build.VERSION.SDK = 19
|
||||
@@ -27,7 +29,7 @@ function printDeviceInfoAndroid() {
|
||||
}
|
||||
|
||||
function printDeviceInfoIOS() {
|
||||
var device = UIDevice.currentDevice();
|
||||
var device = utils.ios.getter(UIDevice, UIDevice.currentDevice);
|
||||
console.log("device.name = " + device.name); //device.name = iPhone Simulator
|
||||
console.log("device.systemName = " + device.systemName); //device.systemName = iPhone OS
|
||||
console.log("device.systemVersion = " + device.systemVersion); //device.systemVersion = 8.1
|
||||
@@ -35,7 +37,7 @@ function printDeviceInfoIOS() {
|
||||
console.log("device.localizedModel = " + device.localizedModel); //device.localizedModel = iPhone Simulator
|
||||
console.log("device.userInterfaceIdiom = " + device.userInterfaceIdiom); //device.userInterfaceIdiom = 0
|
||||
console.log("device.batteryLevel = " + device.batteryLevel); //device.batteryLevel = -1
|
||||
var screen = UIScreen.mainScreen();
|
||||
var screen = utils.ios.getter(UIScreen, UIScreen.mainScreen);
|
||||
console.log("screen = " + screen);
|
||||
console.log("screen.nativeBounds = " + screen.nativeBounds.size.width + ", " + screen.nativeBounds.size.height); //screen.nativeBounds = 640, 1136
|
||||
console.log("screen.scale = " + screen.scale); //screen.scale = 2
|
||||
|
||||
@@ -112,7 +112,9 @@ var testsWithLongDelay = {
|
||||
testLoadExistingUrl: 10000 * 5,
|
||||
testLoadLocalFile: 10000 * 5,
|
||||
testLoadInvalidUrl: 10000,
|
||||
testLoadUpperCaseSrc: 10000 * 5
|
||||
testLoadUpperCaseSrc: 10000 * 5,
|
||||
test_SettingImageSrc: 30 * 1000,
|
||||
test_ChainingAnimations: 30 * 1000
|
||||
}
|
||||
|
||||
var startTime;
|
||||
|
||||
@@ -1,15 +1,17 @@
|
||||
import datePickerModule = require("ui/date-picker");
|
||||
|
||||
import * as utils from "utils/utils";
|
||||
|
||||
export function getNativeYear(datePicker: datePickerModule.DatePicker): number {
|
||||
return NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date).year;
|
||||
return utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date).year;
|
||||
}
|
||||
|
||||
export function getNativeMonth(datePicker: datePickerModule.DatePicker): number {
|
||||
return NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date).month;
|
||||
return utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date).month;
|
||||
}
|
||||
|
||||
export function getNativeDay(datePicker: datePickerModule.DatePicker): number {
|
||||
return NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date).day;
|
||||
return utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date).day;
|
||||
}
|
||||
|
||||
export function getNativeMaxDate(datePicker: datePickerModule.DatePicker): Date {
|
||||
@@ -21,31 +23,31 @@ export function getNativeMinDate(datePicker: datePickerModule.DatePicker): Date
|
||||
}
|
||||
|
||||
export function setNativeYear(datePicker: datePickerModule.DatePicker, value: number): void {
|
||||
var comps = NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date);
|
||||
var comps = utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date);
|
||||
comps.year = value;
|
||||
datePicker.ios.setDateAnimated(NSCalendar.currentCalendar().dateFromComponents(comps), false);
|
||||
datePicker.ios.setDateAnimated(utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).dateFromComponents(comps), false);
|
||||
(<any>datePicker)._changeHandler.valueChanged(datePicker.ios);
|
||||
}
|
||||
|
||||
export function setNativeMonth(datePicker: datePickerModule.DatePicker, value: number): void {
|
||||
var comps = NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date);
|
||||
var comps = utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date);
|
||||
comps.month = value;
|
||||
datePicker.ios.setDateAnimated(NSCalendar.currentCalendar().dateFromComponents(comps), false);
|
||||
datePicker.ios.setDateAnimated(utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).dateFromComponents(comps), false);
|
||||
(<any>datePicker)._changeHandler.valueChanged(datePicker.ios);
|
||||
}
|
||||
|
||||
export function setNativeDay(datePicker: datePickerModule.DatePicker, value: number): void {
|
||||
var comps = NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date);
|
||||
var comps = utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date);
|
||||
comps.day = value;
|
||||
datePicker.ios.setDateAnimated(NSCalendar.currentCalendar().dateFromComponents(comps), false);
|
||||
datePicker.ios.setDateAnimated(utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).dateFromComponents(comps), false);
|
||||
(<any>datePicker)._changeHandler.valueChanged(datePicker.ios);
|
||||
}
|
||||
|
||||
export function setNativeDate(datePicker: datePickerModule.DatePicker, year: number, month: number, day: number): void {
|
||||
var comps = NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date);
|
||||
var comps = utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitYear | NSCalendarUnit.CalendarUnitMonth | NSCalendarUnit.CalendarUnitDay, datePicker.ios.date);
|
||||
comps.year = year;
|
||||
comps.month = month;
|
||||
comps.day = day;
|
||||
datePicker.ios.setDateAnimated(NSCalendar.currentCalendar().dateFromComponents(comps), false);
|
||||
datePicker.ios.setDateAnimated(utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).dateFromComponents(comps), false);
|
||||
(<any>datePicker)._changeHandler.valueChanged(datePicker.ios);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,32 +1,34 @@
|
||||
import timePickerModule = require("ui/time-picker");
|
||||
|
||||
import * as utils from "utils/utils";
|
||||
|
||||
export function getNativeHour(timePicker: timePickerModule.TimePicker): number {
|
||||
return NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitHour | NSCalendarUnit.CalendarUnitMinute, timePicker.ios.date).hour;
|
||||
return utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitHour | NSCalendarUnit.CalendarUnitMinute, timePicker.ios.date).hour;
|
||||
}
|
||||
|
||||
export function getNativeMinute(timePicker: timePickerModule.TimePicker): number {
|
||||
return NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitHour | NSCalendarUnit.CalendarUnitMinute, timePicker.ios.date).minute;
|
||||
return utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitHour | NSCalendarUnit.CalendarUnitMinute, timePicker.ios.date).minute;
|
||||
}
|
||||
|
||||
export function setNativeHour(timePicker: timePickerModule.TimePicker, value: number): void {
|
||||
var comps = NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitHour | NSCalendarUnit.CalendarUnitMinute, timePicker.ios.date);
|
||||
var comps = utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitHour | NSCalendarUnit.CalendarUnitMinute, timePicker.ios.date);
|
||||
comps.hour = value;
|
||||
timePicker.ios.setDateAnimated(NSCalendar.currentCalendar().dateFromComponents(comps), false);
|
||||
timePicker.ios.setDateAnimated(utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).dateFromComponents(comps), false);
|
||||
(<any>timePicker)._changeHandler.valueChanged(timePicker.ios);
|
||||
}
|
||||
|
||||
export function setNativeMinute(timePicker: timePickerModule.TimePicker, value: number): void {
|
||||
var comps = NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitHour | NSCalendarUnit.CalendarUnitMinute, timePicker.ios.date);
|
||||
var comps = utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitHour | NSCalendarUnit.CalendarUnitMinute, timePicker.ios.date);
|
||||
comps.minute = value;
|
||||
timePicker.ios.setDateAnimated(NSCalendar.currentCalendar().dateFromComponents(comps), false);
|
||||
timePicker.ios.setDateAnimated(utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).dateFromComponents(comps), false);
|
||||
(<any>timePicker)._changeHandler.valueChanged(timePicker.ios);
|
||||
}
|
||||
|
||||
export function setNativeTime(timePicker: timePickerModule.TimePicker, hour: number, minute: number): void {
|
||||
var comps = NSCalendar.currentCalendar().componentsFromDate(NSCalendarUnit.CalendarUnitHour | NSCalendarUnit.CalendarUnitMinute, timePicker.ios.date);
|
||||
var comps = utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).componentsFromDate(NSCalendarUnit.CalendarUnitHour | NSCalendarUnit.CalendarUnitMinute, timePicker.ios.date);
|
||||
comps.hour = hour;
|
||||
comps.minute = minute;
|
||||
timePicker.ios.setDateAnimated(NSCalendar.currentCalendar().dateFromComponents(comps), false);
|
||||
timePicker.ios.setDateAnimated(utils.ios.getter(NSCalendar, NSCalendar.currentCalendar).dateFromComponents(comps), false);
|
||||
(<any>timePicker)._changeHandler.valueChanged(timePicker.ios);
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ export function checkNativeBackgroundColor(v: view.View): boolean {
|
||||
if (v.ios instanceof UILabel) {
|
||||
var cgColor1 = (<UILabel>v.ios).layer.backgroundColor;
|
||||
var cgColor2 = (<UIColor>v.backgroundColor.ios).CGColor;
|
||||
return v.backgroundColor && CGColorEqualToColor(cgColor1, cgColor2);
|
||||
return v.backgroundColor && !!CGColorEqualToColor(cgColor1, cgColor2);
|
||||
}
|
||||
|
||||
return v.backgroundColor && (<UIView>v.ios).backgroundColor.isEqual(v.backgroundColor.ios);
|
||||
|
||||
Reference in New Issue
Block a user