[tizen-compliance] Display server API in Compliance specification

Tomasz Olszak olszak.tomasz at gmail.com
Thu May 29 12:46:26 GMT 2014

2014-05-19 15:32 GMT+02:00 Mats Wichmann <m.wichmann at samsung.com>:
> On 05/19/14 03:17, Nikita Kalyazin wrote:
>> Dear all,
>> As far as I know, Tizen 2 uses Xorg and Tizen 3 uses Wayland, and they are the only options of display servers for each of Tizen versions (at least for Mobile profile).
>> There are many popular frameworks that were ported to Tizen and use window server's APIs:
>>  - https://wiki.tizen.org/wiki/Game_development
>>  - http://qt-project.org/wiki/Tizen
>> Is there any reason for not including X/Wayland symbols into the corresponding Tizen compliance specification document (https://source.tizen.org/compliance/compliance-specification)?
> Good question.
> Normally compliance is seen as the interface between app (the kind that
> could potentially go in an app store) and device.  Do frameworks really
> fit in that model? Well they do - compliance already lists the Web UI
> framework, but it's on the system side of the line, because it provides
> something apps will depend on.
> The problem with putting the X/Wayland in, from my viewpoint, is that we
> already know there are two systems.  Since it's considered outside the
> scope of compliance to mandate which one you use, it means BOTH would
> have to be listed as optional.  And that an app or framework which
> depends on one doesn't work on a device which chooses to implement the
> other.  That's a kind of fragmentation of the platform which it feels
> unfortunate to introduce this early in the game.

In case of Qt - the same application could work on devices with
different display system (wayland and X11). The platform (X11,
wayland) plugin is loaded in runtime by Qt so it is very easy to
detect which windowing system the device contains and choose the
correct one.

> Anybody else have thoughts on this?

Let's consider application which delivers marvelous multimedia
features (e.g. audio and video editor) and it uses gstreamer 0.10. I
believe that currently it will not pass tizenstore compliance. The
application will crash when the device will update gstreamer to 1.0
version. Perhaps we should let the developer to fix. It is his
interest to make it work. The same issues were in Android for some
time. There were different, sometimes non stable implementations of
Open GLES and EGL, It had nothing to do with frameworks. Developer
needed to use use e.g. different OpenGL shaders on different devices.

How about such crazy idea:
Tizen is rpm based. If developer wants to use internal API then he can
provide some meta dependencies (like in spec files) in manifest file.
Those dependencies could be checked by store application before
installation. Any upgrade would trigger another dependencies
evaluation and user would be informed about the applications that
won't be compatible anymore.

Tomasz Olszak
Qt for Tizen | http://qt-project.org/wiki/Tizen

More information about the Compliance mailing list