+2007-08-18 Everaldo Canuto <ecanuto@novell.com>
+
+ * XplatUIX11.cs: Apply patch from Jurek Bartuszek to fix DrawReversibleFrame
+ and DrawReversibleLine, also apply same behavior to FillReversibleRectangle.
+ Fixes #80877 and #79418.
+
2007-08-18 Everaldo Canuto <ecanuto@novell.com>
* MenuAPI.cs: Fix popup menu position when the size is larger than distance
internal override void DrawReversibleLine(Point start, Point end, Color backColor)
{
+ if (backColor.GetBrightness() < 0.5)
+ backColor = Color.FromArgb(255 - backColor.R, 255 - backColor.G, 255 - backColor.B);
+
IntPtr gc = GetReversibleScreenGC (backColor);
XDrawLine (DisplayHandle, RootWindow, gc, start.X, start.Y, end.X, end.Y);
internal override void DrawReversibleFrame (Rectangle rectangle, Color backColor, FrameStyle style)
{
+ if (backColor.GetBrightness() < 0.5)
+ backColor = Color.FromArgb(255 - backColor.R, 255 - backColor.G, 255 - backColor.B);
+
IntPtr gc = GetReversibleScreenGC (backColor);
if (rectangle.Width < 0) {
internal override void FillReversibleRectangle (Rectangle rectangle, Color backColor)
{
+ if (backColor.GetBrightness() < 0.5)
+ backColor = Color.FromArgb(255 - backColor.R, 255 - backColor.G, 255 - backColor.B);
+
IntPtr gc = GetReversibleScreenGC (backColor);
if (rectangle.Width < 0) {
XFreeGC(DisplayHandle, gc);
}
- internal override void DrawReversibleRectangle(IntPtr handle, Rectangle rect, int line_width) {
+ internal override void DrawReversibleRectangle(IntPtr handle, Rectangle rect, int line_width)
+ {
IntPtr gc;
Control control = Control.FromHandle(handle);