Re: EAL Example (attempt)

2008-02-13 Thread tonikitoo (Antonio Gomes)
Hi,

IIRC, page_size and finish_status values were hardcoded in open
chinook release timeframe. But it has been fixed in latest versions
(microb svn). I am running microb-engine/eal from the svn (latest
snapshot) , ran your example and things worked fine:

* start, title, stop, url changed signals got fired fine (see console
output bellow)

Start Loading signal, with url: file:///bin
Url changed signal, new url is: file:///bin
MOZMOZEAL:title_changed_cb:1698: Embed:0x822c878, Title: 'file:///bin'
Title changed signal, new title is: file:///bin
Url changed signal, new url is: file:///bin
Finished Loading signal with status 0, and page size 4255

* page_size is properly shwon for each load.

* file:/// page was rendered properly and I am able to browser through
links (local folders).

So try building microb-engine/eal and browser-eal by your hands from
the svn ...  issues are fixed.

regards


On Feb 12, 2008 4:45 PM, Andrew Gatt <[EMAIL PROTECTED]> wrote:
> OK so i'm trying to hack together an EAL example, it seems to be firing
> up the mozilla-eal, the finished loading signal is triggered, but i'm
> not getting anything on the display. The finish_status is 0 and the page
> size is 15000 everytime, so i'm sure i'm doing something wrong.
>
> Can anyone spot what i'm missing? This is all done under the chinook
> sdk. I had to apt-get install browser-eal, browser-eal-dev and
> microb-eal. I also did an apt-get install microb-engine and
> microb-engine-dev.
>
> I'd really appreciate some help on this if anyone has got any

-- 
--Antonio Gomes
___
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers


EAL Example (attempt)

2008-02-12 Thread Andrew Gatt
OK so i'm trying to hack together an EAL example, it seems to be firing 
up the mozilla-eal, the finished loading signal is triggered, but i'm 
not getting anything on the display. The finish_status is 0 and the page 
size is 15000 everytime, so i'm sure i'm doing something wrong.


Can anyone spot what i'm missing? This is all done under the chinook 
sdk. I had to apt-get install browser-eal, browser-eal-dev and 
microb-eal. I also did an apt-get install microb-engine and 
microb-engine-dev.


I'd really appreciate some help on this if anyone has got any

#include 
#include 
#include 
#include 
#include 

typedef void (* SetEnvFunc) (void);
typedef GWeb* (* GetWebNewFunc) (void);

GWeb *web;
GObject *engine_widget;
GWebEngine *engine;

gboolean open_new_engine()
{
engine = g_web_new_web_engine_window_with_context(web, NULL, TRUE, TRUE);

engine_widget = g_web_engine_get_engine_widget(engine);
if (!engine_widget)
{
printf("Error opening new engine");
return 1;
}

return TRUE;
}

static GWeb*
init_engine_by_name()
{
gchar *engine_name = NULL;
SetEnvFunc  web_set_env;
GetWebNewFunc  web_get_new;

engine_name = g_strdup_printf("/usr/lib/libmozilla-eal.so.0");

printf("\tOpening engine: %s\n", engine_name);
GModule* module = g_module_open(engine_name, G_MODULE_BIND_LAZY);
g_free(engine_name);
if (g_module_error ())
printf("\tModule error: %s\n", g_module_error ());

if (!g_module_symbol (module, "g_web_set_env", (gpointer *)&web_set_env))
printf("\tg_web_set_env Function opened unsuccessefully\n");
else
printf("\tg_web_set_env Function opened successefully\n");

if (!g_module_symbol (module, "g_web_new", (gpointer *)&web_get_new))
printf("\tg_web_new Function opened unsuccessefully\n");
else
printf("\tg_web_new Function opened successefully\n");

web_set_env();
return web_get_new ();
}

int main(int argc, char *argv[])
{
/* Create needed variables */
HildonProgram *program;
HildonWindow *window;
GtkWidget *button;
GtkWidget *box1;

/* Initialize the GTK. */
gtk_init(&argc, &argv);

/* Create the hildon program and setup the title */
program = HILDON_PROGRAM(hildon_program_get_instance());
g_set_application_name("Hello maemo!");

/* Create HildonWindow and set it to HildonProgram */
window = HILDON_WINDOW(hildon_window_new());
hildon_program_add_window(program, window);

/* Connect signal to X in the upper corner */
g_signal_connect(G_OBJECT(window), "delete_event",
G_CALLBACK(gtk_main_quit), NULL);

box1 = gtk_hbox_new (FALSE, 0);
gtk_container_add(GTK_CONTAINER(window), box1);

/* Create button and add it to main view */

button = gtk_button_new_with_label("Hello!");
gtk_box_pack_start (GTK_BOX(box1), button, TRUE, TRUE, 0);
gtk_widget_show(button);

web = init_engine_by_name();
open_new_engine();
gtk_widget_show(GTK_WIDGET(engine_widget));
gtk_box_pack_start (GTK_BOX(box1), GTK_WIDGET(engine_widget), TRUE, TRUE, 
0);

gtk_widget_show_all(GTK_WIDGET(window));
gtk_widget_show(box1);
gtk_widget_show(GTK_WIDGET(window));

GObject *en_notify;
en_notify = g_web_engine_get_engine_notifier(engine);
g_signal_connect_swapped(en_notify, 
G_WEBWIDGET_SIGNAL_URL_CHANGED,G_CALLBACK(g_web_widget_signal_url_changed), 
NULL);
g_signal_connect(en_notify, 
G_WEBWIDGET_SIGNAL_TITLE,G_CALLBACK(g_web_widget_signal_title), NULL);
g_signal_connect(en_notify, 
G_WEBWIDGET_SIGNAL_START_LOADING,G_CALLBACK(g_web_widget_signal_start_loading), 
NULL);
g_signal_connect(en_notify, 
G_WEBWIDGET_SIGNAL_FINISHED_LOADING,G_CALLBACK(g_web_widget_signal_finished_loading),
 NULL);
g_web_engine_load_url(engine, "file://test.html");

gtk_main();

/* Exit */
return 0;
}

void g_web_widget_signal_title(GObject *engine_widget, const gchar 
*title,GObject *browser_window)
{
printf("Title changed signal, new title is: %s\n", title);
}

void g_web_widget_signal_url_changed(GObject *browser_window,const gchar *url)
{
printf("Url changed signal, new url is: %s\n", url);
}

void g_web_widget_signal_start_loading(GObject *engine_widget,const gchar 
*url,GObject *browser_window)
{
printf("Start Loading signal, with url: %s\n", url);
}

void g_web_widget_signal_finished_loading(GObject *engine_widget,gint 
finish_status,gint page_size,gboolean has_frames,GObject *browser_window)
{
printf("Finished Loading signal with status %d, and page size 
%d\n", finish_status, page_size);
}


maemo_hello: maemo_hello.c
gcc -o maemo_hello maemo_hello.c `pkg-config --cflags gtk+-2.0 
hildon-1` -ansi -Wall `pkg-config --libs gtk+-2.0 hildon-1 browser-eal`
___
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers