leftbehind
leftbehind

Reputation: 19

Typing on two windows at the same time

I want to be able to select both window 1 and window 2 and be able to type on both windows at the same time.

Whatever I type in window 1 will be typed in window 2 as well, for example: "hey everyone".

Being able to type on both windows at the same time, having both selected for typing. I have 2 notepad windows open. I want to type on the the first notepad window I opened, and what ever I type on window 1 will also be typed on window 2.

Sadly, I can't put up a image for you can see what I'm trying to say

WinGet, windowid, List, <Name of Window goes here>

#IfWinActive, <Name of Window goes here>
   Space::  ; jump 
    KeyWait, Space, D 
     ControlSend,, {Space} , ahk_id %windowid1% 
     ControlSend,, {Space} , ahk_id %windowid2%
     ControlSend,, {Space} , ahk_id %windowid3%
     ControlSend,, {Space} , ahk_id %windowid4%
     ControlSend,, {Space} , ahk_id %windowid5%
Return

Upvotes: 0

Views: 3067

Answers (1)

phil294
phil294

Reputation: 10852

I'm not sure if I even understand what you're trying to do... but have you tried using Input?

loop {
    input, char, I L1 V M
    ControlSend,, %char%, ahk_id %windowid1% 
}

For example: Catching every single character sent in any %processID% window by Input and sending it to all remaining %processID% windows afterwards:

processID := "notepad.exe"

loop {
    input, char, I L1 V M
    winGet, active_win_ID, ID, A
    winGet, active_win_exe, ProcessName, A
    winGet, windowsToBeSentTo_IDs, List, ahk_exe %processID%
    if active_win_exe != %processID%
        continue
    loop, %windowsToBeSentTo_IDs% {
        _id := windowsToBeSentTo_IDs%a_index%
        if _id != %active_win_ID%
            controlSend,, %char%, ahk_id %_id%
    }
}

Upvotes: 1

Related Questions