[corlib] Improve CancellationTokenSource test
[mono.git] / mcs / class / System.Web / System.Web.UI.WebControls / ChangeLog
index 84b1c1aae060562ff68610f8e6c5100efb448104..5ec923ec89aa091fbf230d01b9545f0dde81b68b 100644 (file)
@@ -1,3 +1,516 @@
+2010-07-23  Marek Habersack  <mhabersack@novell.com>
+
+       * MenuItemBindingCollection.cs: added the OnClear,
+       OnRemoveComplete and OnValidate methods (2.0+)
+
+       * MenuItemStyleCollection.cs: added the OnInsert method (2.0+)
+
+       * TreeNodeStyleCollection.cs: added the OnInsert method (2.0+)
+
+       * TreeNodeBindingCollection.cs: added the OnClear,
+       OnRemoveComplete and OnValidate methods (2.0+)
+
+       * ValidationSummary.cs: implemented OnInit (4.0)
+
+       * WizardStepBase.cs: added the LoadViewState, OnLoad and
+       RenderChildren methods (2.0+)
+
+2010-07-22  Marek Habersack  <mhabersack@novell.com>
+
+       * MenuItemBinding.cs: made code a bit more compact.
+       Implemented ToString (4.0)
+
+       * MenuRenderingMode.cs: added (4.0)
+
+       * Menu.cs: added the IncludeStyleBlock and RenderingMode 4.0
+       properties (not used in the code yet).
+
+2010-07-21  Marek Habersack  <mhabersack@novell.com>
+
+       * Wizard.cs: made rendering 100% compliant with .NET (button IDs,
+       2.0+)
+       Implemented LayoutTemplate (4.0+)
+
+       * LinkButton.cs: render id first
+
+       * CreateUserWizard.cs: CreateUserNavigationContainer.UpdateState
+       doesn't add a previous button if we're on the first step.
+
+2010-07-20  Marek Habersack  <mhabersack@novell.com>
+
+       * StyleCollection.cs: added
+
+2010-07-19  Marek Habersack  <mhabersack@novell.com>
+
+       * SqlDataSourceView.cs: added the RaiseUnsupportedCapabilityError
+       method (2.0+)
+
+       * RoleGroupCollection.cs: added OnValidate (undocumented) overload
+
+       * ParameterCollection.cs: added missing Add method overload (2.0+)
+
+       * LiteralControlBuilder.cs: added the AppendLiteralString method
+       override (2.0+)
+
+       * DataKey.cs: implemented IEquatable interface methods (4.0)
+
+       * XmlDataSource.cs: implemented CacheKeyContext property (4.0)
+
+2010-07-16  Marek Habersack  <mhabersack@novell.com>
+
+       * Login.cs, PasswordRecovery.cs: implemented RenderOuterTable
+       (4.0)
+
+       * FormViewRow.cs: added internal property RenderJustCellContents
+       which makes the control render only its children (4.0)
+
+       * FormView.cs: implemented RenderOuterTable property and the
+       ModifiedOuterTableStylePropertyName method (4.0)
+
+2010-07-15  Marek Habersack  <mhabersack@novell.com>
+
+       * WebControl.cs: implemented verifying that no inline style
+       property is set for controls which support the RenderOuterTable
+       property (4.0)
+
+       * IRenderOuterTable.cs: internal helper interface for controls
+       which support the RenderOuterTable property (for now only
+       ChangePassword, 3 more to come)
+
+       * ChangePassword.cs: implemented RenderOuterTable property and the
+       corresponding behavior of not rendering surrounding table when the
+       property is set to false (4.0).
+       Modified BaseChangePasswordContainer to not inherit from Table
+       anymore. Table is an instance variable (always used as the
+       template container in 2.0) which is optionally (and by default)
+       used to contain the templates.
+
+       * PlaceHolder.cs, View.cs, WizardStepBase: added EnableTheming
+       property
+
+       * MultiViewControlBuilder.cs: added
+
+2010-07-14  Marek Habersack  <mhabersack@novell.com>
+
+       * Menu.cs: fixed skip link rendering (no child controls are added
+       in the process, writing directly to HtmlTextWriter). Fixes tests
+       for 4.0
+       If StaticSubMenuIndent equals Unit.Empty on 4.0, default to using
+       16px as the value of the margin-left CSS attribute.
+
+2010-07-13  Marek Habersack  <mhabersack@novell.com>
+
+       * BoundField.cs: implemented HtmlEncodeFormatString property
+       (3.5+) and modified the way FormatDataValue works accordingly.
+
+       * ListBox.cs, CheckBoxList.cs, ListControl.cs: VerifyMultiSelect
+       is not part of the official API. MultiSelect capability validation
+       is performed using an internal virtual method MultiSelectOk ().
+
+       * BaseDataList.cs: OnPagePreLoad is not part of the official API
+
+       * BaseDataBoundControl.cs, BaseDataList.cs, DataListItem.cs,
+       ValidationSummary.cs: implemented 4.0 SupportsDisabledAttribute
+       property.
+
+       * Wizard.cs: wizard table doesn't contain any instances of
+       HtmlAnchor or Image controls. Moved rendering of the skip link
+       anchor to the TableCellNamingContainer class, which does that in
+       RenderChildren by directly writing to the passed writer. Fixes 4.0
+       rendering and all the failing Wizard tests.
+
+2010-07-08  Marek Habersack  <mhabersack@novell.com>
+
+       * CheckBoxList.cs: RepeatLayout property update for new values of
+       the RepeatLayout enum in 4.0
+
+       * TreeView.cs: in 4.0, checkbox renders the value of the current
+       node's ToolTip, if anything, and not Text.
+
+       * RepeatLayout.cs: added two new members, UnorderedList and
+       OrderedList (4.0)
+
+       * ImageMap.cs: implemented missing Enabled property (2.0+)
+       RaisePostBackEvent must be protected and virtual (2.0+)
+       NavigateUrl is ignored if the control is disabled (4.0)
+
+2010-07-07  Marek Habersack  <mhabersack@novell.com>
+
+       * TreeView.cs: 4.0 rendering changes.
+       When using registered CSS classes, the node style must use them in
+       reverse order.
+
+2010-07-06  Marek Habersack  <mhabersack@novell.com>
+
+       * HyperLink.cs: the associated image is not rendered using the
+       Image control.
+
+2010-07-02  Marek Habersack  <mhabersack@novell.com>
+
+       * Menu.cs: 4.0 API updates.
+
+       * GridView.cs: implemented 4.0 properties -
+       SortedAscendingCellStyle, SortedAscendingHeaderStyle,
+       SortedDescendingCellStyle, SortedDescendingHeaderStyle,
+       ClientIDRowSuffix, ClientIDRowSuffixDataKeys, ShowHeaderWhenEmpty
+       along with associated rendering changes.
+
+       * DetailsView.cs, FormView.cs, GridView.cs: 4.0 API changes -
+       renamed ShowPage to SetPageIndex and made it public.
+       Added 4.0 interfaces to inheritance list and implemented them.
+
+       * DataKeyArray.cs: added internal constructor which accepts IList
+       instead of ArrayList. Changed the 'keys' field type to IList.
+
+       * ContainedTable.cs: the 'id' attribute must be rendered last.
+
+       * CheckBox.cs, CheckBoxList.cs, SiteMapPath.cs, Table.cs,
+       TableStyle.cs, TextBox.cs, WebControl.cs: 4.0 rendering changes.
+
+       * Calendar.cs, CompositeControl.cs, DropDownList.cs, HyperLink.cs,
+       Image.cs, ImageButton.cs, Label.cs, LinkButton.cs, LoginName.cs,
+       Panel.cs, Table.cs, TableCell.cs, TableRow.cs:
+       added new 4.0 property, SupportsDisabledAttribute.
+
+2010-06-21  Marek Habersack  <mhabersack@novell.com>
+
+       * BaseValidator.cs, BulletedList.cs, Calendar.cs, CheckBox.cs,
+       CheckBoxList.cs, DataGrid.cs, DropDownList.cs, GridView.cs,
+       HyperLink.cs, ImageButton.cs, LinkButton.cs, ListBox.cs,
+       ListControl.cs, Menu.cs, RadioButton.cs, RadioButtonList.cs,
+       RepeatInfo.cs, Repeater.cs, TextBox.cs, TreeView.cs,
+       ValidationSummary.cs, WebControl.cs: use WebControl.IsEnabled
+       instead of Enabled wherever necessary.
+
+2010-06-16  Marek Habersack  <mhabersack@novell.com>
+
+       * FormView.cs: row values must be retrieved with inclusion of
+       keys. Fixes bug #607722
+
+2010-06-03  Marek Habersack  <mhabersack@novell.com>
+
+       * Parameter.cs, ControlParameter.cs, SessionParameter.cs,
+       CookieParameter.cs, FormParameter.cs, ProfileParameter.cs,
+       QueryStringParameter.cs: Evaluate is 'protected internal virtual'
+       in 4.0.
+
+       * RouteParameter.cs: implemented.
+
+2010-04-28  Marek Habersack  <mhabersack@novell.com>
+
+       * CheckBoxList.cs: do not modify list item status in LoadPostData
+       when the list control is disabled.
+       If an item is selected and it was unchecked by the user, deselect
+       it. Fixes bug #600415
+
+2010-04-13  Marek Habersack  <mhabersack@novell.com>
+
+       * GridView.cs: make sure Header and Footer visibility are set when
+       binding the data. Fixes bug #595567
+
+       * ImageField.cs, CheckBoxField.cs: OnDataBindField must expect
+       sender to be something else than DataControlFieldCell. Fixes bug
+       #595568
+
+2010-04-07  Marek Habersack  <mhabersack@novell.com>
+
+       * FormParameter.cs, CookieParameter.cs, ProfileParameter.cs,
+       QueryStringParameter.cs, SessionParameter.cs: implemented
+       constructor overloads which take DbType as one of the arguments.
+
+2010-04-01  Marek Habersack  <mhabersack@novell.com>
+
+       * FormView.cs: do not show the pager if PagerSettings.Visible is
+       false. Fixes bug #578863
+
+2010-03-29  Marek Habersack  <mhabersack@novell.com>
+
+       * GridView.cs: main table must be created and added to the
+       controls collection before any OnRowCreated event is fired.
+
+2010-03-19 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * TreeView.cs: use enums instead of strings for attributes.
+
+2010-03-06  Marek Habersack  <mhabersack@novell.com>
+
+       * XmlDataSource.cs: reload document when one of Data, DataFile,
+       Transform or TransformFile properties is set. Fixes bug
+       #585968. Fix based on patch from Jeffrey Alvarez
+       <kuritsu@gmail.com>, thanks.
+
+2010-02-19  Marek Habersack  <mhabersack@novell.com>
+
+       * SqlDataSource.cs: call base.OnInit in OnInit. Fixes bug #572781
+
+2010-02-18  Marek Habersack  <mhabersack@novell.com>
+
+       * ListItemCollection.cs: ItemsEnabled and associated code removed
+       - there's no need to alter ListItem's Enabled property when
+       loading view state.
+
+       * ListControl.cs: SaveViewState doesn't set the items collection's
+       ItemsEnabled property as it was removed from ListItemCollection
+
+       * CheckBoxList.cs: LoadPostData never unselects any item. A better
+       fix for bug #377703
+       RenderItem renders items as disabled when Enabled is false, but if
+       Enabled is true, item is rendered according to the value of its
+       own Enabled property. Fixes bug #578770
+
+       * TreeView.cs: RegisterStyle must copy CssClass in addition to
+       other style properties. Fixes bug #580692
+
+2010-01-18  Marek Habersack  <mhabersack@novell.com>
+
+       * Parameter.cs: added missing 3.5 APIs - constructors taking
+       DbType as one of the parameters, ConvertDbTypeToTypeCode,
+       ConvertTypeCodeToDbType and GetDatabaseType. Fixes bug #567850
+
+2010-01-15  Marek Habersack  <mhabersack@novell.com>
+
+       * ChangePassword.cs: BaseChangePasswordContainer forwards
+       EnsureChildControls call to its owner, so that finding controls in
+       the container works correctly.
+
+2009-11-30  Marek Habersack  <mhabersack@novell.com>
+
+       * WebControl.cs: HasAttributes made available as internal for 1.1
+       Avoid calling the Attributes getter many times in
+       CopyBaseAttributes.
+       If TrackViewState is called and attributes state bag already
+       exists, mark all items in the latter as dirty.
+
+       * CheckBox.cs, Button.cs, ImageButton.cs, LinkButton.cs: do not
+       create the Attributes collection if not necessary.
+
+2009-11-16  Marek Habersack  <mhabersack@novell.com>
+
+       * TreeNodeCollection.cs: whenever a node is added, let the owner
+       know about it.
+
+       * TreeNode.cs: added internal property HadChildrenBeforePopulating
+       which is used to let TreeView know about an error condition where
+       a populate-on-demand node contains children added outside the
+       OnTreeNodePopulate event
+
+       * TreeView.cs: if a node has any child nodes and PopulatOnDemand
+       is set, throw an exception from RenderNode. This is the behavior
+       of .NET
+
+2009-11-13  Marek Habersack  <mhabersack@novell.com>
+
+       * TableRowCollection.cs: added .NET compatibility NREX throws to
+       several methods.
+       Whenever a row is added/removed, its Container property is
+       set. Fixes bug #551666
+
+       * TableRow.cs: introduced an internal property, Container, which
+       is set by TableRowCollection whenever this row is added/removed
+       to/from the collection. This allows the row to notify the
+       collectio and, in consequence, collection owner that TableSection
+       has been set and thead/tbody/tfoot elements need to be
+       generated. Fixes bug #551666
+
+2009-11-10  Marek Habersack  <mhabersack@novell.com>
+
+       * PasswordRecovery.cs:
+       {Question,Success,UserName}TemplateContainer must all be populated
+       the first time the property is accessed, so that calling
+       FindControl on the container returns valid and expected
+       results. If the associated template is not defined, though,
+       populating is postponed till CreateChildControls is called -
+       that's where default, empty, template will be created. This is
+       required to fix YetAnotherForum's password recovery control.
+       Mail template used in SendPasswordByMail must match the one used
+       in .NET (it has to end with a newline) as YAF parses the message
+       to retrieve user name and password and breaks if the last line
+       doesn't end with a newline character.
+
+2009-10-30  Marek Habersack  <mhabersack@novell.com>
+
+       * PasswordRecovery.cs: mail message replacements should include <%
+       Password %> and <% UserName %> and matching should be
+       case-insensitive. Fixes bug #545370
+
+2009-10-28  Marek Habersack  <mhabersack@novell.com>
+
+       * ListControl.cs: OnDataBinding must call base implementation
+       before performing the binding, so that DataSource can be assigned
+       from within the handler.
+
+2009-10-13  Marek Safar  <marek.safar@novell.com>
+
+       * WebColorConverter.cs: Delegate ConvertFrom to
+       ColorTranslator.FromHtml, it is correctly implemented and knows
+       many more tricks.
+
+2009-10-13  Marek Habersack  <mhabersack@novell.com>
+
+       * WebColorConverter.cs: don't use a dictionary to check for valid
+       color names, use Color.IsKnownColor instead. Update for bug
+       #546173 fix.
+       Added more CSS2 color name mappings.
+
+2009-10-12  Marek Habersack  <mhabersack@novell.com>
+
+       * WebColorConverter.cs: when converting from color name, check if
+       the returned color's name is a member of the
+       System.Drawing.KnownColor enumeration to test for error condition,
+       as some colors might be #000000. Preserve the old error check as a
+       fallback only. 
+       Map "captiontext" and "background" color names to
+       "ActiveCaptionText" and "Desktop", respectively, before passing
+       them to Color.FromName (). Fixes bug #546173
+
+2009-10-02  Marek Habersack  <mhabersack@novell.com>
+
+       * GridView.cs: added two 3.5 properties - SelectedPersistedDataKey
+       and IPersistedSelector.DataKey.
+
+       * BaseDataBoundControl.cs: slight optimizations to FindDataSource
+
+2009-09-28  Marek Habersack  <mhabersack@novell.com>
+
+       * DataBoundControl.cs: Initialize sets RequiresDataBinding
+       properly, only when we're not data-bound already, when we aren't
+       in postback or when we are in postback, but with viewstate
+       enabled. Fixes bug #542076
+
+2009-09-01  Marek Habersack  <mhabersack@novell.com>
+
+       * ObjectDataSourceView.cs: ExecuteSelect must call
+       QueryTotalRowCount after executing the select method (that's what
+       .NET does)
+
+2009-08-25  Marek Habersack  <mhabersack@novell.com>
+
+       * WebColorConverter.cs: inform the user that the might need to
+       check if libgdiplus is installed when parsing a color name
+       fails. Fixes bug #533749
+
+2009-08-21  Marek Habersack  <mhabersack@novell.com>
+
+       * Menu.cs: separator image is rendered next to the item in
+       horizontal layout and is preceeded by 3px spacer (unless
+       itemSpacing is set) to make output match .NET. Fixes bug #474716
+
+       * TreeNodeCollection.cs: {Save,Load}ViewState now store/load the
+       type of the node, if node is a of a custom type. Fixes bug #475997
+
+2009-06-29 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * Parameter.cs: add new DbType property.
+
+2009-06-16  Marek Habersack  <mhabersack@novell.com>
+
+       * IPersistedSelector.cs: removed AspNetHostingPermission
+       attributes from the 4.0 profile.
+
+       * IDataBoundControl.cs, IDataBoundItemControl.cs,
+       IDataBoundListControl.cs, IFieldControl.cs: added
+
+       * DetailsView.cs: control implements 4.0 IDataBoundItemControl
+       interface.
+
+       * DataBoundControl.cs: implemented 4.0 property DataSourceObject
+       (internal for 2.0) and made the InternalPerformDataBinding method
+       internal for the 4.0 profile.
+
+2009-06-11 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * ContentControlBuilderInternal.cs: detect missing
+       ContentPlaceHolderID attribute when parsing instead of throwing a
+       nullref later on.
+
+2009-05-29  Marek Habersack  <mhabersack@novell.com>
+
+       * ListItem.cs: when tracking view state is turned on after
+       attributes have been set, make sure that the associated state bag
+       begins tracking state and that all of its existing items are
+       marked as dirty. Do the same after loading view state. Fixes bug
+       #507836
+
+2009-04-29  Marek Habersack  <mhabersack@novell.com>
+
+       * DataBoundControl.cs: added InternalGetDataSource method, used by
+       DynamicData
+
+2009-04-28  Marek Habersack  <mhabersack@novell.com>
+
+       * GridView.cs: implemented ColumnsGenerator and enabled its use in
+       CreateColumns.
+
+       * DetailsView.cs: implemented the RowsGenerator property and
+       enabled its use in CreateFieldSet.
+
+2009-04-07  Marek Habersack  <mhabersack@novell.com>
+
+       * TreeView.js: removed nodeText parameter from the JS calls.
+
+       * TreeView.cs: encode | characters into U+007C, so that
+       RaiseCallbackEvent doesn't get confused.
+       Removed nodeText parameter from the JS calls.
+
+2009-04-06 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * TreeNode.cs: reset the path data for all child nodes too.
+       * TreeView.cs: HtmlAttribute encode the node text. When rebuilding the
+       node tree, set the correct index for the nodes so that the Path is
+       correct.
+
+2009-04-06  Marek Habersack  <mhabersack@novell.com>
+
+       * TreeView.js: TreeView_ToggleExpand now takes more parameters - a
+       full definition of treeview's node contents.
+       Added new function, TreeView_PopulateNode, which partially takes
+       over role of the PopulateNode function generated in
+       TreeView.OnPreRender (see below). Fixes bug #492307
+
+       * TreeView.cs: RaiseCallbackEvent needs to recreate the event
+       target's parental tree all the way from the root to the node and
+       populate only the leaf (requested) node. This avoids calling the
+       TreeNodePopulate handler more times than needed. Fixes bug #492307
+       OnPreRender: moved the script code to constants and the script
+       body is now generated using StringBuilder instead of a series of
+       String.Format calls.
+       GetClientExpandEvent: adjusted code for new TreeView JavaScript
+       API.
+
+2009-03-17  Marek Habersack  <mhabersack@novell.com>
+
+       * Unit.cs: introduced a field to tell the difference between empty
+       (as in Unit.Empty) and 0px units.
+
+2009-03-06  Marek Habersack  <mhabersack@novell.com>
+
+       * WebControl.cs: if savedState is not an instance of Pair in
+       LoadViewState, do not attempt to load from it.
+
+2009-02-10  Marek Habersack  <mhabersack@novell.com>
+
+       * ImageButton.cs: AddAttributesToRender renders the onclick
+       attribute only if any of the following is true:
+         - OnClientClick is not empty
+         - Validation is enabled for the control
+         - PostBackUrl is used
+       PostBackOptions now indicate that control requires the javascript
+       protocol for the handler.
+       RaisePostBackEvent passes String.Empty as the argument.
+       Fixes bug #463939
+
+2009-02-09  Marek Habersack  <mhabersack@novell.com>
+
+       * ObjectDataSourceView.cs: ExecuteSelect returns a single-item
+       array of objects containing the result, if the result isn't one of
+       DataSet, DataTable or IEnumerable. Fixes bug #471767
+
+2009-02-06  Marek Habersack  <mhabersack@novell.com>
+
+       * Style.cs: if CssClass is null, return String.Empty. Fixes bug
+       #473303
+       Added a range check to the BorderStyle property.
+
 2009-02-05  Marek Habersack  <mhabersack@novell.com>
 
        * Login.cs: check the value of DisplayRememberMe when creating