Help us shape the future of Go! Take the 2026 Go Developer Survey

inputflinger

package
v0.0.9 Latest Latest
Warning

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

Go to latest
Published: Apr 6, 2026 License: CC0-1.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TransactionIInputFilterIsEnabled                  = binder.FirstCallTransaction + 0
	TransactionIInputFilterNotifyKey                  = binder.FirstCallTransaction + 1
	TransactionIInputFilterNotifyInputDevicesChanged  = binder.FirstCallTransaction + 2
	TransactionIInputFilterNotifyConfigurationChanged = binder.FirstCallTransaction + 3
)
View Source
const (
	MethodIInputFilterIsEnabled                  = "isEnabled"
	MethodIInputFilterNotifyKey                  = "notifyKey"
	MethodIInputFilterNotifyInputDevicesChanged  = "notifyInputDevicesChanged"
	MethodIInputFilterNotifyConfigurationChanged = "notifyConfigurationChanged"
)
View Source
const (
	TransactionIInputFilterIInputFilterCallbacksSendKeyEvent            = binder.FirstCallTransaction + 0
	TransactionIInputFilterIInputFilterCallbacksOnModifierStateChanged  = binder.FirstCallTransaction + 1
	TransactionIInputFilterIInputFilterCallbacksCreateInputFilterThread = binder.FirstCallTransaction + 2
)
View Source
const (
	MethodIInputFilterIInputFilterCallbacksSendKeyEvent            = "sendKeyEvent"
	MethodIInputFilterIInputFilterCallbacksOnModifierStateChanged  = "onModifierStateChanged"
	MethodIInputFilterIInputFilterCallbacksCreateInputFilterThread = "createInputFilterThread"
)
View Source
const DescriptorIInputFilter = "com.android.server.inputflinger.IInputFilter"
View Source
const DescriptorIInputFilterIInputFilterCallbacks = "com.android.server.inputflinger.IInputFilter.IInputFilterCallbacks"
View Source
const DescriptorIInputFlingerRust = "com.android.server.inputflinger.IInputFlingerRust"
View Source
const DescriptorIInputFlingerRustIInputFlingerRustBootstrapCallback = "com.android.server.inputflinger.IInputFlingerRust.IInputFlingerRustBootstrapCallback"
View Source
const DescriptorIInputThread = "com.android.server.inputflinger.IInputThread"
View Source
const DescriptorIInputThreadIInputThreadCallback = "com.android.server.inputflinger.IInputThread.IInputThreadCallback"
View Source
const (
	MethodIInputFlingerRustCreateInputFilter = "createInputFilter"
)
View Source
const (
	MethodIInputFlingerRustIInputFlingerRustBootstrapCallbackOnProvideInputFlingerRust = "onProvideInputFlingerRust"
)
View Source
const (
	MethodIInputThreadFinish = "finish"
)
View Source
const (
	MethodIInputThreadIInputThreadCallbackLoopOnce = "loopOnce"
)
View Source
const (
	TransactionIInputFlingerRustCreateInputFilter = binder.FirstCallTransaction + 0
)
View Source
const (
	TransactionIInputFlingerRustIInputFlingerRustBootstrapCallbackOnProvideInputFlingerRust = binder.FirstCallTransaction + 0
)
View Source
const (
	TransactionIInputThreadFinish = binder.FirstCallTransaction + 0
)
View Source
const (
	TransactionIInputThreadIInputThreadCallbackLoopOnce = binder.FirstCallTransaction + 0
)

Variables

This section is empty.

Functions

This section is empty.

Types

type DeviceInfo

type DeviceInfo struct {
	DeviceId int32
	External bool
}

func (*DeviceInfo) MarshalParcel

func (s *DeviceInfo) MarshalParcel(
	p *parcel.Parcel,
) error

func (*DeviceInfo) UnmarshalParcel

func (s *DeviceInfo) UnmarshalParcel(
	p *parcel.Parcel,
) error

type IInputFilter

type IInputFilter interface {
	AsBinder() binder.IBinder
	IsEnabled(ctx context.Context) (bool, error)
	NotifyKey(ctx context.Context, event KeyEvent) error
	NotifyInputDevicesChanged(ctx context.Context, deviceInfos []DeviceInfo) error
	NotifyConfigurationChanged(ctx context.Context, config InputFilterConfiguration) error
}

func NewInputFilterStub

func NewInputFilterStub(
	impl IInputFilterServer,
) IInputFilter

NewInputFilterStub creates a server-side IInputFilter wrapping the given server implementation. The returned value satisfies IInputFilter and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IInputFilterIInputFilterCallbacks

type IInputFilterIInputFilterCallbacks interface {
	AsBinder() binder.IBinder
	SendKeyEvent(ctx context.Context, event KeyEvent) error
	OnModifierStateChanged(ctx context.Context, modifierState int32, lockedModifierState int32) error
	CreateInputFilterThread(ctx context.Context, callback IInputThreadIInputThreadCallback) (IInputThread, error)
}

func NewInputFilterIInputFilterCallbacksStub

func NewInputFilterIInputFilterCallbacksStub(
	impl IInputFilterIInputFilterCallbacksServer,
) IInputFilterIInputFilterCallbacks

NewInputFilterIInputFilterCallbacksStub creates a server-side IInputFilterIInputFilterCallbacks wrapping the given server implementation. The returned value satisfies IInputFilterIInputFilterCallbacks and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IInputFilterIInputFilterCallbacksServer

type IInputFilterIInputFilterCallbacksServer interface {
	SendKeyEvent(ctx context.Context, event KeyEvent) error
	OnModifierStateChanged(ctx context.Context, modifierState int32, lockedModifierState int32) error
	CreateInputFilterThread(ctx context.Context, callback IInputThreadIInputThreadCallback) (IInputThread, error)
}

IInputFilterIInputFilterCallbacksServer is the server-side interface that user implementations provide to NewInputFilterIInputFilterCallbacksStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type IInputFilterServer

type IInputFilterServer interface {
	IsEnabled(ctx context.Context) (bool, error)
	NotifyKey(ctx context.Context, event KeyEvent) error
	NotifyInputDevicesChanged(ctx context.Context, deviceInfos []DeviceInfo) error
	NotifyConfigurationChanged(ctx context.Context, config InputFilterConfiguration) error
}

IInputFilterServer is the server-side interface that user implementations provide to NewInputFilterStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type IInputFlingerRust

type IInputFlingerRust interface {
	AsBinder() binder.IBinder
	CreateInputFilter(ctx context.Context, callbacks IInputFilterIInputFilterCallbacks) (IInputFilter, error)
}

func NewInputFlingerRustStub

func NewInputFlingerRustStub(
	impl IInputFlingerRustServer,
) IInputFlingerRust

NewInputFlingerRustStub creates a server-side IInputFlingerRust wrapping the given server implementation. The returned value satisfies IInputFlingerRust and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IInputFlingerRustIInputFlingerRustBootstrapCallback

type IInputFlingerRustIInputFlingerRustBootstrapCallback interface {
	AsBinder() binder.IBinder
	OnProvideInputFlingerRust(ctx context.Context, inputFlingerRust IInputFlingerRust) error
}

func NewInputFlingerRustIInputFlingerRustBootstrapCallbackStub

func NewInputFlingerRustIInputFlingerRustBootstrapCallbackStub(
	impl IInputFlingerRustIInputFlingerRustBootstrapCallbackServer,
) IInputFlingerRustIInputFlingerRustBootstrapCallback

NewInputFlingerRustIInputFlingerRustBootstrapCallbackStub creates a server-side IInputFlingerRustIInputFlingerRustBootstrapCallback wrapping the given server implementation. The returned value satisfies IInputFlingerRustIInputFlingerRustBootstrapCallback and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IInputFlingerRustIInputFlingerRustBootstrapCallbackServer

type IInputFlingerRustIInputFlingerRustBootstrapCallbackServer interface {
	OnProvideInputFlingerRust(ctx context.Context, inputFlingerRust IInputFlingerRust) error
}

IInputFlingerRustIInputFlingerRustBootstrapCallbackServer is the server-side interface that user implementations provide to NewInputFlingerRustIInputFlingerRustBootstrapCallbackStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type IInputFlingerRustServer

type IInputFlingerRustServer interface {
	CreateInputFilter(ctx context.Context, callbacks IInputFilterIInputFilterCallbacks) (IInputFilter, error)
}

IInputFlingerRustServer is the server-side interface that user implementations provide to NewInputFlingerRustStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type IInputThread

type IInputThread interface {
	AsBinder() binder.IBinder
	Finish(ctx context.Context) error
}

func NewInputThreadStub

func NewInputThreadStub(
	impl IInputThreadServer,
) IInputThread

NewInputThreadStub creates a server-side IInputThread wrapping the given server implementation. The returned value satisfies IInputThread and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IInputThreadIInputThreadCallback

type IInputThreadIInputThreadCallback interface {
	AsBinder() binder.IBinder
	LoopOnce(ctx context.Context) error
}

func NewInputThreadIInputThreadCallbackStub

func NewInputThreadIInputThreadCallbackStub(
	impl IInputThreadIInputThreadCallbackServer,
) IInputThreadIInputThreadCallback

NewInputThreadIInputThreadCallbackStub creates a server-side IInputThreadIInputThreadCallback wrapping the given server implementation. The returned value satisfies IInputThreadIInputThreadCallback and can be passed to proxy methods; its AsBinder() returns a *binder.StubBinder that is auto-registered with the binder driver on first use.

type IInputThreadIInputThreadCallbackServer

type IInputThreadIInputThreadCallbackServer interface {
	LoopOnce(ctx context.Context) error
}

IInputThreadIInputThreadCallbackServer is the server-side interface that user implementations provide to NewInputThreadIInputThreadCallbackStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type IInputThreadServer

type IInputThreadServer interface {
	Finish(ctx context.Context) error
}

IInputThreadServer is the server-side interface that user implementations provide to NewInputThreadStub. It contains only the business methods, without AsBinder (which is provided by the stub itself).

type InputFilterConfiguration

type InputFilterConfiguration struct {
	BounceKeysThresholdNs int64
	StickyKeysEnabled     bool
	SlowKeysThresholdNs   int64
}

func (*InputFilterConfiguration) MarshalParcel

func (s *InputFilterConfiguration) MarshalParcel(
	p *parcel.Parcel,
) error

func (*InputFilterConfiguration) UnmarshalParcel

func (s *InputFilterConfiguration) UnmarshalParcel(
	p *parcel.Parcel,
) error

type InputFilterIInputFilterCallbacksProxy

type InputFilterIInputFilterCallbacksProxy struct {
	Remote binder.IBinder
}

func NewInputFilterIInputFilterCallbacksProxy

func NewInputFilterIInputFilterCallbacksProxy(
	remote binder.IBinder,
) *InputFilterIInputFilterCallbacksProxy

func (*InputFilterIInputFilterCallbacksProxy) AsBinder

func (*InputFilterIInputFilterCallbacksProxy) CreateInputFilterThread

func (*InputFilterIInputFilterCallbacksProxy) OnModifierStateChanged

func (p *InputFilterIInputFilterCallbacksProxy) OnModifierStateChanged(
	ctx context.Context,
	modifierState int32,
	lockedModifierState int32,
) error

func (*InputFilterIInputFilterCallbacksProxy) SendKeyEvent

func (p *InputFilterIInputFilterCallbacksProxy) SendKeyEvent(
	ctx context.Context,
	event KeyEvent,
) error

type InputFilterIInputFilterCallbacksStub

type InputFilterIInputFilterCallbacksStub struct {
	Impl      IInputFilterIInputFilterCallbacks
	Transport binder.VersionAwareTransport
}

InputFilterIInputFilterCallbacksStub dispatches incoming binder transactions to a typed IInputFilterIInputFilterCallbacks implementation.

func (*InputFilterIInputFilterCallbacksStub) Descriptor

func (*InputFilterIInputFilterCallbacksStub) OnTransaction

type InputFilterProxy

type InputFilterProxy struct {
	Remote binder.IBinder
}

func NewInputFilterProxy

func NewInputFilterProxy(
	remote binder.IBinder,
) *InputFilterProxy

func (*InputFilterProxy) AsBinder

func (p *InputFilterProxy) AsBinder() binder.IBinder

func (*InputFilterProxy) IsEnabled

func (p *InputFilterProxy) IsEnabled(
	ctx context.Context,
) (bool, error)

func (*InputFilterProxy) NotifyConfigurationChanged

func (p *InputFilterProxy) NotifyConfigurationChanged(
	ctx context.Context,
	config InputFilterConfiguration,
) error

func (*InputFilterProxy) NotifyInputDevicesChanged

func (p *InputFilterProxy) NotifyInputDevicesChanged(
	ctx context.Context,
	deviceInfos []DeviceInfo,
) error

func (*InputFilterProxy) NotifyKey

func (p *InputFilterProxy) NotifyKey(
	ctx context.Context,
	event KeyEvent,
) error

type InputFilterStub

type InputFilterStub struct {
	Impl      IInputFilter
	Transport binder.VersionAwareTransport
}

InputFilterStub dispatches incoming binder transactions to a typed IInputFilter implementation.

func (*InputFilterStub) Descriptor

func (s *InputFilterStub) Descriptor() string

func (*InputFilterStub) OnTransaction

func (s *InputFilterStub) OnTransaction(
	ctx context.Context,
	code binder.TransactionCode,
	_data *parcel.Parcel,
) (*parcel.Parcel, error)

type InputFlingerRustIInputFlingerRustBootstrapCallbackProxy

type InputFlingerRustIInputFlingerRustBootstrapCallbackProxy struct {
	Remote binder.IBinder
}

func NewInputFlingerRustIInputFlingerRustBootstrapCallbackProxy

func NewInputFlingerRustIInputFlingerRustBootstrapCallbackProxy(
	remote binder.IBinder,
) *InputFlingerRustIInputFlingerRustBootstrapCallbackProxy

func (*InputFlingerRustIInputFlingerRustBootstrapCallbackProxy) AsBinder

func (*InputFlingerRustIInputFlingerRustBootstrapCallbackProxy) OnProvideInputFlingerRust

func (p *InputFlingerRustIInputFlingerRustBootstrapCallbackProxy) OnProvideInputFlingerRust(
	ctx context.Context,
	inputFlingerRust IInputFlingerRust,
) error

type InputFlingerRustIInputFlingerRustBootstrapCallbackStub

type InputFlingerRustIInputFlingerRustBootstrapCallbackStub struct {
	Impl      IInputFlingerRustIInputFlingerRustBootstrapCallback
	Transport binder.VersionAwareTransport
}

InputFlingerRustIInputFlingerRustBootstrapCallbackStub dispatches incoming binder transactions to a typed IInputFlingerRustIInputFlingerRustBootstrapCallback implementation.

func (*InputFlingerRustIInputFlingerRustBootstrapCallbackStub) Descriptor

func (*InputFlingerRustIInputFlingerRustBootstrapCallbackStub) OnTransaction

type InputFlingerRustProxy

type InputFlingerRustProxy struct {
	Remote binder.IBinder
}

func NewInputFlingerRustProxy

func NewInputFlingerRustProxy(
	remote binder.IBinder,
) *InputFlingerRustProxy

func (*InputFlingerRustProxy) AsBinder

func (p *InputFlingerRustProxy) AsBinder() binder.IBinder

func (*InputFlingerRustProxy) CreateInputFilter

func (p *InputFlingerRustProxy) CreateInputFilter(
	ctx context.Context,
	callbacks IInputFilterIInputFilterCallbacks,
) (IInputFilter, error)

type InputFlingerRustStub

type InputFlingerRustStub struct {
	Impl      IInputFlingerRust
	Transport binder.VersionAwareTransport
}

InputFlingerRustStub dispatches incoming binder transactions to a typed IInputFlingerRust implementation.

func (*InputFlingerRustStub) Descriptor

func (s *InputFlingerRustStub) Descriptor() string

func (*InputFlingerRustStub) OnTransaction

func (s *InputFlingerRustStub) OnTransaction(
	ctx context.Context,
	code binder.TransactionCode,
	_data *parcel.Parcel,
) (*parcel.Parcel, error)

type InputThreadIInputThreadCallbackProxy

type InputThreadIInputThreadCallbackProxy struct {
	Remote binder.IBinder
}

func NewInputThreadIInputThreadCallbackProxy

func NewInputThreadIInputThreadCallbackProxy(
	remote binder.IBinder,
) *InputThreadIInputThreadCallbackProxy

func (*InputThreadIInputThreadCallbackProxy) AsBinder

func (*InputThreadIInputThreadCallbackProxy) LoopOnce

type InputThreadIInputThreadCallbackStub

type InputThreadIInputThreadCallbackStub struct {
	Impl      IInputThreadIInputThreadCallback
	Transport binder.VersionAwareTransport
}

InputThreadIInputThreadCallbackStub dispatches incoming binder transactions to a typed IInputThreadIInputThreadCallback implementation.

func (*InputThreadIInputThreadCallbackStub) Descriptor

func (*InputThreadIInputThreadCallbackStub) OnTransaction

type InputThreadProxy

type InputThreadProxy struct {
	Remote binder.IBinder
}

func NewInputThreadProxy

func NewInputThreadProxy(
	remote binder.IBinder,
) *InputThreadProxy

func (*InputThreadProxy) AsBinder

func (p *InputThreadProxy) AsBinder() binder.IBinder

func (*InputThreadProxy) Finish

func (p *InputThreadProxy) Finish(
	ctx context.Context,
) error

type InputThreadStub

type InputThreadStub struct {
	Impl      IInputThread
	Transport binder.VersionAwareTransport
}

InputThreadStub dispatches incoming binder transactions to a typed IInputThread implementation.

func (*InputThreadStub) Descriptor

func (s *InputThreadStub) Descriptor() string

func (*InputThreadStub) OnTransaction

func (s *InputThreadStub) OnTransaction(
	ctx context.Context,
	code binder.TransactionCode,
	_data *parcel.Parcel,
) (*parcel.Parcel, error)

type KeyEvent

type KeyEvent struct {
	Id          int32
	DeviceId    int32
	DownTime    int64
	ReadTime    int64
	EventTime   int64
	Source      common.Source
	DisplayId   int32
	PolicyFlags int32
	Action      KeyEventAction
	Flags       int32
	KeyCode     int32
	ScanCode    int32
	MetaState   int32
}

func (*KeyEvent) MarshalParcel

func (s *KeyEvent) MarshalParcel(
	p *parcel.Parcel,
) error

func (*KeyEvent) UnmarshalParcel

func (s *KeyEvent) UnmarshalParcel(
	p *parcel.Parcel,
) error

type KeyEventAction

type KeyEventAction int32
const (
	KeyEventActionDOWN     KeyEventAction = 0
	KeyEventActionUP       KeyEventAction = 1
	KeyEventActionMULTIPLE KeyEventAction = 2
)

Jump to

Keyboard shortcuts

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