+2006-10-29 Chris Toshok <toshok@ximian.com>
+
+ * Form.cs: remove the try-catch's around calls to GetWindowState.
+ We can just check the return value.
+
+ * XplatUIX11.cs: don't throw exceptions from GetWindowState.
+ Instead return -1.
+
+ * XplatUI.cs: Add note about additional return value for
+ GetWindowState.
+
+2006-10-29 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs (CreateHandle): when we create our handle, we also
+ create the handles of our child controls. Fixes one of the
+ Control unit tests (CH11).
+
+2006-10-28 Alexander Olk <alex.olk@googlemail.com>
+
+ * MimeIcon.cs: If a gnome icon doesn't exist add a default icon.
+
+2006-10-28 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeClearlooks.cs: A little speedup.
+
+2006-10-27 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs: implement Control.FromChildHandle in a way that
+ matches the docs (and fixes the failed test.)
+
+2006-10-27 Chris Toshok <toshok@ximian.com>
+
+ * DataGridTableStyle.cs: reproduce buggy MS behavior (with
+ comments).
+
+ * DataGrid.cs: implement ResetForeColor such that the tests
+ succeed.
+
+2006-10-27 Chris Toshok <toshok@ximian.com>
+
+ * ToolBarButton.cs: setting text/tooltiptext to null results in it
+ being set to "". Fixes bug #79759.
+
+2006-10-27 Jackson Harper <jackson@ximian.com>
+
+ * TextControl.cs: We need to clear the entire selection area when
+ setting the start, otherwise multiline selections are still
+ visible.
+
+2006-10-26 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGridView.cs:
+
+ - ifdef all the code specific to the double
+ buffer case, and provide some alternatives in the non-doublebuffer
+ code, which makes heavy use of XplatUI.ScrollWindow to move things
+ around without having to invalidate (and cause flicker). There
+ are still some drawing problems in the non-doublebuffered case, so
+ DOUBLEBUFFER is defined by default.
+
+ - Fix the way dropdowns are handled. now we explicitly watch for
+ the events which might cause the dropdown to close, and break out
+ of the nested event loop there. This gets rid of all Capture
+ code, at the expense of the Msg special casing. Seems to work,
+ though, and fixes bug #79743.
+
+2006-10-27 Rolf Bjarne Kvinge <RKvinge@novell.com>
+ * Control.cs: SetIsRecreating now recreates implicitly added
+ child controls as well. Finally fixes #79629. The flag passed to
+ SetIsRecreating has also been removed since it wasn't used.
+
+2006-10-26 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * PageSetupDialog.cs: Clean some code, fix some bits,
+ add some checks, and add a printer sub-dialog.
+
+2006-10-26 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGrid.cs: make set_SelectedObject call
+ set_SelectedObjects, and move the duplicate logic to the
+ SelectedObjects setter. Also, raise SelectedObjectsChanged.
+
+ * PropertyGridView.cs: hide the textbox when we get a
+ SelectedObjectsChanged event.
+
+ Fixes bug #79748.
+
+2006-10-26 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGridView.cs: deal with the type converter not supporting
+ GetStandardValues() or GetStandardValues() returning null, which
+ is does in the default case. Fixes #79742.
+
+2006-10-25 Andreia Gaita <shana.ufie@gmail.com>
+
+ * CheckedListBox.cs: nunit no longer crashes when selecting
+ Project/Edit menu option
+
+2006-10-25 Andreia Gaita <shana.ufie@gmail.com>
+
+ * MenuAPI.cs: prevent ExecFocusedItem from blowing up if there
+ is no menu selected. fixes #79739
+
+2006-10-25 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGridView.cs: factor out the splitter invalidation code
+ into the SplitterPercent setter, and for kicks implement the
+ Ctrl-Left/Ctrl-Right handling that moves the splitter by a small
+ amount in either direction.
+
+2006-10-25 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGridView.cs: do some cleanup of the brush used to draw
+ text - read only fields should be grayed out. not sure how to do
+ this with the textbox, though. but the textbox's should also be
+ readonly now at least. Also, hide/show the textbox when resizing
+ the control.
+
+ * CursorConverter.cs: use System.Reflection when getting the
+ properties of Cursors, as TypeDescriptor.GetProperties isn't
+ returning static properties.
+
+2006-10-25 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGridView.cs: factor out the up/down handling, and reuse
+ it for page up/down. also add End/Home support.
+
+2006-10-25 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGridView.cs:
+
+ - ensure the selected grid item is visible in the scrolled area,
+ fixes bug #79572.
+
+ - fix Keys.Down handling when you're on the last item in the
+ propertygrid.
+
+2006-10-25 Mike Kestner <mkestner@novell.com>
+
+ * MenuAPI.cs : set the ActiveTracker for MainMenu non-popup
+ clicks too. Fixes #79725.
+
+2006-10-24 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGrid.cs: use property.Converter instead of
+ TypeDescriptor.GetConverter(property.PropertyType), so we catch
+ TypeConverters declared on the property as well as on the
+ PropertyType. Fixes bug #79678.
+
+2006-10-24 Alexander Olk <alex.olk@googlemail.com>
+
+ * MimeIcon.cs, Mime.cs:
+ Fallback to the default platform handler if no shared mime info
+ stuff exists (fixes #79693).
+
+2006-10-20 Andreia Gaita <shana.ufie@gmail.com>
+ * ContainerControl.cs: Incorrect contains check in ActiveControl
+ from previous fix (duh).
+
+2006-10-20 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGridView.cs: the dropdown should be MIN(number of items
+ in list, 15). Fixes #79551.
+
+2006-10-20 Andreia Gaita <shana.ufie@gmail.com>
+ Fixes #79384, #79394, #79652, #79667
+ * Application.cs:
+
+ - Modal windows are now destroyed in the proper order for windows
+
+ * ContainerControl.cs:
+
+ - ActiveControl setter has more conditions on when to return:
+ - if we're reselecting the active control, but it actually
+ didn't have focus (window hidden or some such), it runs
+ - if the active control being selected doesn't actually
+ exist in the container, it returns
+
+ * Form.cs
+
+ - The ShowDialog now gets the current form as the owner when
+ invoking without parameters, and correctly activates the owner
+ when returning
+
+ * MessageBox.cs
+
+ - MessageBox now catches the Escape key to exit
+
+2006-10-20 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGridView.cs: fix a number of issues (bug #78565, and
+ most of bug #79676):
+
+ - you can navigate around the property grid with the arrow keys.
+
+ - the dropdown is sized properly when the pg has a vertical
+ scrollbar.
+
+ - fix the indentation for subentries, and properly select the
+ entire label rect.
+
+ - fix the gray bar's drawing (only draw it to the last element,
+ not for the height of the control. Also make sure we draw that
+ last horizontal grid line.
+
+ - use the same mechanism the datagrid uses wrt the editing textbox
+ when scrolling/resizing/etc. Namely, we hide it first, do the
+ operation, then show it again (if it's still visible).
+
+ - aggressively remove a lot of unnecessary refreshes (and also
+ calls to Invalidate(). call more limited variants, and only redraw
+ what we need.)
+
+ * PropertyGrid.cs:
+
+ - when we're populating the merged collection, fill in the UI
+ parent with either the passed in item, or the category item we
+ create.
+
+ - remove the Refresh call from the BorderHelpControl.OnSizeChanged.
+
+ * GridItem.cs: drop some fully qualified names.
+
+ * GridEntry.cs: add a "UIParent", which is basically the parent
+ treenode.
+
+ * GridItemCollection.cs: add an IndexOf method.
+
+2006-10-20 Mike Kestner <mkestner@novell.com>
+
+ * MainMenu.cs : go back to Draw in OnMenuChanged. Until we get
+ a working win32 NC invalidation mechanism, we can't invalidate
+ menus. [Fixes #79705]
+
+2006-10-20 Mike Kestner <mkestner@novell.com>
+
+ * ListBox.cs : don't update the VScrollbar if the list is empty,
+ just hide it. [Fixes #79692]
+
+2006-10-20 Jackson Harper <jackson@ximian.com>
+
+ * RichTextBox.cs: Handle some special chars better, and don't skip
+ the entire group when we encounter a special char that we don't
+ handle correctly.
+
+2006-10-18 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGridView.cs: address a number of issues from bug #79676,
+ mostly of the cosmetic variety.
+
+ - The highlight rectangle for indented items not extends all the
+ way to the left.
+
+ - Indented items aren't indented so much.
+
+ - the dropdown is properly sized width-wise if the pg has a
+ vertical scrollbar.
+
+2006-10-18 Chris Toshok <toshok@ximian.com>
+
+ * XplatUIX11.cs (SystrayAdd): a rather convoluted change, but the
+ systray stuff is rather convoluted to begin with.
+
+ systray icons are a single window for some reason (that I haven't
+ figured out yet), and for them, client_window == whole_window.
+ Given the way the tests are structured elsewhere to determine
+ which paints are pending (client vs. nc), that situation will
+ always yield PAINT, not NCPAINT. So, if we have a pending
+ nc_expose and no pending expose, remove the hwnd from the paint
+ queue, and also set nc_expose_pending to false, to keep us from
+ blocking further expose's adding the hwnd to the paint queue.
+
+ phew. like i said, a rather convoluted change. Fixes the
+ notifyicon repaint issues in bug #79645.
+
+2006-10-18 Chris Toshok <toshok@ximian.com>
+
+ * Form.cs: when getting the backcolor of the form, don't get
+ base.BackColor, as this allows parents to influence the background
+ color. This breaks mdi forms. Instead, if the background_color
+ is empty, return the default.
+
+2006-10-18 Chris Toshok <toshok@ximian.com>
+
+ * XplatUIX11.cs: change some debug ifdefs, and return XGetParent
+ to being private instead of internal static.
+
+ * Control.cs: remove all the stupid ParentWaitingOnRecreation
+ crap, it wasn't working for more deeply nested controls anyway,
+ and we already have the is_recreating flag - use that instead.
+ Before calling DestroyHandle in RecreateHandle, recurse through
+ the control tree setting it to true. this returns the recreate
+ code to much of its original simplicity, while now guaranteeing we
+ actually recreate everything we're supposed to. This change gets
+ fyireporting actually showing mdi children.
+
+2006-10-17 Chris Toshok <toshok@ximian.com>
+
+ * Form.cs: remove some debug spew, and collapse some duplicate
+ code at the end of SetClientSizeCore.
+
+ * XplatUIX11.cs:
+ - add some more debug spew here too wrt Destroy handling.
+ - don't call hwnd.Dispose in DestroyWindow, it's effectively done
+ in Control's handling of WM_DESTROY.
+ - Remove the handling of zombie window DestroyNotifies from the
+ event loop - we don't need it. Now the only DestroyNotifies we
+ actually handle are ones generated by X.
+ - When sending _NET_ACTIVE_WINDOW, the first param should be 1, to
+ match gtk's (functioning) handling of this. This keep metacity
+ from leaving droppings in the form of wm borders with no window
+ contents all over the place.
+
+ * Control.cs:
+ - add a bunch of debug spew wrt control recreation.
+ - fix a bug where we weren't tracking Visible properly on
+ recreated hwnds.
+ - fixed the WM_PAINT double buffer handling to support re-entrant
+ calls (yes, i know it's gross, but it's happening to us).
+
+2006-10-17 Rolf Bjarne Kvinge <rolfkvinge@ya.com>
+ * ThemeWin32Classic.cs: changed drawing of selected days
+ to make them look better.
+
+2006-10-16 Chris Toshok <toshok@ximian.com>
+
+ * Hwnd.cs: replace the user_data/client_dc/non_client_dc with
+ drawing_stack. Nuke the ClientDC/NonClientDC properties.
+
+ * XplatUIX11.cs: move away from using hwnd.client_dc and
+ hwnd.non_client_dc and on to a stack of dc's (and in window's
+ case, PAINTSTRUCT's), so we can deal with nested Paint calls
+ without puking or not disposing of Graphics objects.
+
+ * XplatUIOSX.cs: same.
+
+ * XplatUIWin32.cs: same.
+
+2006-10-03 Alexander Olk <alex.olk@googlemail.com>
+
+ * FileDialog.cs: Don't call on_directory_changed inside
+ OnSelectedIndexChanged (it changes the SelectedIndex too).
+ Instead move it to OnSelectionChangeCommitted.
+
+2006-10-13 Chris Toshok <toshok@ximian.com>
+
+ * XplatUIX11.cs: more Destroy work. the current code does the
+ following things, in order:
+
+ 1. Enumerates all handles of all controls at or below the one
+ being destroyed, in pre-order. As it is doing this, it marks the
+ handles as zombie and clears all references to them.
+
+ 2. calls XDestroyWindow on the window passed in.
+
+ 3. SendMessage's WM_DESTROY to all he handles in the accumulated
+ list.
+
+2006-10-13 Chris Toshok <toshok@ximian.com>
+
+ * XplatUIX11.cs: set hwnd.zombie to true before calling
+ SendMessage (WM_DESTROY). this keeps us from marking the new
+ window a zombie, and also keeps us from calling sendmessage at
+ all.
+
+2006-10-13 Jackson Harper <jackson@ximian.com>
+
+ * TextControl.cs: Do not show the caret and selection at the same
+ time. Reduces ugliness by 35%.
+
+2006-10-13 Chris Toshok <toshok@ximian.com>
+
+ * XplatUIX11.cs (SendWMDestroyMessages): set the hwnd to be a
+ zombie after we do the recursive call, so we actually do call
+ SendMessage on the children controls.
+ (GetMessage): if we find a pending paint event for a zombie hwnd,
+ remove the hwnd from the paint queue, or else it will always be
+ there (and we'll effectively loop infinitely)
+
+2006-10-13 Mike Kestner <mkestner@novell.com>
+
+ * MenuItem.cs : add Selected format under keynav too.
+ Fixes #79528.
+
+2006-10-13 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * PropertyGrid.cs: Fixed some NRE's and small difference between our
+ implementation and that of MS.
+
+2006-10-13 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs (OnInvalidated) only futz with the invalid_region if
+ the control is double buffered. this fixes the apparent hang in
+ the ListView unit tests. Someone needs to make the
+ BeginEndUpdateTest not call OnInvalidated 15004 times, though..
+
+2006-10-13 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGridView.cs:
+
+ - do a little refactoring so that only one place calls
+ dropdown_form.Hide, and that is CloseDropDown. make everywhere
+ else call that. Also make it Refresh, since there are redraw bugs
+ otherwise (we should take a look at that...)
+
+ - do a little more refactoring work to share the body of code
+ involved with the drop down. it was duplicated in the code
+ dealing with the listbox handling and in the code dealing with the
+ UITypeEditors.
+
+ - add a Capture to the dropdown form's control once it's
+ displayed, and add a MouseDown handler that checks to make sure
+ the position is inside the control. If it's not, close the
+ dropdown. This fixes #78190.
+
+ - in SetPropertyValueFromUITypeEditor, only call SetPropertyValue
+ if the value is different than the initial value.
+
+2006-10-13 Andreia Gaita <shana.ufie@gmail.com>
+
+ * Control.cs: see #78650
+ - Fixed GetNextControl for several cases:
+ - Changed FindFlatForward to return
+ correct sibling control when more than one
+ control has same TabIndex as the currently
+ focused one.
+ - Changed FindFlatBackward to loop children
+ from last to first and apply same logic as in
+ FindFlatForward
+ - Changed FindControlForward to search for
+ children when control is not a container
+ but has children, or search for siblings if
+ control is a container...
+ - Changed FindControlBackward to continue
+ searching for child controls when hitting
+ Panel-like parents
+
+ - Fixed Focus method to update ActiveControl
+ (FocusTest.FocusSetsActive failure)
+
+ * TabControl.cs:
+ - Focus rectangle now refreshes when gaining
+ or losing focus
+ - Removed grab for Tab key on IsInputKey that
+ was keeping tab navigation from working (#78650)
+
+2006-10-13 Chris Toshok <toshok@ximian.com>
+
+ * PropertyGridView.cs:
+ - Rewrite SetPropertyValue to loop over SelectedGridItem's
+ SelectedObjects.
+
+ - Deal with GridItem.Value == null a few places.
+
+ * PropertyGrid.cs:
+ - replace the PopulateGridItemCollection with a pair of methods
+ which compute the intersection of all the properties in the
+ SelectedObjects array. Fixes #79615.
+
+ - Throw ArgumentException from set_SelectedObjects if there's a
+ null in the array.
+
+ - Add GetTarget method which can be used to traverse up the
+ GridItem.Parent chain. It depends on the assumption that
+ selected_objects for different GridEntries are always in the same
+ order (a safe assumption). Use this method and loop over all the
+ selected objects in the entry when calling RemoveValueChanged and
+ AddValueChanged.
+
+ * GridEntry.cs: Make this handle multiple selected objects.
+ .Value returns null if not all the selected objects share the same
+ value.
+
+2006-10-12 Jonathan Pobst <monkey@jpobst.com>
+ * ToolStrip.cs, ToolStripButton.cs, ToolStripComboBox.cs,
+ ToolStripControlHost.cs, ToolStripItem.cs, ToolStripLabel.cs,
+ ToolStripProfessionalRenderer.cs, ToolStripProgressBar.cs,
+ ToolStripSeparator.cs, ToolStripSplitStackLayout.cs,
+ ToolStripTextBox.cs: Add accessibility, fix attributes/API and
+ add additional functionality.
+
+2006-10-12 Mike Kestner <mkestner@novell.com>
+
+ * ErrorProvider.cs : new ToolTipWindow ctor sig.
+ * HelpProvider.cs : new ToolTipWindow ctor sig.
+ * ToolTip.cs : remove ToolTip param from Window sig since it is
+ not used.
+ * ToolBar.cs : add tooltip support. Fixes #79565.
+
+2006-10-12 Rolf Bjarne Kvinge <rolfkvinge@ya.com>
+
+ * ComboBox.cs: move the events in set_SelectedIndex to
+ after the call to HighlightIndex in order to avoid
+ possible recursion and subsequent problems with the call
+ to HighlightIndex and include a range check in
+ set_HighlightIndex. Fixes #79588
+
+2006-10-12 Rolf Bjarne Kvinge <rolfkvinge@ya.com>
+
+ * MonthCalendar.cs: When FirstDayOfWeek is default set firstday
+ to ui thread's settings instead of sunday.
+ * ThemeWin32Classic.cs: Localize the day string. Fixes #79563
+
+2006-10-12 Rolf Bjarne Kvinge <rolfkvinge@ya.com>
+
+ * DateTimePicker.cs
+ * MonthCalendar.cs
+ * ThemeWin32Classic.cs: rewrote DateTimePicker to fix bug #78364
+ and implement missing functionality (selecting different parts
+ of the date and edit them individually with the keyboard).
+
+2006-10-11 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs (OnInvalidated): fix NRE relating to last change.
+
+2006-10-11 Chris Toshok <toshok@ximian.com>
+
+ * XplatUIX11.cs (SetWMStyles): make sure we include the MAXIMIZED
+ atoms in _NET_WM_STATE here if the window is maximized. We need
+ to do this because we're *replacing* the existing _NET_WM_STATE
+ property, so those atoms will be lost otherwise, and any further
+ call to GetWindowState will return Normal for a window which is
+ actually maximized. Fixes #79338.
+
+2006-10-11 Jackson Harper <jackson@ximian.com>
+
+ * TextControl.cs: Special case for setting selection end to
+ selection start, we basically kill the anchor.
+ - some todo comments.
+
+2006-10-11 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs: switch to using an "invalid_region" to track which
+ parts of the image buffer need updating. This is more code than
+ the simple fix from r66532. That version just attempted to always
+ fill the entire buffer on redraw, which turns out to be
+ inefficient when invalidating small rectangles. This version
+ simply adds the invalid rectangle to the invalid region. When we
+ get any WM_PAINT message we see if it can be filled using the
+ image buffer, and if it can't (if the paint event's clip rectangle
+ is visible in the invalid region) we first fill the image buffer.
+ So, the image buffer is still a cache, we just fill it lazily.
+
+ * PaintEventArgs.cs: remove the SetClipRectangle method, we don't
+ need it any longer.
+
+2006-10-11 Chris Toshok <toshok@ximian.com>
+
+ * XplatUIX11.cs (SetWindowPos): we need to update both position as
+ well as size after calling XMoveResizeWindow. This keeps us from
+ ignoring future SetWindowPos calls. Fixes the disappearing
+ DateTimePicker in the ToolBarDockExample from bug #72499.
+
+2006-10-11 Chris Toshok <toshok@ximian.com>
+
+ * TextBoxBase.cs: reorder things a bit when it comes to
+ resizing-causing-recalculation. we were recalculating the
+ document when our position was changed, which shouldn't happen.
+ We only care about size changes. Clear up some more redundant
+ recalculation calls while I'm at it. This makes the toolbar dock
+ example snappy when you're just dragging toolbars around (since it
+ causes a relayout whenever you move one.)
+
+2006-10-11 Chris Toshok <toshok@ximian.com>
+
+ * ToolBarButton.cs (get_Rectangle): this only returns
+ Rectangle.Empty if Visible == false, or Parent == null.
+ Parent.Visible doesn't matter.
+
+2006-10-10 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs, PaintEventArgs.cs: "internal set { .. }" isn't loved
+ by .net 1.1, so switch to an internal method instead.
+
+2006-10-10 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs (WM_PAINT): when a control is double buffered we draw
+ initially to the ImageBuffer and then copy from there. But when a
+ parent control which has child controls is double buffered, the
+ initial drawing doesn't encompass the entire ClientRectangle of
+ the parent control, so we end up with uninitialized bits (this is
+ easily seen by dragging the top toolbar in
+ wf-apps/ToolBarDockExample to the right, quickly). The fix is to
+ manually set the ClipRectangle of the paint_event (only the one we
+ use to populate the ImageBuffer) to ClientRectangle. Fixes more
+ of the nastiness in bug #72499.
+
+ * PaintEventArgs.cs: Add an internal setter for ClipRectangle,
+ which we use in Control.cs's WM_PAINT handling.
+
+2006-10-10 Jackson Harper <jackson@ximian.com>
+
+ * TextBoxBase.cs: Finish off the autoscrolling stuff.
+
+2006-10-10 Chris Toshok <toshok@ximian.com>
+
+ * Cursor.cs: Apply a slightly different patch to the one suggested
+ in #79609.
+
+2006-10-10 Jackson Harper <jackson@ximian.com>
+
+ * MenuItem.cs: Make sure to put the mdi child in the hashtable,
+ not the parent form.
+ * TextControl.cs: use difference in old line count vs new count to
+ calculate how many lines were added, this takes into account soft
+ line breaks properly.
+
+2006-10-10 Chris Toshok <toshok@ximian.com>
+
+ * LinkLabel.cs: don't call MeasureCharacterRanges against a
+ rectangle located at 0,0 and the size of the text. Use
+ ClientRectangle instead. This fixes rendering of non-left aligned
+ link labels.
+
+2006-10-10 Jackson Harper <jackson@ximian.com>
+
+ * TextBoxBase.cs: When we set the selection start position the
+ caret.
+ * TextControl.cs: Need to update the caret when we decrement it to
+ zero.
+ - Make sure that the selection_visible flag gets reset to false if
+ the selection isn't visible. Before this you could get it set to
+ visible by changing the selection start, then changing the end to
+ equal the start.
+
+2006-10-09 Jackson Harper <jackson@ximian.com>
+
+ * TreeView.cs: Don't update scrollbars when we aren't visible.
+ * TreeNodeCollection.cs: Only need to update scrollbars if being
+ added to an expanded visible node or the root node.
+
+2006-10-09 Chris Toshok <toshok@ximian.com>
+
+ * XplatUIX11.cs (SendMessage): fix NRE.
+
+2006-10-09 Jackson Harper <jackson@ximian.com>
+
+ * TextBoxBase.cs: Implement horizontal autoscrolling.
+ * TextControl.cs: Add a movement types that allows moving forward
+ and backwards without wrapping.
+
+2006-10-09 Mike Kestner <mkestner@novell.com>
+
+ * ListViewItem.cs : layout changes for wrapped LargeIcon labels
+ with focus "expansion" of labels. Fixes #79532 and then some.
+ * ThemeWin32Classic.cs : add LineLimit to ListView label format
+ when wrapping.
+
+2006-10-09 Jackson Harper <jackson@ximian.com>
+
+ * TextBoxBase.cs: Set the default max values to MaxValue since
+ we use the scrollbar for autoscrolling and the default value is
+ 100. If we don't do this the caret won't keep up with typing
+ after about 18 characters.
+ * TextControl.cs: Make sure the selection is offset by the
+ viewport x. This fixes selection when using auto scrolling.
+
+2006-10-07 Andreia Gaita <shana.ufie@gmail.com>
+
+ * Form.cs: The active control should be selected after the
+ OnLoad so that any child control initialization that affects
+ the selection is done. Fixes #79406
+
+2006-10-06 Chris Toshok <toshok@ximian.com>
+
+ * XplatUIX11.cs: This is perhaps a dangerous change, but it seems
+ to have no evil effects.
+
+ - Stop selecting StructureNotifyMask on non-toplevel windows.
+
+ The only way children should be resized is by using the SWF api,
+ and we already send WM_WINDOWPOSCHANGED messages in those cases.
+ Toplevel windows can be interacted with via the window manager,
+ and so we keep the input mask there.
+
+ The other event StructureNotifyMask gives us (that we care
+ about) is DestroyNotify. The code is already structured such
+ that it assumes we won't be getting a DestroyNotify event for
+ the window we pass to XDestroyWindow (which is what
+ StructureNotifyMask is supposed to guarantee.) So, that code
+ shouldn't be affected by this either.
+
+ - Stop selecting VisibilityChangeMask altogether.
+
+ We weren't doing anything with the resulting events anyway.
+
+ This vastly reduces the number of X requests and events we see
+ when resizing/laying out a large ui.
+
+2006-10-06 Chris Toshok <toshok@ximian.com>
+
+ * ScrollableControl.cs (DisplayRectangle): we need to take into
+ account the DockPadding regardless of whether or not auto_scroll
+ == true. rework this slightly to this effect, and fix bug #79606,
+ and part of #72499 (you can now see the drag handles and drag
+ toolbars around).
+
+2006-10-06 Gert Driesen <drieseng@users.souceforge.net>
+
+ * ListViewItem.cs: Collections of selected and checked items are now
+ dynamically rebuilt. Whenever an item is (un)checked or (de)selected
+ we mark the collection "dirty".
+ * ListView.cs: Marked collections readonly. Modified UpdateSelection
+ to only clear SelectedItems when a new item is selected and MultiSelect
+ is enabled. CheckedItems and SelectedItems now subscribe to Changed
+ event of ListViewItemCollection, and mark its list dirty whenever
+ that event is fire. This allows us to return selected/checked items
+ in the same order as they are in the Items collection. This matches
+ the MS behavior.
+
+2006-10-06 Chris Toshok <toshok@ximian.com>
+
+ * NotifyIcon.cs (HandleMouseUp): only show the context menu on
+ right mouse clicks. Fixes bug #79593.
+
+2006-10-06 Chris Toshok <toshok@ximian.com>
+
+ * Splitter.cs: doh, fix splitters that don't want to cancel the
+ movement when you drag them. Also, impose the limits on the
+ values we send to the SplitterMovingEvent. Fixes #79598.
+
+2006-10-06 Jackson Harper <jackson@ximian.com>
+
+ * TextBoxBase.cs: Ignore whether or not the scrollbar is enabled,
+ since we use this for auto scrolling also.
+
+2006-10-05 Chris Toshok <toshok@ximian.com>
+
+ * DataGridBoolColumn.cs: Nuke the code from ConcedeFocus. I'm
+ beginning to think that most datagrid column types don't need this
+ method. Fixes bug #79392.
+
+2006-10-05 Chris Toshok <toshok@ximian.com>
+
+ * DataGrid.cs: move back to a more lazy scheme for creating the
+ CurrencyManager, so we aren't updating it every time you set
+ either DataSource or DataMember. Also, don't call
+ RecreateDataGridRows if the currency manager hasn't changed.
+
+2006-10-05 Chris Toshok <toshok@ximian.com>
+
+ * ComboBox.cs: by the time the OnSelectionChangeCommitted event is
+ emitted, SelectedIndex should already be updated. Fixes bug
+ #78929.
+
+2006-10-05 Jonathan Pobst <monkey@jpobst.com>
+
+ * ToolStripComboBox.cs, ToolStripControlHost.cs, ToolStripProgressBar,
+ ToolStripTextBox.cs: Initial commit.
+ * ToolStripItem.cs: Fixes for OnLayout, BackColor, Parent.
+
+2006-10-05 Jackson Harper <jackson@ximian.com>
+
+ * TabControl.cs: We need to invalidate the tab control area when
+ new ones are added (duh).
+
2006-10-03 Chris Toshok <toshok@ximian.com>
* Form.cs (ProcessDialogKey): if the focused control is in this
* TextBoxBase.cs: in CalculateScrollBars make sure LargeChange is
>= 0. Fixes bug #79370.
-2006-09-15 Jonathan Pobst <monkey@jpobst.com>
+2006-09-15 Jonathan Pobst <monkey@jpobst.com>
* FlowLayoutPanel.cs, FlowLayoutSettings.cs: Initial commit.
* Control.cs:
Add properties: LayoutEngine, Margin, DefaultMargin.
* FileDialog.cs: Store the configuration file in ~/.mono/mwf_config
-2006-09-13 Jonathan Pobst <monkey@jpobst.com>
+2006-09-13 Jonathan Pobst <monkey@jpobst.com>
* SplitContainer.cs, SplitterPanel.cs: Initial implementation [2.0].