bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#21173: 25.0.50; New frames positioned off screen with multiple monit


From: Andy Moreton
Subject: bug#21173: 25.0.50; New frames positioned off screen with multiple monitors
Date: Wed, 28 Oct 2015 17:25:31 +0000
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (windows-nt)

On Wed 28 Oct 2015, Eli Zaretskii wrote:

>> From: Andy Moreton <andrewjmoreton@gmail.com>
>> Date: Wed, 28 Oct 2015 14:13:28 +0000
>> 
>> On Wed 28 Oct 2015, martin rudalics wrote:
>> > I suppose you meant writing something like
>> >
>> >       Lisp_Object frame, list;
>> >
>> >       XSETFRAME (frame, f);
>> >       list = Fw32_display_monitor_attributes_list (frame);
>> >
>> > Please have a look.
>> 
>> I'm sure you know more about it than me - I don't know enough about the
>> internals to judge which is correct. Feel free to adjust the patch to
>> fix this.
>
> Martin is right: Fw32_display_monitor_attributes_list accepts a
> Lisp_Object as its argument, which should be either nil, a frame, a
> terminal, or a display name (a string), whereas FRAME_X_DISPLAY
> returns zero on MS-Windows.  I think it works for you because Qnil has
> the value of zero.  To catch such problems, invoke the configure
> script with the --enable-check-lisp-object-type switch.

Thanks Eli - adding the configure switch reproduces the warning for me.

>> The patch as shown was tested with multiple monitors on Win7 64bit for both
>> mingw64 and cygwin w32 builds, and worked correctly with the testcase
>> from the original reporter.
>> 
>> I've retested this briefly with your fix, which still works for the
>> simple testcase shows by Fran Litterio.
>
> To see the difference, you need a test case where the selected frame
> and the frame used in your code are different.

Please suggest a suitable test case. The patch fixed the original bug,
and has not caused me any problems in daily usage.

    AndyM






reply via email to

[Prev in Thread] Current Thread [Next in Thread]