input

package
v0.70.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 8, 2020 License: MIT Imports: 2 Imported by: 77

README

input

A lib to help encode inputs.

Copied from chromedp. But modified to make it completely independent.

Documentation

Index

Constants

View Source
const (
	Backspace            = '\b'
	Tab                  = '\t'
	Enter                = '\r'
	Escape               = '\u001b'
	Quote                = '\''
	Backslash            = '\\'
	Delete               = '\u007f'
	Alt                  = '\u0102'
	CapsLock             = '\u0104'
	Control              = '\u0105'
	Fn                   = '\u0106'
	FnLock               = '\u0107'
	Hyper                = '\u0108'
	Meta                 = '\u0109'
	NumLock              = '\u010a'
	ScrollLock           = '\u010c'
	Shift                = '\u010d'
	Super                = '\u010e'
	ArrowDown            = '\u0301'
	ArrowLeft            = '\u0302'
	ArrowRight           = '\u0303'
	ArrowUp              = '\u0304'
	End                  = '\u0305'
	Home                 = '\u0306'
	PageDown             = '\u0307'
	PageUp               = '\u0308'
	Clear                = '\u0401'
	Copy                 = '\u0402'
	Cut                  = '\u0404'
	Insert               = '\u0407'
	Paste                = '\u0408'
	Redo                 = '\u0409'
	Undo                 = '\u040a'
	Again                = '\u0502'
	Cancel               = '\u0504'
	ContextMenu          = '\u0505'
	Find                 = '\u0507'
	Help                 = '\u0508'
	Pause                = '\u0509'
	Props                = '\u050b'
	Select               = '\u050c'
	ZoomIn               = '\u050d'
	ZoomOut              = '\u050e'
	BrightnessDown       = '\u0601'
	BrightnessUp         = '\u0602'
	Eject                = '\u0604'
	LogOff               = '\u0605'
	Power                = '\u0606'
	PrintScreen          = '\u0608'
	WakeUp               = '\u060b'
	Convert              = '\u0705'
	ModeChange           = '\u070b'
	NonConvert           = '\u070d'
	HangulMode           = '\u0711'
	HanjaMode            = '\u0712'
	Hiragana             = '\u0716'
	KanaMode             = '\u0718'
	Katakana             = '\u071a'
	ZenkakuHankaku       = '\u071d'
	F1                   = '\u0801'
	F2                   = '\u0802'
	F3                   = '\u0803'
	F4                   = '\u0804'
	F5                   = '\u0805'
	F6                   = '\u0806'
	F7                   = '\u0807'
	F8                   = '\u0808'
	F9                   = '\u0809'
	F10                  = '\u080a'
	F11                  = '\u080b'
	F12                  = '\u080c'
	F13                  = '\u080d'
	F14                  = '\u080e'
	F15                  = '\u080f'
	F16                  = '\u0810'
	F17                  = '\u0811'
	F18                  = '\u0812'
	F19                  = '\u0813'
	F20                  = '\u0814'
	F21                  = '\u0815'
	F22                  = '\u0816'
	F23                  = '\u0817'
	F24                  = '\u0818'
	Close                = '\u0a01'
	MailForward          = '\u0a02'
	MailReply            = '\u0a03'
	MailSend             = '\u0a04'
	MediaPlayPause       = '\u0a05'
	MediaStop            = '\u0a07'
	MediaTrackNext       = '\u0a08'
	MediaTrackPrevious   = '\u0a09'
	New                  = '\u0a0a'
	Open                 = '\u0a0b'
	Print                = '\u0a0c'
	Save                 = '\u0a0d'
	SpellCheck           = '\u0a0e'
	AudioVolumeDown      = '\u0a0f'
	AudioVolumeUp        = '\u0a10'
	AudioVolumeMute      = '\u0a11'
	LaunchApplication2   = '\u0b01'
	LaunchCalendar       = '\u0b02'
	LaunchMail           = '\u0b03'
	LaunchMediaPlayer    = '\u0b04'
	LaunchMusicPlayer    = '\u0b05'
	LaunchApplication1   = '\u0b06'
	LaunchScreenSaver    = '\u0b07'
	LaunchSpreadsheet    = '\u0b08'
	LaunchWebBrowser     = '\u0b09'
	LaunchContacts       = '\u0b0c'
	LaunchPhone          = '\u0b0d'
	LaunchAssistant      = '\u0b0e'
	BrowserBack          = '\u0c01'
	BrowserFavorites     = '\u0c02'
	BrowserForward       = '\u0c03'
	BrowserHome          = '\u0c04'
	BrowserRefresh       = '\u0c05'
	BrowserSearch        = '\u0c06'
	BrowserStop          = '\u0c07'
	ChannelDown          = '\u0d0a'
	ChannelUp            = '\u0d0b'
	ClosedCaptionToggle  = '\u0d12'
	Exit                 = '\u0d15'
	Guide                = '\u0d22'
	Info                 = '\u0d25'
	MediaFastForward     = '\u0d2c'
	MediaLast            = '\u0d2d'
	MediaPause           = '\u0d2e'
	MediaPlay            = '\u0d2f'
	MediaRecord          = '\u0d30'
	MediaRewind          = '\u0d31'
	Settings             = '\u0d43'
	ZoomToggle           = '\u0d4e'
	AudioBassBoostToggle = '\u0e02'
	SpeechInputToggle    = '\u0f02'
	AppSwitch            = '\u1001'
)

DOM keys.

Variables

View Source
var Keys = map[rune]*Key{}/* 229 elements not displayed */

Keys is the map of unicode characters to their DOM key data.

View Source
var MouseKeys = map[proto.InputMouseButton]int{
	"left":    1,
	"right":   2,
	"middle":  4,
	"back":    8,
	"forward": 16,
}

MouseKeys is the map for mouse keys

Functions

func Encode

func Encode(r rune) []*proto.InputDispatchKeyEvent

Encode encodes a keyDown, char, and keyUp sequence for the specified rune.

func EncodeMouseButton

func EncodeMouseButton(buttons []proto.InputMouseButton) (proto.InputMouseButton, int)

EncodeMouseButton into button flag

Types

type Key

type Key struct {
	// Code is the key code:
	// 								"Enter"     | "Comma"     | "KeyA"     | "MediaStop"
	Code string

	// Key is the key value:
	// 								"Enter"     | ","   "<"   | "a"   "A"  | "MediaStop"
	Key string

	// Text is the text for printable keys:
	// 								"\r"  "\r"  | ","   "<"   | "a"   "A"  | ""
	Text string

	// Unmodified is the unmodified text for printable keys:
	// 								"\r"  "\r"  | ","   ","   | "a"   "a"  | ""
	Unmodified string

	// Native is the native scan code.
	// 								0x13  0x13  | 0xbc  0xbc  | 0x61  0x41 | 0x00ae
	Native int

	// Windows is the windows scan code.
	// 								0x13  0x13  | 0xbc  0xbc  | 0x61  0x41 | 0xe024
	Windows int

	// Shift indicates whether or not the Shift modifier should be sent.
	// 								false false | false true  | false true | false
	Shift bool

	// Print indicates whether or not the character is a printable character
	// (ie, should a "char" event be generated).
	// 								true  true  | true  true  | true  true | false
	Print bool
}

Key contains information for generating a key press based off the unicode value.

Example data for the following runes:

'\r'  '\n'  | ','  '<'    | 'a'   'A'  | '\u0a07'
_____________________________________________________

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL