+2006-05-17 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUIX11.cs: If client_window ends up being width or height zero
+ due to border settings, move it off window inside whole_window (#78433)
+
+2006-05-17 Alexander Olk <alex.olk@googlemail.com>
+
+ * Mime.cs: Shrink the mime file cache correctly.
+
+2006-05-17 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeWin32Classic.cs: Readded button focus drawing code. (#78429)
+
+2006-05-16 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUIX11.cs (AddExpose): More sanity checks
+
+2006-05-16 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUIX11.cs:
+ - AddExpose: Don't add expose ranges outside the size of our
+ window
+ - Cast opacity values to Int32 to avoid crashes with certain
+ values
+ - Added disabled code paths that protect against illegal cross-
+ thread painting (Developers.exe)
+
+2006-05-16 Peter Dennis Bartok <pbartok@novell.com>
+
+ * ProgressBar.cs: Invalidate the control when it's resized
+ since block size is based on control size. (#78388)
+
+2006-05-16 Miguel de Icaza <miguel@novell.com>
+
+ * DataGrid.cs (SetDataBinding): per the discussion on irc, instead
+ of setting the incoming argument to the "reset" value, we set the
+ this.datamember to string.empty (before we were invalidating the
+ incoming data).
+
+ Fixes 78420
+
+2006-05-16 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Form.cs: Only apply transparency settings after the form
+ is created. (Fixes #77800)
+
+2006-05-16 Peter Dennis Bartok <pbartok@novell.com>
+
+ * ApplicationContext.cs: Grab the HandleDestroyed event so
+ we know when to fire OnMainFormClosed
+
+2006-05-16 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Application.cs: Introduced sub-class to allow tracking of
+ threads and centralized triggering of the event mess for
+ ThreadExit, AppExit, etc.. (#76156)
+
+2006-05-16 Alexander Olk <alex.olk@googlemail.com>
+
+ * MimeIcon.cs:
+ - Do not return a null icon index value for a mime subclass.
+ Instead try the main mime type class too.
+ - Seems that some newer distributions don't have a link to some
+ gnome default icons anymore. So check the default gnome dir too.
+
+
+2006-05-16 Jackson Harper <jackson@ximian.com>
+
+ * MdiClient.cs: Don't paint the parent background image if we have
+ our own background image.
+
+2006-05-16 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs:
+ - PerformLayout: Do not shrink space filled by DockStyle.Fill
+ controls, all filled controls are supposed to overlap (#78080)
+ - UpdateZOrder is supposed to update the control's z-order in the
+ parent's z-order chain. Fixed to behave like that
+ - BringToFront: Removed obsolete code
+ - SendToBack: Simplyfied
+ - SetChildIndex: Trigger layout calculations when Z-order changes
+ since layout is done by z-order
+
+2006-05-16 Chris Toshok <toshok@ximian.com>
+
+ [ fixes bug #78410 ]
+ * DataGrid.cs (set_AlternatingBackColor): use
+ grid_drawing.InvalidateCells instead of Refresh().
+ (set_BackColor): call grid_drawing.InvalidateCells.
+ (set_BackgroundColor): use Invalidate instead of Refresh.
+
+ * DataGridDrawingLogic.cs (InvalidateCells): new function, just
+ invalidate the cell area.
+
+2006-05-15 Chris Toshok <toshok@ximian.com>
+
+ [ fixes bug #78011 ]
+ * ThemeWin32Classic.cs (DataGridPaintRows): pass the clip argument
+ on to DataGridPaintRow.
+ (DataGridPaintRow): take a clip argument, and only draw the cells
+ which intersect it. same with the not_usedarea.
+
+ * Theme.cs (DataGridPaintRow) add @clip parameter.
+
+ * DataGrid.cs (ScrollToColumnInPixels): simplify, use
+ XplatUI.ScrollWindow.
+ (ScrollToRow): same.
+
+ * DataGridDrawingLogic.cs (UpdateVisibleColumn): fix corner case
+ with last column which was causing a gray swath to appear with the
+ XplatUI.ScrollWindow code.
+
+2006-05-15 Chris Toshok <toshok@ximian.com>
+
+ * ListBox.cs (HorizontalScrollEvent): in the non-multicolumn case,
+ use XplatUI.ScrollWindow.
+ (VerticalScrollEvent): use XplatUI.ScrollWindow.
+
+2006-05-15 Peter Dennis Bartok <pbartok@novell.com>
+
+ * TextBoxBase.cs: Added handling of middle-button paste for X11. (#78375)
+
+2006-05-15 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Cursors.cs: For X11, read NWSE and NESW cursors from our resource
+ file since there are no equivalent X11 cursors
+
+2006-05-15 Atsushi Enomoto <atsushi@ximian.com>
+
+ * MonthCalendar.cs : DateTimePicker should reflect selected date
+ on mouse*up*, not mouse*down*. Fixed originally reported part of
+ bug #76474.
+
+2006-05-15 Atsushi Enomoto <atsushi@ximian.com>
+
+ * TabControl.cs : When argument index is equal or more than tab
+ count, just ignore. Fixed bug #78395.
+
+2006-05-15 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs: Dispose all child controls when control is diposed (#78394)
+
+2006-05-14 Alexander Olk <alex.olk@googlemail.com>
+
+ * ColorDialog.cs: Finally it is possible to select the color with
+ the text boxes
+
+2006-05-14 Alexander Olk <alex.olk@googlemail.com>
+
+ * PrintDialog.cs: Fix typo
+
+2006-05-14 Alexander Olk <alex.olk@googlemail.com>
+
+ * PrintDialog.cs: PrintDialog is not resizable
+ * ThemeWin32Classic.cs: Draw non links in LinkLabel with the correct
+ color. Made some ToolBar drawing methods protected virtual.
+
+2006-05-13 Jordi Mas i Hernandez <jordimash@gmail.com>
+
+ * PrintDialog.cs: Implementation of the PrintDialog
+
+2006-05-12 Chris Toshok <toshok@ximian.com>
+
+ * ScrollBar.cs (set_Value): don't use Dirty/Invalidate to move the
+ thumb, instead use MoveThumb. This has the side effect of making
+ most of the other thumb moving machinery use MoveThumb as well.
+ (OnHandleCreated): pass false for @dirty to UpdateThumbPos, as we
+ need to actually invalidate the rectangle where the new thumb will
+ go.
+ (MoveThumb): use XplatUI.ScrollWindow to move the thumb around.
+ We force an Update() after, so it's not as fast as it could be,
+ but at least there's zero flicker and no droppings.
+ (OnMouseMoveSB): in the thumb dragging case, use MoveThumb.
+ (UpdateThumbPos): add another argument (dirty), which says whether
+ or not to calculate/add dirty regions which we later invalidate.
+ For cases where we know we're going to use MoveThumb, we pass
+ false for this. Otherwise, pass true.
+
+2006-05-12 Jackson Harper <jackson@ximian.com>
+
+ * ThemeWin32Class.cs: Fixes for alignment and icon rendering in
+ the status bar.
+
+2006-05-12 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs: Added new SetClipRegion
+ and GetClipRegion methods and UserClipWontExposeParent property.
+ * XplatUIWin32.cs: Implemented SetClipRegion/GetClipRegion methods,
+ overriding UserClipWontExposeParent property, setting to false, since
+ Win32 handles the required expose messages to draw our clipped parent
+ areas internally
+ * XplatUIX11.cs: Implemented SetClipRegion and GetClipRegion; updated
+ PaintEventStart to set the user clip region if set.
+ * Control.cs:
+ - Now internally tracking the Region for the control since we need to
+ store it if the handle is not yet created and only set it when it
+ becomes created. Before setting the region forced handle creation
+ - Added code to draw the parents underneath a user-clipped region
+ * Hwnd.cs: Added UserClip property
+
+2006-05-12 Chris Toshok <toshok@ximian.com>
+
+ * ScrollBar.cs (set_LargeChange): Refresh() -> InvalidateDirty()
+ (set_Maximum): same.
+ (set_Minimum): same.
+ (set_SmallChange): same.
+ (OnMouseUpSB): remove the call to refresh when releasing the
+ thumb. We shouldn't need it.
+
+2006-05-12 Miguel de Icaza <miguel@novell.com>
+
+ * StatusBar.cs (UpdatePanel): If the panel being refreshes has the
+ AutoSize set to None, we do not need to relayout everything, we
+ just need to invalidate the current region.
+
+ (Draw): Do not draw the entire ClientArea, just redraw the
+ clip area being passed.
+
+ * MdiClient.cs: Make MdiClient constructor with the Form argument
+ internal.
+
+2006-05-12 Jackson Harper <jackson@ximian.com>
+
+ * ThemeWin32Classic.cs (DrawToolBar): Flat toolbars get their
+ parents background image, but strangely not their own.
+ - (DrawStatusBarPanel): Take into account horizontal alignment
+ when drawing the strings and icons.
+
+2006-05-12 Mike Kestner <mkestner@novell.com>
+
+ * ListBox.cs: avoid invalidations for focus when the collection is
+ empty.
+
+2006-05-12 Chris Toshok <toshok@ximian.com>
+
+ * ScrollBar.cs (OnMouseMoveSB): when dragging the thumb, don't
+ invalidate the entire thumb area. Call InvalidateDirty which
+ limits the redraw to the thumb itself and surrounding pixels.
+
+ * XplatUIX11.cs (ScrollWindow): optimize copying.
+
+2006-05-12 Chris Toshok <toshok@ximian.com>
+
+ * DataGridDrawingLogic.cs: make CalcGridAreas non-reentrant.
+ Figure out the positioning/layout in a single pass instead of
+ multiple recursive invocations. Speeds up the initial display of
+ the data grid. Also, make many things private that were
+ originally public but unused outside this class.
+
+2006-05-11 Jackson Harper <jackson@ximian.com>
+
+ * MdiClient.cs: Improved layout code.
+
+2006-05-11 Jonathan Chambers <jonathan.chambers@ansys.com>
+
+ * PropertyGrid.cs : Only check GetPropertiesSupported for properties,
+ not SelectedObject.
+
+2006-05-11 Chris Toshok <toshok@ximian.com>
+
+ * Hwnd.cs (Invalid): don't start off with Rectangle.Empty, as
+ union of that will always be {0,0,width,height}.
+
+2006-05-11 Jackson Harper <jackson@ximian.com>
+
+ * Form.cs: Match MS's DefaultSize for forms (they must have
+ changed the size in sp2).
+
+2006-05-11 Atsushi Enomoto <atsushi@ximian.com>
+
+ * TextBoxBase.cs : implement CTRL+A (select all). Fixed bug #78368.
+
+2006-05-11 Atsushi Enomoto <atsushi@ximian.com>
+
+ * TextControl.cs : Fixed bug #78109. This incorrect position
+ comparison caused crash on automatic line split.
+ * TextBoxBase.cs : reduce duplicate code.
+
+2006-05-10 Jackson Harper <jackson@ximian.com>
+
+ * MdiClient.cs: Active form is only sent to the back when using
+ the Next form functionality, when a form is clicked the current
+ active shouldn't be sent to the back.
+ - Layout the mdi windows when the container is first made visible.
+ * Form.cs: Give the MdiClient a ref to the containing form when we
+ create it.
+
+2006-05-10 Atsushi Enomoto <atsushi@ximian.com>
+
+ * LinkLabel.cs : link_font could be uninitialized, so populate one
+ before actual use. Fixed bug #78340.
+
+2006-05-10 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XplatUIX11.cs : clipboard format native value is IntPtr.
+ Fixed bug #78283.
+
+2006-05-10 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs:
+ - Instead of showing context menus directly we send WM_CONTEXTMENU,
+ which is passed up the parent chain by DefWndProc
+ - We now handle WM_CONTEXTMENU to display any menu, or pass it
+ to DefWndProc (#77956)
+ * XplatUIX11.cs: Added handling of WM_CONTEXTMENU (pass up) to DefWndProc
+
+2006-05-10 Jackson Harper <jackson@ximian.com>
+
+ * MdiClient.cs: We need to remove the controls from the mdi
+ collection, when we close the window.
+ * MdiWindowManager.cs: Special handling of closing mdi windows.
+ * InternalWindowManager.cs: Make the close method virtual so the
+ mdi window manager can handle it specially.
+
+2006-05-10 Jordi Mas i Hernandez <jordimash@gmail.com>
+
+ * DataGrid.cs:
+ - Recalculate grid when the data source has changed
+ - Matches styles provided by user from all data sources types
+ * DataGridTableStyle.cs: For columns that provided by the user set the
+ with the preferred value is there was unassigned.
+ * CurrencyManager.cs: throw OnItemChanged event
+
+2006-05-10 Peter Dennis Bartok <pbartok@novell.com>
+
+ * PictureBox.cs: Don't animate until handle is created. Start animation
+ when handle is created.
+
+2006-05-10 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUIX11.cs, Hwnd.cs: Adopted Mike's patch from #77979 to match
+ current codebase.
+ * XEventQueue.cs: We don't need to provide the extra info
+
+2006-05-10 Jackson Harper <jackson@ximian.com>
+
+ * MdiClient.cs: If the mdi clients parent form has a background
+ image set, we draw that background image for the mdi area's
+ background.
+
+2006-05-10 Peter Dennis Bartok <pbartok@novell.com>
+
+ * TextBoxBase.cs: Set IBeam cursor (#78347)
+
+2006-05-10 Mike Kestner <mkestner@novell.com>
+
+ * ToolBar.cs: fix some text padding issues with ButtonSize
+ calculation. Update the default size to match MS documentation.
+ * ToolBarButton.cs: use ToolBar.ButtonSize for layout of unspecified
+ button size. Fixes #78296.
+
+2006-05-10 Mike Kestner <mkestner@novell.com>
+
+ * ListBox.cs: use is_visible for scrollbar positioning in case the
+ control isn't on screen yet. Fix off by one with Right vs Width
+ usage. Update Scrollbars in SetBoundsCore. Fixes #78188 and #78258.
+
+2006-05-10 Jackson Harper <jackson@ximian.com>
+
+ * X11Dnd.cs: Drop to a control with another control on top of it.
+ * ToolBar.cs: Work on a copy of the buttons list, so that it can
+ be modified in click handlers. TODO: Look for similar problems in
+ other controls.
+
+2006-05-09 Jackson Harper <jackson@ximian.com>
+
+ * Form.cs: Window managers need the old window state when setting
+ window state now.
+ * InternalWindowManager.cs: Allow the base mdi window manager to
+ handle more of the MDI only stuff (like maximize buttons).
+ * MdiWindowManager.cs: Fix some snafus in changing the window
+ state. Add all the menu functionality, for both popup and
+ maximized menus.
+ * MdiClient.cs: When a new form is selected the currently
+ activated form is sent to the back, this matches MS.
+ - Implement a new method to activate the next mdi child window.
+
+2006-05-08 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs:
+ - Added new InternalCapture method to allow controls to prevent
+ the capture behaviour on the click handlers
+ - Switched to use InternalCapture
+ * ComboBox.cs:
+ - Using InternalCapture to prevent mouse captures from being released
+ on mouse button release (Fixes #78100)
+ * XplatUIX11.cs (DeriveStyles): Now checks caption state and only
+ returns Form borders if a caption is present. (Fixes #78310)
+
+2006-05-08 Peter Dennis Bartok <pbartok@novell.com>
+
+ * TreeNode.cs: Changed serialization .ctor to not require every field
+ to be present. (#78265)
+ * OwnerDrawPropertyBag.cs: Added serialization .ctor
+
+2006-05-05 Alexander Olk <alex.olk@googlemail.com>
+
+ * MimeIcon.cs: for is faster than foreach for strings.
+
+2006-05-05 Mike Kestner <mkestner@novell.com>
+
+ * CheckedListBox.cs: update check handling code to not use selected.
+ * ListBox.cs: rewrite of mouse selection handling to correspond to MS
+ behavior for visual feedback, motion response, shift/ctrl handling,
+ and properly deal with all 4 selection modes. Updates to bounds
+ handling logic. Add scroll wheel support. [Fixes #77842]
+
+2006-05-05 Peter Dennis Bartok <pbartok@novell.com>
+
+ * ListView.cs:
+ - Moved adding of Implicit controls into .ctor. That way, subsequent
+ creation of the controls will not cause them to think they are
+ toplevel windows (fixes #78200 header problem)
+ - Added 2.0 ShowGroups and UseCompatibleStateImageBehaviour
+ - Switched visibility setting of header control to use internal field
+ to avoid triggering handle creation
+ - Now checking if handle is created before causing a refresh when items
+ are added (This makes us now match handle creation time with MS)
+ * Splitter.cs: Removed loading of private splitter cursor, switched to
+ Cursors version now that that is loading the right ones
+ * Cursors.cs: Load proper splitter cursors from resources
+ * Cursor.cs: Added second method of loading resource cursors for the
+ VS.Net users amongst us
+
+2006-05-05 Mike Kestner <mkestner@novell.com>
+
+ * ListView.cs: give header_control a minimum size based on the
+ ListView size.
+
+2006-05-05 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUIX11.cs: WS_EX_TOPMOST requires window to be on top. A dock
+ window seems to do that with metacity, so set that type. (#78120)
+
+2006-05-05 Mike Kestner <mkestner@novell.com>
+
+ * ListViewItem.cs: fix Details mode checkbox layout bug.
+ * ThemeWin32Classic.cs: draw a ListView column header for unused space
+ at the end of the header, if it exists. [Fixes for #78200]
+
+2006-05-04 Jackson Harper <jackson@ximian.com>
+
+ * MdiClient.cs: Add a helper property to get the container form.
+ * MdiWindowManager.cs: We have to make sure to use the menu origin
+ when drawing the icons and buttons, this fixes maximized window
+ icons/buttons on win32.
+ * InternalWindowManager.cs: Reset the restore captions when a
+ window goes from Maximized to Minimized and vice versa. Move the
+ DrawMaximizedButtons into the MdiWindowManager source, tool
+ windows can't be maximized. NOTE: This could use a little
+ refactoring if time ever permits.
+
+2006-05-03 Jonathan Chambers <jonathan.chambers@ansys.com>
+
+ * TextBox.cs: Add MWFCategoryAttributes
+ * TextBoxBase.cs: Add MWFCategoryAttributes
+ * Form.cs: Add MWFCategoryAttributes
+
+2006-05-03 Jonathan Chambers <jonathan.chambers@ansys.com>
+
+ * Control.cs: Add MWFCategoryAttributes
+ * ScrollableControl.cs: Add MWFCategoryAttributes
+
+2006-05-03 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeWin32Classic.cs: Draw the ToolBar top border only if
+ Divider is true. Fix a little glitch in PropertyToolBar
+ drawing code
+
+2006-05-02 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs:
+ - Dispose: Call base.Dispose, this causes the disposed event
+ to be fired (and probably other, more important stuff)
+ - SetVisibleCore: Set is_visible to true after creating the
+ window so that the window still gets created invisible (if
+ WM_VISIBLE isn't set). That will cause the ShowWindow afterwards
+ to generate a WM_ACTIVE message
+ * Form.cs: Call Dispose when we want to destroy the window, instead of
+ just destroying the handle (Dispose will do that for us)
+ * XplatUIX11.cs:
+ - RootWindow also needs a queue, so we can properly process the
+ property change events from RootWindow (like Activate)
+ - Generatic synthetic WM_ACTIVE message when the active window is
+ being destroyed
+
+2006-05-01 Peter Dennis Bartok <pbartok@novell.com>
+
+ * LinkLabel.cs: Trigger a recalc of our label dimensions when
+ bounds are changed
+
+2006-05-01 Peter Dennis Bartok <pbartok@novell.com>
+
+ * ThemeWin32Classic.cs (ButtonBase_DrawImage): Use the proper image
+ for determining width and height (image might not be assigned if
+ we're drawing an imagelist)
+
2006-05-01 Peter Dennis Bartok <pbartok@novell.com>
* XplatUI.cs, XplatUIDriver.cs: Added MenuHeight property