[vlc-devel] [PATCH] skins2: add OS/2 support

KO Myung-Hun komh78 at gmail.com
Sat May 18 15:39:53 CEST 2013



brezhoneg1 wrote:
> 
> resent because a first message seems to have vanished into thin air !
> 
> Le 17/05/2013 10:39, KO Myung-Hun a écrit :
>> ---
>>   configure.ac                              |    3 +
>>   extras/package/os2/configure.sh           |    2 +-
>>   modules/gui/skins2/Modules.am             |   21 ++
>>   modules/gui/skins2/os2/os2_dragdrop.cpp   |   40 +++
>>   modules/gui/skins2/os2/os2_dragdrop.hpp   |   50 ++++
>>   modules/gui/skins2/os2/os2_factory.cpp    |  452
>> ++++++++++++++++++++++++++++
>>   modules/gui/skins2/os2/os2_factory.hpp    |  152 ++++++++++
>>   modules/gui/skins2/os2/os2_graphics.cpp   |  453
>> +++++++++++++++++++++++++++++
>>   modules/gui/skins2/os2/os2_graphics.hpp   |  140 +++++++++
>>   modules/gui/skins2/os2/os2_loop.cpp       |  295 +++++++++++++++++++
>>   modules/gui/skins2/os2/os2_loop.hpp       |   68 +++++
>>   modules/gui/skins2/os2/os2_popup.cpp      |  129 ++++++++
>>   modules/gui/skins2/os2/os2_popup.hpp      |   69 +++++
>>   modules/gui/skins2/os2/os2_timer.cpp      |  102 +++++++
>>   modules/gui/skins2/os2/os2_timer.hpp      |   68 +++++
>>   modules/gui/skins2/os2/os2_tooltip.cpp    |   92 ++++++
>>   modules/gui/skins2/os2/os2_tooltip.hpp    |   54 ++++
>>   modules/gui/skins2/os2/os2_window.cpp     |  237 +++++++++++++++
>>   modules/gui/skins2/os2/os2_window.hpp     |   90 ++++++
>>   modules/gui/skins2/parser/builder.cpp     |    2 +-
>>   modules/gui/skins2/src/os_factory.cpp     |    4 +
>>   modules/gui/skins2/src/skin_main.cpp      |    2 +-
>>   modules/gui/skins2/src/vout_manager.hpp   |    2 +-
>>   modules/gui/skins2/src/window_manager.cpp |    6 +-
> 
>> diff --git a/modules/gui/skins2/src/window_manager.cpp
>> b/modules/gui/skins2/src/window_manager.cpp
>> index 780b765..093e6d3 100644
>> --- a/modules/gui/skins2/src/window_manager.cpp
>> +++ b/modules/gui/skins2/src/window_manager.cpp
>> @@ -275,13 +275,13 @@ void WindowManager::resize( GenericLayout &rLayout,
>>       int xNewOffset = newWidth - rLayout.getWidth();
>>       int yNewOffset = newHeight - rLayout.getHeight();
>>   -    // Do the actual resizing
>> -    rLayout.resize( newWidth, newHeight );
>> -
>>       // Resize the window
>>       TopWindow *pWindow = rLayout.getWindow();
>>       pWindow->resize( newWidth, newHeight );
>>   +    // Do the actual resizing
>> +    rLayout.resize( newWidth, newHeight );
>> +
>>       // refresh content
>>       rLayout.refreshAll();
> 
> Any technical reasons why you moved layout resizing after window
> resizing ? or is it just cosmetics ? which is okay anyway.
> 

Yes. OS/2 uses a left-bottom corner as a origin unlike other OSes. So,
in order to invert Y coordinate, it needs a height of a parent window.
If layout resizing is done first, a parent window is resized after a
child window. This generates a wrong Y coordinate of a child window.
Therefore, window resizing should be done before layout resizing.

> This seems good to me, doesn't bring regression on Linux and I guess it
> also compiles and runs fine on OS/2 ....
> 

I'm sure this runs fine on OS/2. ^^

-- 
KO Myung-Hun

Using Mozilla SeaMonkey 2.7.2
Under OS/2 Warp 4 for Korean with FixPak #15
In VirtualBox v4.1.24 on Intel Core i7-3615QM 2.30GHz with 8GB RAM

Korean OS/2 User Community : http://www.ecomstation.co.kr




More information about the vlc-devel mailing list