Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2b6ea24d5e | ||
|
|
02e6b033c2 | ||
|
|
076816bd12 |
@@ -15,6 +15,6 @@ Keyboard emulation on most systems requires workarounds for two issues:
|
||||
- not receiving focus when clicked
|
||||
- sending input
|
||||
|
||||
## Logging Setup
|
||||
either use [TextTestExe](https://depts.washington.edu/acelab/proj/texttest/) (local program) or [TextTestPP](https://drustz.com/TextTestPP/) (online).
|
||||
|
||||
## Logging and Statistics
|
||||
For logging, either use [TextTestExe](https://depts.washington.edu/acelab/proj/texttest/) (local program) or [TextTestPP](https://drustz.com/TextTestPP/) (online).
|
||||
The theoretical framework is inspired by https://www.yorku.ca/mack/bit95.html
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "keeb",
|
||||
"version": "0.1.0",
|
||||
"version": "1.0.1",
|
||||
"scripts": {
|
||||
"ng": "ng",
|
||||
"start": "ng serve",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
use enigo::{Direction, Enigo, Key, Keyboard, Settings};
|
||||
use tauri::Manager;
|
||||
#[cfg(target_os = "linux")]
|
||||
use std::ptr;
|
||||
use tauri::Manager;
|
||||
|
||||
// Learn more about Tauri commands at https://tauri.app/develop/calling-rust/
|
||||
#[tauri::command]
|
||||
|
||||
@@ -1,11 +1,4 @@
|
||||
<main class="container">
|
||||
<form class="row" (submit)="greet($event, greetInput.value)">
|
||||
<input #greetInput id="greet-input" placeholder="Enter a name..." />
|
||||
<button type="submit">Greet</button>
|
||||
</form>
|
||||
|
||||
<p>{{ greetingMessage }}</p>
|
||||
|
||||
<!-- Layout Switcher -->
|
||||
<div class="layout-controls">
|
||||
<button (click)="switchLayout()" class="layout-button">
|
||||
|
||||
@@ -19,24 +19,13 @@ import { CircleKeyboardComponent } from './keyboards/circle-keyboard.component';
|
||||
templateUrl: './app.component.html',
|
||||
styleUrl: './app.component.css'
|
||||
})
|
||||
export class AppComponent implements AfterViewInit {
|
||||
export class AppComponent {
|
||||
greetingMessage = "";
|
||||
currentLayout: 'qwerty' | 'dvorak' | 'circle' = 'qwerty';
|
||||
shiftActive = false;
|
||||
|
||||
@ViewChild('greetInput') inputElement!: ElementRef;
|
||||
|
||||
ngAfterViewInit() {
|
||||
this.inputElement.nativeElement.focus();
|
||||
}
|
||||
|
||||
greet(event: SubmitEvent, name: string): void {
|
||||
event.preventDefault();
|
||||
invoke<string>("greet", { name }).then((text) => {
|
||||
this.greetingMessage = text;
|
||||
});
|
||||
}
|
||||
|
||||
toggleShift(): void {
|
||||
this.shiftActive = !this.shiftActive;
|
||||
}
|
||||
@@ -52,7 +41,6 @@ export class AppComponent implements AfterViewInit {
|
||||
}
|
||||
|
||||
async handleKeyPress(key: string): Promise<void> {
|
||||
this.inputElement.nativeElement.focus();
|
||||
|
||||
let finalKey = key;
|
||||
if (key.length === 1) {
|
||||
|
||||
Reference in New Issue
Block a user