Smart Keyboard Input Switching for Shortcut Delay Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current keyboard drivers in computing systems often delay sending keyboard inputs to the operating system, especially when users intend to activate shortcut key combinations, leading to negative impacts on user experience in applications like gaming and CAD programs, as they do not differentiate between application modes and wait for additional keystrokes even if not intended.

Innovation Solution

Implementing a software component that determines the visibility of the system cursor to differentiate between application modes, allowing immediate sending of keyboard inputs if the cursor is not visible, indicating non-support for shortcut key combinations, or waiting for a second key if the cursor is visible, indicating support for such combinations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the keyboard driver waits for additional keystrokes to detect shortcut key combinations, then shortcut key support is improved, but keyboard input delay increases and user experience deteriorates in applications that do not support shortcuts

Engineering Contradiction:
Improveshortcut key supportVSAvoidkeyboard input delay
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system dynamically adjusts its behavior based on application state. The keyboard driver monitors cursor visibility and application mode to determine whether to wait for shortcut key combinations or immediately send keystrokes. This dynamic adaptation allows the system to optimize between shortcut support and input speed depending on the current application context.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system uses cursor visibility as a feedback mechanism to determine application mode. By monitoring whether the cursor is visible or hidden, the keyboard driver infers whether the application supports shortcut keys and adjusts its key handling behavior accordingly. This feedback loop enables adaptive key translation without requiring explicit application configuration.

Inventive Principle:
Principle #23Feedback

2Speed

If the keyboard driver immediately sends keyboard inputs without waiting, then keyboard input speed is improved, but shortcut key combination detection capability deteriorates

Engineering Contradiction:
Improvekeyboard input speedVSAvoidshortcut key combination detection
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The system dynamically switches between immediate sending mode and waiting mode based on real-time detection of application state through cursor visibility. This dynamic approach allows the system to achieve high input speed when shortcuts are not supported while maintaining shortcut detection capability when supported.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary detection of application mode (via cursor visibility) before determining the key sending strategy. This preliminary action allows the system to pre-determine whether to wait for shortcut combinations or send keys immediately, avoiding unnecessary delays while preserving shortcut functionality.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If the keyboard driver waits for a second key to detect shortcut combinations, then shortcut key support is improved, but user experience in gaming and CAD applications deteriorates due to unnecessary delays

Engineering Contradiction:
Improveshortcut key combination detectionVSAvoiduser experience in gaming and CAD
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The system uses cursor visibility as a feedback signal to determine whether the application is in a mode that supports shortcut keys. In gaming and CAD applications where the cursor is typically hidden, the system immediately sends keys without waiting, thereby improving responsiveness and user experience while avoiding unnecessary delays.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The keyboard driver dynamically adapts its waiting behavior based on the detected application mode through cursor visibility monitoring. This dynamic adjustment ensures optimal user experience across different application types by eliminating unnecessary waits in performance-critical applications while maintaining shortcut support in text-based applications.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11733864B1Smart keyboard
Publication Date: 2023.08.22 PARALLELS INT GMBH
  • US11733864B1 patent drawing
  • US11733864B1 patent drawing
  • US11733864B1 patent drawing

AI summary

The subject matter of this specification describes a method that includes determining when to send a user selection of a first key on a keyboard to an operating system, where the operating system supports shortcut key combinations. The device identifies the user selection of the first key, as input for an application. The device determines that the first key is part of a shortcut key combination. The processing device determines whether a cursor is visible in a user interface provided by the application. Upon determining that the cursor is visible in the user interface, the device waits for another user selection of one or more remaining keys of the shortcut key combinations before sending the first key to the operating system. Upon determining that the cursor is not visible in the user interface, the device sends the first key to the operating system without waiting for another user selection.