diff --git a/import.log b/import.log index 0f47279..afbbb22 100644 --- a/import.log +++ b/import.log @@ -16,3 +16,4 @@ mono-2_2-2_pre1_fc10:HEAD:mono-2.2-2.pre1.fc10.src.rpm:1227649766 mono-2_2-3_pre1_fc10:HEAD:mono-2.2-3.pre1.fc10.src.rpm:1227693180 mono-2_2-4_pre1_fc10:HEAD:mono-2.2-4.pre1.fc10.src.rpm:1227705354 mono-2_2-5_pre1_fc11:HEAD:mono-2.2-5.pre1.fc11.src.rpm:1228072254 +mono-2_2-6_pre1_fc11:HEAD:mono-2.2-6.pre1.fc11.src.rpm:1228075040 diff --git a/mono-2.2-winforms.patch b/mono-2.2-winforms.patch index 193713c..3717cfa 100644 --- a/mono-2.2-winforms.patch +++ b/mono-2.2-winforms.patch @@ -90,3 +90,103 @@ } } +--- mono-2.2/mcs/class/Managed.Windows.Forms/System.Windows.Forms/DataGridView.cs 2008-11-13 23:30:08.000000000 +0000 ++++ mono-2.2/mcs/class/Managed.Windows.Forms/System.Windows.Forms/DataGridView-new.cs 2008-11-30 19:31:54.000000000 +0000 +@@ -671,8 +671,7 @@ + if (value.DataGridView != this) { + throw new ArgumentException("The cell is not in this DataGridView."); + } +- currentCell = value; +- currentRow = currentCell.OwningRow; ++ SetCurrentCellAddressCore(value.ColumnIndex, value.RowIndex, false, true, false); + } + } + +@@ -683,7 +682,11 @@ + + [Browsable (false)] + public DataGridViewRow CurrentRow { +- get { return currentRow; } ++ get { ++ if (currentCell != null) ++ return currentCell.OwningRow; ++ return null; ++ } + } + + [DefaultValue ("")] +@@ -4203,26 +4206,18 @@ + Invalidate (); + return; + } +- +- if (cell == currentCell) { +- BeginEdit (true); +- return; +- } else if (currentCell != null) { +- EndEdit (); +- OnCellLeave(new DataGridViewCellEventArgs(currentCell.ColumnIndex, currentCell.RowIndex)); +- } +- currentCell = cell; +- currentCellAddress = new Point (currentCell.ColumnIndex, currentCell.RowIndex); +- currentRow = cell.OwningRow; +- OnCurrentCellChanged(EventArgs.Empty); +- OnCellEnter(new DataGridViewCellEventArgs(cell.ColumnIndex, cell.RowIndex)); +- if (editMode == DataGridViewEditMode.EditOnEnter) { +- BeginEdit (true); +- } ++ SetCurrentCellAddressCore(cell.ColumnIndex, cell.RowIndex, false, true, true); + Invalidate(); + return; + } + ++ private void UpdateBindingPosition(int position) ++ { ++ BindingSource source = dataSource as BindingSource; ++ if (source != null && source.CurrencyManager != null) ++ source.CurrencyManager.Position = position; ++ } ++ + protected override void OnMouseEnter (EventArgs e) + { + base.OnMouseEnter(e); +@@ -5307,7 +5302,7 @@ + base.SetBoundsCore(x, y, width, height, specified); + } + +- [MonoTODO ("Does not use validateCurrentCell or throughMouseClick")] ++ [MonoTODO ("Does not use validateCurrentCell")] + protected virtual bool SetCurrentCellAddressCore (int columnIndex, int rowIndex, bool setAnchorCellAddress, bool validateCurrentCell, bool throughMouseClick) + { + if ((columnIndex < 0 || columnIndex > Columns.Count - 1) && rowIndex != -1) +@@ -5327,12 +5322,25 @@ + + if (setAnchorCellAddress) + anchor_cell = new Point (columnIndex, rowIndex); +- ++ DataGridViewCell oldCell = CurrentCell; ++ currentCell = cell; + currentCellAddress = new Point (columnIndex, rowIndex); +- CurrentCell = cell; +- +- OnCurrentCellChanged (EventArgs.Empty); +- ++ if (currentCell != oldCell) { ++ if (oldCell != null) { ++ EndEdit(); ++ OnCellLeave(new DataGridViewCellEventArgs(oldCell.ColumnIndex, oldCell.RowIndex)); ++ OnRowLeave(new DataGridViewCellEventArgs(oldCell.ColumnIndex, oldCell.RowIndex)); ++ } ++ UpdateBindingPosition(currentCell.RowIndex); ++ OnRowEnter(new DataGridViewCellEventArgs(cell.ColumnIndex, cell.RowIndex)); ++ OnCellEnter(new DataGridViewCellEventArgs(cell.ColumnIndex, cell.RowIndex)); ++ OnCurrentCellChanged(EventArgs.Empty); ++ if (throughMouseClick && editMode == DataGridViewEditMode.EditOnEnter) ++ BeginEdit(true); ++ } else { ++ if (throughMouseClick) ++ BeginEdit(true); ++ } + return true; + } + diff --git a/mono.spec b/mono.spec index bfd7d50..3162891 100644 --- a/mono.spec +++ b/mono.spec @@ -1,6 +1,6 @@ Name: mono Version: 2.2 -Release: 5.pre1%{?dist} +Release: 6.pre1%{?dist} Summary: A .NET runtime environment Group: Development/Languages @@ -279,6 +279,7 @@ find . -name Makefile.in -or -name Makefile.am -or -name \*.pc.in \ sed -i -e 's!$(prefix)/lib!%{_libdir}!' "$f" sed -i -e 's!@prefix@/lib!%{_libdir}!' "$f" sed -i -e 's!/usr/lib!%{_libdir}!' "$f" + sed -i -e 's!${prefix}/lib!%{_libdir}!' "$f" sed -i -e 's!${exec_prefix}/lib!%{_libdir}!' "$f" sed -i -e 's!${prefix}/@reloc_libdir@!%{_libdir}!' "$f"; done @@ -681,6 +682,9 @@ install monodir $RPM_BUILD_ROOT%{_bindir} %{_libdir}/pkgconfig/monodoc.pc %changelog +* Sun Nov 30 2008 Paul F. Johnson 2.2-6.pre1 +- missed a sed invocation + * Sun Nov 30 2008 Paul F. Johnson 2.2-5.pre1 - new patch for winforms problems - reorganised patches