qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 1/1][RESEND] v2: Fix text console size/resize wh


From: andrzej zaborowski
Subject: Re: [Qemu-devel] [PATCH 1/1][RESEND] v2: Fix text console size/resize when using curses
Date: Mon, 15 Sep 2008 20:42:06 +0200

2008/9/15 Ryan Harper <address@hidden>:
> * andrzej zaborowski <address@hidden> [2008-09-15 11:51]:
>> Hi,
>
> Hello,
>
>>
>> 2008/9/4 Ryan Harper <address@hidden>:
>> > v2: drop initial size adjustment, not needed.
>> >
>> > Resize events fail to ensure that both the text console and curses display 
>> > areas
>> > are the same size; this causes broken output like:
>>
>> It seems that this was broken by r4812.  Your patch looks correct but
>
> Thanks for taking a look,
>
>> I think it will prevent things like -serial vc:80Cx24C from working as
>> documented. There's a conflict here: either virtual consoles have
>> commandline-set fixed size or they adjust to the window size like
>> before r4812 and don't have parts that don't fit on the screen. The
>> SDL window is not resizable but the curses window is always resizable.
>>  I propose to add TEXT_CONSOLE_FIXED_SIZE back, it was removed by
>> r4812.  I will do this unless there are better ideas.
>
> I'll test the -serial to see if that breaks with the current patch..
> I'm also looking at an alternative.  I think that in curses.c if on
> window change event we can send a qemu_console_resize() to the text
> consoles with the new width,height, that does the work of getting the
> width/height in sync.  I'll send an update if I get that working.

The TEXT_CONSOLE_FIXED_SIZE approach worked ok, too, and it's generic
(i.e. if in sdl.c you make the SDL window resizable then it'll start
working for SDL automatically).

>
>>
>> Another idea would be to set the default console size to 640x400 and
>> agree to not support terminals < 80x24.
>
> I'm not sure that would fix it completely, I'm pretty sure the output
> still looks broken even if your terminal is bigger than the min size
> required.

Right, at the moment it is broken because curses.c assumes that text
consoles automatically resized to ds->width,ds->height and they
didn't, they keep the size given through vc:XxY or 800x600 if none was
given.

Regards




reply via email to

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