Tested with Build 12-13-2011
Issue #1
1. Focus on the first filter field.
2. Tab through the whole page until the focus goes to the Logout button.
3. Tab again, the focus skips the first filter field.
Issue #1
1. Focus on the first filter field.
2. Tab through the whole page until the focus goes to the Logout button.
3. Tab again, the focus skips the first filter field.
Code:
<HTML><HEAD><TITLE>Tabbing in a PopUp</TITLE> <SCRIPT>var isomorphicDir = "isomorphic/"</SCRIPT> <SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT> <SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT> <SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT> <SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT> <SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT> <SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT> <SCRIPT SRC=isomorphic/skins/Enterprise/load_skin.js></SCRIPT> </HEAD><BODY CLASS="pageBackground"> <SCRIPT> isc.screenReader = true; isc.ClassFactory.defineClass("CwButtonItem", "CanvasItem"); isc.CwButtonItem.addProperties({ init:function () { var canvasProperties = { shouldSaveValue: false, cwUploadControl: this.cwUploadControl, $isCwButton: this.$isCwButton, icon: this.icon, iconOrientation: this.iconOrientation, hoverStyle: this.hoverStyle, hoverWidth: this.hoverWidth, //baseStyle: this.buttonStyle, ID: this.widgetID, width: this.width, height: this.height, action: this.cwClick, showRollOver: this.showRollOver, showDown: false, iconWidth: this.iconWidth, iconHeight: this.iconHeight, iconSpacing: this.iconSpacing, name: this.name, autoFit: this.autoFit, title: this.buttonLabel, align: this.textAlign, auditor: this.auditor, $cwname: this.$cwname, autoFit: this.autoFit, iconWidth: this.iconWidth, iconHeight: this.iconHeight, keyPress: this.keyPress }; if (this.buttonStyle != null) { canvasProperties.baseStyle = this.buttonStyle; if (this.cwAutoFit) canvasProperties.overflow = "visible"; } if (this.cwStretchButton) { canvasProperties.autoFit = this.cwAutoFit; canvasProperties.showRollOver = true; canvasProperties.src = this.cwImageSrc; if (this.cwCapSize) canvasProperties.capSize = this.cwCapSize; if (canvasProperties.autoFit) { canvasProperties.overflow = "visible"; } canvasProperties.titleSuffix = ""; if (canvasProperties.autoFit && this.cwLabelLengthPad) canvasProperties.labelLengthPad = this.cwLabelLengthPad; this.canvas = isc.StretchImgButton.create(canvasProperties); } else this.canvas = isc.Button.create(canvasProperties); //this.showTitle = false; this.title = ""; //this is needed for the canvasItem otherwise a title will appear on top of the button or beside it return this.Super("init", arguments); }, setCwDynStyle:function(style) { this.buttonStyle = style; if (this.canvas != null) { this.canvas.setProperty("baseStyle", style); this.canvas.markForRedraw(); if (this.canvas.autoFit && this.form) this.form.markForRedraw(); } }, setCwDynIcon:function(icon) { if (this.canvas != null) { this.canvas.setProperty("icon", style); this.canvas.markForRedraw(); if (this.canvas.autoFit && this.form) this.form.markForRedraw(); } }, setCwDynImage:function(image) { if (this.canvas != null) { this.canvas.setProperty("src", image); this.canvas.markForRedraw(); } } }); isc.screenReader = true; var testData2=[ {pk:0, orderID:8620, itemDescription:"18 inch flat panel monitor", category:"Hardware", shipDate:new Date(2009,11,11), quantity:2 , unitPrice:375 }, {pk:1, orderID:629, itemDescription:"Office Productivity Suite", category:"Software", shipDate:new Date(2009,12,10), quantity:15 , unitPrice:64.99 }, {pk:2, orderID:1264, itemDescription:"Office Productivity Suite", category:"Software", shipDate:new Date(2009,12,20), quantity:2 , unitPrice:64.99 }, {pk:3, orderID:7100, itemDescription:"USB Ergonomic Keyboard", category:"Hardware", shipDate:new Date(2009,10,20), quantity:6 , unitPrice:99.99 }, {pk:4, orderID:9647, itemDescription:"Consulting Services", category:"Services", shipDate:new Date(2009,12,21), quantity:10 , unitPrice:100 }, {pk:5, orderID:8468, itemDescription:"USB Optical Mouse", category:"Hardware", shipDate:new Date(2009,10,10), quantity:5 , unitPrice:29.99 }, {pk:6, orderID:9496, itemDescription:"Off-site Training", category:"Services", shipDate:new Date(2010,1,1), quantity:35 , unitPrice:80 }, {pk:7, orderID:5124, itemDescription:"USB Stereo Headset", category:"Hardware", shipDate:new Date(2009,10,20), quantity:1 , unitPrice:69.99 }, {pk:8, orderID:1799, itemDescription:"Office Application Suite", category:"Software", shipDate:new Date(2009,11,2), quantity:22 , unitPrice:30 }, {pk:9, orderID:7020, itemDescription:"Consulting Services", category:"Services", shipDate:new Date(2009,12,20), quantity:100 , unitPrice:80 }]; isc.DataSource.create({ ID:"orderItemLocal2", clientOnly:true, testData:testData2, fields:[ {name:"pk", type:"sequence", primaryKey:"true", hidden:"true"}, {name:"orderID", type:"integer", canEdit:false, title:"Order ID", pluralTitle:"Orders"}, {name:"itemDescription", type:"text", title:"Description"}, {name:"category", type:"text", title:"Category"}, {name:"shipDate", type:"date", title:"Ship Date"}, {name:"quantity", type:"integer", title:"Quantity"}, {name:"unitPrice", type:"float", title:"Price"} ] }); isc.IButton.create({ top: 20, left: 750, title: "Logout", click: "isc.say('Applied!')" }); isc.ListGrid.create({ ID: "companyList", top: 50, left:100, width:600, height: 300, alternateRecordStyles:true, autoFetchData:true, dataSource:orderItemLocal2, showAllRecords:true, canEdit: true, selectOnEdit: true, showFilterEditor: true, fields:[ {name:"orderID"}, {name:"itemDescription"}, {name:"category"}, {name:"shipDate"}, {name:"quantity"}, {name:"unitPrice"} ], editEvent: "click" }); isc.IButton.create({ top: 380, left: 600, title: "Apply", click: function() { companyList.saveEdits(); companyList.setDataSource(orderItemLocal2); companyList.fetchData(); var currentFocusCanvas = isc.EventHandler.getFocusCanvas(); if (currentFocusCanvas != null) currentFocusCanvas.delayCall("focus"); } }); isc.DynamicForm.create({ ID: "DF", top: 410, left: 100, width: 250, fields: [ {title: "Username", type: "text" } ] }); </SCRIPT></BODY></HTML>
Comment