harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oleg Khaschansky" <oleg.v.khaschan...@gmail.com>
Subject Re: [classlib][awt] headless support (was: Re: [snapshot] Questions about next snapshot...)
Date Thu, 26 Oct 2006 09:17:55 GMT
Yes, I missed this. I think it is possible to use FreeType library for
the font rendering both on linux and on windows. At present we are
using xft on linux, but I think it is possible to refactor this to the
"pure freetype" code. It may take less efforts than implementing font
rasterizer from the scratch.

Another issue is that we must have fonts themselves for this. Can we
distribute system fonts (e.g. from linux) with harmony? It is a legal
issue, I am not an expert in this area at all.

On 10/26/06, Sergey Soldatov <sergey.soldatov@gmail.com> wrote:
> There is a number of issues with headless support. And the serious one is
> font support. Our implementation uses system fonts, so in headless
> environment it could not initialize any font. RI uses own font rasterizer,
> so it doesn't have such problems.
>
> On 10/25/06, Martin Cordova <martin.cordova@gmail.com> wrote:
> >
> > I am just checking a dependency. Don't think so.
> >
> > Regards,
> > Martin
> >
> > On 10/25/06, Oleg Khaschansky < oleg.v.khaschansky@gmail.com> wrote:
> > > Could it be treated as a reverse engineering? I don't know :)
> > >
> > > On 10/25/06, Martin Cordova < martin.cordova@gmail.com> wrote:
> > > > I don't know how it works, but what I can do is try to use headless
> > > > without XOrg shared libs installed, and then take note of the missing
> > > > .so modules the IBM JVM complains about).
> > > >
> > > > Regards,
> > > > Martin
> > > >
> > > >
> > > > On 10/25/06, Oleg Khaschansky <oleg.v.khaschansky@gmail.com> wrote:
> > > > > If you mean libxlib, how it could be used without X server? Maybe
> > some
> > > > > other library (e.g. font library like xft) simply preloads it during
> > > > > its initialization or tries to connect to the server (XOpenDisplay)
> > to
> > > > > get some data, fails and uses defaults?
> > > > >
> > > > > Anyway, I think, testing on a headless environment will help us to
> > > > > determine the requirements.
> > > > >
> > > > > On 10/25/06, Martin Cordova <martin.cordova@gmail.com> wrote:
> > > > > > >> (e.g. for linux we need to exclude all xlib calls,
right?). <<
> > > > > >
> > > > > > How implemented IBM their headless stuff? In their case it's
a
> > > > > > requirement to have XOrg shared libraries installed to have
> > headless
> > > > > > working. In order distros it was XFree libs. No need for an
X
> > server,
> > > > > > just the libs.
> > > > > >
> > > > > > Regards,
> > > > > > Martin Cordova
> > > > > >
> > > > > >
> > > > > > On 10/25/06, Oleg Khaschansky < oleg.v.khaschansky@gmail.com>
> > wrote:
> > > > > > > > Right, that is my question too.  I've seen the general
> > description at
> > > > > > > > the URL Oleg sent, it's hardly a spec tho'.
> > > > > > > I don't think that spec for this exists.
> > > > > > >
> > > > > > > Another document on this is [1]. It describes what can
and what
> > cannot
> > > > > > > be done in headless mode. But we also have the list of
methods
> > which
> > > > > > > throw HeadlessException (from the API spec).
> > > > > > >
> > > > > > > > Presumably it is easier for us to find all the methods
that
> > are declared
> > > > > > > > to throw a HeadlessException, and put in the isHeadless()
test
> > right
> > > > > > > > now, so we can have a compliant headless implementation
before
> > the GUI
> > > > > > > > is completed?
> > > > > > > This is only a part of a task. We may also need to guard
native
> > > > > > > initialization code which depends on system configuration
with
> > > > > > > isHeadless checks (just skip it in headless mode). And,
> > probably,
> > > > > > > provide an alternative simplified implementation for some
awt
> > code
> > > > > > > which could be called in headless mode to prevent from
falling
> > into
> > > > > > > hardware-dependent native code (e.g. for linux we need
to
> > exclude all
> > > > > > > xlib calls, right?).
> > > > > > >
> > > > > > > [1]
> > http://java.sun.com/developer/technicalArticles/J2SE/Desktop/headless/
> > > > > > >
> > > > > > > On 10/25/06, Tim Ellison <t.p.ellison@gmail.com>
wrote:
> > > > > > > > Martin Cordova wrote:
> > > > > > > > > Oleg, I just read it, does this mean that all
methods that
> > don't need
> > > > > > > > > to throw the special Headless exception, are
ready to work
> > in headless
> > > > > > > > > mode?
> > > > > > > >
> > > > > > > > Right, that is my question too.  I've seen the general
> > description at
> > > > > > > > the URL Oleg sent, it's hardly a spec tho'.
> > > > > > > >
> > > > > > > > Presumably it is easier for us to find all the methods
that
> > are declared
> > > > > > > > to throw a HeadlessException, and put in the isHeadless()
test
> > right
> > > > > > > > now, so we can have a compliant headless implementation
before
> > the GUI
> > > > > > > > is completed?
> > > > > > > >
> > > > > > > > > If so, we are just a step away for supporting
headless?
> > > > > > > >
> > > > > > > > well we still have to get all the imageIO, print,
font and
> > other code
> > > > > > > > working that is required in headless mode.
> > > > > > > >
> > > > > > > > Regards,
> > > > > > > > Tim
> > > > > > > >
> > > > > > > > --
> > > > > > > >
> > > > > > > > Tim Ellison ( t.p.ellison@gmail.com)
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Dinamica - RADical J2EE framework
> > > > > > open source, easy and powerful
> > > > > > http://www.martincordova.com
> > > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > Dinamica - RADical J2EE framework
> > > > open source, easy and powerful
> > > > http://www.martincordova.com
> > > >
> > >
> >
> >
> > --
> > Dinamica - RADical J2EE framework
> > open source, easy and powerful
> > http://www.martincordova.com
> >
>
>
>
> --
> Sergey Soldatov
>
>

Mime
View raw message