Ovládání dvou aplikací v GUI současně

Ovládání dvou aplikací v GUI současně
« kdy: Dnes v 01:04:00 »
Ahoj,

mám spuštěné dvě aplikace, jejich okna vedle sebe.

Nutně bych potřeboval způsob, jak je ovládat obě současně BEZ PŘEPÍNÁNÍ mezi nima.

Ideálně z jedné klávesnice. Tedy že některé klávesy/klávesové zkratky by šly do první aplikace a některé  do druhé aplikace.

(pozn: případně by se klávesa/klávesová zkratka ještě zkonvertovala na jinou, například když v obou aplikacích má šipka-do-prava nějaký význam, tak bych šipku doprava "vyvolal" zmáčknutím nějaké klávesové kombinace pro jednu aplikaci a jiné klávesové kombinace pro druhou aplikaci)


Varianty, pokud by nešlo to výše:
- mít do PC připojeny dvě klávesnice a každá směrovaná do jedné z obou aplikací
- ovládat jednu aplikaci z klávesnice a druhou z myši (to už je ale hodně mizerný workaround)
- ovládat jednu aplikaci nějakým dálkovým ovládáním a druhou z klávesnice (nebo mít dvě dálková ovládání, každé na jednu i nich)


Aktuálně to potřebuju v následujícím use case:
(ale jsem přesvědčen, že už jsem to parkrát potřeboval i v odlišných)

První aplikace je prohlížeč PDF. Potřebuju v něm především chodit vpřed a vzad.

Druhá aplikace je přehrávač videa. Chodím zpět o pár vteřin a zase dopředu, občas měním hlasitost a rychlost, ostatní ovládání méně často.

*

Pozn: používám KDE Plasma na Waylandu a používám Windows 11. Pokud to bude řešením, tak klidně na PC nainstaluju cokoli jiného.






Re:Ovládání dvou aplikací v GUI a to současně
« Odpověď #1 kdy: Dnes v 02:44:17 »
Ak si dobre pamatam, tak xdotool, pri konfiguracii skriptov vyzadoval nazov okna, ktoremu posiela imput z klavesnice/mysi,
Ale bezi to len pod Xwindow. Ostatne vypatraj cez AI.

Re:Ovládání dvou aplikací v GUI a to současně
« Odpověď #2 kdy: Dnes v 02:56:29 »
ja jsem na tohle kdysi pouzival vlc a global hotkeys. bylo to na widlich ale podle rychlyho googlu to jde na linuxu taky. tzn mas fokus na pdfku zkraky jako obvykle a vlc ovladas global hotkeys i kdyz nema fokus.

Re:Ovládání dvou aplikací v GUI současně
« Odpověď #3 kdy: Dnes v 09:18:26 »
Co nejaky 'MIDI kontroler'? Ja si neco podobneho ubastlil z ProMicro + par tlacitek a potenciometru...
Edit: Nevynalezal jsem kolo, v projektu jsem pouzil https://github.com/tttapa/Control-Surface.
« Poslední změna: Dnes v 09:21:19 od FNC FNC »

Re:Ovládání dvou aplikací v GUI současně
« Odpověď #4 kdy: Dnes v 12:50:27 »
Na Win by to mohlo jít zbastlit pomocí AutoHotKey (jestli to ve Win11 ještě funguje), ale to má takovou brutální syntaxi snad ještě horší než Visual Basic. K tomu SumatraPDF, dá se ovládat i přes DDE (ale mezi těmi příkazy nevidím skrolování a skok na další stránku).

MIDI kontroler spíš s enkodérama přepnutýma do relativního režimu (posílaly by +- rozdíl v pozici), než s potenciometrama nebo táhlama (posílají jenom 7b absolutní pozici). A s USB konektorem, ať není potřeba převodník z 5p DIN MIDI. Ale pak může být problém, jak ty MIDI zprávy dostat do VLC (možná má nějaký plugin), nebo jak je namapovat na stisky kláves.

Nebo nějaký kolečka k video editorům (jog wheel), ale to asi bude vzhledem k využití drahé (např. Contour Design Multimedia Controller Xpress).

Dvě klávesnice ve Win takhle myslím použít nejdou, protože Windows vstup ze všech klávesnic na hodně nízké úrovni spojují do jednoho streamu, takže není poznat, odkud který stisk přišel. (pokud to ve Win11 nějak nezměnili)


Re:Ovládání dvou aplikací v GUI současně
« Odpověď #5 kdy: Dnes v 16:26:30 »
Univerzální řešení: Dvakrát virtuální pc, každý se svou aplikací a svojí klávesnicí.

Další možnost je D-Bus nebo KDE Connect.

jjrsk

  • *****
  • 994
    • Zobrazit profil
Re:Ovládání dvou aplikací v GUI současně
« Odpověď #6 kdy: Dnes v 16:27:36 »
...
Pokud mi pamet slouzi, tak presne tohle slo v Xkach nastavit. Neco jako keymapping se to jmenovalo. Na shitlandu to tudiz predpokladam nejde nijak.

Mno a na widlich ... https://powertoy.net/utilities/keyboard-manager/ jen se obavam, ze to taky musi umet ta konkretni aplikace.

Re:Ovládání dvou aplikací v GUI současně
« Odpověď #7 kdy: Dnes v 16:59:59 »
@Honzan

Nevím, na co přesně tohle chcete, ale řešil jsem něco podobného na úpravu dialogů a překlady.
Kdy je uživatel v jedné aplikaci (kupříkladu Word, kde si dělá úpravy) a zároveň pak ovládá druhou aplikaci s videopřehrávačem aniž by se musel přepínat nebo ztrácel fokus.

Windows přehrávač mpv.net (upravený mpv) přehraje téměř cokoliv a má možnost nastavit globální klávesové zkratky. takže jakmile se spustí, tak je odchytává bez ohledu na to jestli je ve fokusu.
https://github.com/mpvnet-player/mpv.net

V souboru
%AppData%\Roaming\mpv.net\global-input.conf

Může pak být třeba tohle:


F13       no-osd set speed 1;script-message mpv.net play-pause
F14       frame-back-step
F15       frame-step
F16       seek -0.5
F17       seek 0.5
F18       multiply speed 0.5;set pause no
F19       multiply speed 2;set pause no


Schválně jsem namapoval volné klávesy, co nemají žádnou funkci v ostatních aplikacích.

Následně jsem použil tenhle USB kontroler..
https://www.contourdesign.eu/product/contour-multimedia-controller-xpress
https://www.syntex.cz/contour-design-shuttlexpress

Ten umožní v ovládacím software nastavit, co za kláv. zkratku se přiřadí ke stisku daného tlačítka, případně otočení kolečka.
Soft vypadá zhruba takhle:
https://rigpi.net/help/contour-shuttlexpress.html
Důležité je, aby se odmazaly všechny nepotřebné profily pro aplikace a tahle mapování se pak nastavila jako "Global settings", protože standardně to může posílat různé zkratky podle aplikace ve fokusu a už je tam přednastaveno spousty standardních aplikací (Word, browsery atp.).

Funguje to, řekl bych velice pěkně.
Dopsal jsem tam ještě do přehrávače mpv následně nějaké další skripty na přepínání zvuků (pokud jsou v každém kanálu/stopě různé jazyky) atp. Je to velmi flexibilní.