[TIMOB-17265] Popover: Fails to correctly render a NavigationWindow after first showing the popover
GitHub Issue | n/a |
Type | Bug |
Priority | High |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2014-07-08T18:25:40.000+0000 |
Affected Version/s | Release 3.3.0 |
Fix Version/s | Release 3.4.0 |
Components | iOS |
Labels | module_popover, qe-3.3.0, qe-manualtest |
Reporter | Benjamin Hatfield |
Assignee | Vishal Duggal |
Created | 2014-07-02T22:16:30.000+0000 |
Updated | 2014-08-20T19:09:24.000+0000 |
Description
REPRODUCTION:
Run the code below in the iPad simulator.
RESULTS:
Click on the button to show the popover. It displays correctly.
Dismiss the popover and click on the button to show the popover again. It does not display correctly the second time or on subsequent times.
TEST CODE:
{noformat}
var win = Ti.UI.createWindow({backgroundColor: 'white'});
var contentWindow = Ti.UI.createWindow({
backgroundColor: 'green',
title: 'Popover'
});
contentWindow.add(Ti.UI.createLabel({text: "I'm a popover!"}));
var navWindow = Ti.UI.iOS.createNavigationWindow({window: contentWindow});
var popover = Ti.UI.iPad.createPopover({contentView: navWindow});
var button = Ti.UI.createButton({title: 'Open Popover!'});
button.addEventListener('click', function(e){
popover.show({ view: button });
});
win.add(button);
win.open();
{noformat}
Attachments
WORKAROUND: Setting the height and width properties for the Window and Popover maintains the size of the popover, but the label inside the window still changes position after the first showing of the popover. {noformat} var win = Ti.UI.createWindow({backgroundColor: 'white'}); var contentWindow = Ti.UI.createWindow({ backgroundColor: 'green', title: 'Popover', width: 250, height: 250 }); contentWindow.add(Ti.UI.createLabel({text: "I'm a popover!"})); var navWindow = Ti.UI.iOS.createNavigationWindow({ window: contentWindow, width: 250, height: 250 }); var popover = Ti.UI.iPad.createPopover({ contentView: navWindow, width: 250, height: 250 }); var button = Ti.UI.createButton({title: 'Open Popover!'}); button.addEventListener('click', function(e){ popover.show({ view: button }); }); win.add(button); win.open(); {noformat}
This is not a regression. Was able to reproduce the issue on: SDK build: 3.2.3.GA Appcelerator Studio, build: 3.3.0.201406271159 CLI: 3.3.0-rc4 Alloy: 1.4.0-rc3 Xcode: 5.1.1 Device: iPad Air (7.1.2)
Pull pending against master https://github.com/appcelerator/titanium_mobile/pull/5891
Closing as fixed with: Mac osx 1-.9.4 Maverics Appcelerator Studio, build: 3.4.0.201408180158 Node.JS Version: v0.10.28 NPM Path: /usr/local/bin/npm NPM Version: 1.4.23 acs@1.0.16 alloy@1.5.0-dev (git://github.com/appcelerator/alloy.git#b2e8f580d023e45c63072df924666e58193a8981) install@0.1.7 npm@1.4.23 sudo@1.0.3 titanium@3.4.0-dev (git://github.com/appcelerator/titanium.git#9079326639c7f610dafee33dd16742de7d92d795) titanium-code-processor@1.1.1 Xcode6