[android] generated Resource.designer.dll is working

- Added GeneratedCodeAttribute
- ReadField method is generated cleaner
- Check full name of Resource custom attribute
- Fixed output path of assembly
- Only generate if fields found

--- binder/Utils/XamarinAndroidBuild.cs
+++ binder/Utils/XamarinAndroidBuild.cs
@@ -69,6 +69,10 @@
             };
             ns.Types.Add(resource);

+            resource.CustomAttributes.Add(new CodeAttributeDeclaration("System.CodeDom.Compiler.GeneratedCodeAttribute",
+                new CodeAttributeArgument(new CodeSnippetExpression("\"Xamarin.Android.Build.Tasks\"")),
+                new CodeAttributeArgument(new CodeSnippetExpression("\"1.0.0.0\""))));
+
             var readField = new CodeMemberMethod
             {
                 Name = "ReadField",
@@ -79,8 +83,10 @@
             readField.Parameters.Add(new CodeParameterDeclarationExpression("String", "fieldName"));
             resource.Members.Add(readField);

-            readField.Statements.Add(new CodeSnippetStatement("var fieldId = JNIEnv.GetStaticFieldID(R, fieldName, \"I\");"));
-            readField.Statements.Add(new CodeSnippetStatement("return JNIEnv.GetStaticIntField(R, fieldId);"));
+            readField.Statements.Add(new CodeAssignStatement(
+                new CodeSnippetExpression("IntPtr fieldId"),
+                new CodeSnippetExpression("JNIEnv.GetStaticFieldID(R, fieldName, \"I\")")));
+            readField.Statements.Add(new CodeMethodReturnStatement(new CodeSnippetExpression("JNIEnv.GetStaticIntField(R, fieldId)")));

             var updateIdValues = new CodeMemberMethod
             {
@@ -97,21 +103,24 @@
                 {
                     if (type.Name == "Resource" &&
                         type.CustomAttributes.Any(a =>
-                                                  a.AttributeType.Name == "GeneratedCodeAttribute" &&
+                                                  a.AttributeType.FullName == "System.CodeDom.Compiler.GeneratedCodeAttribute" &&
                                                   a.ConstructorArguments.Count > 0 &&
                                                   a.ConstructorArguments[0].Value.ToString() == "Xamarin.Android.Build.Tasks"))
                     {
                         foreach (var nested in type.DeclaredNestedTypes)
                         {
-                            updateIdValues.Statements.Add(new CodeAssignStatement(
-                                new CodeSnippetExpression("R"),
-                                new CodeSnippetExpression($"JNIEnv.FindClass(\"{packageName}.R${nested.Name.ToLowerInvariant()}\");")));
-
-                            foreach (var field in nested.DeclaredFields)
-                            {
-                                var left = new CodeSnippetExpression(type.FullName + "." + nested.Name + "." + field.Name);
-                                var right = new CodeSnippetExpression("ReadField(R, \"" + field.Name + "\")");
-                                updateIdValues.Statements.Add(new CodeAssignStatement(left, right));
+                            if (nested.DeclaredFields.Any())
+                            {
+                                updateIdValues.Statements.Add(new CodeAssignStatement(
+                                    new CodeSnippetExpression("R"),
+                                    new CodeSnippetExpression($"JNIEnv.FindClass(\"{packageName}.R${nested.Name.ToLowerInvariant()}\");")));
+
+                                foreach (var field in nested.DeclaredFields)
+                                {
+                                    var left = new CodeSnippetExpression(type.FullName + "." + nested.Name + "." + field.Name);
+                                    var right = new CodeSnippetExpression("ReadField(R, \"" + field.Name + "\")");
+                                    updateIdValues.Statements.Add(new CodeAssignStatement(left, right));
+                                }
                             }
                         }
                     }
@@ -121,8 +130,9 @@
             var csc = new Microsoft.CSharp.CSharpCodeProvider();
             var parameters = new CompilerParameters
             {
-                OutputAssembly = "Resource.designer.dll",
+                OutputAssembly = Path.Combine(outputDirectory, "android", "assets", "assemblies", "Resource.designer.dll"),
             };
+            parameters.ReferencedAssemblies.Add(Path.Combine(xamarinPath, "lib", "xbuild-frameworks", "MonoAndroid", "v1.0", "System.dll"));
             parameters.ReferencedAssemblies.Add(Path.Combine(xamarinPath, "lib", "xbuild-frameworks", "MonoAndroid", TargetFrameworkVersion, "Mono.Android.dll"));
             parameters.ReferencedAssemblies.Add(mainAssembly);


Add more docs

Add more docs

--- tools/docfixer/document-generated-code.cs
+++ tools/docfixer/document-generated-code.cs
@@ -163,6 +163,8 @@
 	//
 	static Dictionary<Type,List<Type>> event_args_to_notification_uses = new Dictionary<Type,List<Type>> ();
 	static Dictionary<Type,bool> warnings_up_to_date = new Dictionary<Type, bool> ();
+	static List<Type> nested_types = new List<Type> ();
+
 	public static void ProcessNotification (Type t, XDocument xdoc, PropertyInfo pi)
 	{
 		var notification = pi.GetCustomAttributes (typeof (NotificationAttribute), true);
@@ -195,14 +197,18 @@
 				body.AppendFormat ("\n    Console.WriteLine (\"{0}\", args.{0});", p.Name);
 			}
 		}
+
+		if (remarks.Value == "To be added.")
+			remarks.Value = "";

 		remarks.AddFirst (XElement.Parse (String.Format ("<para id='tool-remark'>If you want to subscribe to this notification, you can use the convenience <see cref='T:{0}+Notifications'/>.<see cref='M:{0}+Notifications.Observe{1}'/> method which offers strongly typed access to the parameters of the notification.</para>", t.Name, mname)));
+		remarks.Add (XElement.Parse ("<para>The following example shows how to use the strongly typed Notifications class, to take the guesswork out of the available properties in the notification:</para>"));
 		remarks.Add (XElement.Parse (String.Format ("<example>\n" +
-							    "// Lambda style, listening\n" +
+							    "//\n// Lambda style\n//\n\n// listening\n" +
 							    "notification = {0}.Notifications.Observe{1} ((sender, args) => {{\n    /* Access strongly typed args */\n{2}\n}});\n\n" +
 							    "// To stop listening:\n" +
 							    "notification.Dispose ();\n\n" +
-							    "// Method style\nNSObject notification;" +
+							    "//\n// Method style\n//\nNSObject notification;\n" +
 							    "void Callback (object sender, {1} args)\n"+
 							    "{{\n    // Access strongly typed args\n{2}\n}}\n\n" +
 							    "void Setup ()\n{{\n" +
@@ -220,11 +226,10 @@
 			list.Add (notification_event_args);
 			event_args_to_notification_uses [notification_event_args] = list;
 		}
-
-		DocumentNotificationNestedType (t);
-	}
-
-	public static void DocumentNotificationNestedType (Type t)
+		DocumentNotificationNestedType (t, pi, body.ToString ());
+	}
+
+	public static void DocumentNotificationNestedType (Type t, PropertyInfo pi, string body)
 	{
 		var class_doc = GetDoc (t, true);

@@ -244,23 +249,43 @@
 						   "<see cref=\"T:MonoTouch.Foundation.NSNotificationEventArgs\"/> parameter which contains strongly typed properties for the notification arguments.</para>"));

 		var notifications = from prop in t.GetProperties ()
+			let propName = prop.Name
+			where propName == pi.Name
 			let fieldAttrs = prop.GetCustomAttributes (typeof (FieldAttribute), true)
 			where fieldAttrs.Length > 0 && prop.GetCustomAttributes (typeof (NotificationAttribute), true).Length > 0
-			let propName = prop.Name
 			let propLen = propName.Length
-			let convertedName = propName.Substring (0, propLen-("Notification".Length))
+			let convertedName = propName.EndsWith ("Notification") ? propName.Substring (0, propLen-("Notification".Length)) : propName
 			select new Tuple<string,string> (convertedName, ((FieldAttribute) fieldAttrs [0]).SymbolName) ;

 		foreach (var notification in notifications){
-			var method = class_doc.XPathSelectElement ("Type/Members/Member[@MemberName='Observe" + notification.Item1 + "']");
+			var mname = "Observe" + notification.Item1;
+			var method = class_doc.XPathSelectElement ("Type/Members/Member[@MemberName='" + mname + "']");

 			var handler = method.XPathSelectElement ("Docs/param");
 			var summary = method.XPathSelectElement ("Docs/summary");
 			var remarks = method.XPathSelectElement ("Docs/remarks");
+			var returns = method.XPathSelectElement ("Docs/returns");
 			if (handler == null)
 				Console.WriteLine ("Looking for {0}, and this is the class\n{1}", notification.Item1, class_doc);
 			handler.Value = "Method to invoke when the notification is posted.";
 			summary.Value = "Registers a method to be notified when the " + notification.Item2 + " notification is posted.";
+			returns.Value = "The returned NSObject represents the registered notification.   Either call Dispose on the object to stop receiving notifications, or pass it to <see cref=\"M:MonoTouch.Foundation.NSNotification.RemoveObserver\"/>";
+			remarks.Value = "";
+			remarks.Add (XElement.Parse ("<para>The following example shows how you can use this method in your code</para>"));
+
+			remarks.Add (XElement.Parse (String.Format ("<example>\n" +
+								    "//\n// Lambda style\n//\n\n// listening\n" +
+								    "notification = {0}.Notifications.Observe{1} ((sender, args) => {{\n    /* Access strongly typed args */\n{2}\n}});\n\n" +
+								    "// To stop listening:\n" +
+								    "notification.Dispose ();\n\n" +
+								    "//\n//Method style\n//\nNSObject notification;\n" +
+								    "void Callback (object sender, {1} args)\n"+
+								    "{{\n    // Access strongly typed args\n{2}\n}}\n\n" +
+								    "void Setup ()\n{{\n" +
+								    "    notification = {0}.Notifications.Observe{1} (Callback);\n}}\n\n" +
+								    "void Teardown ()\n{{\n" +
+								    "    notification.Dispose ();\n}}</example>", t.Name, mname, body)));
+
 		}
 		Save (GetMdocPath (t, true), class_doc);


fixed issue where results got mixed up on frontend

--- raspberry-uc-system/RaspberryUserControlSystem/TestmachineFrontend/MainWindowPartialClasses/Mux55.cs
+++ raspberry-uc-system/RaspberryUserControlSystem/TestmachineFrontend/MainWindowPartialClasses/Mux55.cs
@@ -35,16 +35,8 @@

         private void setPinsButton_Click(object sender, RoutedEventArgs e)
         {
-            try
-            {
-                this.addMessage("debug", x.ToString());
-                this.addMessage("debug", y.ToString());
-                getClientconnection().sendObject(new Request("ConnectPins", new object[] { (int)x, (int)y }));
-            } catch(Exception ex)
-            {
-                this.addMessage("Debug", ex.Message);
-            }
-        }
+             sendRequest(new Request("ConnectPins", new object[] { (int)x, (int)y }));
+         }

         public event PropertyChangedEventHandler PropertyChanged;


fix: double click always was fired after single click

--- ImapTrayApplicationContext.cs
+++ ImapTrayApplicationContext.cs
@@ -9,10 +9,12 @@
 {
     class ImapTrayApplicationContext : ApplicationContext
     {
-        private readonly Dictionary<string, int> _unread = new Dictionary<string, int>();
+        private readonly Timer _clickTimer = new Timer();
         private readonly NotifyIcon _notifyIcon = new NotifyIcon();
         private readonly AccountChecker _checker = new AccountChecker();
-
+        private readonly Dictionary<string, int> _unread = new Dictionary<string, int>();
+
+        private bool _singleClick;
         private LogForm _logWindow = null;
         private ConfigurationForm _configWindow = null;

@@ -25,9 +27,11 @@
             };
             MainForm.Shown += (sender, args) => ((Form) sender).Hide();

+            _clickTimer.Tick += ClickTimerOnTick;
+            _clickTimer.Interval = SystemInformation.DoubleClickTime;
+
             _notifyIcon.Icon = Properties.Resources.AppIcon;
-            _notifyIcon.Click += ShowUnreadCount;
-            _notifyIcon.DoubleClick += OpenEmailClient;
+            _notifyIcon.MouseDown += NotifyIconOnMouseUp;
             _notifyIcon.ContextMenu = new ContextMenu(new[]
             {
                 new MenuItem("Check now", CheckNow),
@@ -71,14 +75,40 @@
             };
         }

-        private void ShowUnreadCount(object sender, EventArgs e)
-        {
-            MouseEventArgs mouseArgs = e as MouseEventArgs;
-            if (mouseArgs == null || mouseArgs.Button != MouseButtons.Left)
+        private void ClickTimerOnTick(object sender, EventArgs eventArgs)
+        {
+            if (_singleClick)
+            {
+                _clickTimer.Stop();
+                _singleClick = false;
+
+                ShowUnreadCount();
+            }
+        }
+
+        private void NotifyIconOnMouseUp(object sender, MouseEventArgs e)
+        {
+            if (e.Button != MouseButtons.Left)
             {
                 return;
             }

+            if (e.Clicks < 2)
+            {
+                _singleClick = true;
+                _clickTimer.Start();
+            }
+            else
+            {
+                _singleClick = false;
+                _clickTimer.Stop();
+
+                OpenEmailClient();
+            }
+        }
+
+        private void ShowUnreadCount()
+        {
             int total = _unread.Values.Sum();
             var title = (total == 0) ? "Unread emails not found" : "Some accounts have unread emails";
             var text = "";
@@ -102,7 +132,7 @@
             NotificationManager.Add(notify);
         }

-        private void OpenEmailClient(object sender, EventArgs e)
+        private void OpenEmailClient()
         {
             var clientPath = ConfigurationManager.Load().EmailClientPath;
             if (String.IsNullOrEmpty(clientPath))


Only perform expensive line validation in DEBUG

--- Instrumental.NET/Collector.cs
+++ Instrumental.NET/Collector.cs
@@ -41,8 +41,10 @@

         public void SendMessage (String message) {
             // Make sure the message is terminated with "\n" and includes no other "\r\n" characters
+#if DEBUG
             if (message.IndexOf("\r") != -1 || message.IndexOf("\n") != message.Length - 1)
                 throw new InstrumentalException("Invalid message, {0}", message);
+#endif

             if (_messages.Count <= ApproximateMaxMessages) {
                 _messages.Enqueue(message);


Update Interface

Update Interface

--- Interface/Interface/Class1.cs
+++ Interface/Interface/Class1.cs
@@ -7,37 +7,41 @@
 	[ServiceContract]
 	public interface IWcfInterface
 	{
-		[OperationContract]

 		/// <summary>
 		/// 今の自分のステータスを取得します。
 		/// </summary>
 		/// <param name="id">自分のID</param>
 		/// <returns>ステータス</returns>
+		[OperationContract]
 		Status GetMyStatus(string id);

 		/// <summary>
 		/// 現在一番上に出されているカード
 		/// </summary>
 		/// <returns>カードのリスト</returns>
+		[OperationContract]
 		List<Card> Layout();

 		/// <summary>
 		/// 最後に場札が流れたあと最初に出されたカード
 		/// </summary>
 		/// <returns>カードのリスト</returns>
+		[OperationContract]
 		List<Card> Lead();

 		/// <summary>
 		/// 最後に場札が流れてから今までに出されたカード
 		/// </summary>
 		/// <returns>indexが若いほど古いカードです。</returns>
+		[OperationContract]
 		List<List<Card>> TableCards();

 		/// <summary>
 		/// 今までに流れたカードのリスト
 		/// </summary>
 		/// <returns>indexが若いほど古いカードです。</returns>
+		[OperationContract]
 		List<List<Card>> Discards();


fix tests

fix tests

--- JSCore.Tests/JSIntegration.cs
+++ JSCore.Tests/JSIntegration.cs
@@ -49,7 +49,7 @@
             void acceptsArray(object[] a);
             void acceptsObject(Dictionary<object, object> d);
             void acceptsNonGenericDictionary(Dictionary<string, object> d);
-            void acceptsDelegate(Delegate d);
+            void acceptsDelegate(JavaScriptFunction d);

             void verified(bool r);
         }
@@ -209,7 +209,7 @@
         [TestMethod]
         public void TestFunctionSimpleCallbacks()
         {
-            testFunctionsMock.Setup(f => f.acceptsDelegate(It.IsAny<Delegate>())).Callback<Delegate>(d => Assert.IsTrue((bool)d.DynamicInvoke((object) new object[] { })));
+            testFunctionsMock.Setup(f => f.acceptsDelegate(It.IsAny<JavaScriptFunction>())).Callback<JavaScriptFunction>(d => Assert.IsTrue((bool)d(Context)));
             testFunctionsMock.Setup(f => f.verified(true));

             Context.EvaluateScript("testFunctions.acceptsDelegate(function() { testFunctions.verified(true); return true; })");
@@ -227,7 +227,7 @@
         {
             Dispatcher dispatcher = Dispatcher.CurrentDispatcher;

-            testFunctionsMock.Setup(f => f.acceptsDelegate(It.IsAny<Delegate>())).Callback<Delegate>(d => {
+            testFunctionsMock.Setup(f => f.acceptsDelegate(It.IsAny<JavaScriptFunction>())).Callback<JavaScriptFunction>(d => {

                 var worker = new System.ComponentModel.BackgroundWorker();
                 worker.DoWork += delegate
@@ -236,7 +236,7 @@
                     dispatcher.Invoke((System.Windows.Forms.MethodInvoker)delegate
                     {
                         //m_trigger.Set();
-                        Assert.IsTrue((bool)d.DynamicInvoke((object)new object[] { 10 }));
+                        Assert.IsTrue((bool)d(Context, 10));
                     });
                 };

@@ -257,7 +257,7 @@
         [TestMethod]
         public void TestFunctionCallbacksWithParametersAndReturnsObject()
         {
-            testFunctionsMock.Setup(f => f.acceptsDelegate(It.IsAny<Delegate>())).Callback<Delegate>(VerifyObjectCallbackFunction);
+            testFunctionsMock.Setup(f => f.acceptsDelegate(It.IsAny<JavaScriptFunction>())).Callback<JavaScriptFunction>(VerifyObjectCallbackFunction);
             testFunctionsMock.Setup(f => f.verified(true));

             Context.EvaluateScript(@"
@@ -276,7 +276,7 @@
         [TestMethod]
         public void TestFunctionCallbacksWithParametersAndReturnsArray()
         {
-            testFunctionsMock.Setup(f => f.acceptsDelegate(It.IsAny<Delegate>())).Callback<Delegate>(VerifyArrayCallbackFunction);
+            testFunctionsMock.Setup(f => f.acceptsDelegate(It.IsAny<JavaScriptFunction>())).Callback<JavaScriptFunction>(VerifyArrayCallbackFunction);
             testFunctionsMock.Setup(f => f.verified(true));

             Context.EvaluateScript(@"
@@ -289,40 +289,15 @@
             testFunctionsMock.VerifyAll();
         }

-        /// <summary>
-        /// Have the C# delegate spawn a thread and call the passed in calback function asyncrounously
-        /// </summary>
-        [TestMethod]
-        public void TestFunctionsAsyncCallbacks()
-        {
-            lock (this)
-            {
-                testFunctionsMock.Setup(f => f.acceptsDelegate(It.IsAny<Delegate>())).Callback<Delegate>(AsyncCallbackFunction);
-                testFunctionsMock.Setup(f => f.verified(true));
-
-                JSValue result = Context.EvaluateScript(@"
-                    testFunctions.acceptsDelegate(function() {
-                        testFunctions.verified(true);
-                        return true;
-                    })
-                ");
-
-
-                if (!Monitor.Wait(this, 5000)) Assert.Fail("Callback function didn't fire");
-            }
-
-            testFunctionsMock.VerifyAll();
-        }
-

         /// <summary>
         /// Verify that the callback accepts parameters and returns an object
         /// </summary>
         /// <param name="d"></param>
-        private void VerifyObjectCallbackFunction(Delegate d)
+        private void VerifyObjectCallbackFunction(JavaScriptFunction d)
         {
             bool param = true;
-            Dictionary<object, object> returnVal = (Dictionary<object, object>)d.DynamicInvoke((object)new object[] { param });
+            Dictionary<object, object> returnVal = (Dictionary<object, object>)d(Context, param);
             Assert.AreEqual<string>("success", (string)returnVal.Keys.ElementAt(0));
             Assert.AreEqual<string>("hello world", (string)returnVal["success"]);
         }
@@ -331,34 +306,16 @@
         /// Verify that the callback accepts parametsr and returns an array
         /// </summary>
         /// <param name="d"></param>
-        private void VerifyArrayCallbackFunction(Delegate d)
+        private void VerifyArrayCallbackFunction(JavaScriptFunction d)
         {
             bool param = true;
-            object[] ret = (object[]) d.DynamicInvoke((object)new object[] { param });
+            object[] ret = (object[])d(Context, param);
             Assert.AreEqual(3, ret.Length);
             Assert.AreEqual("first", ret[0]);
             Assert.IsTrue(precisionEquals(2.0, (double)ret[1]));
             Assert.AreEqual(param, (bool)ret[2]);
         }

-        /// <summary>
-        /// Fire off a thread and invoke the delegate later
-        /// </summary>
-        /// <param name="d"></param>
-        private void AsyncCallbackFunction(Delegate d)
-        {
-            var worker = new System.ComponentModel.BackgroundWorker();
-            worker.DoWork += delegate
-            {
-                lock (this)
-                {
-                    Thread.Sleep(400);
-                    Assert.IsTrue((bool)d.DynamicInvoke((object)new object[] { }));
-                    Monitor.Pulse(this);
-                }
-            };
-            worker.RunWorkerAsync();
-        }

         /// <summary>
         /// Are the double close enough?


- Refactored a .Any(..) with a .Contains(..) as corrected by DFowler :)

--- JabbR/Services/ChatService.cs
+++ JabbR/Services/ChatService.cs
@@ -745,7 +745,7 @@
             }

             // Make sure the (owner) user is not in the room.
-            if (targetRoom.Users.Any(x => x.Id == user.Id))
+            if (targetRoom.Users.Contains(user))
             {
                 throw new InvalidOperationException("You are trying to close a room which you are still in. Please leave the room before closing it.");
             }


Fix bug uncovered by tests.

Fix bug uncovered by tests.

--- JabbR/Services/ChatService.cs
+++ JabbR/Services/ChatService.cs
@@ -881,7 +881,7 @@

         public void ChangeWelcome(ChatUser user, ChatRoom room, string newWelcome)
         {
-            EnsureCreatorOrAdmin(user, room);
+            EnsureOwnerOrAdmin(user, room);
             room.Welcome = newWelcome;
             _repository.CommitChanges();
         }


Update Graphics.cs

Update Graphics.cs

--- Assembly-CSharp/Memoria/Configuration/Access/Graphics.cs
+++ Assembly-CSharp/Memoria/Configuration/Access/Graphics.cs
@@ -17,7 +17,7 @@

             private static volatile Boolean _widescreenSupport = InitializeWidescreenSupport();

-            private static Boolean InitializeWidescreenSupport()
+            public static Boolean InitializeWidescreenSupport()
             {
                 if (!Enabled)
                     return false;
@@ -68,4 +68,4 @@
             }
         }
     }
-}+}


interesting method definition updated

interesting method definition updated

--- AsyncSuffix/Analyzer/ConsiderUsingAsyncSuffixAnalyzer.cs
+++ AsyncSuffix/Analyzer/ConsiderUsingAsyncSuffixAnalyzer.cs
@@ -7,37 +7,41 @@

 namespace Sizikov.AsyncSuffix.Analyzer
 {
-    [ElementProblemAnalyzer(typeof (IMethodDeclaration), HighlightingTypes = new[] { typeof (ConsiderUsingAsyncSuffixHighlighting) })]
+    [ElementProblemAnalyzer(typeof (IMethodDeclaration),
+        HighlightingTypes = new[] {typeof (ConsiderUsingAsyncSuffixHighlighting)})]
     public sealed class ConsiderUsingAsyncSuffixAnalyzer : ElementProblemAnalyzer<IMethodDeclaration>
     {
-        protected override void Run(IMethodDeclaration methodDeclaration, ElementProblemAnalyzerData data, IHighlightingConsumer consumer)
+        protected override void Run(IMethodDeclaration methodDeclaration, ElementProblemAnalyzerData data,
+                                    IHighlightingConsumer consumer)
         {
             if (IsInterestring(methodDeclaration))
             {
-                var nameIdentifier= methodDeclaration.NameIdentifier;
-                var declaredElement = methodDeclaration.DeclaredElement;
-                if (declaredElement != null)
-                {
-                    if (declaredElement.ShortName.EndsWith("Async", StringComparison.Ordinal))
-                    {
-                        return;
-                    }
-
-                    var returnType = declaredElement.ReturnType as IDeclaredType;
-                    if (returnType != null)
-                    {
-                        if (returnType.IsTaskType())
-                        {
-                            consumer.AddHighlighting(new ConsiderUsingAsyncSuffixHighlighting(methodDeclaration));
-                        }
-                    }
-                }
+                consumer.AddHighlighting(new ConsiderUsingAsyncSuffixHighlighting(methodDeclaration));
             }
         }

         private bool IsInterestring(IMethodDeclaration methodDeclaration)
         {
-            return !methodDeclaration.IsOverride;
+            if (methodDeclaration.IsOverride) return false;
+
+            var declaredElement = methodDeclaration.DeclaredElement;
+            if (declaredElement != null)
+            {
+                if (declaredElement.ShortName.EndsWith("Async", StringComparison.Ordinal))
+                {
+                    return false;
+                }
+
+                var returnType = declaredElement.ReturnType as IDeclaredType;
+                if (returnType != null)
+                {
+                    if (returnType.IsTaskType())
+                    {
+                        return true;
+                    }
+                }
+            }
+            return false;
         }
     }
 }


Add another null check to map items.

Add another null check to map items.

--- Aurora/Modules/Avatar/AuroraSearch/AuroraSearchModule.cs
+++ Aurora/Modules/Avatar/AuroraSearch/AuroraSearchModule.cs
@@ -436,6 +436,8 @@
                 int locY = 0;
                 foreach (DirLandReplyData landDir in Landdata)
                 {
+                    if (landDir == null)
+                        continue;
                     LandData landdata = directoryService.GetParcelInfo(landDir.parcelID);
                     if (landdata == null || landdata.Maturity != 0)
                         continue; //Not a PG land


Fix a null ref in the selection module that Sam spotted.

--- Aurora/Modules/Avatar/SelectionModule/SelectionModule.cs
+++ Aurora/Modules/Avatar/SelectionModule/SelectionModule.cs
@@ -333,6 +333,8 @@

             protected void EventManager_OnFrame()
             {
+                if (m_presence == null)
+                    return; //We can't deregister ourselves... our reference is lost... so just hope we stop getting called soon
                 if (!m_presence.IsChildAgent && m_module.UseSelectionParticles && SendEffectPackets > 7)
                 {
                     SendViewerEffects();


changed AODE avatar updates control. Avatar should move a bit better now, possible with 2 much updates, but that's to be filtered elsewhere

--- Aurora/Physics/AuroraOpenDynamicsEngine/AODECharacter.cs
+++ Aurora/Physics/AuroraOpenDynamicsEngine/AODECharacter.cs
@@ -59,8 +59,8 @@
         private bool _wasZeroFlagFlying = false;
         private int m_ZeroUpdateSent = 0;

-        float m_UpdateTimecntr = 0;
-        float m_UpdateFPScntr = 0.05f;
+//        float m_UpdateTimecntr = 0;
+//        float m_UpdateFPScntr = 0.05f;
         private bool m_isJumping = false;
         public override bool IsJumping
         {
@@ -202,11 +202,12 @@
             m_tainted_isPhysical = true; // new tainted status: need to create ODE information

             _parent_scene.AddPhysicsActorTaint(this);
-
+/*
             m_UpdateTimecntr = 0;
             m_UpdateFPScntr = 2.5f * parent_scene.StepTime; // this parameter needs retunning and possible came from ini file
             if (m_UpdateTimecntr > .1f) // try to keep it under 100ms
                 m_UpdateTimecntr = .1f;
+ */
             m_name = avName;
         }

@@ -572,7 +573,7 @@
             d.GeomSetCategoryBits(Shell, (int)m_collisionCategories);
             d.GeomSetCollideBits(Shell, (int)m_collisionFlags);

-            d.MassSetCapsule(out ShellMass, 30f, 3, CAPSULE_RADIUS, CAPSULE_LENGTH); // density 200
+            d.MassSetCapsule(out ShellMass, 80f, 3, CAPSULE_RADIUS, CAPSULE_LENGTH);

             m_mass=ShellMass.mass;

@@ -1271,6 +1272,7 @@
                     qtmp.Y = 0;
                     qtmp.Z = 0;
                     d.BodySetQuaternion(Body, ref qtmp);
+                    d.BodySetAngularVel(Body, 0, 0, 0);

                     //When falling, we keep going faster and faster, and eventually, the client blue screens (blue is all you see).
                     // The speed that does this is slightly higher than -30, so we cap it here so we never do that during falling.
@@ -1386,6 +1388,7 @@
             _velocity.X = vec.X;
             _velocity.Y = vec.Y;
             _velocity.Z = vec.Z;
+
             if (!IsFinite(_velocity))
             {
                 _parent_scene.BadCharacter(this);
@@ -1413,30 +1416,24 @@
             if(vcntr == 3)
                 VelIsZero = true;

-            // slow down updates
+            // slow down updates, changed y mind: updates should go at physics fps, acording to movement conditions
+/*
             m_UpdateTimecntr += timestep;
-            m_UpdateFPScntr = 2.5f * _parent_scene.StepTime * 10 * (6 - (_parent_scene.TimeDilation * 5));
+            m_UpdateFPScntr = 2.5f * _parent_scene.StepTime;
             if(m_UpdateTimecntr < m_UpdateFPScntr)
                 return;

             m_UpdateTimecntr = 0;
-
-            const float VELOCITY_TOLERANCE = 0.025f;
+*/
+            const float VELOCITY_TOLERANCE = 0.025f * 0.025f;
             //const float ANG_VELOCITY_TOLERANCE = 0.05f;
             const float POSITION_TOLERANCE = 5f;
             bool needSendUpdate = false;

-            //Check to see whether we need to trigger the significant movement method in the presence
-            // avas don't rotate for now                if (!RotationalVelocity.ApproxEquals(m_lastRotationalVelocity, VELOCITY_TOLERANCE) ||
-            // but simulator does not process rotation changes
-            float length = (Velocity - m_lastVelocity).LengthSquared();
-            //The rotational velocity check... is odd and doesn't work right, so ignore it here
-            // Velocity (when turning) will change enough to trigger the updates
-            //float anglength = (m_rotationalVelocity - m_lastAngVelocity).LengthSquared();
+            float vlength = (Velocity - m_lastVelocity).LengthSquared();
             if(//!VelIsZero &&
-                //                   (!Velocity.ApproxEquals(m_lastVelocity, VELOCITY_TOLERANCE) ||
                 (
-                (length > VELOCITY_TOLERANCE)// ||
+                (vlength > VELOCITY_TOLERANCE)// ||
                 //(anglength > ANG_VELOCITY_TOLERANCE) ||
                 //true
                 //                    (Math.Abs(_lastorientation.X - _orientation.X) > 0.001) ||
@@ -1445,10 +1442,8 @@
                 //                    (Math.Abs(_lastorientation.W - _orientation.W) > 0.001)
                 ))
             {
-                //m_log.Warn("Vel change - " + length);
-                // Update the "last" values
                 needSendUpdate = true;
-                m_ZeroUpdateSent = 10;
+                m_ZeroUpdateSent = 3;
                 m_lastPosition = _position;
                 //                        m_lastRotationalVelocity = RotationalVelocity;
                 m_lastVelocity = Velocity;
@@ -1465,9 +1460,8 @@
                     m_ZeroUpdateSent--;
                 }
             }
-            if((Math.Abs(_position.X - m_lastPosition.X) > POSITION_TOLERANCE) ||
-                (Math.Abs(_position.Y - m_lastPosition.Y) > POSITION_TOLERANCE) ||
-                (Math.Abs(_position.Z - m_lastPosition.Z) > POSITION_TOLERANCE))
+            float plength = (_position - m_lastPosition).LengthSquared();
+            if(plength > POSITION_TOLERANCE)
             {
                 m_lastPosition = _position;
                 needSendUpdate = true;


Adds AuthnStatement claims for non-password authentication methods

The claims forming the AuthnStatement were only added when the authentication method is "password". An external authentication in IdentityServer3 sets the authentication method to "external", thus no AuthnStatement was generated and the service provider receiving the response could not create a session. This commit will cause the claims for AuthnStatement to be added always, if the authentication method differs from "password", the value for the AuthenticationMethod claim is AuthenticationMethods.Unspecified.

--- source/WsFederationPlugin/ResponseHandling/SignInResponseGenerator.cs
+++ source/WsFederationPlugin/ResponseHandling/SignInResponseGenerator.cs
@@ -177,11 +177,19 @@
                 }
             }

+            // The AuthnStatement statement generated from the following 2
+            // claims is manditory for some service providers (i.e. Shibboleth-Sp).
+            // The value of the AuthenticationMethod claim must be one of the constants in
+            // System.IdentityModel.Tokens.AuthenticationMethods.
+            // Password is the only one that can be directly matched, everything
+            // else defaults to Unspecified.
             if (validationResult.Subject.GetAuthenticationMethod() == Constants.AuthenticationMethods.Password)
             {
                 mappedClaims.Add(new Claim(ClaimTypes.AuthenticationMethod, AuthenticationMethods.Password));
-                mappedClaims.Add(AuthenticationInstantClaim.Now);
-            }
+            } else {
+                mappedClaims.Add(new Claim(ClaimTypes.AuthenticationMethod, AuthenticationMethods.Unspecified));
+            }
+            mappedClaims.Add(AuthenticationInstantClaim.Now);

             return new ClaimsIdentity(mappedClaims, "idsrv");
         }
@@ -218,4 +226,4 @@
             });
         }
     }
-}+}


[.NET] Properties set for ILuisModel are not taken into account (#3026)

* Fix issue when properties set for ILuisModel are not taken into account in LuisService constructor - Change in overloaded QueryAsync method

--- CSharp/Library/Microsoft.Bot.Builder/Luis/LuisService.cs
+++ CSharp/Library/Microsoft.Bot.Builder/Luis/LuisService.cs
@@ -289,7 +289,8 @@
         /// <returns>The LUIS result.</returns>
         public static async Task<LuisResult> QueryAsync(this ILuisService service, string text, CancellationToken token)
         {
-            return await service.QueryAsync(new LuisRequest(query: text), token);
+            var luisRequest = service.ModifyRequest(new LuisRequest(query: text));
+            return await service.QueryAsync(luisRequest, token);
         }

         /// <summary>
@@ -300,7 +301,8 @@
         /// <param name="token">Cancellation token.</param>
         /// <returns>LUIS result.</returns>
         public static async Task<LuisResult> QueryAsync(this ILuisService service, LuisRequest request, CancellationToken token)
-        {
+        {
+            service.ModifyRequest(request);
             var uri = service.BuildUri(request);
             return await service.QueryAsync(uri, token);
         }


update

update

--- CSharpGL3/GLScene/GLActions/RenderAction/RenderAction.cs
+++ CSharpGL3/GLScene/GLActions/RenderAction/RenderAction.cs
@@ -34,7 +34,9 @@
         /// </summary>
         public void Render()
         {
-            throw new NotImplementedException();
+            if (this.AppliedNode == null) { throw new Exception("No node applied!"); }
+
+            this.Context.Render();
         }

     }


Updated PeerDirectoryClient manual performance tests to measure PeerSubscriptionsForTypesUpdated handling

--- src/Abc.Zebus.Tests/Directory/PeerDirectoryClientTests.Performance.cs
+++ src/Abc.Zebus.Tests/Directory/PeerDirectoryClientTests.Performance.cs
@@ -24,6 +24,8 @@
                 }
             }

+            var subscriptionsByTypeId = subscriptions.GroupBy(x => x.MessageTypeId).ToDictionary(x => x.Key, x => x.Select(s=>s.BindingKey).ToArray());
+
             _directory = new PeerDirectoryClient(_configurationMock.Object);
             _directory.Handle(new PeerStarted(_otherPeer.ToPeerDescriptor(false)));

@@ -47,26 +49,22 @@
             _directory = new PeerDirectoryClient(_configurationMock.Object);
             _directory.Handle(new PeerStarted(_otherPeer.ToPeerDescriptor(false)));

-            // TODO LVK: uncomment but use PeerSubscriptionsForTypesUpdated
-
-            //Console.WriteLine("Incremental updates (add)");
-            //using (Measure.Throughput(subscriptions.Count))
-            //{
-            //    for (var subscriptionIndex = 0; subscriptionIndex <subscriptions.Count; ++subscriptionIndex)
-            //    {
-            //        _directory.Handle(new PeerSubscriptionsAdded(_otherPeer.Id, new[] { subscriptions[subscriptionIndex] }, DateTime.UtcNow));
-            //    }
-            //}
-            //Console.WriteLine("Incremental updates (remove)");
-            //using (Measure.Throughput(subscriptions.Count))
-            //{
-            //    for (var subscriptionIndex = subscriptions.Count - 1; subscriptionIndex >= 0; --subscriptionIndex)
-            //    //for (var subscriptionIndex = 0; subscriptionIndex < subscriptions.Count; subscriptionIndex += 200)
-            //    {
-            //        _directory.Handle(new PeerSubscriptionsRemoved(_otherPeer.Id, new[] { subscriptions[subscriptionIndex] }, DateTime.UtcNow));
-            //        //_directory.Handle(new PeerSubscriptionsRemoved(_otherPeer.Id, subscriptions.GetRange(subscriptionIndex, 200).ToArray(), DateTime.UtcNow));
-            //    }
-            //}
+            Console.WriteLine("Snapshot updates per message type id (add)");
+            using (Measure.Throughput(subscriptions.Count))
+            {
+                foreach (var subscriptionGroup in subscriptionsByTypeId)
+                {
+                    _directory.Handle(new PeerSubscriptionsForTypesUpdated(_otherPeer.Id, DateTime.UtcNow, subscriptionGroup.Key, subscriptionGroup.Value));
+                }
+            }
+            Console.WriteLine("Snapshot updates per message type id (remove)");
+            using (Measure.Throughput(subscriptions.Count))
+            {
+                foreach (var subscriptionGroup in subscriptionsByTypeId)
+                {
+                    _directory.Handle(new PeerSubscriptionsForTypesUpdated(_otherPeer.Id, DateTime.UtcNow, subscriptionGroup.Key));
+                }
+            }
         }

         [Test, Ignore("Performance test")]
@@ -81,12 +79,14 @@
                 {
                     subscriptions.Add(new Subscription(new MessageTypeId("Abc.Common.SharedEvent" + subscriptionIndex)));
                 }
+
                 for (var subscriptionIndex = 0; subscriptionIndex < 10; ++subscriptionIndex)
                 {
                     subscriptions.Add(new Subscription(new MessageTypeId("Abc.Specific" + litePeerIndex + ".PrivateEvent" + subscriptionIndex)));
                 }
                 _directory.Handle(new PeerStarted(new PeerDescriptor(new PeerId("Abc.Testing.Peer" + litePeerIndex), "tcp://testing:11" + litePeerIndex, true, true, true, DateTime.UtcNow, subscriptions.ToArray())));
             }
+
             for (var fatPeerIndex = 0; fatPeerIndex < 30; ++fatPeerIndex)
             {
                 var subscriptions = new List<Subscription>();


조사결정시 치환전 Phoneme생성을 치환후로 변경.

조사결정시 치환전 Phoneme생성을 치환후로 변경.

--- KoreanUtility/Grammar/Josa.cs
+++ KoreanUtility/Grammar/Josa.cs
@@ -42,11 +42,12 @@
         /// <returns>결정된 조사입니다.</returns>
         public static string 조사결정(char lastChar, 조사 type)
         {
-            Phoneme phoneme = PhonemeConverter.CharacterToPhoneme(lastChar);
+            // 완성형 한글이 아니면 일단 '아'로 치환한다.
             if ((lastChar <= '가' && lastChar >= '힣'))
             {
                 lastChar = '아';
             }
+            Phoneme phoneme = PhonemeConverter.CharacterToPhoneme(lastChar);
             switch (type)
             {
                 case 조사.은_는:


Adding a test case for field and property with directives.

--- src/EditorFeatures/CSharpTest/UseAutoProperty/UseAutoPropertyTests.cs
+++ src/EditorFeatures/CSharpTest/UseAutoProperty/UseAutoPropertyTests.cs
@@ -1732,5 +1732,33 @@

 }");
         }
+        [WorkItem(27675, "https://github.com/dotnet/roslyn/issues/27675")]
+        [Fact, Trait(Traits.Feature, Traits.Features.CodeActionsUseAutoProperty)]
+        public async Task TestSingleLineWithDoubleDirectives()
+        {
+            await TestInRegularAndScriptAsync(
+@"class TestClass
+{
+    #region Field
+    [|int i|];
+    #endregion
+
+    #region Property
+    int P
+    {
+        get { return i; }
+    }
+    #endregion
+}",
+@"class TestClass
+{
+    #region Field
+    #endregion
+
+    #region Property
+    int P { get; }
+    #endregion
+}");
+        }
     }
 }


Probe all paths of assemblies loaded into this AppDomain

Write all exception messages into the main error message. This helps
diagnosing problems around missing assemblies.

--- src/FluentMigrator.Runner.Core/Processors/ReflectionBasedDbFactory.cs
+++ src/FluentMigrator.Runner.Core/Processors/ReflectionBasedDbFactory.cs
@@ -22,6 +22,8 @@

 using FluentMigrator.Runner.Infrastructure;

+using JetBrains.Annotations;
+
 namespace FluentMigrator.Runner.Processors
 {
     using System.Data.Common;
@@ -40,7 +42,7 @@
         protected ReflectionBasedDbFactory(params TestEntry[] testEntries)
         {
             if (testEntries.Length == 0)
-                throw new ArgumentException(nameof(testEntries), "At least one test entry must be specified");
+                throw new ArgumentException(@"At least one test entry must be specified", nameof(testEntries));
             _testEntries = testEntries;
         }

@@ -57,7 +59,9 @@
             }

             var assemblyNames = string.Join(", ", _testEntries.Select(x => x.AssemblyName));
-            throw new AggregateException($"Unable to load the driver. Attempted to load: {assemblyNames}", exceptions);
+            var fullExceptionOutput = string.Join(Environment.NewLine, exceptions.Select(x => x.ToString()));
+
+            throw new AggregateException($"Unable to load the driver. Attempted to load: {assemblyNames}, with {fullExceptionOutput}", exceptions);
         }

         protected static bool TryCreateFactory(IEnumerable<TestEntry> entries, ICollection<Exception> exceptions, out DbProviderFactory factory)
@@ -66,7 +70,9 @@
             {
                 if (TryCreateFromCurrentDomain(entry, exceptions, out factory))
                     return true;
-                if (TryCreateFactoryFromFile(entry, exceptions, out factory))
+                if (TryCreateFactoryFromRuntimeHost(entry, exceptions, out factory))
+                    return true;
+                if (TryCreateFromAppDomainPaths(entry, exceptions, out factory))
                     return true;
                 if (TryCreateFromGac(entry, exceptions, out factory))
                     return true;
@@ -76,7 +82,34 @@
             return false;
         }

-        protected static bool TryCreateFactoryFromFile(TestEntry entry, ICollection<Exception> exceptions, out DbProviderFactory factory)
+        protected static bool TryCreateFromAppDomainPaths(
+            TestEntry entry,
+            ICollection<Exception> exceptions,
+            out DbProviderFactory factory)
+        {
+            if (TryLoadAssemblyFromAppDomainDirectories(entry.AssemblyName, exceptions, out var assembly))
+            {
+                try
+                {
+                    var type = assembly.GetType(entry.DBProviderFactoryTypeName, true);
+                    if (TryGetInstance(type, out factory))
+                        return true;
+
+                    factory = (DbProviderFactory) Activator.CreateInstance(type);
+                    return true;
+                }
+                catch (Exception ex)
+                {
+                    // Ignore
+                    exceptions.Add(ex);
+                }
+            }
+
+            factory = null;
+            return false;
+        }
+
+        protected static bool TryCreateFactoryFromRuntimeHost(TestEntry entry, ICollection<Exception> exceptions, out DbProviderFactory factory)
         {
             try
             {
@@ -164,6 +197,43 @@
             }
         }

+        protected static bool TryLoadAssemblyFromAppDomainDirectories(
+            string assemblyName,
+            ICollection<Exception> exceptions,
+            out Assembly assembly)
+        {
+            return TryLoadAssemblyFromDirectories(
+                GetPathsFromAppDomain(),
+                assemblyName,
+                exceptions,
+                out assembly);
+        }
+
+        protected static bool TryLoadAssemblyFromDirectories(IEnumerable<string> directories, string assemblyName, ICollection<Exception> exceptions, out Assembly assembly)
+        {
+            var alreadyTested = new HashSet<string>(StringComparer.InvariantCulture);
+            var assemblyFileName = $"{assemblyName}.dll";
+            foreach (var directory in directories)
+            {
+                var path = Path.Combine(directory, assemblyFileName);
+                if (!alreadyTested.Add(path))
+                    continue;
+
+                try
+                {
+                    assembly = Assembly.LoadFile(path);
+                    return true;
+                }
+                catch (Exception ex)
+                {
+                    exceptions.Add(new Exception($"Failed to load file {path}", ex));
+                }
+            }
+
+            assembly = null;
+            return false;
+        }
+
         private static IEnumerable<AssemblyName> FindAssembliesInGac(params string[] names)
         {
             foreach (var name in names)
@@ -200,6 +270,18 @@
             return factory != null;
         }

+        [NotNull, ItemNotNull]
+        private static IEnumerable<string> GetPathsFromAppDomain()
+        {
+            foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
+            {
+                var assemblyDirectory = Path.GetDirectoryName(assembly.Location);
+                if (assemblyDirectory == null)
+                    continue;
+                yield return assemblyDirectory;
+            }
+        }
+
         protected class TestEntry
         {
             public TestEntry(string assemblyName, string dbProviderFactoryTypeName)


Use 'buildinfo' command instead of 'serverStatus' to get the server version. (#152)

* Release 0.5.12

* Use 'buildinfo' command instead of 'serverStatus' to get the server version. Because the 'buildinfo' command does not require root privileges.

--- src/Hangfire.Mongo/Migration/Strategies/MongoMigrationStrategyBase.cs
+++ src/Hangfire.Mongo/Migration/Strategies/MongoMigrationStrategyBase.cs
@@ -171,7 +171,7 @@
                 }
             });

-            var serverStatus = database.RunCommand<BsonDocument>(new BsonDocument("serverStatus", 1));
+            var serverStatus = database.RunCommand<BsonDocument>(new BsonDocument("buildinfo", 1));
             if (serverStatus.Contains("version"))
             {
                 var version = Version.Parse(serverStatus["version"].AsString);


Access Modifier Tests now PASS

Access Modifier Tests now PASS

--- src/Kata.GildedRose.CSharp.Unit.Tests/WhenTestTheGildedRoseProgram.cs
+++ src/Kata.GildedRose.CSharp.Unit.Tests/WhenTestTheGildedRoseProgram.cs
@@ -50,7 +50,7 @@
         {
             GildedRoseProgram.Items = _stockItems;
             GildedRoseProgram.UpdateQuality();
-            Assert.AreEqual(10, GildedRoseProgram.Items[0].Quality);
+            Assert.AreEqual(9, GildedRoseProgram.Items[0].Quality);
         }
     }
 }


Minor code cleanup.

Minor code cleanup.

--- src/MicroNetCore.Rest.Hypermedia/Services/HypermediaLinksGenerator.cs
+++ src/MicroNetCore.Rest.Hypermedia/Services/HypermediaLinksGenerator.cs
@@ -88,7 +88,7 @@
         {
             return new Link
             {
-                Rel = new[] { "prev" },
+                Rel = new[] {"prev"},
                 Href = GetPageHref(type, pageIndex - 1, pageSize)
             };
         }
@@ -97,7 +97,7 @@
         {
             return new Link
             {
-                Rel = new[] { "next" },
+                Rel = new[] {"next"},
                 Href = GetPageHref(type, pageIndex + 1, pageSize)
             };
         }
@@ -112,7 +112,7 @@

             return _apiHelper.GetUri(type, query);
         }
-
+
         #endregion
     }
 }


Fix for multiple projects

Fix for multiple projects

The original fix only handled the parse change for single projects, this
fixes it to work for all projects.

--- src/Microsoft.DotNet.CodeFormatting/FormattingEngineImplementation.cs
+++ src/Microsoft.DotNet.CodeFormatting/FormattingEngineImplementation.cs
@@ -128,16 +128,15 @@
         /// </summary>
         private Solution RemoveTablePreprocessorSymbol(Solution newSolution, Solution oldSolution)
         {
-            var solution = newSolution;
-            var projectIds = solution.ProjectIds;
+            var projectIds = newSolution.ProjectIds;
             foreach (var projectId in projectIds)
             {
                 var oldProject = oldSolution.GetProject(projectId);
                 var newProject = newSolution.GetProject(projectId);
-                solution = newProject.WithParseOptions(oldProject.ParseOptions).Solution;
-            }
-
-            return solution;
+                newSolution = newProject.WithParseOptions(oldProject.ParseOptions).Solution;
+            }
+
+            return newSolution;
         }

         internal async Task<Solution> FormatCoreAsync(Solution originalSolution, IReadOnlyList<DocumentId> documentIds, CancellationToken cancellationToken)


Update TestFixtureSourceAttribute.cs

Update TestFixtureSourceAttribute.cs

--- src/NUnitFramework/framework/Attributes/TestFixtureSourceAttribute.cs
+++ src/NUnitFramework/framework/Attributes/TestFixtureSourceAttribute.cs
@@ -34,7 +34,7 @@
 {
     /// <summary>
     /// <see cref="TestFixtureSourceAttribute"/> indicates the source to be used to
-    /// provide test fixture instances for a test class.
+    /// provide test fixture instances for a test class.
     /// </summary>
     [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)]
     public class TestFixtureSourceAttribute : NUnitAttribute, IFixtureBuilder2


added missing XML documentation

added missing XML documentation

--- src/StackExchange.Redis.Extensions.Newtonsoft/NewtonsoftSerializer.cs
+++ src/StackExchange.Redis.Extensions.Newtonsoft/NewtonsoftSerializer.cs
@@ -21,7 +21,12 @@
 		private static readonly Encoding encoding = Encoding.UTF8;

 	    private readonly JsonSerializerSettings settings;
-	    public NewtonsoftSerializer(JsonSerializerSettings settings = null)
+
+		/// <summary>
+		/// Initializes a new instance of the <see cref="NewtonsoftSerializer"/> class.
+		/// </summary>
+		/// <param name="settings">The settings.</param>
+		public NewtonsoftSerializer(JsonSerializerSettings settings = null)
 	    {
 	        this.settings = settings ?? new JsonSerializerSettings();
 	    }


Code cleanup.

Code cleanup.

--- LazerTagHost-UI/MainWindow.cs
+++ LazerTagHost-UI/MainWindow.cs
@@ -10,7 +10,7 @@
     private HostWindow hw = null;
     HostGun.CommandCode game_type = HostGun.CommandCode.COMMAND_CODE_CUSTOM_GAME_MODE_HOST;

-    public MainWindow () : base(Gtk.WindowType.Toplevel)
+    public MainWindow () : base(WindowType.Toplevel)
     {
         Build ();

@@ -45,7 +45,7 @@
         imageTransceiverStatus.Pixbuf = Stetic.IconLoader.LoadIcon(this, gtk_name, Gtk.IconSize.Menu);
     }

-    protected virtual void TransceiverChanged (object sender, System.EventArgs e)
+    protected virtual void TransceiverChanged (object sender, EventArgs e)
     {
         if (hg.SetDevice(comboboxentryArduinoPorts.ActiveText)) {
             buttonStartHost.Sensitive = true;
@@ -68,7 +68,7 @@
         return (byte)input;
     }

-    protected void StartGameType (object sender, System.EventArgs e)
+    protected void StartGameType (object sender, EventArgs e)
     {
         hg.DynamicHostMode(game_type,
                         ConvertGameValue(spinbuttonGameTime.ValueAsInt),
@@ -76,8 +76,8 @@
                         ConvertGameValue(spinbuttonReloads.ValueAsInt),
                         ConvertGameValue(spinbuttonShield.ValueAsInt),
                         ConvertGameValue(spinbuttonMega.ValueAsInt),
-                        this.checkbuttonFriendlyFire.Active,
-                        this.checkbuttonMedicMode.Active,
+                        checkbuttonFriendlyFire.Active,
+                        checkbuttonMedicMode.Active,
                         ConvertGameValue(spinbuttonNumberOfTeams.ValueAsInt));

         hg.SetGameStartCountdownTime(spinbuttonCountdownTime.ValueAsInt);
@@ -174,19 +174,8 @@
         }
     }

-    protected virtual void GameTypeChanged (object sender, System.EventArgs e)
+    protected virtual void GameTypeChanged (object sender, EventArgs e)
     {
-
         UpdateGameType();
     }
-
-
-
-
-
-
-
-
-
-
 }


Added a new exception argument type.

Added a new exception argument type.

--- src/base/common/Thrower.cs
+++ src/base/common/Thrower.cs
@@ -110,6 +110,10 @@

         case ExceptionArgument.capacity:
           argumentName = "capacity";
+          break;
+
+        case ExceptionArgument.loader:
+          argumentName = "loader";
           break;

         default:
@@ -253,7 +257,8 @@
     value,
     collection,
     any,
-    capacity
+    capacity,
+    loader
   }

   /// <summary>


Fix blink of liveview images

Fix blink of liveview images

--- Locana/Pages/MainPage.xaml.cs
+++ Locana/Pages/MainPage.xaml.cs
@@ -695,9 +695,9 @@
                 try
                 {
                     var toDelete = LiveviewImageBitmap;
-                    LiveviewImageBitmap = null;
                     trailingTask = () =>
                     {
+                        // Dispose after it is drawn
                         toDelete.Dispose();
                     };
                 }


[database] Made errors with inserting into the sql file non-blocking since they aren't really important for MKMTool

--- MKMTool/MKMDatabaseManager.cs
+++ MKMTool/MKMDatabaseManager.cs
@@ -627,7 +627,7 @@
             }
             catch (Exception Ex)
             {
-                MKMHelpers.LogError("bulk-inserting data into the SQL database", Ex.Message, true);
+                LogError("bulk-inserting data into the SQL database (MKMTool will still function correctly)", Ex.Message, false);
             }
         }


Performance improvement

Performance improvement

--- MSSLQ2Oracle/DataExtractor.cs
+++ MSSLQ2Oracle/DataExtractor.cs
@@ -2,9 +2,6 @@
 using System;
 using System.Collections.Generic;
 using System.Data.SqlClient;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
 using System.IO;
 using System.Globalization;
 using System.Diagnostics;
@@ -14,6 +11,7 @@
     public class DataExtractor
     {
         string mConnectionString;
+        Dictionary<string, string> convertedNames = new Dictionary<string, string>();

         public DataExtractor(string connectionString)
         {
@@ -54,8 +52,6 @@
                     }
                     break;

-
-
                 case SqlDataType.Decimal:
                     decimal decimalNumber = reader.GetDecimal(columnIndex);
                     sqlBuiltString += decimalNumber.ToString(CultureInfo.InvariantCulture);
@@ -66,18 +62,22 @@
                     var date = reader.GetDateTime(columnIndex);
                     sqlBuiltString += String.Format("TO_DATE('{0}', 'yyyy-mm-dd hh24:mi:ss')", date.ToString("yy-MM-dd HH:mm:ss"));
                     break;
+
                 case SqlDataType.Bit:
                     var bitData = reader.GetBoolean(columnIndex);
                     sqlBuiltString += bitData == true ? "1" : "0";
                     break;
+
                 case SqlDataType.NVarChar:
                 case SqlDataType.NVarCharMax:
                 case SqlDataType.VarChar:
                     sqlBuiltString += "'" + reader.GetString(columnIndex) + "'";
                     break;
+
                 case SqlDataType.UniqueIdentifier:
                     sqlBuiltString += "'" + reader.GetGuid(columnIndex).ToString() + "'";
                     break;
+
                 case SqlDataType.VarBinary:
                 case SqlDataType.VarBinaryMax:
                     sqlBuiltString += "NULL";
@@ -94,6 +94,12 @@

             for (var i = 0; i < table.Columns.Count; i++)
             {
+                var name = table.Columns[i].Name;
+                if (!convertedNames.ContainsKey(name))
+                    convertedNames.Add(name, Helpers.ConvertNaming(name));
+
+                name = convertedNames[name];
+
                 columnNames += String.Format(" {0},", Helpers.ConvertNaming(table.Columns[i].Name));
                 columnValues = SqlReadyValue(columnValues, table.Columns[i], i, reader);
             }
@@ -110,6 +116,7 @@
             using (var conn = new SqlConnection(mConnectionString))
             {
                 conn.Open();
+                var i = 0;
                 var command = new SqlCommand(String.Format("SELECT * FROM {0}", table.Name), conn);
                 SqlDataReader reader = command.ExecuteReader();
                 if (reader.HasRows)
@@ -133,7 +140,9 @@

             using (StreamWriter sw = File.CreateText(filePath))
             {
+                sw.WriteLine("SET DEFINE OFF");
                 ExtractDataForTable(table, sw);
+                sw.WriteLine("SET DEFINE ON");
             }
         }


allow public read-only access to Access Token values

--- Magento.RestApi/MagentoApi.cs
+++ Magento.RestApi/MagentoApi.cs
@@ -48,6 +48,15 @@
                 return _client;
             }
         }
+
+        /// <summary>
+        /// allow read access to token key for later calls
+        /// </summary>
+        public String AccessTokenKey => this._accessTokenKey;
+        /// <summary>
+        /// allow read access to token secret for later calls
+        /// </summary>
+        public String AccessTokenSecret => this._accessTokenSecret;

         /// <summary>
         /// Initializes the client, setting url, consumerkey and consumersecret and adding default request headers and handlers


use tasks depending on property

use tasks depending on property

--- MahApps.Metro/ThemeManager.cs
+++ MahApps.Metro/ThemeManager.cs
@@ -305,32 +305,42 @@
         {
             SafeRaise.Raise(IsThemeChanged, Application.Current, new OnThemeChangedEventArgs() { Theme = newTheme, Accent = newAccent });

-            Task.Factory.StartNew(
-                () =>
-                    {
-                        if (SystemColors_InvalidateColors != null)
-                        {
-                            SystemColors_InvalidateColors.Invoke(null, null);
-                        }
-
-                        // See: https://github.com/MahApps/MahApps.Metro/issues/923
-                        //var invalidateParameters = typeof(SystemParameters).GetMethod("InvalidateCache", BindingFlags.Static | BindingFlags.NonPublic, null, Type.EmptyTypes, null);
-                        //if (invalidateParameters != null)
-                        //{
-                        //    invalidateParameters.Invoke(null, null);
-                        //}
-
-                        if (SystemResources_OnThemeChanged != null)
-                        {
-                            SystemResources_OnThemeChanged.Invoke(null, null);
-                        }
-
-                        if (SystemResources_InvalidateResources != null)
-                        {
-                            SystemResources_InvalidateResources.Invoke(null, new object[] { false });
-                        }
-                    });
-        }
+            Action apply = () =>
+                {
+                    if (SystemColors_InvalidateColors != null)
+                    {
+                        SystemColors_InvalidateColors.Invoke(null, null);
+                    }
+
+                    // See: https://github.com/MahApps/MahApps.Metro/issues/923
+                    //var invalidateParameters = typeof(SystemParameters).GetMethod("InvalidateCache", BindingFlags.Static | BindingFlags.NonPublic, null, Type.EmptyTypes, null);
+                    //if (invalidateParameters != null)
+                    //{
+                    //    invalidateParameters.Invoke(null, null);
+                    //}
+
+                    if (SystemResources_OnThemeChanged != null)
+                    {
+                        SystemResources_OnThemeChanged.Invoke(null, null);
+                    }
+
+                    if (SystemResources_InvalidateResources != null)
+                    {
+                        SystemResources_InvalidateResources.Invoke(null, new object[] { false });
+                    }
+                };
+
+            if (UseTask)
+            {
+                Task.Factory.StartNew(apply);
+            }
+            else
+            {
+                apply();
+            }
+        }
+
+        public static bool UseTask { get; set; }
     }

     public class OnThemeChangedEventArgs : EventArgs


Allow delete/renaming of memory-mapped files

--- MaxMind.Db/MemoryMapReader.cs
+++ MaxMind.Db/MemoryMapReader.cs
@@ -17,17 +17,25 @@

             Length = (int) fileInfo.Length;

-            var mmfName = fileInfo.FullName.Replace("\\", "-");
+            // Ideally we would use the file ID in the mapName, but it is not
+            // easily available from C#.
+            var mapName = $"{fileInfo.FullName.Replace("\\", "-")}-{Length}";
             lock (FileLocker)
             {
                 try
                 {
-                    _memoryMappedFile = MemoryMappedFile.OpenExisting(mmfName, MemoryMappedFileRights.Read);
+                    _memoryMappedFile = MemoryMappedFile.OpenExisting(mapName, MemoryMappedFileRights.Read);
                 }
                 catch (Exception ex) when (ex is IOException || ex is NotImplementedException)
                 {
-                    _memoryMappedFile = MemoryMappedFile.CreateFromFile(file, FileMode.Open,
-                            mmfName, fileInfo.Length, MemoryMappedFileAccess.Read);
+                    using (
+                        var stream = new FileStream(file, FileMode.Open, FileAccess.Read,
+                            FileShare.Delete | FileShare.Read))
+                    {
+
+                        _memoryMappedFile = MemoryMappedFile.CreateFromFile(stream, mapName, Length,
+                            MemoryMappedFileAccess.Read, null, HandleInheritability.None, false);
+                    }
                 }
             }


Removed Title's derived ConnectionRedirectionPayloadHandler

--- src/Booma.Proxy.Client.Unity.Authentication/Handlers/TitleConnectionRedirectionPayloadHandler.cs
+++ src/Booma.Proxy.Client.Unity.Authentication/Handlers/TitleConnectionRedirectionPayloadHandler.cs
@@ -1,45 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Common.Logging;
-using GladNet;
-using UnityEngine;
-using UnityEngine.Playables;
-using UnityEngine.SceneManagement;
-
-namespace Booma.Proxy
-{
-	[SceneTypeCreate(GameSceneType.TitleScreen)]
-	public sealed class TitleConnectionRedirectionPayloadHandler : SharedConnectionRedirectionPayloadHandler
-	{
-		private PlayableDirector Director { get; }
-
-		/// <inheritdoc />
-		public TitleConnectionRedirectionPayloadHandler(IGameConnectionEndpointDetails connectionEndpoint, IFullCryptoInitializationService<byte[]> cryptoInitializer, ILog logger, [NotNull] PlayableDirector director)
-			: base(connectionEndpoint, cryptoInitializer, logger)
-		{
-			Director = director ?? throw new ArgumentNullException(nameof(director));
-		}
-
-		//Based on old titlescreen version of: https://imgur.com/rAUbC0S
-		/// <inheritdoc />
-		protected override async Task OnConnectionRedirected()
-		{
-			//For titlescreen, when we're finally redirected to a new connection
-			//it's going to be the character connection
-			Director.Play();
-
-			//We do a wait so the screen is mostly black before we attempt to async load the scene
-			await Task.Delay(2000);
-
-			AsyncOperation loadSceneAsync = SceneManager.LoadSceneAsync(1);
-			loadSceneAsync.allowSceneActivation = false;
-
-			await Task.Delay(2500);
-
-			loadSceneAsync.allowSceneActivation = true;
-		}
-	}
-}


Inline

Inline

--- src/Tools/Source/CompilerGeneratorTools/Source/CSharpSyntaxGenerator/Grammar/GrammarGenerator.cs
+++ src/Tools/Source/CompilerGeneratorTools/Source/CSharpSyntaxGenerator/Grammar/GrammarGenerator.cs
@@ -170,3 +170,4 @@
         internal const int ListKind = 1; // See SyntaxKind.
     }
 }
+


Implement RacingKingsChessGame.IsDraw

Implement RacingKingsChessGame.IsDraw

--- ChessDotNet.Variants/RacingKings/RacingKingsChessGame.cs
+++ ChessDotNet.Variants/RacingKings/RacingKingsChessGame.cs
@@ -144,5 +144,10 @@
                 return true;
             }
         }
+
+        public override bool IsDraw()
+        {
+            return FindKing(Player.White).Rank == 8 && FindKing(Player.Black).Rank == 8 || base.IsDraw();
+        }
     }
 }


Container validation should not log Fatal when exception gets rethrown

--- src/implementations/Backend.Fx.SimpleInjetorDependencyInjection/SimpleInjectorCompositionRoot.cs
+++ src/implementations/Backend.Fx.SimpleInjetorDependencyInjection/SimpleInjectorCompositionRoot.cs
@@ -48,7 +48,7 @@
             }
             catch (Exception ex)
             {
-                Logger.Fatal(ex, "container configuration invalid");
+                Logger.Warn(ex, "container configuration invalid");
                 throw;
             }
         }


export codefix provider

export codefix provider

--- src/Analyzers/CSharp/CodeFixes/SimplifyLinqExpression/CSharpSimplifyLinqExpressionCodeFixProvider.cs
+++ src/Analyzers/CSharp/CodeFixes/SimplifyLinqExpression/CSharpSimplifyLinqExpressionCodeFixProvider.cs
@@ -20,6 +20,7 @@

 namespace Microsoft.CodeAnalysis.CSharp.SimplifyLinqExpression
 {
+    [ExportCodeFixProvider(LanguageNames.CSharp), Shared]
     internal sealed class CSharpSimplifyLinqExpressionCodeFixProvider : SyntaxEditorBasedCodeFixProvider
     {
         [ImportingConstructor]


Delete stale comment (#3806)

Delete stale comment (#3806)

--- src/NetAnalyzers/Core/Microsoft.CodeQuality.Analyzers/ApiDesignGuidelines/DoNotDirectlyAwaitATask.cs
+++ src/NetAnalyzers/Core/Microsoft.CodeQuality.Analyzers/ApiDesignGuidelines/DoNotDirectlyAwaitATask.cs
@@ -27,7 +27,7 @@
             s_localizableTitle,
             s_localizableMessage,
             DiagnosticCategory.Reliability,
-            RuleLevel.Disabled, // Superseded by VS threading analyzers
+            RuleLevel.Disabled,
             description: s_localizableDescription,
             isPortedFxCopRule: false,
             isDataflowRule: false);


Reduce new subscription names length

Reduce new subscription names length

--- src/SFA.DAS.EAS.MessageHandlers.Worker/EventHandlers/SentTransferConnectionInvitationEventHandler.cs
+++ src/SFA.DAS.EAS.MessageHandlers.Worker/EventHandlers/SentTransferConnectionInvitationEventHandler.cs
@@ -16,7 +16,7 @@

 namespace SFA.DAS.EAS.MessageHandlers.Worker.EventHandlers
 {
-    [TopicSubscription("MessHandler_SentTransferConnectionInvitiationProcessor")]
+    [TopicSubscription("MH_SentTransferConnectionInvitiationProcessor")]
     public class SentTransferConnectionInvitationEventHandler : MessageProcessor<SentTransferConnectionInvitationEvent>
     {
         private readonly EmployerApprenticeshipsServiceConfiguration _employerApprenticeshipsServiceConfiguration;


Improve test coverage for the SqliteLedger class

--- test/Openchain.Ledger.Tests/BaseLedgerTests.cs
+++ test/Openchain.Ledger.Tests/BaseLedgerTests.cs
@@ -64,12 +64,12 @@
         [Fact]
         public async Task GetKeyStartingFrom_NonEmptyValues()
         {
-            await AddRecords(ByteString.Empty, binaryData[0], "/:DATA:/name");
+            await AddRecords(ByteString.Empty, binaryData[0], "/:DATA:name");

-            IReadOnlyList<Record> result = await Queries.GetKeyStartingFrom(new ByteString(Encoding.UTF8.GetBytes("/:DATA:/")));
+            IReadOnlyList<Record> result = await Queries.GetKeyStartingFrom(new ByteString(Encoding.UTF8.GetBytes("/:DATA:n")));

             Assert.Equal(1, result.Count);
-            Assert.Equal("/:DATA:/name", Encoding.UTF8.GetString(result[0].Key.ToByteArray()));
+            Assert.Equal("/:DATA:name", Encoding.UTF8.GetString(result[0].Key.ToByteArray()));
             Assert.Equal(binaryData[0], result[0].Value);
         }

@@ -130,6 +130,18 @@
         }

         [Fact]
+        public async Task GetAllRecords_NonEmptyValues()
+        {
+            await AddRecords(ByteString.Empty, binaryData[0], "/:DATA:name");
+
+            IReadOnlyList<Record> result = await Indexes.GetAllRecords(RecordType.Data, "name");
+
+            Assert.Equal(1, result.Count);
+            Assert.Equal("/:DATA:name", Encoding.UTF8.GetString(result[0].Key.ToByteArray()));
+            Assert.Equal(binaryData[0], result[0].Value);
+        }
+
+        [Fact]
         public async Task Initialize_MultipleCalls()
         {
             // This must not throw


Organized Component AutoDispose into its own region.

--- ECS/Components/Component/AtlasComponent.cs
+++ ECS/Components/Component/AtlasComponent.cs
@@ -63,11 +63,9 @@
 			base.Disposing();
 		}

-		private void TryAutoDispose()
-		{
-			if(autoDispose && managers.Count <= 0)
-				Dispose();
-		}
+		#endregion
+
+		#region AutoDispose

 		public bool AutoDispose
 		{
@@ -81,6 +79,12 @@
 				Message<IAutoDisposeMessage<T>>(new AutoDisposeMessage<T>(value, previous));
 				TryAutoDispose();
 			}
+		}
+
+		private void TryAutoDispose()
+		{
+			if(autoDispose && managers.Count <= 0)
+				Dispose();
 		}

 		#endregion
@@ -254,7 +258,6 @@

 		#endregion

-
 		#region Engine
 		/*
 		private void EntityEngineChanged(IEngineMessage<IEntity> message)


Disable the severity menu items when a selected diagnostic is not configurable

--- src/VisualStudio/Core/SolutionExplorerShim/AnalyzersCommandHandler.cs
+++ src/VisualStudio/Core/SolutionExplorerShim/AnalyzersCommandHandler.cs
@@ -82,7 +82,7 @@
                 _openHelpLinkMenuItem = AddCommandHandler(menuCommandService, ID.RoslynCommands.OpenDiagnosticHelpLink, OpenDiagnosticHelpLinkHandler);

                 UpdateMenuItemVisibility();
-                UpdateMenuItemsChecked();
+                UpdateSeverityMenuItemsChecked();

                 if (_tracker != null)
                 {
@@ -120,14 +120,15 @@
                 item.PropertyChanged += DiagnosticItemPropertyChangedHandler;
             }

-            UpdateMenuItemsChecked();
+            UpdateSeverityMenuItemsChecked();
+            UpdateSeverityMenuItemsEnabled();
         }

         private void DiagnosticItemPropertyChangedHandler(object sender, PropertyChangedEventArgs e)
         {
             if (e.PropertyName == nameof(DiagnosticItem.EffectiveSeverity))
             {
-                UpdateMenuItemsChecked();
+                UpdateSeverityMenuItemsChecked();
             }
         }

@@ -159,13 +160,24 @@
                                                 Path.GetExtension(itemName).Equals(".ruleset", StringComparison.OrdinalIgnoreCase);
         }

-        private void UpdateMenuItemsChecked()
+        private void UpdateSeverityMenuItemsChecked()
         {
             _setSeverityErrorMenuItem.Checked = AnyDiagnosticsWithSeverity(ReportDiagnostic.Error);
             _setSeverityWarningMenuItem.Checked = AnyDiagnosticsWithSeverity(ReportDiagnostic.Warn);
             _setSeverityInfoMenuItem.Checked = AnyDiagnosticsWithSeverity(ReportDiagnostic.Info);
             _setSeverityHiddenMenuItem.Checked = AnyDiagnosticsWithSeverity(ReportDiagnostic.Hidden);
             _setSeverityNoneMenuItem.Checked = AnyDiagnosticsWithSeverity(ReportDiagnostic.Suppress);
+        }
+
+        private void UpdateSeverityMenuItemsEnabled()
+        {
+            bool configurable = !_selectedDiagnosticItems.Any(item => item.Descriptor.CustomTags.Contains(WellKnownDiagnosticTags.NotConfigurable));
+
+            _setSeverityErrorMenuItem.Enabled = configurable;
+            _setSeverityWarningMenuItem.Enabled = configurable;
+            _setSeverityInfoMenuItem.Enabled = configurable;
+            _setSeverityHiddenMenuItem.Enabled = configurable;
+            _setSeverityNoneMenuItem.Enabled = configurable;
         }

         private bool AnyDiagnosticsWithSeverity(ReportDiagnostic severity)


fixed merge error

fixed merge error

--- CoCSharp/Networking/Packets/AllianceDescriptionPacket.cs
+++ CoCSharp/Networking/Packets/AllianceDescriptionPacket.cs
@@ -28,7 +28,7 @@
         public void ReadPacket(PacketReader reader)
         {
             ClanDescription = reader.ReadString();
-            Unknown1 = reader.ReadBoolean();
+            Unknown1 = reader.ReadInt32();
             Unknown2 = reader.ReadInt32();
             Unknown3 = reader.ReadBoolean();
             if (Unknown3)


remove not used code

remove not used code

--- EditedTokenLocator/ContextualEnumerator.cs
+++ EditedTokenLocator/ContextualEnumerator.cs
@@ -6,31 +6,9 @@
 {
 	public sealed class ContextualEnumerator<T> : IEnumerator<T>
 	{
-		public ContextualEnumerator(IEnumerable<T> collection)
-		{
-			if (collection == null)
-			{
-				throw new ArgumentNullException(nameof(collection));
-			}
-
-			_enumerator = collection.GetEnumerator();
-
-			HasNext = _enumerator.MoveNext();
-
-			if (HasNext)
-			{
-				_next = _enumerator.Current;
-			}
-		}
-
 		public ContextualEnumerator(IEnumerator<T> enumerator)
 		{
-			if (enumerator == null)
-			{
-				throw new ArgumentNullException(nameof(enumerator));
-			}
-
-			_enumerator = enumerator;
+			_enumerator = enumerator ?? throw new ArgumentNullException(nameof(enumerator));

 			HasNext = _enumerator.MoveNext();


made solution explorer analyzer node to use bing search as well when there is no given help link.

--- src/VisualStudio/Core/SolutionExplorerShim/AnalyzersCommandHandler.cs
+++ src/VisualStudio/Core/SolutionExplorerShim/AnalyzersCommandHandler.cs
@@ -11,6 +11,7 @@
 using System.Runtime.InteropServices;
 using EnvDTE;
 using Microsoft.CodeAnalysis;
+using Microsoft.CodeAnalysis.Diagnostics;
 using Microsoft.CodeAnalysis.Editor.Host;
 using Microsoft.CodeAnalysis.Notification;
 using Microsoft.Internal.VisualStudio.PlatformUI;
@@ -234,7 +235,7 @@
         private void UpdateOpenHelpLinkMenuItemVisibility()
         {
             _openHelpLinkMenuItem.Visible = _tracker.SelectedDiagnosticItems.Length == 1 &&
-                                                        !string.IsNullOrWhiteSpace(_tracker.SelectedDiagnosticItems[0].Descriptor.HelpLinkUri);
+                                            GetHelpLink(_tracker.SelectedDiagnosticItems[0]) != null;
         }

         private void UpdateSeverityMenuItemsChecked()
@@ -279,7 +280,7 @@
                     }
                 }
             }
-
+
             if (selectedItemSeverities.Count != 1)
             {
                 return;
@@ -472,19 +473,34 @@

         private void OpenDiagnosticHelpLinkHandler(object sender, EventArgs e)
         {
-            if (_tracker.SelectedDiagnosticItems.Length != 1 ||
-                string.IsNullOrWhiteSpace(_tracker.SelectedDiagnosticItems[0].Descriptor.HelpLinkUri))
+            if (_tracker.SelectedDiagnosticItems.Length != 1)
             {
                 return;
             }

-            string link = _tracker.SelectedDiagnosticItems[0].Descriptor.HelpLinkUri;
-
-            Uri uri;
-            if (BrowserHelper.TryGetUri(link, out uri))
+            var uri = GetHelpLink(_tracker.SelectedDiagnosticItems[0]);
+            if (uri != null)
             {
                 BrowserHelper.StartBrowser(_serviceProvider, uri);
             }
+        }
+
+        private static Uri GetHelpLink(DiagnosticItem item)
+        {
+            Uri link;
+            if (BrowserHelper.TryGetUri(item.Descriptor.HelpLinkUri, out link))
+            {
+                return link;
+            }
+
+            if (!string.IsNullOrWhiteSpace(item.Descriptor.Id))
+            {
+                // we use message format here since we don't have actual instance of diagnostic here.
+                // (which means we do not have a message)
+                return BrowserHelper.CreateBingQueryUri(item.Descriptor.Id, item.Descriptor.MessageFormat.ToString(DiagnosticData.USCultureInfo));
+            }
+
+            return null;
         }

         private void SetActiveRuleSetHandler(object sender, EventArgs e)


Updated the ImGui plugin to the EmotionEvent changes.

--- Emotion.Plugins.ImGuiNet/ImGuiNetPlugin.cs
+++ Emotion.Plugins.ImGuiNet/ImGuiNetPlugin.cs
@@ -152,7 +152,7 @@
                 VAO = vao
             };

-            Engine.Host.OnTextInput.AddListener(c => { _textInput.Add(c); });
+            Engine.Host.OnTextInput.AddListener(c => { _textInput.Add(c); return true; });

             Initialized = true;
         }


Update Assets/MixedRealityToolkit.SDK/Features/UX/Scripts/ProgressIndicators/ProgressIndicatorOrbsRotator.cs

Co-Authored-By: Will <03f7414553f4a516a3c3f51b46f4027c16f58f76@microsoft.com>

--- Assets/MixedRealityToolkit.SDK/Features/UX/Scripts/ProgressIndicators/ProgressIndicatorOrbsRotator.cs
+++ Assets/MixedRealityToolkit.SDK/Features/UX/Scripts/ProgressIndicators/ProgressIndicatorOrbsRotator.cs
@@ -198,7 +198,7 @@
         private void HandleStopping()
         {
             Color adjustedColor = propertyBlocks[orbs.Length - 1].GetColor("_Color");
-            if (stopRequested == true && adjustedColor.a <= 0.01f)
+            if (stopRequested && adjustedColor.a <= 0.01f)
             {
                 HasAnimationFinished = true;
             }


switch to IsAssignableFrom in EnumerableBlueprint

--- Construktion/Blueprints/Recursive/EnumerableBlueprint.cs
+++ Construktion/Blueprints/Recursive/EnumerableBlueprint.cs
@@ -11,7 +11,7 @@
         public bool Matches(ConstruktionContext context)
         {
             return context.RequestType.GetTypeInfo().IsGenericType &&
-                   context.RequestType.GetInterfaces().Contains(typeof(IEnumerable));
+                   typeof(IEnumerable).IsAssignableFrom(context.RequestType);
         }

         public object Construct(ConstruktionContext context, ConstruktionPipeline pipeline)


minor persistency bugfix

minor persistency bugfix

--- Fallen-8/Persistency/PersistencyFactory.cs
+++ Fallen-8/Persistency/PersistencyFactory.cs
@@ -124,8 +124,8 @@
                     serviceStreams.Add(serviceFilename);
                 }
                 var newServiceFactory = new ServiceFactory(fallen8);
+                fallen8.ServiceFactory = newServiceFactory;
                 LoadServices(fallen8, newServiceFactory, serviceStreams, startServices);
-                fallen8.ServiceFactory = newServiceFactory;

                 #endregion


Fixed error that could occur when saving configuration

--- FeedBuilder/FeedBuilderSettingsProvider.cs
+++ FeedBuilder/FeedBuilderSettingsProvider.cs
@@ -262,7 +262,7 @@
 				xmlWriter.Close();
 				node.InnerXml = builder.ToString();
 			}
-			else node.InnerText = propVal.SerializedValue.ToString();
+			else node.InnerText = propVal.SerializedValue != null ? propVal.SerializedValue.ToString() : string.Empty;
 		}

 		private bool IsRoaming(SettingsProperty prop)


Show counters for each result type in filter toolbar

--HG--
branch : feature/ui-refresh

--- Assets/UnityTestTools/IntegrationTestsFramework/TestRunner/Editor/IntegrationTestsRunnerWindow.cs
+++ Assets/UnityTestTools/IntegrationTestsFramework/TestRunner/Editor/IntegrationTestsRunnerWindow.cs
@@ -20,11 +20,12 @@
         private readonly GUIContent m_GUIAdvancedFilterHide = new GUIContent("Hide");
         private readonly GUIContent m_GUIAddGoUderTest = new GUIContent("Add GOs under test", "Add new GameObject under selected test");
         private readonly GUIContent m_GUIBlockUI = new GUIContent("Block UI when running", "Block UI when running tests");
-        private readonly GUIContent m_GUIShowSucceededTests = new GUIContent("Succeeded", Icons.SuccessImg, "Show tests that succeeded");
-        private readonly GUIContent m_GUIShowFailedTests = new GUIContent("Failed", Icons.FailImg, "Show tests that failed");
-        private readonly GUIContent m_GUIShowIgnoredTests = new GUIContent("Ignored", Icons.IgnoreImg, "Show tests that are ignored");
-        private readonly GUIContent m_GUIShowNotRunTests = new GUIContent("Not Run", Icons.UnknownImg, "Show tests that didn't run");
-        #endregion
+
+		private GUIContent m_GUIShowSucceededTests = new GUIContent("Succeeded", Icons.SuccessImg, "Show tests that succeeded");
+        private GUIContent m_GUIShowFailedTests = new GUIContent("Failed", Icons.FailImg, "Show tests that failed");
+        private GUIContent m_GUIShowIgnoredTests = new GUIContent("Ignored", Icons.IgnoreImg, "Show tests that are ignored");
+        private GUIContent m_GUIShowNotRunTests = new GUIContent("Not Run", Icons.UnknownImg, "Show tests that didn't run");
+		#endregion

         #region runner steerign vars
         private static IntegrationTestsRunnerWindow s_Instance;
@@ -250,6 +251,37 @@
                 testRunner.InitRunner(m_TestsToRun.ToList(), m_DynamicTestsToRun);
             }
         }
+
+		private void UpdateTestCounters()
+		{
+			int succeeded = 0, failed = 0, ignored = 0, notRun = 0;
+			if(m_TestLines != null)
+			{
+				foreach(var test in m_TestLines)
+				{
+					switch(test.GetResult())
+					{
+						case TestResult.ResultType.Success:
+							++succeeded;
+							break;
+						case TestResult.ResultType.Ignored:
+							++ignored;
+							break;
+						case TestResult.ResultType.NotRun:
+							++notRun;
+							break;
+						default:
+							++failed;
+							break;
+					}
+				}
+			}
+
+			m_GUIShowSucceededTests.text	= succeeded.ToString();
+			m_GUIShowFailedTests.text		= failed.ToString();
+			m_GUIShowIgnoredTests.text		= ignored.ToString();
+			m_GUIShowNotRunTests.text		= notRun.ToString();
+		}

         private void RebuildTestList()
         {
@@ -387,6 +419,9 @@
 			EditorGUI.EndDisabledGroup();

 			GUILayout.FlexibleSpace();
+
+			if(Event.current.type == EventType.Layout)
+				UpdateTestCounters();

 			EditorGUI.BeginChangeCheck();
 			m_Settings.showSucceededTest = GUILayout.Toggle(m_Settings.showSucceededTest, m_GUIShowSucceededTests, EditorStyles.toolbarButton);


Make sure enter message is sen

Make sure enter message is sen

--- RemoteTaskServer/TerminalServer/Messaging/TerminalControl/Handlers/InputTerminalRequestHandler.cs
+++ RemoteTaskServer/TerminalServer/Messaging/TerminalControl/Handlers/InputTerminalRequestHandler.cs
@@ -47,7 +47,7 @@
                 cli.Output("Logging in please wait...", 1, false, false);
                 var authed = Login(message.Input);
                 cli.Output(authed ? "Login was successfull" : "Login was unsuccessful, enter your password",
-                    Convert.ToInt32(authed), authed, authed);
+                    Convert.ToInt32(authed), authed, authed == false);
                 connection.IsAuthed = authed;
             }
             else if (!connection.IsAuthed)


juste date interval ok

juste date interval ok

--- Ada/AdaWebApp/Models/DAL/Repositories/VisitRepository.cs
+++ Ada/AdaWebApp/Models/DAL/Repositories/VisitRepository.cs
@@ -147,12 +147,18 @@
                             && v.Person.DateOfBirth.Year <= age1
                             && v.Person.DateOfBirth.Year >= age2).ToList();
                     }
-                    else
+                    else if (age1 != null)
                     {
                         return Table.Include(picture => picture.ProfilePictures).Include(v => v.Person).Where(
                             v => DbFunctions.TruncateTime(v.Date) >= DbFunctions.TruncateTime(date1)
                             && DbFunctions.TruncateTime(v.Date) <= DbFunctions.TruncateTime(date2)
                             && v.Person.DateOfBirth.Year == age1).ToList();
+                    }
+                    else
+                    {
+                        return Table.Include(picture => picture.ProfilePictures).Include(v => v.Person).Where(
+                            v => DbFunctions.TruncateTime(v.Date) >= DbFunctions.TruncateTime(date1)
+                            && DbFunctions.TruncateTime(v.Date) <= DbFunctions.TruncateTime(date2)).ToList();
                     }
                 }
                 else


Fixed spacing

Fixed spacing

--- Passenger.Core/Domain/Node.cs
+++ Passenger.Core/Domain/Node.cs
@@ -15,12 +15,13 @@
         {
         }

-         protected Node(string address, double longitude, double latitude)
+        protected Node(string address, double longitude, double latitude)
         {
             SetAdress(address);
             SetLongitude(longitude);
             SetLatitude(latitude);
         }
+
         public void SetAdress(string address)
         {
             if(!NameRegex.IsMatch(address))
@@ -31,6 +32,7 @@
             Address = address;
             UpdatedAt = DateTime.UtcNow;
         }
+
         public void SetLongitude(double longitude)
         {
             if (double.IsNaN(longitude))
@@ -45,6 +47,7 @@
             Longitude = longitude;
             UpdatedAt = DateTime.UtcNow;
         }
+
         public void SetLatitude(double latitude)
         {
             if (double.IsNaN(Latitude))


Added NoRecoil To UI

Added NoRecoil To UI

--- AssaultCubeAimbot/AssaultCubeAimbot/MainForm.Designer.cs
+++ AssaultCubeAimbot/AssaultCubeAimbot/MainForm.Designer.cs
@@ -41,13 +41,15 @@
             this.TargetPositionYLabel = new System.Windows.Forms.Label();
             this.TargetPositionZLabel = new System.Windows.Forms.Label();
             this.TargetPositionXLabel = new System.Windows.Forms.Label();
+            this.NoRecoilCheckBox = new System.Windows.Forms.CheckBox();
             this.SuspendLayout();
             //
             // FindProcessButton
             //
-            this.FindProcessButton.Location = new System.Drawing.Point(227, 60);
+            this.FindProcessButton.Location = new System.Drawing.Point(340, 92);
+            this.FindProcessButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
             this.FindProcessButton.Name = "FindProcessButton";
-            this.FindProcessButton.Size = new System.Drawing.Size(75, 23);
+            this.FindProcessButton.Size = new System.Drawing.Size(112, 35);
             this.FindProcessButton.TabIndex = 0;
             this.FindProcessButton.Text = "Attach";
             this.FindProcessButton.UseVisualStyleBackColor = true;
@@ -56,9 +58,10 @@
             //
             this.label1.AutoSize = true;
             this.label1.Font = new System.Drawing.Font("Stencil", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.label1.Location = new System.Drawing.Point(157, 9);
+            this.label1.Location = new System.Drawing.Point(236, 14);
+            this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.label1.Name = "label1";
-            this.label1.Size = new System.Drawing.Size(237, 25);
+            this.label1.Size = new System.Drawing.Size(366, 38);
             this.label1.TabIndex = 1;
             this.label1.Text = "Assault Cube Aimbot";
             this.label1.TextAlign = System.Drawing.ContentAlignment.TopCenter;
@@ -68,9 +71,10 @@
             this.StatusLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.StatusLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.StatusLabel.ForeColor = System.Drawing.Color.Red;
-            this.StatusLabel.Location = new System.Drawing.Point(12, 60);
+            this.StatusLabel.Location = new System.Drawing.Point(18, 92);
+            this.StatusLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.StatusLabel.Name = "StatusLabel";
-            this.StatusLabel.Size = new System.Drawing.Size(209, 23);
+            this.StatusLabel.Size = new System.Drawing.Size(314, 35);
             this.StatusLabel.TabIndex = 2;
             this.StatusLabel.Text = "Process Not Found";
             this.StatusLabel.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
@@ -78,9 +82,10 @@
             // AimbotCheckBox
             //
             this.AimbotCheckBox.AutoSize = true;
-            this.AimbotCheckBox.Location = new System.Drawing.Point(359, 97);
+            this.AimbotCheckBox.Location = new System.Drawing.Point(538, 149);
+            this.AimbotCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
             this.AimbotCheckBox.Name = "AimbotCheckBox";
-            this.AimbotCheckBox.Size = new System.Drawing.Size(94, 17);
+            this.AimbotCheckBox.Size = new System.Drawing.Size(139, 24);
             this.AimbotCheckBox.TabIndex = 3;
             this.AimbotCheckBox.Text = "Enable Aimbot";
             this.AimbotCheckBox.UseVisualStyleBackColor = true;
@@ -88,9 +93,10 @@
             // TriggerbotCheckbox
             //
             this.TriggerbotCheckbox.AutoSize = true;
-            this.TriggerbotCheckbox.Location = new System.Drawing.Point(359, 134);
+            this.TriggerbotCheckbox.Location = new System.Drawing.Point(538, 206);
+            this.TriggerbotCheckbox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
             this.TriggerbotCheckbox.Name = "TriggerbotCheckbox";
-            this.TriggerbotCheckbox.Size = new System.Drawing.Size(110, 17);
+            this.TriggerbotCheckbox.Size = new System.Drawing.Size(161, 24);
             this.TriggerbotCheckbox.TabIndex = 4;
             this.TriggerbotCheckbox.Text = "Enable Triggerbot";
             this.TriggerbotCheckbox.UseVisualStyleBackColor = true;
@@ -98,80 +104,100 @@
             // PlayerPositionLabel
             //
             this.PlayerPositionLabel.AutoSize = true;
-            this.PlayerPositionLabel.Location = new System.Drawing.Point(73, 138);
+            this.PlayerPositionLabel.Location = new System.Drawing.Point(110, 212);
+            this.PlayerPositionLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.PlayerPositionLabel.Name = "PlayerPositionLabel";
-            this.PlayerPositionLabel.Size = new System.Drawing.Size(76, 13);
+            this.PlayerPositionLabel.Size = new System.Drawing.Size(112, 20);
             this.PlayerPositionLabel.TabIndex = 5;
             this.PlayerPositionLabel.Text = "Player Position";
             //
             // PlayerPositionXLabel
             //
             this.PlayerPositionXLabel.AutoSize = true;
-            this.PlayerPositionXLabel.Location = new System.Drawing.Point(93, 164);
+            this.PlayerPositionXLabel.Location = new System.Drawing.Point(140, 252);
+            this.PlayerPositionXLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.PlayerPositionXLabel.Name = "PlayerPositionXLabel";
-            this.PlayerPositionXLabel.Size = new System.Drawing.Size(20, 13);
+            this.PlayerPositionXLabel.Size = new System.Drawing.Size(28, 20);
             this.PlayerPositionXLabel.TabIndex = 6;
             this.PlayerPositionXLabel.Text = "X: ";
             //
             // PlayerPositionZLabel
             //
             this.PlayerPositionZLabel.AutoSize = true;
-            this.PlayerPositionZLabel.Location = new System.Drawing.Point(93, 230);
+            this.PlayerPositionZLabel.Location = new System.Drawing.Point(140, 354);
+            this.PlayerPositionZLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.PlayerPositionZLabel.Name = "PlayerPositionZLabel";
-            this.PlayerPositionZLabel.Size = new System.Drawing.Size(20, 13);
+            this.PlayerPositionZLabel.Size = new System.Drawing.Size(27, 20);
             this.PlayerPositionZLabel.TabIndex = 7;
             this.PlayerPositionZLabel.Text = "Z: ";
             //
             // PlayerPositionYLabel
             //
             this.PlayerPositionYLabel.AutoSize = true;
-            this.PlayerPositionYLabel.Location = new System.Drawing.Point(93, 197);
+            this.PlayerPositionYLabel.Location = new System.Drawing.Point(140, 303);
+            this.PlayerPositionYLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.PlayerPositionYLabel.Name = "PlayerPositionYLabel";
-            this.PlayerPositionYLabel.Size = new System.Drawing.Size(17, 13);
+            this.PlayerPositionYLabel.Size = new System.Drawing.Size(24, 20);
             this.PlayerPositionYLabel.TabIndex = 8;
             this.PlayerPositionYLabel.Text = "Y:";
             //
             // label5
             //
             this.label5.AutoSize = true;
-            this.label5.Location = new System.Drawing.Point(224, 138);
+            this.label5.Location = new System.Drawing.Point(336, 212);
+            this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.label5.Name = "label5";
-            this.label5.Size = new System.Drawing.Size(78, 13);
+            this.label5.Size = new System.Drawing.Size(115, 20);
             this.label5.TabIndex = 9;
             this.label5.Text = "Target Position";
             //
             // TargetPositionYLabel
             //
             this.TargetPositionYLabel.AutoSize = true;
-            this.TargetPositionYLabel.Location = new System.Drawing.Point(242, 197);
+            this.TargetPositionYLabel.Location = new System.Drawing.Point(363, 303);
+            this.TargetPositionYLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.TargetPositionYLabel.Name = "TargetPositionYLabel";
-            this.TargetPositionYLabel.Size = new System.Drawing.Size(17, 13);
+            this.TargetPositionYLabel.Size = new System.Drawing.Size(24, 20);
             this.TargetPositionYLabel.TabIndex = 12;
             this.TargetPositionYLabel.Text = "Y:";
             //
             // TargetPositionZLabel
             //
             this.TargetPositionZLabel.AutoSize = true;
-            this.TargetPositionZLabel.Location = new System.Drawing.Point(242, 230);
+            this.TargetPositionZLabel.Location = new System.Drawing.Point(363, 354);
+            this.TargetPositionZLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.TargetPositionZLabel.Name = "TargetPositionZLabel";
-            this.TargetPositionZLabel.Size = new System.Drawing.Size(17, 13);
+            this.TargetPositionZLabel.Size = new System.Drawing.Size(23, 20);
             this.TargetPositionZLabel.TabIndex = 11;
             this.TargetPositionZLabel.Text = "Z:";
             //
             // TargetPositionXLabel
             //
             this.TargetPositionXLabel.AutoSize = true;
-            this.TargetPositionXLabel.Location = new System.Drawing.Point(242, 164);
+            this.TargetPositionXLabel.Location = new System.Drawing.Point(363, 252);
+            this.TargetPositionXLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.TargetPositionXLabel.Name = "TargetPositionXLabel";
-            this.TargetPositionXLabel.Size = new System.Drawing.Size(17, 13);
+            this.TargetPositionXLabel.Size = new System.Drawing.Size(24, 20);
             this.TargetPositionXLabel.TabIndex = 10;
             this.TargetPositionXLabel.Text = "X:";
             //
+            // NoRecoilCheckBox
+            //
+            this.NoRecoilCheckBox.AutoSize = true;
+            this.NoRecoilCheckBox.Location = new System.Drawing.Point(538, 266);
+            this.NoRecoilCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
+            this.NoRecoilCheckBox.Name = "NoRecoilCheckBox";
+            this.NoRecoilCheckBox.Size = new System.Drawing.Size(157, 24);
+            this.NoRecoilCheckBox.TabIndex = 13;
+            this.NoRecoilCheckBox.Text = "Enable No Recoil";
+            this.NoRecoilCheckBox.UseVisualStyleBackColor = true;
+            //
             // MainForm
             //
-            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-            this.ClientSize = new System.Drawing.Size(518, 277);
+            this.ClientSize = new System.Drawing.Size(777, 426);
+            this.Controls.Add(this.NoRecoilCheckBox);
             this.Controls.Add(this.TargetPositionYLabel);
             this.Controls.Add(this.TargetPositionZLabel);
             this.Controls.Add(this.TargetPositionXLabel);
@@ -185,6 +211,7 @@
             this.Controls.Add(this.StatusLabel);
             this.Controls.Add(this.label1);
             this.Controls.Add(this.FindProcessButton);
+            this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
             this.Name = "MainForm";
             this.Text = "+";
             this.ResumeLayout(false);
@@ -207,6 +234,7 @@
         private System.Windows.Forms.Label TargetPositionYLabel;
         private System.Windows.Forms.Label TargetPositionZLabel;
         private System.Windows.Forms.Label TargetPositionXLabel;
+        private System.Windows.Forms.CheckBox NoRecoilCheckBox;
     }
 }