+2006-03-21 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIWin32.cs,
+ XplatUIOSX.cs:
+ - Added ResetMouseHover method to allow controls to retrigger
+ hovering if they need it more than once
+ - Implemented MouseHoverTime and MouseHoverSize properties
+ * Timer.cs: Start() must reset the interval
+ * SystemInformation.cs: Added 2.0 MouseHoverTime and MouseHoverSize
+ properties
+
+2006-03-21 Jackson Harper <jackson@ximian.com>
+
+ * X11Keyboard.cs: improved layout detection. Move the nonchar
+ tables into this file.
+ * KeyboardLayouts.cs: Move the tables into resource files.
+
+2006-03-21 Mike Kestner <mkestner@novell.com>
+
+ * ListView.cs: use OnItemActivated to raise events. Fixes #77834.
+
+2006-03-21 Alexander Olk <alex.olk@googlemail.com>
+
+ * Mime.cs: Various speed optimizations. Looking up mime types
+ is now 2 times faster than before
+
+2006-03-17 Peter Dennis Bartok <pbartok@novell.com>
+
+ * CreateParams.cs: Added internal menu field
+ * Control.cs:
+ - Switched call order for UpdateBounds; now we always call
+ the one that also takes ClientSize, and we're calculating the
+ client size via driver method in the others. The previous
+ method of tracking client size by difference wasn't working
+ for forms where even the starting client size wouldn't match
+ the overall form size (due to borders) (Part of fix for #77729)
+ - CreateParams(): Do not use parent.Handle unless the handle is
+ already created. Causes havoc with Nexxia and throws off our
+ creation of controls
+ * XplatUIX11.cs:
+ - Created new PerformNCCalc method to trigger WM_NCCALCSIZE message
+ - Switched handling of ConfigureNotify over to new PerformNCCalc
+ method (consolidates code)
+ - Changed RequestNCRecalc to use new PerformNCCalc method
+ - Added calls to RequestNCRecalc when menus and borders are changed
+ to allow app to set NC size. (Part of fix for #77729) This matches
+ when MS send a WM_NCRECALC on Win32 windows.
+ - Now sending WM_WINDOWPOSCHANGED when toplevel for is made visible
+ (Part of fix for #77729). This matches what MS does, they also
+ send that message when the form is made visible.
+ - XException.GetMessage: Improved usability of X errors by including
+ a translation of the window into Hwnd and Control class
+ - Improved debug info for window creation, reparenting and destruction
+ - Created helper method WindowIsMapped() [Currently not used]
+ * XplatUIWin32.cs: Added ToString() debug helper to RECT structure
+ * Form.cs:
+ - CreateParams: Now setting our menu on the new internal menu field
+ - SetClientSizeCore: Now passing cp.menu instead of ActiveMenu to
+ avoid calculating the same property twice
+ * Hwnd.cs:
+ - Improved usability of ToString() for debugging purposes
+ - GetWindowRectangle(): Now uses proper CalcMenuBarSize method to
+ determine the height of the menu, instead of just the font. This
+ required to also create a graphics context and to keep a bmp
+ around (for performance reasons)
+
+2006-03-17 Peter Dennis Bartok <pbartok@novell.com>
+
+ * MenuAPI.cs: Added OnMouseUp method
+ * Form.cs:
+ - Now remembering the requested client size, avoids size errors
+ - WndProc: Now handling WM_xBUTTONUP and passing it to MenuTracker
+ instead of base if the menu is active. This is required due to
+ control now capturing and releasing on down/up and it would
+ prematurely release our menu capture
+
+2006-03-17 Jackson Harper <jackson@ximian.com>
+
+ * KeyboardLayouts.cs: Add the czech layouts.
+
+2006-03-16 Jackson Harper <jackson@ximian.com>
+
+ * Control.cs: Use the viewport space when sizing not the controls
+ client size, so things like ScrollableControl that effect the
+ viewport size (when scrollbars are added) are computed correctly.
+ * BindingContext.cs: Cleanup to use the DataSourceEntrys instead
+ of ManagerEntrys.
+ - Handle creating BindingManagers for null data sources.
+ * DataGrid.cs: Bind the cached_currencymgr_events to the real data
+ source, otherwise when rows are added they are added to the 'fake'
+ datasource and we will crash when trying to set the position in
+ those rows.
+ - Use Implicit scrollbars on the datagrid so they arent
+ selectable.
+
+2006-03-16 Jackson Harper <jackson@ximian.com>
+
+ * Binding.cs:
+ * InternalWindowManager.cs:
+ * MdiWindowManager.cs:
+ * X11Keyboard.cs: I really want Mike to love me again (fix
+ compiler warnings).
+
+2006-03-16 Peter Dennis Bartok <pbartok@novell.com>
+
+ * DataGrid.cs:
+ - OnMouseDown: Switch to editing mode when clicking on the cell
+ even if we're clicking on the cell that's currently
+ selected
+ - ProcessGridKey: Left/Right now wrap like MS.Net does
+ - ProcessGridKey: Tab now knows to add a new row when tab is
+ pressed in the cell of the last column of the
+ last row
+ - ProcessGridKey: Enter now adds another row if pressed in the last
+ row and selectes the new row, same column cell
+ - ProcessGridKey: Home/End navigate columns, not rows, like
+ originally implemented
+ - Broke ProcessKeyPreview code out into an extra Internal method
+ so it can be called from the edit code
+ * DataGridTextBox.cs (ProcessKeyMessage):
+ - Switched to accept Tab keypresses
+ - Added F2 handling to allow jumping to the end of the edited cell
+ - Added logic to allow moving caret left/right inside edited cell
+ and making the edited cell jump when the caret hits cell borders
+ - Tab and Enter are now passed to the datagrid after being handled
+ * TextBoxBase.cs:
+ - Removed capture code now that Control handles it
+ - set_SelectionStart now ensures caret is visible
+
+2006-03-16 Jackson Harper <jackson@ximian.com>
+
+ * TrackBar.cs: Debackwards the increment/decrement for handling
+ mouse clicks on the bar with vertical trackbars.
+ * ThemeWin32Classic.cs: Draw vertical trackbars with 0 at the
+ bottom to match MS.
+
+2006-03-16 Mike Kestner <mkestner@novell.com>
+
+ * ListView.cs: make shift/ctrl keyboard and mouse selection
+ consistent with the MS control. Fix a bug in
+ SelectedListViewItemCollection.Clear that was pissing me off for the
+ better part of a day because the collection was being altered
+ underneath us as we walked the list.
+
+2006-03-16 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs: Not sure how we could miss this so long, but it seems
+ that MS.Net has Capture set all the way from before calling
+ OnMouseDown through sending the mouse events until after
+ OnMouseUp. This will fix DataGrid's selection being set to end
+ at the location of the MouseUp.
+
+2006-03-15 Jackson Harper <jackson@ximian.com>
+
+ * BindingContext.cs: Check the binding after its added so that it
+ can initialize the binding managers and hookup to events.
+ * Binding.cs: Data members seem to sometimes include rows/cols in
+ the format Row.Column we now take this into account.
+ - Hookup to the position changed event so we can update the
+ control when the position has changed in the data set.
+ * CurrencyManager.cs: Take into account the row/col naming
+ convention when creating dataset tables.
+ * BindingContext.cs: Using a newer better way of storing
+ datasource/datamember pairs. Hopefully this better matches MS for
+ looking up binding managers.
+
+
+2006-03-15 Jackson Harper <jackson@ximian.com>
+
+ * BindingContext.cs: The currency manager needs the data member
+ name, if the member is a data set we use the name to find the
+ correct table.
+ * CurrencyManager.cs: When creating the list prefer an IList over
+ an IListSource.
+ - Attempt to create a DataTable from a DataSet (TODO: might need
+ some better error checking here, although MS doesn't seem to have much)
+ - If we have a DataTable create a view and use it as our list.
+
+2006-03-15 Mike Kestner <mkestner@novell.com>
+
+ * ListView.cs: keep a matrix of the icon mode layout to facilitate
+ keyboard navigation. Support Up/Down/Left/Right selection correctly
+ for all 4 View modes.
+ * ListViewItem.cs: add internal row/col fields for icon layouts.
+
+2006-03-15 Jackson Harper <jackson@ximian.com>
+
+ * TabControl.cs: Redraw the tabs when we resize so their newly
+ calculated sizes are drawn on screen.
+ * X11Keyboard.cs: Begginnings of XIM support. We also now support
+ composite characters.
+ * XplatUIX11.cs: Keyboard driver needs to know about focus changes
+ - filter events so that composite characters can be created
+ patches by peter
+ * X11Structs.cs: Add XIMProperties enum.
+
+2006-03-14 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs (BringToFront, SendToBack): Don't use window or handle
+ unless it's created
+
+2006-03-14 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs (PerformLayout): We don't need to consider visiblity
+ for anchoring, only for docking. This fixes 'whacky' alignment
+ in listbox and other controls that use implicit scrollbars after
+ the previous PerformLayout patch
+ * ListBox.cs: Switched to use implicit scrollbars
+
+2006-03-14 Mike Kestner <mkestner@novell.com>
+
+ * ToolBar.cs:
+ * VScrollBar.cs:
+ - chain up the "new event" overrides to base and use
+ OnEvent to raise them. Part of fix for bug #76509.
+
+2006-03-14 Alexander Olk <alex.olk@googlemail.com>
+
+ * FileDialog.cs: Do not select an item in the parent directory
+ on backspace
+
+2006-03-14 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs (PerformLayout): It would seem that we considered
+ invisible windows for our layout. Not quite the right thing
+ to do. Now we don't any longer, thereby fixing bug #76889.
+
+2006-03-14 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs (CanFocus): I goofed. A control can have focus
+ even though it's not selectable. Made it match MS docs.
+
+2006-03-13 Peter Dennis Bartok <pbartok@novell.com>
+
+ * ControlPaint.cs (DrawBorder3D): DrawBorder3D does not fill the
+ center by default (fixes #76895)
+ * ThemeWin32Classic.cs, ThemeNice.cs, ThemeClearlooks.cs: Replaced
+ all uses of Border3DSides.All with the explicit ORd together
+ Left|Right|Top|Bottom because I assume that nobody was aware
+ that All also implies a center fill. Most places I checked had
+ a fill right above.
+ * ProgressBarStyle.cs: Added
+
+2006-03-13 Mike Kestner <mkestner@novell.com>
+
+ * ListView.cs: fix breakage in drag shadow header positioning
+ from Peter's csc compilation fix.
+
+2006-03-13 Mike Kestner <mkestner@novell.com>
+
+ * ListView.cs: fix NRE produced by backspacing twice in a focused
+ FileDialog.
+
+2006-03-13 Mike Kestner <mkestner@novell.com>
+
+ * ListView.cs: proxy Key(Down|Up) from ItemControl to ListView.
+
+2006-03-13 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Hwnd.cs: Added fixed_size field to track windows whose size cannot
+ be changed
+ * XplatUIX11.cs: Now setting fixed_size on hwnd and if set, re-setting
+ the allowed size before making programmatic size changes
+
+2006-03-13 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUIX11.cs: Don't call XSetWMNormalHints if no flags are
+ set, metacity is broken and will still use the emty sizes in
+ the struct. (Fix for #77089)
+
+2006-03-13 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUIStructs.cs: Split WindowStyles into WindowStyles and
+ WindowExStyles and marked both enums as Flags
+ * Form.cs, ComboBox.cs, ToolTip.cs, Control.cs, PropertyGridView.cs,
+ NotifyIcon.cs, MenuAPI.cs, XplatUIOSX.cs, MonthCalendar.cs: Updated
+ to match WindowStyles split
+ * XplatUIX11.cs:
+ - SetWMStyles: Added cehck to not apply WM attributes to Child windows
+ - Updated to match WindowStyles split
+ * XplatUIWin32.cs:
+ - Fixed FosterParent creation, was using ExStyle on the Style field
+ (This should help with Popup focus issues)
+ - Updated to match WindowStyles split
+
+2006-03-13 Jackson Harper <jackson@ximian.com>
+
+ * MdiWindowManager.cs: Use the system menu height. Fixes some
+ strange sizing issues.
+