[ https://issues.apache.org/jira/browse/FLEX-13423?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13678955#comment-13678955 ]
Justin Mclean commented on FLEX-13423: -------------------------------------- Unable to reproduce in develop branch. Can you describe the steps to reproduce it with this code? <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx"> <s:layout> <s:VerticalLayout /> </s:layout> <fx:Script> <![CDATA[ import mx.events.CalendarLayoutChangeEvent; protected function changed(event:CalendarLayoutChangeEvent):void { var length:int = dc.selectedRanges.length; var selected:String = ""; for (var i:int; i < length; i++) { selected += " " + dc.selectedRanges[i].rangeStart + " - " + dc.selectedRanges[i].rangeEnd; } l.text = selected; } ]]> </fx:Script> <mx:DateChooser id="dc" change="changed(event)" allowMultipleSelection="true" /> <s:Label id="l" /> </s:Application> As far a sI can see removeRangeFromSelection doesn't contain code above. mx_internal function removeRangeFromSelection(startDate:Date, endDate:Date):void { var rangeEnd:Date; var rangeStart:Date; if (endDate < startDate) return; for (var n:int = 0; n < selectedRangeCount; n++) { rangeStart = _selectedRanges[n].rangeStart; rangeEnd = _selectedRanges[n].rangeEnd; // ignore selection range outsie of date range if (endDate < rangeStart || startDate > rangeEnd) continue; // remove selection range inside of date range if (startDate <= rangeStart && endDate >= rangeEnd) { _selectedRanges[n] = null; } // split selection range if date range inside selection range else if (startDate > rangeStart && endDate < rangeEnd) { var temp:Date = _selectedRanges[n].rangeEnd; _selectedRanges[n].rangeEnd = addSubtractDays(startDate, -1); _selectedRanges[selectedRangeCount] = {}; _selectedRanges[selectedRangeCount].rangeStart = addSubtractDays(endDate, +1); _selectedRanges[selectedRangeCount].rangeEnd = temp; selectedRangeCount++; } // move selection start date if end overlaps else if (endDate >= rangeStart) { _selectedRanges[n].rangeStart = addSubtractDays(endDate, +1); } // move selection end date if start overlaps else if (startDate <= rangeEnd) { _selectedRanges[n].rangeEnd = addSubtractDays(startDate, -1); } } // clean up any removed selections for (n = selectedRangeCount -1; n > 0; n--) { if (_selectedRanges[n] == null) { _selectedRanges.splice(n,1); selectedRangeCount--; } } } > DateChooser selectedRanges gives selectedRange start+1 day [if > selectedRanges.rangeStart is same as selectableRange.rangeStart] > ------------------------------------------------------------------------------------------------------------------------------- > > Key: FLEX-13423 > URL: https://issues.apache.org/jira/browse/FLEX-13423 > Project: Apache Flex > Issue Type: Bug > Components: mx: DateChooser > Affects Versions: Adobe Flex SDK Previous > Environment: Affected OS(s): Windows > Affected OS(s): Windows XP > Language Found: English > Reporter: Adobe JIRA > Assignee: Justin Mclean > Priority: Minor > Labels: easyfix, easytest > Fix For: Apache Flex 4.10.0 > > > Steps to reproduce: > 1. Compile and run the below sample piece of code > <?xml version="1.0" encoding="iso-8859-1"?> > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> > <mx:DateChooser id="dc" selectableRange="{{rangeStart: new > Date(2007,11,11), rangeEnd: new Date(2007,11,19)}}" > allowMultipleSelection="true" /> > <mx:Button label="Selected Range" click="run()"/> > <mx:Script> > <![CDATA[ > public function run():void{ > for(var > i:int=0;i<dc.selectedRanges.length;i++) > { > > trace(dc.selectedRanges[i].rangeStart); > > trace(dc.selectedRanges[i].rangeEnd); > } > } > ]] > > > </mx:Script> > </mx:Application> > 2. Notice that selectable range is in between 11-December to 19-December > 3. Select all the dates > 4. Click on the button 'Selected Range'. Notice that in the trace selected > range start shows 12-December. > Actual Results: DateChooser selectedRanges gives selectedRange start+1 day. > > > Expected Results: selectedRange start date should be 11-December. > > > Workaround (if any): none > -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira