It is currently May 2nd, 2024, 12:54 am

I want rainmeter to deliberately steal focus.

Get help with creating, editing & fixing problems with skins
Asagrim
Posts: 126
Joined: August 12th, 2011, 12:30 pm

I want rainmeter to deliberately steal focus.

Post by Asagrim »

Hello!

Since i got bored of using huge tiles in Microsoft's sorry excuse of a new operating system called Windows 8, i made my own start menu. I made a program shortcut ("C:\Program Files\Rainmeter\Rainmeter.exe" !RainmeterToggleFade Startmenu) which i bound to the key combination i want, so everything works in perfect order.

The only feature i miss from my new start menu is focus. Currently my start menu doesn't show up at all, if i have a full screen application running, no matter if it's full screen by design, or just a media player switched to full screen.

I want my menu to steal focus when i press the key combination, at all costs. Even if it has to drop my current full screen application in a maximized window state, or even entirely drop it to the taskbar (which would be most probably the case with fullscreen applications such as games).

Is there a way to do this?
User avatar
Kaelri
Developer
Posts: 1721
Joined: July 25th, 2009, 4:47 am

Re: I want rainmeter to deliberately steal focus.

Post by Kaelri »

It's not technically "focus," but you can set any skin to show on top of other windows. (Right-click, Settings, Position, "Topmost" or "Stay Topmost.")

However, this will probably only work if you're already in the "desktop" environment in Windows 8. I have absolutely no idea how it would work (or not) when you're in a Metro app.
Asagrim
Posts: 126
Joined: August 12th, 2011, 12:30 pm

Re: I want rainmeter to deliberately steal focus.

Post by Asagrim »

The skin is already set to topmost as it is, and no fullscreen applications are affected by my pressing the key combination. It just won't show up at all.

I made this menu to entirely ignore metro the first place, so i don't intend to use this in a metro environment, only explorer. (Explorer and Metro are basically 2 different shells on the same OS.)

There is only one workaround i can think of, i can hijack the "show desktop" script from windows, and the keybind would then basically run a batch file, which runs the show desktop script first, and the rainmeter skin second, but i really want to use this only as a fallback plan, because i don't want all my windows to minimize upon accessing the menu i made.
User avatar
~Faradey~
Posts: 366
Joined: November 12th, 2009, 4:47 pm
Location: Ukraine

Re: I want rainmeter to deliberately steal focus.

Post by ~Faradey~ »

here i've wrote a vb script for you :)

Code: Select all

strComputer = "."

Dim Wsh
Set Wsh = CreateObject("WScript.Shell")
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'Rainmeter.exe'")
For Each objProcess in colProcessList
Wsh.AppActivate objProcess.ProcessId
Next
all you need is to save it in .vbs format extension and run in Rainmeter (for example):
LeftMouseUpAction=["PathToWhereVBScript\GiveRainFocus.vbs"]
Asagrim
Posts: 126
Joined: August 12th, 2011, 12:30 pm

Re: I want rainmeter to deliberately steal focus.

Post by Asagrim »

WOW!

Thank you so much! Will try to incorporate it immediately! :D
Asagrim
Posts: 126
Joined: August 12th, 2011, 12:30 pm

Re: I want rainmeter to deliberately steal focus.

Post by Asagrim »

The script works well, however fullscreen applications are still unaffected. :(
User avatar
~Faradey~
Posts: 366
Joined: November 12th, 2009, 4:47 pm
Location: Ukraine

Re: I want rainmeter to deliberately steal focus.

Post by ~Faradey~ »

Asagrim
what exactly fs applications do you mean?, some of them might have a very top Z order or i don't know how say it right...and i could try to go by harder way and write a little addon so fs apps would be minimized, but i don't get one thing, if it is a full screen window, how can you click on any of rainmeter skins? unless they blinking on your screen, well it depends on type of application...
User avatar
TweaknFreak
Posts: 217
Joined: July 14th, 2012, 7:26 am

Re: I want rainmeter to deliberately steal focus.

Post by TweaknFreak »

~Faradey~
As far as I understood, Asagrim has bound that shortcut ("C:\Program Files\Rainmeter\Rainmeter.exe" !RainmeterToggleFade Startmenu) to specific key combination on his keyboard. Thats why he is able to trigger Rainmeter Configs despite being on a fullscreen application environment.
But the major question that I have is how to force that triggered a config to appear on top taking help with your VB Script ? I mean for example if I want "Dock" config to appear on top of any window after clicking on "Load Dock" button, will this code work :-

Code: Select all

[LoadDockButton]
Meter=Button
ButtonImage=dock.png
X=5
Y=5
LeftMouseUpAction=!Execute [!ShowMeter Dock]["GiveRainFocus.vbs"]
Hidden=0

[Dock]
Meter=Image
ImageName=dockbackground.png
X=10
Y=5
Hidden=1
Long Story short - just tell me how to incorporate your script to make the necessary effect.
Thanx in advance.
Be one of the iNEViTABLES - Storm, Earthquake, Lightning, Flood - and the world will bow down to you.

My current desktop
[hsimg]http://i1313.photobucket.com/albums/t559/TweaknFreak/6-22-20149-46-40PM_zps7bcbc1f6.png[/hsimg]