2
0
Эх сурвалжийг харах

Merge pull request #1036 from BDisp/netdriver-mouse-support

Fixes #518. Added mouse support for the NetDriver.
Charlie Kindel 4 жил өмнө
parent
commit
92c2171388

+ 1 - 0
Terminal.Gui/ConsoleDrivers/CursesDriver/CursesDriver.cs

@@ -646,6 +646,7 @@ namespace Terminal.Gui {
 				}
 				keyDownHandler (new KeyEvent (k, MapKeyModifiers (k)));
 				keyHandler (new KeyEvent (k, MapKeyModifiers (k)));
+				keyUpHandler (new KeyEvent (k, MapKeyModifiers (k)));
 			}
 			// Cause OnKeyUp and OnKeyPressed. Note that the special handling for ESC above 
 			// will not impact KeyUp.

+ 1 - 2
Terminal.Gui/ConsoleDrivers/CursesDriver/handles.cs

@@ -28,9 +28,8 @@
 using System;
 
 namespace Unix.Terminal {
-
-	public partial class Curses {
 #pragma warning disable CS1591 // Missing XML comment for publicly visible type or member
+	public partial class Curses {
 		public class Window {
 			public readonly IntPtr Handle;
 			static Window curscr;

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 925 - 46
Terminal.Gui/ConsoleDrivers/NetDriver.cs


+ 4 - 0
Terminal.Gui/Core/Toplevel.cs

@@ -158,6 +158,8 @@ namespace Terminal.Gui {
 
 			switch (keyEvent.Key) {
 			case Key.AltMask:
+			case Key.AltMask | Key.Space:
+			case Key.CtrlMask | Key.Space:
 				if (MenuBar != null && MenuBar.OnKeyDown (keyEvent)) {
 					return true;
 				}
@@ -176,6 +178,8 @@ namespace Terminal.Gui {
 
 			switch (keyEvent.Key) {
 			case Key.AltMask:
+			case Key.AltMask | Key.Space:
+			case Key.CtrlMask | Key.Space:
 				if (MenuBar != null && MenuBar.OnKeyUp (keyEvent)) {
 					return true;
 				}

+ 4 - 3
Terminal.Gui/Views/Menu.cs

@@ -834,7 +834,7 @@ namespace Terminal.Gui {
 		///<inheritdoc/>
 		public override bool OnKeyDown (KeyEvent keyEvent)
 		{
-			if (keyEvent.IsAlt) {
+			if (keyEvent.IsAlt || (keyEvent.IsCtrl && keyEvent.Key == (Key.CtrlMask | Key.Space))) {
 				openedByAltKey = true;
 				SetNeedsDisplay ();
 				openedByHotKey = false;
@@ -845,9 +845,10 @@ namespace Terminal.Gui {
 		///<inheritdoc/>
 		public override bool OnKeyUp (KeyEvent keyEvent)
 		{
-			if (keyEvent.IsAlt) {
+			if (keyEvent.IsAlt || (keyEvent.IsCtrl && keyEvent.Key == (Key.CtrlMask | Key.Space))) {
 				// User pressed Alt - this may be a precursor to a menu accelerator (e.g. Alt-F)
-				if (!keyEvent.IsCtrl && openedByAltKey && !IsMenuOpen && openMenu == null && ((uint)keyEvent.Key & (uint)Key.CharMask) == 0) {
+				if (openedByAltKey && !IsMenuOpen && openMenu == null && (((uint)keyEvent.Key & (uint)Key.CharMask) == 0
+					|| ((uint)keyEvent.Key & (uint)Key.CharMask) == (uint)Key.Space)) {
 					// There's no open menu, the first menu item should be highlight.
 					// The right way to do this is to SetFocus(MenuBar), but for some reason
 					// that faults.

+ 1 - 1
Terminal.Gui/Views/TextField.cs

@@ -213,7 +213,7 @@ namespace Terminal.Gui {
 			int col = 0;
 			int width = Frame.Width + OffSetBackground ();
 			var tcount = text.Count;
-			var roc = new Attribute (Color.DarkGray, Color.Gray);
+			var roc = Colors.Menu.Disabled;
 			for (int idx = p; idx < tcount; idx++) {
 				var rune = text [idx];
 				var cols = Rune.ColumnWidth (rune);

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно