It is currently March 29th, 2024, 12:21 am

Problems with a Simple Overlayer in screen

Report bugs with the Rainmeter application and suggest features.
amadis33
Posts: 12
Joined: January 13th, 2013, 1:44 am

Problems with a Simple Overlayer in screen

Post by amadis33 »

I have problems with a Simple Overlayer, I use this as a Dimmer for work in the night,
but do not let me press Ctrl, Shift or Alt, because is bloked at the time,
even with !ClickThrough

Im working with Coreldraw and Photoshop and is ver usefully the commands.
Can you help me for this?


--------------------------------------------------------

[Rainmeter]
Update=-1
OnRefreshAction=[!Zpos 2][!ClickThrough 1]

[bg]
Meter=Image
SolidColor=200,150,10,30
W=#VSCREENAREAWIDTH#
H=#VSCREENAREAHEIGHT#

--------------------------------------------------------
User avatar
jsmorley
Developer
Posts: 22628
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: Problems with a Simple Overlayer in screen

Post by jsmorley »

Currently there is no way to get around this. Any of CTRL, ALT or Shift will override the "Click through" setting on a skin. In addition the specific combination of CTRL-ALT is what we use for the new "drag group" selection functionality, and that by it's nature automatically disables "Click through".

This is by design, to make sure there is always some way of getting at your skins, and so you can't completely lock a user out. We have no interest in trying to chase some effort to create a "locked down" version of skins, that for instance could be distributed in a company environment. That is a fool's errand, as there are just too many ways that anyone even remotely familiar with Windows can get around it. So instead, we took the approach that we don't want a user to "accidentally" lock themselves out of being able to interact with the skins on their screens.

We are still chewing on this, and may decide on some compromise change in the future.

My thinking is perhaps a new global DisableOverride option in the [Rainmeter] section of Rainmeter.ini. This setting would be something that only the "user" of Rainmeter can set or change, as it would not be a setting that could be distributed in a .rmskin. We are still not, and never will be, interested in having a skin "author" be able to lock other users out of things on their own systems. That is not the world that Rainmeter wants to live in...

The downside is that it opens up a remote possibility that a user could add that option and set it to "1", and then hide the Notification Area icon for Rainmeter. If all of their skins are set to "Click through", that would make it a bit of a challenge to interact with skins. Not impossible of course, as you could simply manually edit Rainmeter.ini, but certainly a potential head-scratcher for a brand new user who is just messing around. As I said, "remote" since it would take a manual and purposeful change to Rainmeter.ini to set that option in the first place, which a casual new user isn't likely to do.

Another downside is that to allow the full range of key combinations to not trigger the "override" of "Click through", we would probably have to accept that this would also disable the entire "drag group" selection functionality. Programs like Photoshop make use of the CTRL-ALT combination, and it would be unsatisfying to "partially" address this issue. We could add a way to quickly change the setting of DisableOverride in Manage / Settings, but it would need to be either / or at any given time. You can have one or the other, but not both.

For now though, If you have a skin set to "stay on top" and "click through" to use as an "overlay", you are going to have problems if you use any of CTRL, ALT or Shift with clicks. The skin is going to "see" them. Photoshop is a good example of this, but it can come up in some full screen games as well.
User avatar
jsmorley
Developer
Posts: 22628
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: Problems with a Simple Overlayer in screen

Post by jsmorley »

There is a work-around that isn't entirely satisfying, but might help some:

Code: Select all

[Rainmeter]
Update=1000
OnRefreshAction=[!Zpos 2][!ClickThrough 1]

[PhotoShopRunning]
Measure=Plugin
Plugin=Process
ProcessName=photoshop.exe
IfCondition=PhotoShopRunning = 1
IfTrueAction=[!SetOption bg SolidColor "200,150,10,0"][!UpdateMeter *][!Redraw]
IfFalseAction=[!SetOption bg SolidColor "200,150,10,30"][!UpdateMeter *][!Redraw]

[bg]
Meter=Image
SolidColor=200,150,10,30
W=#VSCREENAREAWIDTH#
H=#VSCREENAREAHEIGHT#
https://docs.rainmeter.net/manual-beta/plugins/process/

A skin that is entirely transparent is going to ignore mouse clicks no matter what...

Unfortunately, you would need multiple measures and a pretty complicated "if, OR if" IfCondition to account for every program you use that has this issue...

And of course this more or less disables your "overlay" when you are using these programs, which is probably not the solution you are looking for.

P.S. I would NOT use #VSCREENAREAHEIGHT# alone for this. The reason is that this skin will fight tooth and nail with the Windows Taskbar in a "stay on top" king of the hill game, and will "flicker". I think you need to subtract the height of the Taskbar from the height of the skin, so the skin doesn't overlay the Taskbar, and this battle doesn't happen.
amadis33
Posts: 12
Joined: January 13th, 2013, 1:44 am

Re: Problems with a Simple Overlayer in screen

Post by amadis33 »

ok, I know there other progrmas for dimmer screen to easy, but maybe would be a cool feature on Rainmeter... I was think in a posible solution.. just delay for a few seconds the Click on skins... in a near future sure...
thanks!!
User avatar
jsmorley
Developer
Posts: 22628
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: Problems with a Simple Overlayer in screen

Post by jsmorley »

As it turns out, I actually have some skin in this game.. yuk, yuk...

Not too long ago I bought a new LCD monitor, but made the mistake of perhaps going a bit too "inexpensive" on the one I got. The issue is that it is "backlit" as all LCD monitors are, but the backlighting seems to be at the bottom of the monitor pointing up. The end result is that things are a bit "washed out" near the bottom of my screen. It depends a bit on where I set the monitor relative to my eyes, but it's really annoying.

So the solution I found, and believe it or not it works pretty well, is to create an "overlay" skin, sorta like what you are doing.

However, mine is not the full screen, but is just the bottom 1/3rd or so, with a gradient from dark to invisible. I played around with it to get it so it "evens out" the brightness on my screen, and it does pretty well.

Code: Select all

[Rainmeter]
Update=-1
DynamicWindowSize=1
AccurateText=1

[MeasureUpdateOnce]
Measure=Calc
Formula=1
OnUpdateAction=[!Move "0" "(#WORKAREAHEIGHT#-500)"][!Zpos "2"][!ClickThrough "1"][!Draggable "0"]

[MeterFade]
Meter=Shape
Shape=Rectangle 0,0,#WORKAREAWIDTH#,500 | StrokeWidth 0 | Fill LinearGradient1 MyGradient
MyGradient=90 | 0,0,0,70 ; 0.0 | 0,0,0,0 ; 1.0
Of course, like yours, it needs to be "stay on top" and "click through" to work right.

However, I have the same problem you have. When I get into a game, like Guild Wars for instance, which makes use of CTRL-Click to target enemies, this skin then interferes with that. I have to unload it before I play certain games, and yeah, things like Photoshop are an issue as well.

So while this is a very "niche" issue, I have some interest in finding a solution that makes sense.
User avatar
kyriakos876
Posts: 919
Joined: January 30th, 2017, 2:01 am
Location: Greece

Re: Problems with a Simple Overlayer in screen

Post by kyriakos876 »

jsmorley wrote: Of course, like yours, it needs to be "stay on top" and "click through" to work right.

However, I have the same problem you have. When I get into a game, like Guild Wars for instance, which makes use of CTRL-Click to target enemies, this skin then interferes with that. I have to unload it before I play certain games, and yeah, things like Photoshop are an issue as well.

So while this is a very "niche" issue, I have some interest in finding a solution that makes sense.
Hello, I was randomly reading through posts and I think I have a solution for your problem (a part of it that is)
I once came across with game that used CTRL and messed with OnTop skins so I found a way around using a plugin that I found here in the forum (https://forum.rainmeter.net/viewtopic.php?f=18&t=19212&p=132466&hilit=quickbang#p132466)
you are aware as I just saw you commented on it some days back, and I am using it like this:

Code: Select all

[MeasureQuickBang]
Measure=Plugin
Plugin=QuickBang
InfoType=ActiveProcess

[MeasureQang]
Measure=String
String=[MeasureQuickBang]
IfMatch="league of legends.exe"
IfMatchAction=[!DeactivateConfig "Start" "Start.ini"]
IfNotMatchAction=[!ActivateConfig "Start" "Start.ini"]
DynamicVariables=1
This will deactivate the skin that messes with the game. The name of the skin is "Start" as you can see, but in your case it will deactivate the skin thus changing the colors in your screen back to normal so yea...
(I know this plugin is not meant for this or not even close to this but it worked for me like this so I use it)
User avatar
kyriakos876
Posts: 919
Joined: January 30th, 2017, 2:01 am
Location: Greece

Re: Problems with a Simple Overlayer in screen

Post by kyriakos876 »

kyriakos876 wrote: This will deactivate the skin that messes with the game. The name of the skin is "Start" as you can see, but in your case it will deactivate the skin thus changing the colors in your screen back to normal so yea...
(I know this plugin is not meant for this or not even close to this but it worked for me like this so I use it)
You might wanna use the HotKey plugin as well and when CTRL is pressed the skin is deactivated and is activated again when CTRL is released, but then you would have the colors in your screen flickering every time you hit CTRL but yea... there's that
User avatar
kyriakos876
Posts: 919
Joined: January 30th, 2017, 2:01 am
Location: Greece

Re: Problems with a Simple Overlayer in screen

Post by kyriakos876 »

amadis33 wrote:I have problems with a Simple Overlayer, I use this as a Dimmer for work in the night,
but do not let me press Ctrl, Shift or Alt, because is bloked at the time,
even with !ClickThrough

Im working with Coreldraw and Photoshop and is ver usefully the commands.
Can you help me for this?


--------------------------------------------------------

[Rainmeter]
Update=-1
OnRefreshAction=[!Zpos 2][!ClickThrough 1]

[bg]
Meter=Image
SolidColor=200,150,10,30
W=#VSCREENAREAWIDTH#
H=#VSCREENAREAHEIGHT#

--------------------------------------------------------
You might as well wanna try the HotKey Plugin and while CTRL is pressed the opacity of the dimmer will be set to 0 and back to normal when it's released, thus it won't interrupt with CTRL + commands, but yet again as I said above, you'll see a flickering on your screen every time you hit CTRL
User avatar
kyriakos876
Posts: 919
Joined: January 30th, 2017, 2:01 am
Location: Greece

Re: Problems with a Simple Overlayer in screen

Post by kyriakos876 »

I'm probably spamming right now but whatever :P
If any of you is aware of a plugin that detects the position of your mouse without needing to click somewhere, you can use that and make a hole (wherever the mouse is at the moment) in the skin everytime CTRL is pressed (again using HotKey plugin) and this should fix the flickering issue.
User avatar
jsmorley
Developer
Posts: 22628
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: Problems with a Simple Overlayer in screen

Post by jsmorley »