Author: mkrueger
Date: 2008-02-19 10:40:15 -0500 (Tue, 19 Feb 2008)
New Revision: 96158
Modified:
trunk/monodevelop/main/src/addins/Mono.Texteditor/ChangeLog
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor.Tests/Mono.TextEditor.Tests.pidb
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/DefaultEditActions.cs
Log:
* Mono.TextEditor.Tests/Mono.TextEditor.Tests.pidb: Copy to primary
clipboard is now lazy (Improves performance for large selections).
Modified: trunk/monodevelop/main/src/addins/Mono.Texteditor/ChangeLog
===================================================================
--- trunk/monodevelop/main/src/addins/Mono.Texteditor/ChangeLog 2008-02-19
15:40:02 UTC (rev 96157)
+++ trunk/monodevelop/main/src/addins/Mono.Texteditor/ChangeLog 2008-02-19
15:40:15 UTC (rev 96158)
@@ -1,5 +1,10 @@
2008-02-19 Mike Krüger <[EMAIL PROTECTED]>
+ * Mono.TextEditor.Tests/Mono.TextEditor.Tests.pidb: Copy to primary
+ clipboard is now lazy (Improves performance for large selections).
+
+2008-02-19 Mike Krüger <[EMAIL PROTECTED]>
+
*
Mono.TextEditor.Tests/Mono.TextEditor.Tests.DefaultEditActions/InsertTabTests.cs,
Mono.TextEditor.Tests/Mono.TextEditor.Tests.DefaultEditActions/RemoveTabTests.cs:
Added Remove tab tests.
Modified:
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/DefaultEditActions.cs
===================================================================
---
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/DefaultEditActions.cs
2008-02-19 15:40:02 UTC (rev 96157)
+++
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/DefaultEditActions.cs
2008-02-19 15:40:15 UTC (rev 96158)
@@ -794,6 +794,7 @@
}
}
+
void ClipboardGetFunc (Clipboard clipboard, SelectionData
selection_data, uint info)
{
SetData (selection_data, info);
@@ -930,21 +931,36 @@
}
}
- public void CopyData (TextEditorData data)
+ void CopyData (TextEditorData data, ISegment segment)
{
- if (data.IsSomethingSelected && data.Document.Contains
(data.SelectionRange)) {
- text = data.Document.GetTextAt
(data.SelectionRange);
+ if (segment != null) {
+ text = data.Document.GetTextAt (segment);
rtf = GenerateRtf (data);
} else {
text = rtf = null;
}
}
+ public void CopyData (TextEditorData data)
+ {
+ CopyData (data, data.SelectionRange);
+ }
+ TextEditorData data;
+ ISegment selection;
+
+ void ClipboardGetFuncLazy (Clipboard clipboard, SelectionData
selection_data, uint info)
+ {
+ CopyData (data, selection);
+ ClipboardGetFunc (clipboard, selection_data, info);
+ }
+
public void CopyToPrimary (TextEditorData data)
{
+ this.data = data;
+ this.selection = data.SelectionRange;
+
Clipboard clipboard = Clipboard.Get
(CopyAction.PRIMARYCLIPBOARD_ATOM);
- CopyData (data);
- clipboard.SetWithData ((Gtk.TargetEntry[])TargetList,
ClipboardGetFunc, ClipboardClearFunc);
+ clipboard.SetWithData ((Gtk.TargetEntry[])TargetList,
ClipboardGetFuncLazy, ClipboardClearFunc);
}
public override void Run (TextEditorData data)
Modified:
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor.Tests/Mono.TextEditor.Tests.pidb
===================================================================
(Binary files differ)
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches