+2009-03-30 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * XplatUIX11.cs: When handling the SelectionRequest event, use
+ SelectionRequestEvent instead of SelectionEvent, so we get the right
+ data for the app asking for clipboard data. Set the member of
+ SelectioneEvent.property to indicate the place where we are storing
+ the information as well - this is specially important for gnome/kde
+ apps using the TARGETS atom to ask for the supported permission before
+ actually asking for a specific format.
+ Fixes #489393.
+
+2009-03-28 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridViewCell.cs: We don't support drawing all types of cell borders,
+ so fallback and at least draw something instead of nothing.
+
+2009-03-27 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: If the column header isn't visible allow resizing
+ using the cell column border. Also be sure to reset the cursor properly.
+ [Fixes bug #489929]
+
+2009-03-26 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * ToolStrip.cs: When disposing, iterate over the items in reverse
+ order, since disposing the items modifies the collection.
+ * ToolStripItem.cs: Remove from the owner when disposing.
+ Fixes #485769.
+
+2009-03-26 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Add an implementation for UpdateRowHeightInfo. No
+ longer throws a NotImplementedException.
+ Based on a patch by Tom Hindle <tom_hindle@sil.org>
+ [Fixes bug #488319]
+
+2009-03-26 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Implement IsCurrentRowDirty. No longer throws
+ NotImplementedException.
+
+2009-03-26 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridViewColumn.cs, DataGridViewTextBoxColumn.cs:
+ Fix SortMode clash handling.
+ [Fixes bug #488263]
+
+2009-03-26 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Do not show the vertical scrollbar if there is only
+ one row or less. For the sake of MSNET compatibility.
+ [Fixes bug #487988]
+
+2009-03-26 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: When the current cell is moved out of the editing row
+ be sure to reset it back to a place holder row.
+
+2009-03-19 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: If IsHandleCreated and the very first row is added
+ to the grid in a non-databound scenario - select the first cell.
+ [Fixes bug #486881]
+
+2009-03-19 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: If we are not databound and empty once the first row
+ gets added select the first cell.
+ [Fixes bug #486881]
+
+2009-03-19 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs, DataGridViewColumn.cs: Do not set Row/CellTemplate's
+ DataGridView. They do not belong to a DataGridView.
+ [Fixes bug #486645]
+
+2009-03-19 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridViewCellCollection.cs, DataGridViewColumnCollection.cs:
+ Set indices and associate with DataGridView only after the item is
+ add to the internal list.
+ [Fixes part of bug #486645]
+
+2009-03-19 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Do not add any cells to the FullRowTemplate in RowCount.
+ FullRowTemplate already contains all the cells.
+ [Fixes part of bug #486645]
+
+2009-03-19 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs, DataGridViewCellCollection.cs: Split the column removal
+ to perform Pre and Post removal actions to allow the current cell to be
+ moved and all events fired properly before the column is removed.
+
+2009-03-19 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs, DataGridViewRow.cs: Split the row removal to perform Pre and
+ Post removal action to allow the current cell to be moved and all events fired
+ properly before the row is removed.
+
+2009-03-18 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Fire CellEnter and CellLeave events for the Cell.
+ [Fixes bug #486640]
+
+2009-03-18 Jonathan Pobst <monkey@jpobst.com>
+
+ * XplatUICarbon.cs: Commit patch from Alex Shulgin that fixes window
+ placement of popup windows on OSX.
+
+2009-03-18 Matt Guo <matt@mattguo.com>
+
+ * FontDialog.cs: Override "ToString" for FontDialog.ColorComboBox.ColorComboBoxItem
+ [Fixes bug #482690]
+
+2009-03-18 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Implement the CellMouseDoubleClick event.
+ [Fixes bug #486262]
+
+2009-03-18 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Fix scrolling to take into account that the
+ scrollbars are actually inside the client area of the datagridview.
+
+2009-03-18 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Implement mouse wheel scrolling.
+ [Fixes bug #486159]
+
+2009-03-17 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: When DataSource changes the rebinding should happen
+ not if IsHandleCreated but if BindingContext != null.
+ [Fixes bug #486013]
+
+2009-03-17 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Browsable(false) properties should be skipped when
+ autogenerating the columns.
+ [Fixes bug #486021]
+
+2009-03-16 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * DomainUpDown.cs: When ReadOnly is true, all the text entered by the
+ user should use a different handling, trying to use every pressed char
+ as a unique and only one prefix to compare against the items. Also,
+ refactor some input check code to avoid duplication.
+ Fixes #458607.
+
+2009-03-16 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridViewCell.cs: In OwningColumng Handle invalid column index
+ silently.
+ [Fixes bug #485278]
+
+2009-03-16 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridViewBand.cs: Update our State whenever a property changes.
+ * DataGridView.cs: Don't be so generous in reseting Displayed, because
+ it will spawn lots and lots of unneeded State changed events.
+ [Fixes bug #484989]
+
+2009-03-16 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs, DataGridViewRow.cs, DataGridViewColumn.cs:
+ Add support for invisible rows and columns.
+ [Fixes bug #484951]
+
+2009-03-16 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridViewCell.cs: Escape literal { in ToString.
+ * DataGridViewTextBoxCell.cs: Fix ToString.
+ [Fixes bug #484923]
+
+2009-03-16 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * MenuAPI.cs: When navigating items using the keyboard properly handle
+ the case when no item is selected - this way we should try to select
+ the first or the last item depending on the direction, but no the
+ second or third one, etc.
+
+2209-03-15 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * Form.cs: When calling ProcessCmdKey, just after checking for any
+ MainMenu, check if there's an active ContextMenu that is *not* owned
+ by the form - this is needed when a non-focusable control owns a
+ ContextMenu but its ProcessCmdKey method can't be called since it
+ can't receive any input.
+ Fixes #477655.
+
+2009-03-13 Neville Gao <nevillegao@gmail.com>
+
+ * ToolBar.cs: Sent ButtonClick events when button style is DropDown.
+ * ContextMenu.cs: Add UIA Framework property UIAVisible to detect if
+ ContextMenu is displayed.
+
+2009-03-12 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * XplatUIX11.cs: In GetMessage when F1 gets pressed, besides sending a
+ WM_HELP message for the associated window, don't call
+ NativeWindow.WndProc *at all*, since this could send a WM_*
+ key-related to Control.WndProc. Also, return the keypress message, in
+ case it needs to be preprocessed for any menu.
+ Fixes #478476.
+
+2009-03-08 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: When removing the first displayed row and moving
+ the current cell up one we must invalidate the first displayed row
+ index before calculating the row heights, etc.
+ [Fixes bug #483202]
+
+2009-03-08 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Fix three column bugs:
+ - Rows should be cleared (but not removed) if columns become 0.
+ - The current cell should get moved
+ - ColumnCount increase was adding too many columns.
+
+2009-03-07 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Fix RowCount decrease which wasn't working well
+ in both scenarions - with and without editing row.
+
+2009-03-06 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Be compatible with MS in that the scroll to
+ selection has a synchronous effect. The trick here is that in
+ order to avoid unnecessary calculations each time a row/column
+ is added/removed we recalculate the whole grid size just before
+ just before the scroll to selection.
+ [Fixes bug #482478]
+
+2009-03-06 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * RichTextBox.cs: LoadFile(string path) should pass by default
+ RichTextBoxStreamType.RichText, without caring about the detection or
+ extension of the file.
+
+2009-03-06 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * RichTextBox.cs: When calling LoadFile, remove the extra EOL
+ introduced by StreamReader, since it will convert the EOF to an EOL.
+ Fixes #479646.
+
+2009-03-06 Jonathan Pobst <monkey@jpobst.com>
+
+ * ToolStripDropDownMenu.cs: Use Math.Max instead of calculating
+ preferred size twice.
+
+2009-03-06 Jonathan Pobst <monkey@jpobst.com>
+
+ * ToolStripMenuItem.cs: Don't draw the dropdown arrow or shortcut
+ string if we aren't on a ToolStripDropDownMenu.
+
+2009-03-06 Jonathan Pobst <monkey@jpobst.com>
+
+ * ToolStripDropDownButton.cs, ToolStripItem.cs: Refactor some Button
+ code from Item to Button. Patch from Alex Shulgin.
+
+2009-03-05 Jonathan Pobst <monkey@jpobst.com>
+
+ * ToolStripDrowDown.cs: Remove some hardcoded values and assumptions.
+ * ToolStripDropDownButton.cs: This should use a ToolStripDropDownMenu,
+ not a ToolStripDropDown.
+ * ToolStripItem.cs: Don't use the item margins on a ToolStripDropDown.
+
+2009-03-04 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Fix RowCount/ColumnCount decreasing.
+
+ Based on a patch by Tom Hindle <tom_hindle@sil.org>
+ [Fixes bug #482133]
+
+2009-03-04 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs, DataGridViewElement.cs:
+ - Always calls OnDataGridViewChanged() if the new DGV is
+ not the same/null as the current one.
+ - Do not throw NREs when setting TopLeftHeaderCell to null
+ - Unset the DGV for TopLeftHeaderCell when replacing it
+ Based on a patch by Tom Hindle <tom_hindle@sil.org>
+ [Fixes bug #481681]
+
+2009-03-04 Jonathan Pobst <monkey@jpobst.com>
+
+ * ToolStripDropDown.cs: When dismissing control due to ESC, don't
+ hit a NRE if we are a ContextMenuStrip and do not have a parent.
+ [Fixes bug #478616]
+
+2009-03-01 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * ListView.cs: When removing items from a ListViewItemCollection
+ contained in ListView (not in ListViewGroup), before actually removing
+ the items remove them also from their -if any- associated groups. If
+ the item is present in ListViewGroup.Items but not in ListView.Items,
+ then don't remove it - this is *exactly* what .net seems to do.
+ Fixes the remaining bits of #478689.
+
+2009-02-28 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * ListView.cs: In our MouseDown handler in ItemControl use the item in
+ the very specific *real* position where the mouse was pressed, using
+ GetItemAtDisplayIndex for that purpose, instead of directly accessing
+ Items - this is specially useful when groups with Details view is
+ used. This is what we do in other places when using groups.
+ Fixes part of #478689.
+
+2009-02-27 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * MaskedTextBox.cs: Properly replace selection when a new valid key
+ is pressed - even when IsOverwriteMode is false. This is what .net
+ does.
+
+2009-02-27 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * MaskedTextBox.cs: When setting Text and RejectOnFirstFailure is
+ true, use MaskedTextProvider.Set instead of MaskedTextProvider.Replace,
+ since Set will keep the previous value in case of error (just what we
+ need), but still call MaskedTextProvider.Clear if
+ RejectOnFirstFailure is false - match .net.
+
+2009-02-26 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * MaskedTextBox.cs: When setting Text use the very precise algorithm
+ that .net uses: iterate over every char of the new value, trying to
+ use every char, and use a normal call to MaskedTextProvider.Replace
+ call if RejectInputOnFirstFailure is true. Fire OnMaskInputRejected
+ in case of error in both cases, as well.
+ Fixes #477408.
+
+2009-02-25 Neville Gao <nevillegao@gmail.com>
+
+ * ColorDialog.cs: Added UIA Framwork Property:
+ UIASelectedSmallColorControl.
+
+2009-02-25 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * MaskedTextBox.cs: Forgot to update the call of the new method
+ introduces in the previous patch.
+
+2009-02-25 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * MaskedTextBox.cs: Handle OnKeyDown to properly process the Delete
+ key. Also create a new method to avoid code duplication between
+ OnKeyDown and OnKeyPress.
+ Fixes #477388.
+
+2009-02-24 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridViewCell.cs: Invalidate the datagrid when the cell is selected
+ or deselected.
+ [Fixes bug #479124]
+
+2009-02-23 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * MaskedTextBox.cs: In OnKeyPress the IsOverwriteMode check is
+ actually inversed, so put it the right way. Also, don't automatically
+ look for the next editable item after adding a new one, but way for
+ the next insertion (this is what .net does) - this is not needed when
+ MaskedTextProvider.InsertAt is called however, since it already looks for the
+ next editable position.
+ Fixes the remaining bits of #477383.
+
+2009-02-23 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * MaskedTextBox.cs: In OnKeyPress handle backspace by calling
+ MaskedTextProvider.RemoveAt method. Also for setting the SelectionStart
+ property after the text was modified, adjust the testPosition value
+ depending on what method was called.
+ Fixes part of #477383.
+
+2009-02-23 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * ListView.cs: For EnsureVisible, adjust the view port bounds based on
+ the existence of the column headers, as well as using this information
+ to adjust the vscrollbar value, so items never get hidden by the
+ column headers.
+ Fixes #478498.
+
+2009-02-23 Ivan N. Zlatev <contact@i-nz.net>
+
+ * DataGridView.cs: Make the ScrollBars property work properly.
+
+2009-02-22 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * TextBox.cs: Some code lifting for AutoComplete's support. First,
+ when handling non-navigation keys, save the original Text typed by the
+ user, and don't motify it BEFORE. This was a design mistake, since the
+ re-assignation happens only when navigating the append/suggest list,
+ not while creating the matches. Also, process the Delete key just like
+ the backspace one. Finally, when handling WM_CHAR, ignore both Escape
+ and Enter keys.
+ Fixes some missing bits of #469967.
+
2009-02-22 Ivan N. Zlatev <contact@i-nz.net>
* DataGridView.cs: Fix row removal in the data-bound scenario.