[QScintilla] Bug report: Caret position is incorrect if window dragged across monitors

cowwoc cowwoc at bbs.darktech.org
Thu May 24 01:02:46 BST 2018


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>
> *Sent:* Wednesday, May 23, 2018 15:19
> *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
>
> 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/4baa5290/attachment-0001.html>


More information about the QScintilla mailing list