[BxMouse - Multi Screen Tool] - Update 1.32 - UpBGE and 2.8 support

blender2-80
upbge

(Doc Holiday) #1

Hello Friends. I am still playing with UpBGE, and noticed that my BxMouse Programm did not work property with UpBGE. Time for an Update. :up:
This should be a special UpBGE Update, but i noticed that Blender 2.8 still have these Problem. (???!) So, it works now also with 2.8. That’s why i moved this Topic from Game Resources to Interface. I only made a 64bit Version, because there is some aditional coding necessary for 32bit. Thanks for understanding.

BxMouse is a Tool, to solve the Mouse and Key Problem with multible Blender Windows. Blender does not set the correct Focus when hovering over a Window with the Mouse. Mousewheel and Keyboard can react on the wrong Screen an do some Damage. It is an extra Mouseklick necessary to set the Focus manually. Annoying! BxMouse does this automaticely, like the Blender Workflow.

I wrote this for me, but i want to share. As long as Blender can’t do this by itself, it will do the Job. :hammer_and_wrench:

BxMouse_1.32_Win64.zip (532.1 KB)

BxMouse is not a Patch. It is a external Program what works as a Launcher for Blender and lives in the Tray. It closes automatically with Blender, so you will not notice it is there. :slight_smile:

Usage:

  1. Unpack the Zip and run the Program. No Installation is necessary.
  2. Give the Path to Blender and rerun it. Thats all.
  • Right Click on the Tray Icon gives the Configuration and let it exit manually.
  • Left Click on it Pauses the Funktion.

Have Fun, and please leave a Comment.
Doc


(wkk.py) #2

Hey! Nice tool! So if I understand correctly, your patch removes the need to click on the window to set the focus?


(Doc Holiday) #3

Hi. That’s right. Thank You for the Answer. I’ve putted some Usage Hints in the Description. :slight_smile:


(BluePrintRandom) #4

could one make it so if you mouse over a game object in game it redirects input to a window defined in that game object? (without pulling out of the game engine)

(so we can use render to texture + a external app and use blender inside a game, or chrome etc?)


(Doc Holiday) #5

Sorry, but this Program is only a automatic Mouse clicker. :slight_smile:


(BluePrintRandom) #6

:smiley: thanks anyway


(fin.eskimo) #7

Legend! :+1::+1:


(Tekrenius) #8

Wouldn’t it be better for Windows users with multidisplay setups, if they just enabled the Windows’ built-in “xmouse” functionality, as shown here:
Turn on Xmouse active window tracking

Also, since BxMouse is just an AutoHotkey script compiled to EXE; I would have liked to see the source included as a courtesy (even though it can be extracted from the compiled EXE).

These types of AutoHotkey scripts are typically not much more than a few lines long, and there should be no need to keep any implementation details hidden from the more security conscious people.

It is also possibly noteworty, that compiled AutoHotkey scripts are notorious for creating false-alarms in various AntiVirus products, due to the way AutoHotkey hooks the keyboard and mouse events. And, to work correctly on Windows 10, compiled AutoHotkey scripts pretty much require to be run as administrator.

For not including any more implementation details, and for not including the AHK-source, I will have to give this a thumbs down.

Lastly, if I’m not mistaken, this script contains a small bug related to how it hooks and monitors the ESC key for Photoshop, as seen in the snippet below (this is a small part of the script included in BxMouse):

~Esc::
{
  IfWinExist, ahk_class Photoshop
  {
    IfWinActive ahk_class Photoshop
    {
      Send {ESC}
    }
    else
    {
      Send +{ESC}
    }
  }
  else
  {
    Send {ESC}
  }
  return
}

This will actually cause every ESC keypress to send ESC twice, because the “~” prefix causes the initial ESC keypress to be sent unchanged, followed by the send commands as shown above.

I suppose it is trying to convert each press of ESC inside of an active Photoshop window, to SHIFT+ESC in order to focus out of a panel and onto the document.

This behaviour should not even be included in BxMouse, as it was supposed to be a utility for Blender only.

I highly recommend people to check out the Windows’ built-in Xmouse functionality. Once you get used to it, it is difficult to live without it.

Cheers,
Samuel Tekrenius


(Rico) #9

My issue with this method is that is is quite sluggish and unresponsive. I often have to wiggle my mouse around in order to get Windows to “register” the new window and focus it. not sure if this is just my own system or like that for everyone.

EDIT: just noticed the article you linked shows how to change the delay times. nice!


(Frederyco Martins) #10

Hi.

I´m testing BxMouse and for some reason it prevents my fire button to work. I have a full screen mode view on it.


(Doc Holiday) #11

Thank You for the Response.

The XMouse Function in Windows reacts on every Window. I wanted a Solution only for Blender Windows.

I use my little Programm since 2011 now. Without any Problems from AntiVirus Software etc. Yes, it’s a compiled Script … and what? I don’t want that the User needs to install the whole AHK Siut. I am sorry if you find this rude. I do not know why I should justify myself now.

If You would spend that much Time to search blenderartists for earlyer releases ob BxMouse as You spend to decompile my Program, You would find the Reason for the Photoshop ESC Hotkey. Maybe You ask Microsoft for the Windows Source until You run it. What’s wrong with You?

BxMouse works for me. If it works for you too … fine and you welcome, otherwise sorry.

If You are not sure about the security conscious, You shouln’t download anything.
Greetings, Doc


(Doc Holiday) #12

Hi. You mean the full screen Option in the Config? Please try with this Option disabled. It is not really necessary anymore. The Window size and position will be saved in the Blender startup File.


(Craig Jones) #13

Thank you , I will try this soon when I get home!


(Tekrenius) #14

You’re quite welcome.

Fair enough, but the same “extra click” to set focus is needed for other applications also, when the Windows’ built-in Xmouse feature is not active.

So, I would argue that it is better to keep the built-in xmouse feature enabled globally.

You mean, why do I not prefer compiled AHK scripts vs source?

Isn’t it obvious? Any unsigned third party executables, such as compiled AHK-scripts, are a potential attack vector and a risk for system security.

Perhaps it’s more of an issue for some people than others.

And what about the people, such as myself, who already have the AutoHotkey development environment installed.

Why would we run or trust EXE files from third parties, if we would much rather have the source to be able to verify the code or modify it to our own needs? Hmm.

I don’t recall asking you to justify yourself, but I do wonder why you have chosen not to include the source along with the EXE?

That way, your program/source could be verified by your peers, we could even send you bug reports and fixes; while the less security conscious users could just run the EXE, if they choose to.

Actually, compiled AutoHotkey executables open directly in most archiving utilities (such as 7-Zip), and in the case of BxMouse the source can be found in:

BxMouse_1.32_Win64.exe\.rsrc\RCDATA\

Thus, there is no decompiling necessary. The action is identical to opening an archive. AHK2EXE (used to convert scripts to executables) is not a true compiler. It simply creates an executable containing the AutoHotkey interpreter, appends the original .AHK script onto the package unchanged, and sets up the interpreter to load the script on start.

(However, it’s true I haven’t looked at any previous versions of BxMouse because I only just found this thread via BlenderNation.)

So are you comparing yourself to Microsoft?

I’m pretty sure Microsoft would generally be considered a more trustworthy source (although debatable).

Are you implying that there is something wrong with me, for pointing out that it’s propably not a good idea to install and run any executables (especially without testing or having the source) that you just downloaded from some forum on the Internet, uploaded by a guy who does not even disclose his real identity but uses a pseudo-anonynomous nickname.

Mm. I suppose it’s possible that you did not expect to get any critique. And what’s wrong with me is, that I am giving you some.

Hmm, when you put it like that – I do wonder why anyone would need it. At least for me, the Windows’ built-in xmouse functionality works great! So it’s possible that I don’t truly understand what benefit anyone would get from BxMouse.

Overall, it seems to create more problems than it solves. (Obviously Linux users will not need it at all anyway.)

True. If you’re not sure about the security of something, my advise is – then don’t use it. We appear to agree.

Cheers,
Samuel Tekrenius


(Doc Holiday) #15

I just flew over …
If i did’t tell it’s AHK, you wouldn’t know. So what? It’s free. Everyone can try it out. You can code Autohotkey? Lucky one. Than You don’t need my Source. Write Your own!
I am not longer interrested in such a Diskussion. Please stop trolling me!


(MESCH973) #16

Awesome, you have the launcher version for blender 2.7?
thanks in advance


(Doc Holiday) #17

Hi. I’ve tested with Blender 2.79, and works well. :slight_smile: Or do You mean the 32bit BxMouse?


(MESCH973) #18

it’s ok, it works well with 2.7, it’s my mistake.
thanks