ImageSource was reset in CreateUI wrongly. (#2910)

TabView doesn't save/restore its visual hierarchy.
Cuteness.io source changed to use https.
This commit is contained in:
Hristo Hristov
2016-10-17 13:40:03 +03:00
committed by GitHub
parent 8ce37215f7
commit 644f4c2845
4 changed files with 17 additions and 10 deletions

View File

@@ -10,7 +10,7 @@ var aboutText = "Cuteness is a proof of concept app demonstrating the Telerik's
export var defaultThumbnailImageSource = imageSourceFromFile("~/cuteness.io/res/reddit-logo.png");
export var defaultNoThumbnailImageSource = imageSourceFromFile("~/cuteness.io/res/no-image.png");
var redditUrl = "http://www.reddit.com/r/aww.json?limit=";
var redditUrl = "https://www.reddit.com/r/aww.json?limit=";
var after: string;
var ISSCROLLING = "isLoading";
@@ -40,9 +40,6 @@ export class AppViewModel extends Observable {
if (lastItem) {
after = itemsToLoad[itemsToLoad.length - 1].source.name;
}
}).catch(e => {
setTimeout(() => { throw e; });
});
});
}

View File

@@ -139,6 +139,16 @@ export var test_SettingImageSrcToFileWithinAppAsync = function (done) {
runImageTest(done, image, image.src)
}
export function test_imageSourceNotResetAfterCreateUI() {
let image = new ImageModule.Image();
let imageSource = ImageSourceModule.fromResource("splashscreen.9");
image.imageSource = imageSource;
helper.buildUIAndRunTest(image, (img, page) => {
TKUnit.waitUntilReady(() => image.isLoaded);
TKUnit.assertEqual(image.imageSource, imageSource);
});
}
export var test_SettingImageSrcToDataURIAsync = function (done) {
var image = new ImageModule.Image();
image.loadMode = "async";

View File

@@ -120,7 +120,7 @@ export class Image extends imageCommon.Image {
public _createImageSourceFromSrc() {
let imageView = this._android;
if (!imageView) {
if (!imageView || !this.src) {
return;
}

View File

@@ -227,17 +227,17 @@ export class TabView extends common.TabView {
this._tabLayout.setBackgroundColor(primaryColor);
}
if (this._androidViewId < 0) {
this._androidViewId = android.view.View.generateViewId();
}
this._viewPager = new android.support.v4.view.ViewPager(this._context);
this._viewPager.setId(this._androidViewId);
var lp = new org.nativescript.widgets.CommonLayoutParams();
lp.row = 1;
this._viewPager.setLayoutParams(lp);
this._grid.addView(this._viewPager);
if (this._androidViewId < 0) {
this._androidViewId = android.view.View.generateViewId();
}
this._grid.setId(this._androidViewId);
ensurePageChangedListenerClass();
this._pageChagedListener = new PageChangedListenerClass(this);
(<any>this._viewPager).addOnPageChangeListener(this._pageChagedListener);