Re: EDGE_FULL_BACKGROUND

"'Roland Hughes' via scintilla-interest" <[email protected]> Thu, 29 Aug 2024 17:44:14 -0500
Newsgroups gmane.comp.lib.scintilla.devel
Message-ID <[email protected]>
On 8/29/24 17:09, 'Neil Hodgson' via scintilla-interest wrote:
> Roland:
>> … the hardware or OS level, not the desktop level so it is completely unaware of position and orientation changes made by the user. As such, rectangle math cannot be trusted. It is also why the first cut using FillRectangleAligned() filled in the wrong direction.
>     If the claim here is that the x-axis is flipped then it's going to fail in a lot more places than just this example.
>
>     Neil
>
It does.

People running multiple monitors have mostly stopped using gtk based 
stuff. This is especially true for NVIDIA users. Driver updates for my 
4-port card, for whatever reason, change the port search order. Today, 
when I booted after applying updates and took the picture for the reply, 
it found the monitor I want to be on the left (because it is) first. 
Previously it was always identified as 2 and had to be drug over which 
is how it was all last week and the day I was working on that code. 
During that time this code:

PRectangle rcSegment = rcLine;
rcSegment.left = vsDraw.theEdge.column * vsDraw.spaceWidth;
surface->FillRectangleAligned(rcSegment, Fill(vsDraw.theEdge.colour));

highlighted in the wrong direction. Today it worked because the monitors 
were found in the "correct" order at power up.

I don't know how to phrase this properly. Don't know if "flipped" is the 
correct word. Gtk has had a decades long problem with multiple monitors. 
If you are a one monitor user, Gtk is good for you.

In a Utopian world all of the extended monitors exist in one quadrant. 
We will say the right one because it makes it easier to talk about. The 
first monitor found per the hardware and driver is at (0,0). Yes, things 
grow negative and all that other stuff. I just want to take it back to 
5th grade math class where we tried to do everything in the quadrant 
that was positive on both rails.

When you change the monitor order so the second is in front of the first 
found, the desktop appears to re-giz its view of the world putting the 
second monitor at (0,0) and the first monitor directly after it. Gtk, 
appears to still use the old (0,0) definition and puts the second 
monitor on the other side of the Y axis.

If that is what you mean by "flipped", then yeah. Gtk continues on 
rather oblivious to the actual monitor layout. Either oblivious or 
improperly updated.

I haven't personally tried this, but I'm told Gtk applications running 
on Cinnamon/KDE/non-Gtk based desktop really get hosed if you have one 
of these monitors.

22" HP L2205WG DVI 1680x1050 Rotating Widescreen LCD Monitor w/USB Hub ...

To them (0,0) stays where it was even though the rest of the desktop 
knows it is now in Portrait mode.

As I recall (and I'm old so could be incorrect) XFCE was a Gtk based 
desktop. Almost nobody uses it anymore and new distros don't add support 
for it because it has had this problem forever.

https://forum.xfce.org/viewtopic.php?id=6440


-- 
Roland Hughes, President
Logikal Solutions
(630)-205-1593  (cell)
https://theminimumyouneedtoknow.com
https://infiniteexposure.net
https://johnsmith-book.com

-- 
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To view this discussion on the web visit https://groups.google.com/d/msgid/scintilla-interest/16114c3f-e071-4200-be8f-f56a9b0393e8%40logikalsolutions.com.