# HG changeset patch # User moel.mich # Date 1289944106 0 # Node ID 07a9329cd87c7ec6dc9b7cbdf7c6c1b567919b46 # Parent 881aedb94bc6e6312124cbaeb8e7c28d01878c00 Improved the moving and resizing of the gadget on multi-monitor systems. Fixed one problem where the underlying gadget window size would be reduced unrequested. Fine tuned the progress bar size in the gadget. diff -r 881aedb94bc6 -r 07a9329cd87c GUI/GadgetWindow.cs --- a/GUI/GadgetWindow.cs Sat Nov 13 20:20:03 2010 +0000 +++ b/GUI/GadgetWindow.cs Tue Nov 16 21:48:26 2010 +0000 @@ -152,7 +152,8 @@ if (!lockPositionAndSize) { // prevent the window from leaving the screen if ((wp.flags & SWP_NOMOVE) == 0) { - Rectangle rect = Screen.GetWorkingArea(new Point(wp.x, wp.y)); + Rectangle rect = Screen.GetWorkingArea( + new Rectangle(wp.x, wp.y, wp.cx, wp.cy)); const int margin = 16; wp.x = Math.Max(wp.x, rect.Left - wp.cx + margin); wp.x = Math.Min(wp.x, rect.Right - margin); @@ -194,7 +195,11 @@ } // do not forward any move or size messages - wp.flags |= SWP_NOSIZE | SWP_NOMOVE; + wp.flags |= SWP_NOSIZE | SWP_NOMOVE; + + // suppress any frame changed events + wp.flags &= ~SWP_FRAMECHANGED; + Marshal.StructureToPtr(wp, message.LParam, false); message.Result = IntPtr.Zero; } break; @@ -383,6 +388,7 @@ public const uint SWP_NOSIZE = 0x0001; public const uint SWP_NOMOVE = 0x0002; public const uint SWP_NOACTIVATE = 0x0010; + public const uint SWP_FRAMECHANGED = 0x0020; public const uint SWP_HIDEWINDOW = 0x0080; public const uint SWP_SHOWWINDOW = 0x0040; public const uint SWP_NOZORDER = 0x0004; diff -r 881aedb94bc6 -r 07a9329cd87c GUI/SensorGadget.cs --- a/GUI/SensorGadget.cs Sat Nov 13 20:20:03 2010 +0000 +++ b/GUI/SensorGadget.cs Tue Nov 16 21:48:26 2010 +0000 @@ -379,8 +379,8 @@ new Rectangle(back.Width - r, back.Height - b, r, b), u); } - private void DrawProgress(Graphics g, int x, int y, int width, int height, - float progress) + private void DrawProgress(Graphics g, float x, float y, + float width, float height, float progress) { g.DrawImage(barBack, new RectangleF(x + width * progress, y, width * (1 - progress), height), @@ -474,7 +474,8 @@ rightMargin; } else { DrawProgress(g, w - progressWidth - rightMargin, - y + 4, progressWidth, 6, 0.01f * sensor.Value.Value); + y + 0.35f * sensorLineHeight, progressWidth, + 0.6f * sensorLineHeight, 0.01f * sensor.Value.Value); remainingWidth = w - progressWidth - rightMargin; } diff -r 881aedb94bc6 -r 07a9329cd87c Properties/AssemblyVersion.cs --- a/Properties/AssemblyVersion.cs Sat Nov 13 20:20:03 2010 +0000 +++ b/Properties/AssemblyVersion.cs Tue Nov 16 21:48:26 2010 +0000 @@ -37,5 +37,5 @@ using System.Reflection; -[assembly: AssemblyVersion("0.2.1.6")] -[assembly: AssemblyInformationalVersion("0.2.1.6 Alpha")] \ No newline at end of file +[assembly: AssemblyVersion("0.2.1.7")] +[assembly: AssemblyInformationalVersion("0.2.1.7 Alpha")] \ No newline at end of file