Enter will now also click the active widget in the launcher screens.

This commit is contained in:
UnknownShadow200 2015-12-10 09:34:57 +11:00
parent 4d1026e5a4
commit 058b71e61b
4 changed files with 37 additions and 11 deletions

View File

@ -43,9 +43,12 @@ namespace Launcher2 {
protected override void KeyDown( object sender, KeyboardKeyEventArgs e ) {
LauncherTableWidget table = (LauncherTableWidget)widgets[tableIndex];
if( e.Key == Key.Enter ) {
if( table.Count == 1 && String.IsNullOrEmpty( Get( 3 ) ) )
if( table.Count == 1 && String.IsNullOrEmpty( Get( 3 ) ) ) {
widgets[3].Text = table.usedEntries[0].Hash;
ConnectToServer( 0, 0 );
ConnectToServer( 0, 0 );
} else {
base.KeyDown( sender, e );
}
} else if( e.Key == Key.Up ) {
table.SetSelected( table.SelectedIndex - 1 );
table.NeedRedraw();

View File

@ -1,8 +1,8 @@
using System;
using System.Drawing;
using ClassicalSharp;
using OpenTK;
using OpenTK.Input;
using ClassicalSharp;
namespace Launcher2 {
@ -31,7 +31,8 @@ namespace Launcher2 {
OnRemovedChar();
}
} else if( e.Key == Key.Enter && enterIndex >= 0 ) {
LauncherWidget widget = widgets[enterIndex];
LauncherWidget widget = selectedWidget != null ?
selectedWidget : widgets[enterIndex];
if( widget.OnClick != null )
widget.OnClick( 0, 0 );
} else if( e.Key == Key.Tab ) {
@ -83,7 +84,7 @@ namespace Launcher2 {
protected string Get() { return Get( widgetIndex ); }
protected string Get( int index ) {
protected string Get( int index ) {
LauncherWidget widget = widgets[index];
return widget == null ? "" : widget.Text;
}
@ -128,7 +129,7 @@ namespace Launcher2 {
widgets[widgetIndex++] = widget;
}
protected void MakeInput( string text, int width, Anchor horAnchor, Anchor verAnchor,
protected void MakeInput( string text, int width, Anchor horAnchor, Anchor verAnchor,
bool password, int x, int y, int maxChars ) {
if( widgets[widgetIndex] != null ) {
LauncherInputWidget input = (LauncherInputWidget)widgets[widgetIndex];

View File

@ -27,10 +27,14 @@ namespace Launcher2 {
}
void KeyDown( object sender, KeyboardKeyEventArgs e ) {
if( e.Key == Key.Tab )
if( e.Key == Key.Tab ) {
HandleTab();
else if( e.Key == Key.Enter )
widgets[0].OnClick( 0, 0 );
} else if( e.Key == Key.Enter ) {
LauncherWidget widget = selectedWidget != null ?
selectedWidget : widgets[0];
if( widget.OnClick != null )
widget.OnClick( 0, 0 );
}
}
void KeyUp( object sender, KeyboardKeyEventArgs e ) {

View File

@ -1,9 +1,9 @@
using System;
using System.Drawing;
using System.Globalization;
using System.IO;
using ClassicalSharp;
using Launcher2.Updater;
using OpenTK.Input;
namespace Launcher2 {
@ -25,10 +25,26 @@ namespace Launcher2 {
public override void Init() {
checkTask = new UpdateCheckTask();
checkTask.CheckForUpdatesAsync();
game.Window.Keyboard.KeyDown += KeyDown;
game.Window.Keyboard.KeyUp += KeyUp;
Resize();
}
void KeyDown( object sender, KeyboardKeyEventArgs e ) {
if( e.Key == Key.Tab ) {
HandleTab();
} else if( e.Key == Key.Enter ) {
LauncherWidget widget = selectedWidget;
if( widget != null && widget.OnClick != null )
widget.OnClick( 0, 0 );
}
}
void KeyUp( object sender, KeyboardKeyEventArgs e ) {
if( e.Key == Key.Tab )
tabDown = false;
}
Build dev, stable;
public override void Tick() {
if( checkTask != null && !checkTask.Working ) {
@ -107,6 +123,8 @@ namespace Launcher2 {
}
public override void Dispose() {
game.Window.Keyboard.KeyDown -= KeyDown;
game.Window.Keyboard.KeyUp -= KeyUp;
game.Window.Mouse.Move -= MouseMove;
game.Window.Mouse.ButtonDown -= MouseButtonDown;