#!/usr/bin/perl -w # $Id$ # TITLE: Mozilla embedding # REQUIRES: Gtk Mozilla use POSIX qw(getenv); use Gtk::MozEmbed; use MDK::Common; use lib qw(/usr/lib/libDrakX); use interactive; use standalone; # unless you use a threaded perl, you need to run this app with: # LD_PRELOAD=libpthread-0.9.so or something like that to make use of networking init Gtk; Gtk->set_locale; system("LD_PRELOAD=libpthread.so ; export LD_PRELOAD"); #my $in = vnew interactive('su'); my $window = $::isEmbedded ? new Gtk::Plug ($::XID) : new Gtk::Window -toplevel; $window->set_default_size(600, 400); $window->signal_connect('destroy', sub {Gtk->main_quit}); my $box1= new Gtk::VBox($false,0); my $event_box = new Gtk::EventBox(); $box1->add($event_box); $event_box->show(); my $embed_moz= new Gtk::MozEmbed; #$embed_moz->load_url(shift || "https://www.mandrake.com"); $embed_moz->render_data("hello world","/","text/html"); $embed_moz->open_stream("/","text/html"); $embed_moz->append_data("\n\nhello world\n\n\n"); $embed_moz->close_stream(); $event_box->add($embed_moz); $embed_moz->show(); my $separator= new Gtk::HSeparator(); $box1->pack_start($separator,$false,$false,0); $separator->show(); my $box2=new Gtk::HBox($false,0); $box1->pack_start($box2,$false,$false,0); $box2->show(); my $button_next= new Gtk::Button("Next"); $box2->pack_end($button_next,$false,$false,0); $button_next->show(); my $button_prev= new Gtk::Button("Previous"); $box2->pack_end($button_prev,$false,$false,0); $button_prev->show(); my $button_skipwiz= new Gtk::Button("Skip Wizard"); $button_skipwiz->signal_connect ( clicked => sub { Gtk->main_quit();}); $box2->pack_start($button_skipwiz,$false,$false,0); $button_skipwiz->show(); $window->add($box1); $box1->show; $window->show; main Gtk; exit (0);