* NotifyIcon.cs: Make BalloonWindow expose the owner's Handle.
[mono.git] / mcs / class / Managed.Windows.Forms / System.Windows.Forms / ChangeLog
index 2781568e3c01344010f93a86fc57e86ff4a449ab..eb9969ba4f2acc17124f0236114d3dbc3171b414 100644 (file)
@@ -1,3 +1,250 @@
+2010-04-19  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * NotifyIcon.cs: Make BalloonWindow expose the owner's Handle.
+       * Theme.cs:
+       * ThemeWin32Classic.cs: Add a HideBalloonWindow method to force to
+       close an active balloon window.
+       * XplatUIX11.cs: When removing from the system tray try to close
+       the balloon window. This is important when we hide a NotifyIcon and
+       thus need to close its related balloon window as well.
+       Fixes bits of #590093.
+
+2010-04-19  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * XplatUIX11.cs: When adding a NotifyIcon to the system tray, mark its
+       Hwnd.mapped as true, since its handle is going to be mapped later by
+       the tray (not us), but we need to know it's alive and can later properly unmap
+       it.
+       Fixes part of #590093.
+
+2010-04-16  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * TreeNodeCollection.cs: When adding/inserting/setting a new node call
+       TreeView.Sort if needed, and update/recalculate this entire
+       collection in that case.
+       * TreeView.cs: Make 'sorted' internal, instead of directly using
+       Sorted, as this one could trigger a complete Sort() operation.
+
+2010-04-14  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * TreeView.cs: We must use the comparer supplied by TreeViewNodeSorter
+       *always*, since it is used recursively, so checking for a number of
+       top level nodes is useless. This should fix a case where we were not
+       sorting any node with a single root node.
+
+2010-04-14  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * DataGridView.cs: Call the base Paint impl last, instead of do that
+       at the beginning, to let handlers draw on top of us. 
+       Fixes the remaining bits of #587563.
+
+2010-04-14  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * ToolStripItem.cs: Separate the background rendering from the Paint
+       routine, so we can both make sure the background stuff is done first,
+       and we also let our items fire the OnPaint event handlers before or
+       after their own routines.
+       * ToolStripLabel.cs: Move the base call to OnPaint to the end, so any
+       user's Paint handler can draw on top of us, like .Net does.
+       Fixes #587563.
+
+2010-04-13  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * XplatUIX11.cs: When checking for the values returned by
+       _NET_WORKAREA, use current_desktop+1 instead of current_desktop, since
+       we need the actual value, instead of the index (which is 0 based, and
+       is not working in this case). Patch by Andy Stühr
+       (andysmuell@hammerhartes.de).
+       Fixes #494234.
+
+2010-04-04  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * ToolTip.cs: Make TipState internal.
+       * ToolStrip.cs: Use the same idea of ToolTip'state to have our
+       internal timer close the tooltip window after a delay, instead of
+       waiting for the mouse to move to a different item. Also, hide the
+       tooltip window when the handle is destroyed, and also when the control
+       is getting hidden.
+       Fixes #581273.
+
+2010-03-31  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * ListView.cs: Selection should be available after the first time the
+       handle has been created, even if later the handle is destroyed or
+       temporary invalidated.
+       Fixes #584070.
+
+2010-03-01  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * TreeView.cs: When receiving a double click on a node, toggle it only
+       if it has one or more nodes - just as .net does.
+       Fixes #578079.
+
+2010-03-01  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * X11Keyboard.cs: Small correction for the previous patch: I forgot to
+       take into account the case where the buffer used in XLookupString is
+       not empty, but filled with garbage.
+
+2010-03-01  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * X11Keyboard.cs: When handling the key events, sometimes calling
+       either Xutf8LookupString or XLookupString with special chars (such
+       backspace and enter) can result in a buffer filled with garbage, or
+       empty - thus re-use the value returned by the same functions to fill
+       the gap.
+       Fixes #582691.
+
+2010-02-25  Ivan Zlatev  <ivan@ivanz.com>
+
+       * Control.cs: ControllCollaction IList implementation wasn't calling the 
+       Add implementation causing ParentChanged and all sorts of other events not to 
+       get fired.
+       [Fixes bug #580042]
+
+2010-02-25  Ivan Zlatev  <ivan@ivanz.com>
+
+       * DataGridView.cs: If we are setting a new data source and it is 
+       data bindable clear DataMember before binding.
+       [Fixes bug #554296]
+
+2010-02-25  Ivan Zlatev  <ivan@ivanz.com>
+
+       * DataGridViewCheckBoxCell.cs: Toggle the checkbox on Space key press.
+       [Fixes bug #574259]
+
+2010-02-17  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * RichTextBox.cs: When retrieving SelectedRtf/Rtf properly escape any
+       RTF reserved char, so we don't end up messing around the actual rtf
+       values.
+       Fixes part of #575731.
+
+2010-02-16  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * Line.cs: When setting the Text property, if the new text is larger
+       than the previous one, call Grow to update our internal 'widths'
+       array, to be properly in sync with the new text.
+       Fixes #569530.
+
+2010-02-10  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * TabControl.cs: When calculating the layout for the tab pages, take
+       into account the ImageList size info if it exists, even if it is
+       empty.
+
+2010-02-03  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * StatusStrip.cs:
+       * XplatX11.cs:
+       * X11Structs: Implement the new BeginMoveResize method, designed to
+       instruct the window manager to init a resize operation on a top level
+       form. This is used by StatusStrip.
+       * XplatUI.cs:
+       * XplatUIDriver.cs:
+       * XplatUIWin32.cs:
+       * XplatUICarbon.cs: Fill the gaps by creating stubs and updating the
+       method calls.
+       Fixes #573299.
+
+2010-02-01  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * ComboBox.cs: When creating DrawItemEventArgs pass the fore color and
+       back color arguments depending on the higlight/focus state, just like
+       .net.
+       Fixes #572643.
+
+2010-01-20  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * ComboBox.cs: When the normal drop down window is closed, make sure
+       that the auto complete list -if any- is closed as well, instead of
+       stay open without need.
+
+2010-01-20  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * TextBox.cs: When showing the autocomplete listbox, make sure it's on
+       top, by calling the raw XplatUI.SetZOrder for it, since we can't
+       properly call BringToFront on it as it is parentless. This fixes an
+       issue when using this feature with ComboBox's own parentless listbox.
+       Fixes the remaining bits of #489339.
+
+2010-01-19  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * XplatUI.cs:
+       * XplatUIDriver:
+       * XplatUICarbon:
+       * XplatUIWin32:
+       * XplatUIX11.cs: 
+       * XplatUIStructs: Implement support for different kind of audible
+       alerts in Windows, and update the requiered classes.
+       * MessageBox.cs: 
+       * TextBoxBase.cs: Update calls to XplatUI.AudibleAlert.
+       Fixes #473725.
+
+2010-01-18  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * ComboBox.cs: When use manually setting DropDownHeight, ignore the
+       MaxDropDownHeight property - also rename our field 'count' to
+       'visible_items_count' to avoid confusion as much as possible.
+       Fixes an issue with several items, showing an incorrect layout.
+
+2010-01-18  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * RichTextBox.cs: SelectedText should set Modified to true. Observe
+       that this is happening just here, not for the Text property, and
+       neither for the TextBoxBase impl.
+       Fixes #569950.
+
+2010-01-10  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * ToolStripMenuItem.cs: Put the Checked/CheckState logic in a single
+       place and synchronize the events properly. Fixes a lack of
+       coordination between the events - which should be fired together.
+
+2010-01-09  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * TrackBar.cs: Move our events code to a single method, allowing it to
+       optionally fire the Scroll event. This way we both avoid the
+       duplicated calls to OnScroll and also will be able to fire Scroll
+       *before* OnValueChanged in other places.
+       Fixes #568026.
+
+2010-01-04  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * RadioButton.cs: When drawing, if Appearance is Button use the old
+       normal routine in the theme engine, instead of using the one in 2.0,
+       since this last one doesn't support proper rendering of the control as
+       a button.
+       Fixes #567904.
+
+2010-01-03  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * GroupBoxRenderer.cs: Properly use SystemColors.GrayText to draw to
+       text of the group box if it is disabled.
+       Fixes #567847.
+
+2009-12-15  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * Control.cs: When changing the cursor and updating it, do update the
+       cursor immediately even if there's a child control under the current
+       cursor position - this is exactly what .net does.
+       Fixes #555780.
+
+2009-11-19  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * DataGrid.cs: In OnLeave, do cancel or end current edit, depending on
+       the commit_new_row value, instead of just trying to cancel if a new
+       row had been added. This is important when modifying existing rows and
+       then moving the focus out of the control.
+
+2009-11-17  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * XplatUICarbon.cs: Implement the overriden AudibleAlert
+       function in XplatUICarbon.  Currently it throws
+       NotImplementedException which will kill a WinForms application showing
+       a dialog box.
+       Patch by  Erik Ylvisaker (erik@agatelib.org).
+
 2009-11-17  Carlos Alberto Cortez <calberto.cortez@gmail.com>
 
        * DataGrid.cs: In CurrentCell, the check to do nothing in case we are