It is currently November 29th, 2020, 4:37 pm

Desktopworkarea (refresh help)

Get help with installing and using Rainmeter.
User avatar
jsmorley
Developer
Posts: 21550
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: Desktopworkarea (refresh help)

Post by jsmorley »

Yincognito wrote: October 16th, 2020, 4:59 pm Just for reference:
- Detecting full-screen Direct3D applications
- Detecting full screen mode in Windows
- a bit unrelated, but may be useful, DirectX Tutorial: Going Fullscreen

Of course, assuming this is relatively easy to do (still not sure, as although at first it seems to be, there might be other things interfering that aren't that obvious), the real question would be how often to do this detection. As for the concern of giving the control to the user, this is irrelevant in the case of a plugin (since the user would choose to use it, after all), and can be easily accomplished by making this "automatic" detection optional in one of Rainmeter's checkboxes or such if it's implemented in the standard Rainmeter package.
I would be inclined to just have a 3rd party plugin that is controlled by the UpdateDivider setting on the measure.
User avatar
Yincognito
Posts: 2933
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: Desktopworkarea (refresh help)

Post by Yincognito »

jsmorley wrote: October 16th, 2020, 6:07 pm I would be inclined to just have a 3rd party plugin that is controlled by the UpdateDivider setting on the measure.
Yep, that's probably the only way for the user to still be in control of the frequency of updating the detection, as Rainmeter settings have a more general scope and don't deal with such frequencies / update rates.
User avatar
Brian
Developer
Posts: 2075
Joined: November 24th, 2011, 1:42 am
Location: Utah

Re: Desktopworkarea (refresh help)

Post by Brian »

You could probably monitor the work area monitor variables.
https://docs.rainmeter.net/manual/variables/built-in-variables/#WORKAREAXYWH

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

Re: Desktopworkarea (refresh help)

Post by jsmorley »

Brian wrote: October 16th, 2020, 9:43 pm You could probably monitor the work area monitor variables.
https://docs.rainmeter.net/manual/variables/built-in-variables/#WORKAREAXYWH

-Brian
Well damn... I should read the docs.
User avatar
jsmorley
Developer
Posts: 21550
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: Desktopworkarea (refresh help)

Post by jsmorley »

In chatting with Brian, I'm now convinced that my original point of view, that this entire DesktopWorkArea feature is close to useless and never should have been put in all those years ago is right. It's just not something that Rainmeter can, nor SHOULD gracefully control. It's certainly not something that a "skin author" should be able to impact. That's why it is in Rainmeter.ini.
User avatar
Yincognito
Posts: 2933
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: Desktopworkarea (refresh help)

Post by Yincognito »

Brian wrote: October 16th, 2020, 9:43 pm You could probably monitor the work area monitor variables.
https://docs.rainmeter.net/manual/variables/built-in-variables/#WORKAREAXYWH

-Brian
That's a brilliant idea... BUT ... this code crashes Rainmeter (I think):

Code: Select all

[MS_Rainmeter_WorkAreaY]
Measure=Calc
IfCondition=(#WORKAREAY#<>24)
IfTrueAction=[!RefreshApp]
DynamicVariables=1
This is updated once every second, and checks if the Y of the workarea is 24, like I set it to in the Rainmeter.ini of the layout I use to "load" the DesktopWorkArea settings (as mentioned before, loading the layout isn't enough, a refresh all is needed). Point is, while it works (I think) without issues in Windows, Rainmeter isn't loaded anymore once I exit the game I use to test the thing.

On the other hand, if I add an UpdateDivider=-1 to the measure and update it on demand, say on mouse over some meter in the skin, it restores the desktop work area settings like it should when the meter is hovered after exiting the game. Of course, there is a catch here too, only when RE-focusing (or RE-bringing into view) the maximized application the setting is visually applied, so the change doesn't, for example, resize my maximized Chrome window if I hover the meter while Chrome is displayed, but it will be in effect the next time I switch to the Chrome window. I guess this behavior is somewhat normal, although it doesn't offer a visual indication that it's changing.
Last edited by Yincognito on October 16th, 2020, 10:36 pm, edited 1 time in total.
User avatar
Yincognito
Posts: 2933
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: Desktopworkarea (refresh help)

Post by Yincognito »

jsmorley wrote: October 16th, 2020, 10:03 pm In chatting with Brian, I'm now convinced that my original point of view, that this entire DesktopWorkArea feature is close to useless and never should have been put in all those years ago is right. It's just not something that Rainmeter can, nor SHOULD gracefully control. It's certainly not something that a "skin author" should be able to impact. That's why it is in Rainmeter.ini.
I gracefully and wholeheartedly disagree (it didn't take long for us to disagree again, LOL). It's not useless and it's excellent that it exists ... it's just that, while it has a "set" mechanism that works perfectly, it doesn't have a suited "restore" mechanism. That is its only flaw.
User avatar
Cariboudjan
Posts: 108
Joined: May 12th, 2019, 8:55 am

Re: Desktopworkarea (refresh help)

Post by Cariboudjan »

I wrote a C# application that takes commandline arguments that can be controlled by bang in Rainmeter to create unbreakable work area changes.

It's working as part of Droptop. The source files are located in the Addons folder.

https://www.deviantart.com/cariboudjan/art/droptop-four-762812007

The exe runs silently in the background and the reservation survives resolution changes, taskbar movements, opening/closing fullscreen applications, etc.

The built in option is trash. I used it for a year or two and eventually gave up on it. I used the Formula=#WORKAREAHEIGHT#, OnChangeAction=!RefreshApp method with mixed results.
User avatar
Yincognito
Posts: 2933
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: Desktopworkarea (refresh help)

Post by Yincognito »

Cariboudjan wrote: November 25th, 2020, 11:08 pm I wrote a C# application that takes commandline arguments that can be controlled by bang in Rainmeter to create unbreakable work area changes.

It's working as part of Droptop. The source files are located in the Addons folder.

https://www.deviantart.com/cariboudjan/art/droptop-four-762812007

The exe runs silently in the background and the reservation survives resolution changes, taskbar movements, opening/closing fullscreen applications, etc.

The built in option is trash. I used it for a year or two and eventually gave up on it. I used the Formula=#WORKAREAHEIGHT#, OnChangeAction=!RefreshApp method with mixed results.
Ok, so I ran the application (Droptop Rainmeter.exe, with ShellBasics.dll also present in its folder, as I reckon it's required) using '0' and '1' parameters (like I saw in your skin files and scripts), and while the program appeared in Task Manager, nothing happened - frankly, I had no idea what should have happened. So, my question is, how to use it? What are the accepted parameters and what do they mean? Also, assuming this does what it's supposed to do, couldn't it be morphed into a little plugin for Rainmeter? Just asking...

Other than that, personally I would like to see how it behaves, but I would prefer being integrated into the Rainmeter environment instead of running like a standalone executable. I have this ... "thing" in that I like to minimize the amount of resident applications and, instead of having 20 of them running with each one doing a small bit of the "job", I'd rather have 5 of them doing larger parts of the job, if you know what I mean.

P.S. I obviously didn't installed the whole droptop four launcher as although I'm sure it's really great seeing the amount of work you put into it, I have no need for its functions, I'm just interested in a possible successful and persistent desktop work area manipulation.
User avatar
Cariboudjan
Posts: 108
Joined: May 12th, 2019, 8:55 am

Re: Desktopworkarea (refresh help)

Post by Cariboudjan »

Yincognito wrote: November 26th, 2020, 12:37 am Also, assuming this does what it's supposed to do, couldn't it be morphed into a little plugin for Rainmeter? Just asking...
Probably. This would be ideal but I'm not quite there yet. I don't know how to make Rainmeter plugins. I've been looking for someone to help me with that with no luck yet.

To reserve 50 pixels of space at the top of the screen, the command would be:

"Droptop Rainmeter.exe" 50

It will only accept one command on its initial open and not change after that (another thing I'd like to change if it becomes a plugin at some point), so if you want to change the size from 50 to 100, you would need to taskkill first.

taskkill /f /im "droptop rainmeter.exe"

I highly suggest you try Droptop if at all possible just to see how it works. I'm surprised you haven't tried it yet. You are in the credits, after all...
Screenshot 2020-11-26 075959.png
You do not have the required permissions to view the files attached to this post.