On Tuesday 19 June 2007 20:08:50 Steven Edwards wrote:
Patch by Hans Leidekker
It's your idea so you should get the credit. I was just helping out with the implementation.
This could be expanded for other platforms that use xdg stuff by changing the #ifdef. I added the #ifdef to also deal with the MacOS case.
There will allways be Linux distributions that don't install the xdg tools by default, and it's not inconceivable that they will be supported on MacOS one day.
So I think it's better to just try to run xdg-screensaver, warn when it fails, but ignore the error. From reading MSDN this is consistent with the semantics of LockWorkStation.
I also think it's better to not lock the entire desktop when Wine runs in a virtual desktop. I remember looking for a way to know whether we are running in desktop mode and found this snippet from PaintDesktop():
HWND hwnd = GetDesktopWindow();
/* check for an owning thread; otherwise don't paint anything (non-desktop mode) */ if (GetWindowThreadProcessId( hwnd, NULL )) ...
I copied it but somehow it didn't work for me.
-Hans
On 6/19/07, Hans Leidekker hans@it.vu.nl wrote:
It's your idea so you should get the credit. I was just helping out with the implementation.
Your code, your copyright =)
There will allways be Linux distributions that don't install the xdg tools by default, and it's not inconceivable that they will be supported on MacOS one day.
So I think it's better to just try to run xdg-screensaver, warn when it fails, but ignore the error. From reading MSDN this is consistent with the semantics of LockWorkStation.
ok I will give that a shot
I also think it's better to not lock the entire desktop when Wine runs in a virtual desktop. I remember looking for a way to know whether we are running in desktop mode and found this snippet from PaintDesktop():
HWND hwnd = GetDesktopWindow(); /* check for an owning thread; otherwise don't paint anything (non-desktop mode) */ if (GetWindowThreadProcessId( hwnd, NULL )) ...
I copied it but somehow it didn't work for me.
I'll check this as well. I did not even think about the virtual desktop window case. I'll look in to this a bit. Perhaps we should pop up a message box or something for that case to warn the user.
"Steven Edwards" winehacker@gmail.com writes:
I'll check this as well. I did not even think about the virtual desktop window case. I'll look in to this a bit. Perhaps we should pop up a message box or something for that case to warn the user.
No, it should lock the virtual desktop (with a fancy screensaver and all ;-). That stuff really belongs in explorer though, not in wineboot.
On 6/19/07, Alexandre Julliard julliard@winehq.org wrote:
No, it should lock the virtual desktop (with a fancy screensaver and all ;-). That stuff really belongs in explorer though, not in wineboot.
Don't tempt me =) If I recall Scr's are just exe's anyway so we could create our own dummy one in wine/programs and have explorer CreateProcess on it
Steven Edwards [mailto:winehacker@gmail.com] wrote:
On 6/19/07, Alexandre Julliard julliard@winehq.org wrote:
No, it should lock the virtual desktop (with a fancy screensaver and all ;-). That stuff really belongs in explorer though, not in wineboot.
Don't tempt me =) If I recall Scr's are just exe's anyway so we could
create
our own dummy one in wine/programs and have explorer CreateProcess on it
Yes they are! A not uncommon way to get people to install malware used to be to send *.scr files and Windows being what it used to be just executed them without any concern, while people usually didn't realize that were simply executables.
Rolf Kalbermatter
On Di, 2007-06-19 at 22:55 +0200, Alexandre Julliard wrote:
No, it should lock the virtual desktop (with a fancy screensaver and all ;-). That stuff really belongs in explorer though, not in wineboot.
Yes Please. I already punched Stefan for this, but without Success (He is to Busy ..)
I did things for the other way (wine and a *.scr as Screensaver for X), but paused, when the code-move from winex11 to user32 started. (Time to sync my code and send for review).