Ralph Leckett [Sat, 11 Dec 2010 03:43:59 +0000 (22:43 -0500)]
[winforms] Style
Ralph Leckett [Sat, 11 Dec 2010 03:43:03 +0000 (22:43 -0500)]
[winforms] Style, reduce full sizes of common types
Ralph Leckett [Sat, 11 Dec 2010 03:41:16 +0000 (22:41 -0500)]
[winforms] Do not leak Graphics in Invalidate + some Style
Miguel de Icaza [Sat, 11 Dec 2010 03:35:52 +0000 (22:35 -0500)]
[winforms] style, and NET_2_0 dropped
Ralph Leckett [Sat, 11 Dec 2010 03:26:51 +0000 (22:26 -0500)]
[winforms] Style
Ralph Leckett [Sat, 11 Dec 2010 03:25:41 +0000 (22:25 -0500)]
[winforms] Cope with null Hwnd value from Hwnd.ObjectFromHandle
Ralph Leckett [Sat, 11 Dec 2010 03:23:33 +0000 (22:23 -0500)]
[winforms] Win32 fixes for window class name
This is extracted from Ralph Leckett's jumbo-patch to winforms
Thomas Goldstein [Sat, 11 Dec 2010 03:09:04 +0000 (22:09 -0500)]
[winforms] quick cleanup patches for a few WinForms classes
Thomas Goldstein [Sat, 11 Dec 2010 03:05:48 +0000 (22:05 -0500)]
[winforms] Small optimization
Miguel de Icaza [Sat, 11 Dec 2010 03:00:05 +0000 (22:00 -0500)]
[winforms] Prepare for Gnome 3, by not depending on libgnomeui
joncham [Sat, 11 Dec 2010 01:27:11 +0000 (20:27 -0500)]
Use 2.0 instead of 1.0 when probing install dirs.
Tom Hindle [Sat, 11 Dec 2010 00:48:47 +0000 (19:48 -0500)]
[winforms] Fix ContextMenuStrip vertical position can be wrong.
Fixes #658945
This can lead to the top of the context menu being off the screen.
This only happens with context menus with lots of items.
Tom Hindle [Sat, 11 Dec 2010 00:41:59 +0000 (19:41 -0500)]
[winforms] WM_SETFOCUS is sent before Keyboard Focus is changed.
Switches Keyboard focus so that it occurs before WM_SETFOCUS is sent.
This means that the wrong keyboard im is selected while process winform events
caused by WM_SETFOCUS.
Attaching patch that changes this so that keyboard im is focused before
WM_SETFOCUS is sent.
Fixes: #557277
Tom Hindle [Sat, 11 Dec 2010 00:39:46 +0000 (19:39 -0500)]
[winforms] Allow WinForm controls to use on-the-spot XIM input methods
Attached Patch allows WinForms controls to get preedit notifications (by
overriding WndProc) when mono is run with MONO_WINFORMS_XIM_STYLE=on-the-spot
mono
Changelog from attach patch:
2009-11-20 Tom Hindle <tom_hindle@sil.org>
* XplatUIStructs.cs: Added user messages WM_XIM_PREEDITSTART,
WM_XIM_PREEDITDONE, WM_XIM_PREEDITDRAW, WM_XIM_PREEDITCARET
* X11Keyboard.cs: Changed preedit callbacks to emit WM_XIM_* messages
* X11Structs.cs: Added XIMFeedbackStruct and XIMFeedback enum.
Here is some sample code which make use of this feature:
/// <summary>
/// Proof on concept implementation of a user defined TextBox that does on-the-spot
/// input method editing.
/// There is a number of know flaws - eg. doesn't end preedit when user moves cursor with mouse.
/// Need to run with MONO_WINFORMS_XIM_STYLE=on-the-spot mono
/// </summary>
public class OnTheSpotTextBox : TextBox, XIM.IPreedit
{
// store text before preedit.
string backup;
#region IPreedit implementation
public int PreeditStart (IntPtr clientData, IntPtr callData)
{
Console.WriteLine ("PreeditStart");
backup = Text;
return 100;
}
public int PreeditDone (IntPtr clientData, IntPtr callData)
{
Clear ();
AppendText (backup);
return 0;
}
public int PreeditDraw (IntPtr clientData, IntPtr callData)
{
XIM.PreeditDrawInfo info = new XIM.PreeditDrawInfo (callData);
Console.WriteLine ("PreeditDraw PreeditDrawInfo {0}", info);
if (info.ChangeLength > 0) {
Clear ();
AppendText (backup);
}
if (info.Caret > 0)
AppendText (info.Text);
return 0;
}
public int PreeditCaret (IntPtr clientData, IntPtr callData)
{
XIM.PreeditCaretInfo info = new XIM.PreeditCaretInfo (clientData);
Console.WriteLine ("PreeditCaret PreeditCaretInfo {0}", info);
return 0;
}
protected override void WndProc (ref Message m)
{
switch (m.Msg) {
case /*WM_USER*/0x400 + 0x1d00:
// WM_XIM_PREEDITSTART
// The WParam value identifies what is occurring.
PreeditStart (m.WParam, m.LParam);
break;
case /*WM_USER*/0x400 + 0x1d01:
// WM_XIM_PREEDITDONE
PreeditDone (m.WParam, m.LParam);
break;
case /*WM_USER*/0x400 + 0x1d02:
// WM_XIM_PREEDITDRAW
PreeditDraw (m.WParam, m.LParam);
break;
case /*WM_USER*/0x400 + 0x1d03:
// WM_XIM_PREEDITCARET
PreeditCaret (m.WParam, m.LParam);
break;
}
base.WndProc (ref m);
}
#endregion
}
Tom Hindle [Sat, 11 Dec 2010 00:30:48 +0000 (19:30 -0500)]
[winforms] Add modal support to Forms
This fixes 614850 "Modal dialogs should prevent closing their parent windows."
Tom Hindle [Sat, 11 Dec 2010 00:25:29 +0000 (19:25 -0500)]
[winforms] DataGridView.cs : Made MoveCurrentCell not attempt access Column index -1.
Fixes #516960
Tom Hindle [Sat, 11 Dec 2010 00:18:02 +0000 (19:18 -0500)]
[winforms,fix] Prevent Clipboard APIs from running any Idle handlers
Fixes: 641756
This prevents idle methods to be invoked when calling the Clipboard
APIs on X11, which is not the expected behavior.
The description from the bug report is:
Mono X11 Clipboard handling calls UpdateMessageQueue, which has the side affect
of potentially calling Idle handlers.
If any Idle handlers call Clipboard functions, this can cause idle handler
reentry.
See attached test case.
Incidentally removing the reentry check from the idle handler will actually
cause mono to segfault.
I will attach a patch shortly which fixes this by overloading
UpdateMessageQueue to allow Clipboard methods to call a version that doesn't
run idle processing.
Thomas Goldstein [Sat, 11 Dec 2010 00:12:23 +0000 (19:12 -0500)]
[winforms, fix] Keep the carret in sync with changes to the text entry value
Patch from Thomas Goldstein for bug #621475
The IndexOutOfRangeException is apparently a caret position bug. As a
workaround, doing textbox.SelectionStart = 0; before resetting the Text avoids
the bug.
Here's a patch to fix the bug. Basically, it applies the same caret updates
whether the Text is null/empty or not.
I hope I can get away with the minor style updates without having to submit
them as a separate patch...
Andy Hume [Sat, 11 Dec 2010 00:02:07 +0000 (19:02 -0500)]
[fix, winforms] Fix the ProgressBar speed in Marquee situations
This issue was identified as:
Marquee speed is very weird, changing between very very fast and very very
very very fast, and in inverse to the speed setting?
In https://bugzilla.novell.com/show_bug.cgi?id=440220
Also fixes this bug which was the test case isolated:
https://bugzilla.novell.com/show_bug.cgi?id=655797
Nagappan Alagappan [Fri, 10 Dec 2010 23:05:02 +0000 (18:05 -0500)]
[winforms, datagrid, fix] fixes crasher reported in 416111
Miguel de Icaza [Wed, 6 Oct 2010 19:55:52 +0000 (15:55 -0400)]
Update docs
Sebastien Pouliot [Fri, 10 Dec 2010 20:08:33 +0000 (15:08 -0500)]
Ensure types are resolved when checking fields under coreclr
* security-core-clr.c: call mono_field_get_type_checked to ensure the
field's type is resolved since coreclr checks can occurs before the
"normal" check done by mono. Fix crashes in DRT#8005
Rodrigo Kumpera [Fri, 10 Dec 2010 17:49:08 +0000 (15:49 -0200)]
Fix marshaling of Ansi strings.
* marshal.c (emit_struct_conv): Add _full variant that
takes an extra boolean argument to tell if char is to be
marshaled with one or two bytes.
* marshal.c (emit_marshal_array): Use emit_struct_conv_full
to correctly marshal ansi char arrays.
Alex [Fri, 10 Dec 2010 15:27:24 +0000 (10:27 -0500)]
[monodoc] display setter after the getter
Zoltan Varga [Fri, 10 Dec 2010 15:11:26 +0000 (16:11 +0100)]
Fix handling of gshared methods declared in generic superclasses of nongeneric classes in stack traces. Fixes #658645.
Marek Safar [Fri, 10 Dec 2010 13:20:45 +0000 (13:20 +0000)]
Revert unwanted makefile change
Marek Safar [Fri, 10 Dec 2010 13:13:21 +0000 (13:13 +0000)]
Add v1 runtime target (broken by design)
Marek Safar [Fri, 10 Dec 2010 10:41:39 +0000 (10:41 +0000)]
Resolve entire base initializer block in correct context
Marek Safar [Fri, 10 Dec 2010 10:40:10 +0000 (10:40 +0000)]
Removed compiler generated attributes
Marek Safar [Fri, 10 Dec 2010 10:39:18 +0000 (10:39 +0000)]
Base constructor method calls have to be static
Marek Safar [Fri, 10 Dec 2010 09:46:10 +0000 (09:46 +0000)]
Report missing types (some of them for now)
Marek Safar [Thu, 9 Dec 2010 18:36:19 +0000 (18:36 +0000)]
Add missing dependency
Marek Safar [Thu, 9 Dec 2010 17:41:10 +0000 (17:41 +0000)]
Try to handle missing generic type definition
Zoltan Varga [Fri, 10 Dec 2010 00:36:58 +0000 (01:36 +0100)]
Use the mono calling convention for all LLVM methods, not just ones with rgctx/imt arguments.
Gonzalo Paniagua Javier [Fri, 10 Dec 2010 00:00:51 +0000 (19:00 -0500)]
Get system.web/httpRuntime only once
Get that section only once and keep it in HttpRuntime.
Rodrigo Kumpera [Thu, 9 Dec 2010 19:59:31 +0000 (17:59 -0200)]
Add a few more undocumented bits to allowed AssemblyFlags
Fixes #657516
Rodrigo Kumpera [Thu, 9 Dec 2010 19:26:36 +0000 (17:26 -0200)]
Check for coded token with zero index for typedef::parent.
* metadata-verify.c (verify_typedef_table): Fail if the token
index is encoded as zero.
Fixes #651682
Jérémie Laval [Thu, 9 Dec 2010 17:28:52 +0000 (17:28 +0000)]
Fix semantic of CountdownEvent Reset methods. Fix #658244.
Jérémie Laval [Thu, 9 Dec 2010 15:59:40 +0000 (15:59 +0000)]
Implement CreateSetComparer method in HashSet
Jérémie Laval [Thu, 9 Dec 2010 15:35:51 +0000 (15:35 +0000)]
Refactor Add/Take/TryAdd/TryTake methods into a common block in BlockingCollection
Jérémie Laval [Thu, 9 Dec 2010 15:34:06 +0000 (15:34 +0000)]
Fix GetConsumingEnumerable exception handling in BlockingCollection
Jérémie Laval [Thu, 9 Dec 2010 14:39:36 +0000 (14:39 +0000)]
[PLinq] Detect when AsParallel is called multiple time in a query and simply reuse the existing ParallelQuery object
Marek Safar [Thu, 9 Dec 2010 14:57:18 +0000 (14:57 +0000)]
New test
Marek Safar [Thu, 9 Dec 2010 14:52:56 +0000 (14:52 +0000)]
Read custom attribute name without resolving attribute type if possible
Marek Safar [Thu, 9 Dec 2010 12:20:16 +0000 (12:20 +0000)]
Redirect all mscorlib loads into assembly builder when compiling corlib
Marek Safar [Wed, 8 Dec 2010 20:02:45 +0000 (20:02 +0000)]
Fix parameter name
Marek Safar [Wed, 8 Dec 2010 18:41:23 +0000 (18:41 +0000)]
Add initial handling of missing assemblies
Marek Safar [Wed, 8 Dec 2010 17:17:22 +0000 (17:17 +0000)]
Add internal --runtime option
Marek Safar [Wed, 8 Dec 2010 11:32:17 +0000 (11:32 +0000)]
Add references loading trace
Marek Safar [Wed, 8 Dec 2010 11:31:53 +0000 (11:31 +0000)]
Removed check for generics on 1.1 runtime
Zoltan Varga [Thu, 9 Dec 2010 14:14:38 +0000 (15:14 +0100)]
Unify the rgctx/non-rgctx call emission functions in the JIT.
Jérémie Laval [Tue, 7 Dec 2010 17:58:22 +0000 (17:58 +0000)]
Fix behavior of Partitioner.Create when more than one partition is requested and used
Geoff Norton [Thu, 9 Dec 2010 05:46:48 +0000 (00:46 -0500)]
Ensure we always save the GState, not just when the context is flipped
Geoff Norton [Wed, 8 Dec 2010 22:16:41 +0000 (17:16 -0500)]
Avoid leaking our unwind ops when not populating the trampoline info
Geoff Norton [Wed, 8 Dec 2010 21:24:00 +0000 (16:24 -0500)]
Avoid leaking the name buffer since we already resolve this below
Rodrigo Kumpera [Wed, 8 Dec 2010 21:19:46 +0000 (19:19 -0200)]
Fix some memleaks under -v
* mini.c: A monomac leak detector depends on -v
not leaking memory, so lets fix some of those.
Rodrigo Kumpera [Wed, 8 Dec 2010 20:49:52 +0000 (18:49 -0200)]
Fix a memleak when returning SRE cattrs.
* reflection.c (lookup_custom_attr): Since we memdup
the returned cattr, we better mark it as not cached.
Rodrigo Kumpera [Wed, 8 Dec 2010 12:18:27 +0000 (10:18 -0200)]
Handle GTDs used as element or type arguments.
* verify.c (mono_type_is_valid_type_in_context):
Refuse a GTD if not at a root positision.
Fixes #656913
Zoltan Varga [Wed, 8 Dec 2010 20:36:06 +0000 (21:36 +0100)]
Mark runtime invoke wrappers as pinvoke, since they are called from native code.
Zoltan Varga [Wed, 8 Dec 2010 20:35:48 +0000 (21:35 +0100)]
Get rid of the 'is_pinvoke' argument to get_call_info (), use sig->pinvoke instead.
Gonzalo Paniagua Javier [Wed, 8 Dec 2010 19:37:25 +0000 (14:37 -0500)]
InitOnce does not throw
Gonzalo Paniagua Javier [Wed, 8 Dec 2010 00:23:54 +0000 (19:23 -0500)]
Fixes problem with exceptions on init
Multiple threads might be waiting on the lock and the modules get
loaded and initialized multiple times, leading to an error. This patch
fixes it and always returns the right initialization exception, if any,
to the client.
Zoltan Varga [Wed, 8 Dec 2010 11:37:07 +0000 (12:37 +0100)]
Update a comment.
Mark Probst [Wed, 8 Dec 2010 09:49:13 +0000 (10:49 +0100)]
[sgen] Have an allocated block list for fixed-heap M&S, too.
It turns out we iterate over all allocated blocks often enough that
the way we did it for fixed-heap Mark&Sweep (iterating over all blocks
and jumping over the non-allocated ones) slows us down considerably.
So, use the same allocated block list as "regular" Mark&Sweep, which
also unifies the code a bit.
Mark Probst [Wed, 8 Dec 2010 08:39:41 +0000 (09:39 +0100)]
[sgen] Don't increase degraded_mode in alloc_degraded().
Mature allocation uses the degraded allocation machinery to allocate
objects in the major space. Modifying degraded_mode in those cases
will actually put us into degraded mode which slows us down immensely.
Zoltan Varga [Wed, 8 Dec 2010 00:40:16 +0000 (01:40 +0100)]
Tidy up the assembly loading log messages a bit.
Zoltan Varga [Wed, 8 Dec 2010 00:17:54 +0000 (01:17 +0100)]
Clean up the appdomain at the end of the remoting4 test.
Marek Safar [Tue, 7 Dec 2010 22:59:54 +0000 (22:59 +0000)]
Put back actual save of module target
Marek Safar [Tue, 7 Dec 2010 22:58:06 +0000 (22:58 +0000)]
Revert ordering of compiler tests
Marek Safar [Tue, 7 Dec 2010 22:20:23 +0000 (22:20 +0000)]
Check file extension manually
Marek Safar [Tue, 7 Dec 2010 17:53:54 +0000 (17:53 +0000)]
Symbol writer has to use 4.0 methods in static mode
Gonzalo Paniagua Javier [Tue, 7 Dec 2010 22:04:13 +0000 (17:04 -0500)]
Delete end local endpoint when stopping the server
Fixes bug #647204.
Zoltan Varga [Tue, 7 Dec 2010 21:41:51 +0000 (22:41 +0100)]
Log images still loaded during shutdown.
Zoltan Varga [Tue, 7 Dec 2010 20:13:14 +0000 (21:13 +0100)]
Fix some small memory leaks.
Rodrigo Kumpera [Tue, 7 Dec 2010 18:07:49 +0000 (16:07 -0200)]
Fix memberref method signature verification.
* metadata-verify.c (mono_verifier_verify_memberref_method_signature):
Memberref method signatures allow sentinels.
Rodrigo Kumpera [Tue, 7 Dec 2010 17:54:18 +0000 (15:54 -0200)]
Correctly check for ptr compatibility.
* verify.c (mono_delegate_type_equal): Properly check
if candidate is a pointer type.
Fixes #657746
Rodrigo Kumpera [Tue, 7 Dec 2010 17:32:21 +0000 (15:32 -0200)]
Set a default element class for failed enums.
* class.c (mono_class_create_from_typedef): Set failed enums
to extends int32 as the whole runtime can't handle this been
null.
Fixes #657745
Marek Safar [Tue, 7 Dec 2010 16:43:23 +0000 (16:43 +0000)]
Add IKVM.Reflection support
Marek Safar [Tue, 7 Dec 2010 16:42:34 +0000 (16:42 +0000)]
Test update
Marek Safar [Tue, 7 Dec 2010 16:37:51 +0000 (16:37 +0000)]
Sort the files manually to always get same order
Marek Safar [Tue, 7 Dec 2010 16:34:03 +0000 (16:34 +0000)]
New test
Marek Safar [Mon, 6 Dec 2010 17:30:35 +0000 (17:30 +0000)]
Extract reflection specific assembly builder
Marek Safar [Mon, 6 Dec 2010 16:03:06 +0000 (16:03 +0000)]
Re-use existing code path
Rodrigo Kumpera [Tue, 7 Dec 2010 17:00:20 +0000 (15:00 -0200)]
Honor skip visibility in more places.
* verify.c (do_newobj): Honor skip visibility request.
* verify.c (do_load_function_ptr): Ditto.
Fixes #657694
Rodrigo Kumpera [Tue, 7 Dec 2010 15:28:53 +0000 (13:28 -0200)]
Do separate checking of field and method memberref.
* loader.c: Use new split functions.
* metadata-verify.c (parse_custom_mods): Make sure encoded
type tokens are not zero.
* metadata-verify.c (parse_generic_inst): Ditto.
* metadata-verify.c (parse_type): Ditto.
* metadata-verify.c (mono_verifier_verify_memberref_signature):
Replace this function with a pair that does field or method
verification.
Fixes #656914
vvaradhan [Tue, 7 Dec 2010 15:13:28 +0000 (20:43 +0530)]
Merge branch 'master' of github.com:mono/mono into masterwork
vvaradhan [Tue, 7 Dec 2010 15:09:47 +0000 (20:39 +0530)]
2010-12-07 Veerapuram Varadhan <vvaradhan@novell.com>
** Fixes #456234 - Patch by amc1999@gmail.com
* OdbcDataReader.cs (GetValue): Handle SQL_NO_TOTAL sanely and
use corresponding Decoder.GetChars instead of Encoding.GetString.
Guillaume Pouillet [Tue, 7 Dec 2010 09:30:12 +0000 (10:30 +0100)]
Fix bug in BlockingCollection<T>.TryTake Add corresponding unit test
Atsushi Eno [Tue, 7 Dec 2010 09:09:56 +0000 (18:09 +0900)]
Implemented XData support in XamlObjectWriter.
Atsushi Eno [Tue, 7 Dec 2010 08:08:49 +0000 (17:08 +0900)]
Implement XData support in XamlXmlReader.
Atsushi Eno [Tue, 7 Dec 2010 07:46:53 +0000 (16:46 +0900)]
XData support in XamlXmlWriter.
Atsushi Eno [Tue, 7 Dec 2010 07:23:53 +0000 (16:23 +0900)]
Implemented XData object reader support. Add missing test files.
Atsushi Eno [Tue, 7 Dec 2010 06:32:58 +0000 (15:32 +0900)]
Add another couple of IXmlSerializable tests.
Gonzalo Paniagua Javier [Tue, 7 Dec 2010 00:54:21 +0000 (19:54 -0500)]
Fix Process.HasExited regression
When we have a pseudo handle, we can at least check whether the process
is alive or not, instead of always returning FALSE.
Fixes bug #650979.
Geoff Norton [Mon, 6 Dec 2010 19:40:08 +0000 (14:40 -0500)]
Ensure we save and restore the gstate
Zoltan Varga [Mon, 6 Dec 2010 18:50:27 +0000 (19:50 +0100)]
Fix a few SRE memory leaks.
Gonzalo Paniagua Javier [Mon, 6 Dec 2010 18:18:33 +0000 (13:18 -0500)]
Workaround bug in AcquireWriterLock
AcquireWriteLock should be the same as UpgradeToWriterLock when the
thread is already a reader.
Fixes bug #656850.
Zoltan Varga [Mon, 6 Dec 2010 16:58:37 +0000 (17:58 +0100)]
Remove some #ifdef HAVE_SGEN_GC deps, centralize others to gc-internal.h.
Jérémie Laval [Mon, 6 Dec 2010 16:06:33 +0000 (16:06 +0000)]
[System.Xml] Enable existing API under 4.0 profile too
Marek Safar [Mon, 6 Dec 2010 15:38:04 +0000 (15:38 +0000)]
Refactor assemblies loading into a base class