[QScintilla] Bug report: Caret position is incorrect if window dragged across monitors
cowwoc
cowwoc at bbs.darktech.org
Thu May 24 01:10:54 BST 2018
I think you nailed it.
I used to think that the problem had to do with launching the app on
monitor 1 then dragging it into monitor 2 but I see now that no matter
what I do the bug always occurs on monitor 2.
Here's the kicker: the scaling factor of monitor 2 is 100%. The scaling
factor on monitor 1 is 150%. So it looks like the app is using the
scaling factor of monitor 1 for the app running on monitor 2. Further,
if TortoiseHg is open on monitor 2 and I change the scaling factor on
monitor 1, I see the font of the app change on monitor 2 (which is
unexpected).
Lastly, setting the scaling factor on monitor 1 to 100% fixing the caret
issue on monitor 2.
Gili
On 2018-05-23 8:04 PM, Scott Bloom wrote:
>
> Does the problem exist, in the tortoiseHG if opened on a scaled screen?
>
> Scott
>
> *From:*cowwoc <cowwoc at bbs.darktech.org>
> *Sent:* Wednesday, May 23, 2018 17:03
> *To:* Scott Bloom <scott at towel42.com>; Phil Thompson
> <phil at riverbankcomputing.com>
> *Cc:* qscintilla at riverbankcomputing.com
> *Subject:* Re: [QScintilla] Bug report: Caret position is incorrect if
> window dragged across monitors
>
> Hi Scott,
>
> Thanks for reproducing the problem.
>
> I tried digging into example-Qt4Qt5 but I know nothing about Qt and
> frankly was turned off not being able to find a pre-built version of
> qmake (even after installing the Qt SDK). Are you able to publish a
> pre-built executable of example-Qt4Qt5 for me to try out?
>
> Thanks,
> Gili
>
> On 2018-05-23 6:40 PM, Scott Bloom wrote:
>
> To duplicate under windows 10:
>
> 1. Setup two monitors, resolution doesn’t matter, however the
> Scale & layout option (windows 10), “Change the size of text,
> apps and other items” to 125% on one screen
> 2. Run the example-Qt4Qt5 app as shipped with the QScintilla core
> 3. In the screen with magnification, just type, you will see the
> visible cursor is NOT where it should be.
>
> I have confirmed it doesn’t happen with SciTE
>
> It doesn’t appear it has anything to do with moving, just having
> the window open on the scaled screen.
>
> Gili, can you confirm that ?
>
> Scott
>
> *From:*cowwoc <cowwoc at bbs.darktech.org>
> <mailto:cowwoc at bbs.darktech.org>
> *Sent:* Wednesday, May 23, 2018 15:19
> *To:* Scott Bloom <scott at towel42.com> <mailto:scott at towel42.com>;
> Phil Thompson <phil at riverbankcomputing.com>
> <mailto:phil at riverbankcomputing.com>
> *Cc:* qscintilla at riverbankcomputing.com
> <mailto:qscintilla at riverbankcomputing.com>
> *Subject:* Re: [QScintilla] Bug report: Caret position is
> incorrect if window dragged across monitors
>
> Thanks Scott. As far as I can tell, this bug isn't 4k specific.
>
> If I change my 1080p monitor to have the same scaling factor as
> the 4k monitor and drag TortoiseHg across the problem does not
> occur. The bug seems tied to different scaling factors, regardless
> of the monitor resolution.
>
> Gili
>
> On 2018-05-23 6:17 PM, Scott Bloom wrote:
>
> I don’t have a 4k monitor, but I will try to play with it on a
> multimonitor PC and see if I can set the scaling factor on one
> screen and not the other (all three screens are the same
> resolution here)
>
> There is not (that I know of) a QScintialla public test app
>
>
> Scott
>
> *From:*cowwoc <cowwoc at bbs.darktech.org>
> <mailto:cowwoc at bbs.darktech.org>
> *Sent:* Wednesday, May 23, 2018 15:15
> *To:* Scott Bloom <scott at towel42.com>
> <mailto:scott at towel42.com>; Phil Thompson
> <phil at riverbankcomputing.com> <mailto:phil at riverbankcomputing.com>
> *Cc:* qscintilla at riverbankcomputing.com
> <mailto:qscintilla at riverbankcomputing.com>
> *Subject:* Re: [QScintilla] Bug report: Caret position is
> incorrect if window dragged across monitors
>
> It just tested SciTE and it works fine.
>
> Do you have an equivalent program that uses QScintilla?
>
> PS: Using TortoiseHg, if I keep the application on the same
> monitor and change its scaling factor the bug does not occur.
> The bug only seems to occur when the application is dragged
> from one monitor to another. My guess is that when the
> application is sitting on one monitor and the scaling factor
> is changed, it receives and responds to an event. But when the
> application is dragged across monitors it does not recieve a
> scaling-specific event and as such it doesn't think to update
> the DPI accordingly. I would be surprised if this logic was
> TortoiseHg-specific (it seems like something that should be
> handled by the lower layers) but who knows...
>
> Thanks,
> Gili
>
> On 2018-05-23 6:08 PM, Scott Bloom wrote:
>
> Understood.
>
> You may want to try SciTE.
>
> That is a base editor, tied to the core Scintilla widget,
> not used QScintilla (which is a Qt wrapper for the core)
>
> In reality, the TortoiseHg devs, need to work on this, to
> see if its their bug first..
>
> This could be due to the 4k to HD resolution swap…
>
>
> Scott
>
> *From:*cowwoc <cowwoc at bbs.darktech.org>
> <mailto:cowwoc at bbs.darktech.org>
> *Sent:* Wednesday, May 23, 2018 15:06
> *To:* Scott Bloom <scott at towel42.com>
> <mailto:scott at towel42.com>; Phil Thompson
> <phil at riverbankcomputing.com>
> <mailto:phil at riverbankcomputing.com>
> *Cc:* qscintilla at riverbankcomputing.com
> <mailto:qscintilla at riverbankcomputing.com>
> *Subject:* Re: [QScintilla] Bug report: Caret position is
> incorrect if window dragged across monitors
>
> Hi Scott,
>
> I'm not affiliated with TortoiseHg. I'm just an end-user.
> As such, I have no idea how to create a minimal testcase
> outside of TortoiseHg. When I filed a bug report at
> https://bitbucket.org/tortoisehg/thg/issues/5086/caret-position-is-incorrect-if-window
> I attached a video demonstrating the problem. Hopefully
> that'll help.
>
> If you guys have a stand-alone application I could run, I
> can try reproducing the problem with it as well.
>
> Thanks,
> Gili
>
> On 2018-05-23 4:45 PM, Scott Bloom wrote:
>
> I have a PC with multiple monitors..
>
> However, looking at the issue, there is no minimal
> testcase. There is also nothing saying it’s a bug in
> Scintilla, QScintilla or tortoisehg. It could be any
> of the three.
>
> Why is the assumption being made that its QScintilla?
>
> Scott
>
> *From:*QScintilla
> <qscintilla-bounces at riverbankcomputing.com>
> <mailto:qscintilla-bounces at riverbankcomputing.com> *On
> Behalf Of *cowwoc
> *Sent:* Wednesday, May 23, 2018 13:42
> *To:* Phil Thompson <phil at riverbankcomputing.com>
> <mailto:phil at riverbankcomputing.com>
> *Cc:* qscintilla at riverbankcomputing.com
> <mailto:qscintilla at riverbankcomputing.com>
> *Subject:* Re: [QScintilla] Bug report: Caret position
> is incorrect if window dragged across monitors
>
> On 2018-05-23 11:09 AM, Phil Thompson wrote:
>
> On 23 May 2018, at 3:01 pm, cowwoc<cowwoc at bbs.darktech.org>
> <mailto:cowwoc at bbs.darktech.org> wrote:
>
>
>
> On 2018-05-23 8:46 AM, Phil Thompson wrote:
>
> On 22 May 2018, at 3:48 am, cowwoc<cowwoc at bbs.darktech.org>
> <mailto:cowwoc at bbs.darktech.org> wrote:
>
> Sorry, I forgot to include the bug report:https://bitbucket.org/tortoisehg/thg/issues/5086/caret-position-is-incorrect-if-window
>
>
>
> Thank you,
>
> Gili
>
>
>
> On 2018-05-21 9:13 PM, cowwoc wrote:
>
> Hi,
>
>
>
> Can someone please take a look at this bug report which seems to affect your project?
>
> Sorry, I don't have the equipment needed to reproduce the problem.
>
>
>
> Phil
>
>
>
> Hi Phil,
>
>
>
> Which equipment are you missing? A video card with 2 ports? 2 monitors? Or a copy of Windows?
>
>
>
> ...and a PC.
>
>
>
> Phil
>
> Fortunately for you, that's not a problem :) Assuming
> you have a Mac laptop:
>
> 1. Plug in a second monitor (any will do) so your
> laptop sees multiple monitors.
> 2. Fire up a virtual machine of your choosing. I used
> VMWare Workstation, which is equivalent to VMWare
> Fusion on Mac. I believe VirtualBox (which is
> free) will work just as well.
> 3. Download and install the Windows 10 ISO which you
> can download for free from
> https://www.microsoft.com/en-ca/software-download/windows10
> 4. You can run Windows 10 without a license for a
> short period of time (30 days I believe) so this
> isn't a problem.
> 5. Configure the VM with 2 virtual monitors and you
> should be able to reproduce the problem.
> 6. I just tried it in VMWare Workstation and it
> worked for me.
>
> I haven't been able to get this working (yet) using a
> single physical monitor. See
> https://superuser.com/questions/1325393/how-to-use-multiple-virtual-monitors-if-host-has-a-single-monitor
>
> But it's possible that VirtualBox is better in this
> regard than VMWare Workstation.
>
> Gili
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.riverbankcomputing.com/pipermail/qscintilla/attachments/20180523/3c54a092/attachment-0001.html>
More information about the QScintilla
mailing list