gtkmozembed 0.90.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/ChangeLog +163 -0
 - data/README +46 -0
 - data/Rakefile +13 -0
 - data/ext/gtkmozembed/Makefile +163 -0
 - data/ext/gtkmozembed/depend +6 -0
 - data/ext/gtkmozembed/extconf.rb +127 -0
 - data/ext/gtkmozembed/gtkmozembed-enum-types.c +103 -0
 - data/ext/gtkmozembed/gtkmozembed-enum-types.h +26 -0
 - data/ext/gtkmozembed/gtkmozembed-enum-types.o +0 -0
 - data/ext/gtkmozembed/gtkmozembed.so +0 -0
 - data/ext/gtkmozembed/rbgtkmozembed-init.cpp +84 -0
 - data/ext/gtkmozembed/rbgtkmozembed-init.o +0 -0
 - data/ext/gtkmozembed/rbgtkmozembed.c +634 -0
 - data/ext/gtkmozembed/rbgtkmozembed.h +39 -0
 - data/ext/gtkmozembed/rbgtkmozembed.o +0 -0
 - data/ext/gtkmozembed/rbgtkmozembedversion.h +25 -0
 - data/ext/gtkmozembed/ruby-gtkmozembed.pc +3 -0
 - data/extconf.rb +49 -0
 - data/lib/gtkmozembed.rb +31 -0
 - data/sample/COPYING +340 -0
 - data/sample/README +5 -0
 - data/sample/ruby-gecko.rb +223 -0
 - data/test/gtk-moz-embed-test-utils.rb +2 -0
 - data/test/run-test.rb +35 -0
 - data/test/test-gtk-moz-embed.rb +39 -0
 - metadata +108 -0
 
    
        data/sample/README
    ADDED
    
    
| 
         @@ -0,0 +1,223 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #!/usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            =begin
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
              The Ruby Gecko (featuring Gtk::* and Gtk::MozEmbed)
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
              Copyright (C) 2005 Mirko Maischberger, All rights reserverd
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
              This program is free software; you can redistribute it and/or
         
     | 
| 
      
 10 
     | 
    
         
            +
              modify it under the terms of the GNU General Public License
         
     | 
| 
      
 11 
     | 
    
         
            +
              as published by the Free Software Foundation; either version 2
         
     | 
| 
      
 12 
     | 
    
         
            +
              of the License, or (at your option) any later version.
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
              This program is distributed in the hope that it will be useful,
         
     | 
| 
      
 15 
     | 
    
         
            +
              but WITHOUT ANY WARRANTY; without even the implied warranty of
         
     | 
| 
      
 16 
     | 
    
         
            +
              MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
         
     | 
| 
      
 17 
     | 
    
         
            +
              GNU General Public License for more details.
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
              You should have received a copy of the GNU General Public License
         
     | 
| 
      
 20 
     | 
    
         
            +
              along with this program; if not, write to the Free Software
         
     | 
| 
      
 21 
     | 
    
         
            +
              Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
            =end
         
     | 
| 
      
 24 
     | 
    
         
            +
             
     | 
| 
      
 25 
     | 
    
         
            +
            ## The following is commented since the comp_path gets a nice 
         
     | 
| 
      
 26 
     | 
    
         
            +
            ## default at compile time.
         
     | 
| 
      
 27 
     | 
    
         
            +
            ##
         
     | 
| 
      
 28 
     | 
    
         
            +
            #unless ENV['MOZILLA_FIVE_HOME'] 
         
     | 
| 
      
 29 
     | 
    
         
            +
            #  $stderr.print "Please set MOZILLA_FIVE_HOME environment variable to\n"
         
     | 
| 
      
 30 
     | 
    
         
            +
            #  $stderr.print "something like /usr/lib/mozilla\n"
         
     | 
| 
      
 31 
     | 
    
         
            +
            #end
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
      
 33 
     | 
    
         
            +
            require 'gtkmozembed'
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
      
 35 
     | 
    
         
            +
            class Browser < Gtk::Window
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
              TITLE = "The Ruby Gecko"
         
     | 
| 
      
 38 
     | 
    
         
            +
             
     | 
| 
      
 39 
     | 
    
         
            +
              attr_reader :moz
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
              def initialize
         
     | 
| 
      
 42 
     | 
    
         
            +
             
     | 
| 
      
 43 
     | 
    
         
            +
                super
         
     | 
| 
      
 44 
     | 
    
         
            +
             
     | 
| 
      
 45 
     | 
    
         
            +
                self.border_width = 1
         
     | 
| 
      
 46 
     | 
    
         
            +
                self.title = TITLE
         
     | 
| 
      
 47 
     | 
    
         
            +
                self.resize(800, 570)
         
     | 
| 
      
 48 
     | 
    
         
            +
             
     | 
| 
      
 49 
     | 
    
         
            +
                # This one is needed if GtkMozEmbed can't find the comp_path
         
     | 
| 
      
 50 
     | 
    
         
            +
                mozhome = ENV['MOZILLA_FIVE_HOME']
         
     | 
| 
      
 51 
     | 
    
         
            +
                if mozhome
         
     | 
| 
      
 52 
     | 
    
         
            +
                  Gtk::MozEmbed.set_comp_path(mozhome)
         
     | 
| 
      
 53 
     | 
    
         
            +
                end
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
                # Gtk::MozEmbed :)
         
     | 
| 
      
 56 
     | 
    
         
            +
                Gtk::MozEmbed.set_profile_path(ENV['HOME'] + '.mozilla', 'RubyGecko')
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
      
 58 
     | 
    
         
            +
                # Let's create the MozEmbed widget.
         
     | 
| 
      
 59 
     | 
    
         
            +
                @moz = Gtk::MozEmbed.new
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
      
 61 
     | 
    
         
            +
                @moz.chrome_mask = Gtk::MozEmbed::ALLCHROME
         
     | 
| 
      
 62 
     | 
    
         
            +
             
     | 
| 
      
 63 
     | 
    
         
            +
                # A Toolbar with some stock icons and self explaining beaviour
         
     | 
| 
      
 64 
     | 
    
         
            +
                bar = Gtk::Toolbar.new
         
     | 
| 
      
 65 
     | 
    
         
            +
             
     | 
| 
      
 66 
     | 
    
         
            +
                back = bar.append(Gtk::Stock::GO_BACK) {  
         
     | 
| 
      
 67 
     | 
    
         
            +
                  @moz.go_back
         
     | 
| 
      
 68 
     | 
    
         
            +
                }
         
     | 
| 
      
 69 
     | 
    
         
            +
             
     | 
| 
      
 70 
     | 
    
         
            +
                forward = bar.append(Gtk::Stock::GO_FORWARD){  
         
     | 
| 
      
 71 
     | 
    
         
            +
                  @moz.go_forward
         
     | 
| 
      
 72 
     | 
    
         
            +
                }
         
     | 
| 
      
 73 
     | 
    
         
            +
             
     | 
| 
      
 74 
     | 
    
         
            +
                stop = bar.append(Gtk::Stock::STOP){  
         
     | 
| 
      
 75 
     | 
    
         
            +
                  @moz.stop_load
         
     | 
| 
      
 76 
     | 
    
         
            +
                }
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
      
 78 
     | 
    
         
            +
                refresh = bar.append(Gtk::Stock::REFRESH){  
         
     | 
| 
      
 79 
     | 
    
         
            +
                  @moz.reload(Gtk::MozEmbed::RELOADBYPASSCACHE)
         
     | 
| 
      
 80 
     | 
    
         
            +
                }
         
     | 
| 
      
 81 
     | 
    
         
            +
             
     | 
| 
      
 82 
     | 
    
         
            +
                home = bar.append(Gtk::Stock::HOME) { 
         
     | 
| 
      
 83 
     | 
    
         
            +
                  @moz.location="http://ruby-gnome2.sourceforge.jp/" 
         
     | 
| 
      
 84 
     | 
    
         
            +
                }
         
     | 
| 
      
 85 
     | 
    
         
            +
                
         
     | 
| 
      
 86 
     | 
    
         
            +
                home = bar.append(Gtk::Stock::ADD) { 
         
     | 
| 
      
 87 
     | 
    
         
            +
                  @moz.open_stream("http://ruby-gnome2.sourceforge.jp/", "text/html")
         
     | 
| 
      
 88 
     | 
    
         
            +
                  @moz.append_data("<html>\n")
         
     | 
| 
      
 89 
     | 
    
         
            +
                  @moz.append_data("<head>\n")
         
     | 
| 
      
 90 
     | 
    
         
            +
                  @moz.append_data("<title>Self feeded test page</title>\n")
         
     | 
| 
      
 91 
     | 
    
         
            +
                  @moz.append_data("</head>\n")
         
     | 
| 
      
 92 
     | 
    
         
            +
                  @moz.append_data("<body>\n")
         
     | 
| 
      
 93 
     | 
    
         
            +
                  @moz.append_data("<h1>Method: open_stream</h1>\n")
         
     | 
| 
      
 94 
     | 
    
         
            +
                  @moz.append_data("<a target=\"_blank\" href=\"hiki.cgi?Status+of+Ruby%2FGtkMozEmbed\">")
         
     | 
| 
      
 95 
     | 
    
         
            +
                  @moz.append_data("Status of Gtk::MozEmbed</a>")
         
     | 
| 
      
 96 
     | 
    
         
            +
                  @moz.append_data("(link relative to base_uri)\n")
         
     | 
| 
      
 97 
     | 
    
         
            +
                  @moz.append_data("</body>")
         
     | 
| 
      
 98 
     | 
    
         
            +
                  @moz.append_data("</html>")
         
     | 
| 
      
 99 
     | 
    
         
            +
                  @moz.close_stream
         
     | 
| 
      
 100 
     | 
    
         
            +
             
     | 
| 
      
 101 
     | 
    
         
            +
                  # see alsa: Gtk::MozEmbed#render_data
         
     | 
| 
      
 102 
     | 
    
         
            +
                }
         
     | 
| 
      
 103 
     | 
    
         
            +
                
         
     | 
| 
      
 104 
     | 
    
         
            +
                # A text-entry to let the user change the location manually
         
     | 
| 
      
 105 
     | 
    
         
            +
                entry = Gtk::Entry.new
         
     | 
| 
      
 106 
     | 
    
         
            +
             
     | 
| 
      
 107 
     | 
    
         
            +
                # A Statusbar with link info and progress bar
         
     | 
| 
      
 108 
     | 
    
         
            +
                statusbox = Gtk::HBox.new
         
     | 
| 
      
 109 
     | 
    
         
            +
             
     | 
| 
      
 110 
     | 
    
         
            +
                status = Gtk::Statusbar.new
         
     | 
| 
      
 111 
     | 
    
         
            +
                status.has_resize_grip=false
         
     | 
| 
      
 112 
     | 
    
         
            +
                status_context = status.get_context_id("Link")
         
     | 
| 
      
 113 
     | 
    
         
            +
             
     | 
| 
      
 114 
     | 
    
         
            +
                progress = Gtk::ProgressBar.new
         
     | 
| 
      
 115 
     | 
    
         
            +
                
         
     | 
| 
      
 116 
     | 
    
         
            +
                statusbox.pack_start(status, true)
         
     | 
| 
      
 117 
     | 
    
         
            +
                statusbox.pack_start(progress, false)
         
     | 
| 
      
 118 
     | 
    
         
            +
             
     | 
| 
      
 119 
     | 
    
         
            +
                # Pack together
         
     | 
| 
      
 120 
     | 
    
         
            +
                box= Gtk::VBox.new
         
     | 
| 
      
 121 
     | 
    
         
            +
                box.pack_start(bar, false)
         
     | 
| 
      
 122 
     | 
    
         
            +
                box.pack_start(entry, false)
         
     | 
| 
      
 123 
     | 
    
         
            +
                box.pack_start(@moz)
         
     | 
| 
      
 124 
     | 
    
         
            +
                box.pack_start(statusbox, false)
         
     | 
| 
      
 125 
     | 
    
         
            +
             
     | 
| 
      
 126 
     | 
    
         
            +
                # Add to the main window
         
     | 
| 
      
 127 
     | 
    
         
            +
                self.add(box)
         
     | 
| 
      
 128 
     | 
    
         
            +
             
     | 
| 
      
 129 
     | 
    
         
            +
                # Connect some more signals
         
     | 
| 
      
 130 
     | 
    
         
            +
             
     | 
| 
      
 131 
     | 
    
         
            +
                # When we press enter while the text-entry has 
         
     | 
| 
      
 132 
     | 
    
         
            +
                # the focus this tells mozilla to load the inserted url
         
     | 
| 
      
 133 
     | 
    
         
            +
                entry.signal_connect('activate') {
         
     | 
| 
      
 134 
     | 
    
         
            +
                  @moz.location = entry.text 
         
     | 
| 
      
 135 
     | 
    
         
            +
                }
         
     | 
| 
      
 136 
     | 
    
         
            +
             
     | 
| 
      
 137 
     | 
    
         
            +
                # When location changes (the user clicks on a link)
         
     | 
| 
      
 138 
     | 
    
         
            +
                # this updates the text-entry value
         
     | 
| 
      
 139 
     | 
    
         
            +
                @moz.signal_connect('location') { |widget|
         
     | 
| 
      
 140 
     | 
    
         
            +
                  $stderr.print "location signal\n"
         
     | 
| 
      
 141 
     | 
    
         
            +
                  entry.text = widget.location if entry.text != widget.location
         
     | 
| 
      
 142 
     | 
    
         
            +
                }
         
     | 
| 
      
 143 
     | 
    
         
            +
             
     | 
| 
      
 144 
     | 
    
         
            +
                # When the page title changes we update the window
         
     | 
| 
      
 145 
     | 
    
         
            +
                # title as well
         
     | 
| 
      
 146 
     | 
    
         
            +
                @moz.signal_connect('title') { |widget|
         
     | 
| 
      
 147 
     | 
    
         
            +
                  $stderr.print "title signal\n"
         
     | 
| 
      
 148 
     | 
    
         
            +
                  self.title = widget.title + ' - ' + TITLE
         
     | 
| 
      
 149 
     | 
    
         
            +
                }
         
     | 
| 
      
 150 
     | 
    
         
            +
             
     | 
| 
      
 151 
     | 
    
         
            +
                # Lots of this signals arive during the page loading
         
     | 
| 
      
 152 
     | 
    
         
            +
                # to let us update the progress bar. It the web server
         
     | 
| 
      
 153 
     | 
    
         
            +
                # tells mozilla the total page size we can update the
         
     | 
| 
      
 154 
     | 
    
         
            +
                # progress bar with a percentage value, otherwise max
         
     | 
| 
      
 155 
     | 
    
         
            +
                # will be -1 and we just pulse.
         
     | 
| 
      
 156 
     | 
    
         
            +
                @moz.signal_connect('progress') { |widget, cur, max|
         
     | 
| 
      
 157 
     | 
    
         
            +
                  $stderr.print "progress signal\n"
         
     | 
| 
      
 158 
     | 
    
         
            +
                  if max < 1 or cur > max 
         
     | 
| 
      
 159 
     | 
    
         
            +
                    progress.pulse
         
     | 
| 
      
 160 
     | 
    
         
            +
                  else
         
     | 
| 
      
 161 
     | 
    
         
            +
                    progress.fraction = cur.to_f / max.to_f
         
     | 
| 
      
 162 
     | 
    
         
            +
                  end
         
     | 
| 
      
 163 
     | 
    
         
            +
                }
         
     | 
| 
      
 164 
     | 
    
         
            +
             
     | 
| 
      
 165 
     | 
    
         
            +
                # This signal is raised when the user selects a link
         
     | 
| 
      
 166 
     | 
    
         
            +
                # on a page. We update the statusbar as a real
         
     | 
| 
      
 167 
     | 
    
         
            +
                # browser would do.
         
     | 
| 
      
 168 
     | 
    
         
            +
                @moz.signal_connect('link_message') {
         
     | 
| 
      
 169 
     | 
    
         
            +
                  $stderr.print "link_message signal\n"
         
     | 
| 
      
 170 
     | 
    
         
            +
                  status.push(status_context, @moz.link_message)
         
     | 
| 
      
 171 
     | 
    
         
            +
                }
         
     | 
| 
      
 172 
     | 
    
         
            +
             
     | 
| 
      
 173 
     | 
    
         
            +
                # This signal is generated when mozilla starts to load a page
         
     | 
| 
      
 174 
     | 
    
         
            +
                # We update the statusbar message and reset the progress.
         
     | 
| 
      
 175 
     | 
    
         
            +
                @moz.signal_connect('net_start') { 
         
     | 
| 
      
 176 
     | 
    
         
            +
                  $stderr.print "net_start signal\n"
         
     | 
| 
      
 177 
     | 
    
         
            +
                  status.push(status_context, "Loading " + @moz.link_message + "...")
         
     | 
| 
      
 178 
     | 
    
         
            +
                  progress.fraction = 0.0
         
     | 
| 
      
 179 
     | 
    
         
            +
                }
         
     | 
| 
      
 180 
     | 
    
         
            +
             
     | 
| 
      
 181 
     | 
    
         
            +
                # This signal is generated when mozilla stops to load a page
         
     | 
| 
      
 182 
     | 
    
         
            +
                # We update the statusbar message and reset the progress.
         
     | 
| 
      
 183 
     | 
    
         
            +
                @moz.signal_connect('net_stop') {
         
     | 
| 
      
 184 
     | 
    
         
            +
                  $stderr.print "net_stop signal\n"
         
     | 
| 
      
 185 
     | 
    
         
            +
                  status.push(status_context, "")
         
     | 
| 
      
 186 
     | 
    
         
            +
                  progress.fraction = 0.0
         
     | 
| 
      
 187 
     | 
    
         
            +
                }
         
     | 
| 
      
 188 
     | 
    
         
            +
             
     | 
| 
      
 189 
     | 
    
         
            +
                # This signal is generated when mozilla stops to load a page
         
     | 
| 
      
 190 
     | 
    
         
            +
                # We update the statusbar message and reset the progress.
         
     | 
| 
      
 191 
     | 
    
         
            +
                # This does not work at the moment...
         
     | 
| 
      
 192 
     | 
    
         
            +
                @moz.on_new_window { |widget, mask|
         
     | 
| 
      
 193 
     | 
    
         
            +
                  $stderr.print "new_window\n"
         
     | 
| 
      
 194 
     | 
    
         
            +
                  Browser.new.moz
         
     | 
| 
      
 195 
     | 
    
         
            +
                }
         
     | 
| 
      
 196 
     | 
    
         
            +
                
         
     | 
| 
      
 197 
     | 
    
         
            +
                # The user is bored, let's quit.
         
     | 
| 
      
 198 
     | 
    
         
            +
                self.signal_connect("destroy") {
         
     | 
| 
      
 199 
     | 
    
         
            +
                  $stderr.print "closing...\n"
         
     | 
| 
      
 200 
     | 
    
         
            +
                  Gtk.main_quit
         
     | 
| 
      
 201 
     | 
    
         
            +
                }
         
     | 
| 
      
 202 
     | 
    
         
            +
             
     | 
| 
      
 203 
     | 
    
         
            +
                self.show_all
         
     | 
| 
      
 204 
     | 
    
         
            +
             
     | 
| 
      
 205 
     | 
    
         
            +
              end
         
     | 
| 
      
 206 
     | 
    
         
            +
            end
         
     | 
| 
      
 207 
     | 
    
         
            +
             
     | 
| 
      
 208 
     | 
    
         
            +
            Browser.new
         
     | 
| 
      
 209 
     | 
    
         
            +
             
     | 
| 
      
 210 
     | 
    
         
            +
            Gtk.main
         
     | 
| 
      
 211 
     | 
    
         
            +
             
     | 
| 
      
 212 
     | 
    
         
            +
             
     | 
| 
      
 213 
     | 
    
         
            +
            # Hint: If you use Mozilla 1.7.x gtkmozembd, you should remove
         
     | 
| 
      
 214 
     | 
    
         
            +
            # libnullplugin.so if you want to get rid of "Default Plugin"
         
     | 
| 
      
 215 
     | 
    
         
            +
            # window. The gtkmozembed from Firefox 1.0 has an improved nullplugin.
         
     | 
| 
      
 216 
     | 
    
         
            +
             
     | 
| 
      
 217 
     | 
    
         
            +
            # Hint: You can switch between Mozilla and Firefox implementation by
         
     | 
| 
      
 218 
     | 
    
         
            +
            # setting the library path appropiately. The Firefox version of
         
     | 
| 
      
 219 
     | 
    
         
            +
            # GtkMozEmbed is better integrated in Gtk and has nicer scroll-bars
         
     | 
| 
      
 220 
     | 
    
         
            +
            # and message boxes. (use LD_LIBRARY_PATH, see extconf.rb or do some 
         
     | 
| 
      
 221 
     | 
    
         
            +
            # googling)
         
     | 
| 
      
 222 
     | 
    
         
            +
             
     | 
| 
      
 223 
     | 
    
         
            +
            # Happy coding, Mirko Maischberger
         
     | 
    
        data/test/run-test.rb
    ADDED
    
    | 
         @@ -0,0 +1,35 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #!/usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            $VERBOSE = true
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            ruby_gnome2_base = File.join(File.dirname(__FILE__), "..", "..")
         
     | 
| 
      
 6 
     | 
    
         
            +
            ruby_gnome2_base = File.expand_path(ruby_gnome2_base)
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
            glib_base = File.join(ruby_gnome2_base, "glib2")
         
     | 
| 
      
 9 
     | 
    
         
            +
            atk_base = File.join(ruby_gnome2_base, "atk")
         
     | 
| 
      
 10 
     | 
    
         
            +
            pango_base = File.join(ruby_gnome2_base, "pango")
         
     | 
| 
      
 11 
     | 
    
         
            +
            gdk_pixbuf_base = File.join(ruby_gnome2_base, "gdk_pixbuf2")
         
     | 
| 
      
 12 
     | 
    
         
            +
            gtk_base = File.join(ruby_gnome2_base, "gtk2")
         
     | 
| 
      
 13 
     | 
    
         
            +
            gtk_moz_embed_base = File.join(ruby_gnome2_base, "gtkmozembed")
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
            $LOAD_PATH.unshift(glib_base)
         
     | 
| 
      
 16 
     | 
    
         
            +
            require 'test/glib-test-init'
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
            [glib_base, atk_base, pango_base,
         
     | 
| 
      
 19 
     | 
    
         
            +
             gdk_pixbuf_base, gtk_base, gtk_moz_embed_base].each do |target|
         
     | 
| 
      
 20 
     | 
    
         
            +
              if system("which make > /dev/null")
         
     | 
| 
      
 21 
     | 
    
         
            +
                `make -C #{target.dump} > /dev/null` or exit(1)
         
     | 
| 
      
 22 
     | 
    
         
            +
              end
         
     | 
| 
      
 23 
     | 
    
         
            +
              $LOAD_PATH.unshift(File.join(target, "ext", File.basename(target)))
         
     | 
| 
      
 24 
     | 
    
         
            +
              $LOAD_PATH.unshift(File.join(target, "src"))
         
     | 
| 
      
 25 
     | 
    
         
            +
              $LOAD_PATH.unshift(File.join(target, "src", "lib"))
         
     | 
| 
      
 26 
     | 
    
         
            +
              $LOAD_PATH.unshift(File.join(target))
         
     | 
| 
      
 27 
     | 
    
         
            +
              $LOAD_PATH.unshift(File.join(target, "lib"))
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
            $LOAD_PATH.unshift(File.join(gtk_moz_embed_base, "test"))
         
     | 
| 
      
 31 
     | 
    
         
            +
            require 'gtk-moz-embed-test-utils'
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
      
 33 
     | 
    
         
            +
            require 'gtkmozembed'
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
      
 35 
     | 
    
         
            +
            exit Test::Unit::AutoRunner.run(true)
         
     | 
| 
         @@ -0,0 +1,39 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            class TestGtkMozEmbed < Test::Unit::TestCase
         
     | 
| 
      
 2 
     | 
    
         
            +
              include GtkMozEmbedTestUtils
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
              def setup
         
     | 
| 
      
 5 
     | 
    
         
            +
                @embed = Gtk::MozEmbed.new
         
     | 
| 
      
 6 
     | 
    
         
            +
              end
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
              def test_flags_class
         
     | 
| 
      
 9 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :ProgressFlags)
         
     | 
| 
      
 10 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :StatusFlags)
         
     | 
| 
      
 11 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :ReloadFlags)
         
     | 
| 
      
 12 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :ChromeFlags)
         
     | 
| 
      
 13 
     | 
    
         
            +
              end
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
              def test_flags_shortcut
         
     | 
| 
      
 16 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :START)
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :FAILED_DNS)
         
     | 
| 
      
 19 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :FAILED_USER_CANCELED)
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :RELOAD_NORMAL)
         
     | 
| 
      
 22 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :RELOAD_BYPASS_CACHE)
         
     | 
| 
      
 23 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :RELOAD_BYPASS_PROXY)
         
     | 
| 
      
 24 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :RELOAD_BYPASS_PROXY_AND_CACHE)
         
     | 
| 
      
 25 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :RELOAD_CHARSET_CHANGE)
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :DEFAULT_CHROME)
         
     | 
| 
      
 28 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :WINDOW_CLOSE_ON)
         
     | 
| 
      
 29 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :MENU_BARON)
         
     | 
| 
      
 30 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :PERSONAL_TOOLBAR_ON)
         
     | 
| 
      
 31 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :SCROLLBARS_ON)
         
     | 
| 
      
 32 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :EXTRA_CHROME_ON)
         
     | 
| 
      
 33 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :ALL_CHROME)
         
     | 
| 
      
 34 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :WINDOW_RAISED)
         
     | 
| 
      
 35 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :CENTER_SCREEN)
         
     | 
| 
      
 36 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :MODAL)
         
     | 
| 
      
 37 
     | 
    
         
            +
                assert_const_defined(Gtk::MozEmbed, :OPEN_AS_DIALOG)
         
     | 
| 
      
 38 
     | 
    
         
            +
              end
         
     | 
| 
      
 39 
     | 
    
         
            +
            end
         
     | 
    
        metadata
    ADDED
    
    | 
         @@ -0,0 +1,108 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            --- !ruby/object:Gem::Specification 
         
     | 
| 
      
 2 
     | 
    
         
            +
            name: gtkmozembed
         
     | 
| 
      
 3 
     | 
    
         
            +
            version: !ruby/object:Gem::Version 
         
     | 
| 
      
 4 
     | 
    
         
            +
              hash: 379
         
     | 
| 
      
 5 
     | 
    
         
            +
              prerelease: false
         
     | 
| 
      
 6 
     | 
    
         
            +
              segments: 
         
     | 
| 
      
 7 
     | 
    
         
            +
              - 0
         
     | 
| 
      
 8 
     | 
    
         
            +
              - 90
         
     | 
| 
      
 9 
     | 
    
         
            +
              - 6
         
     | 
| 
      
 10 
     | 
    
         
            +
              version: 0.90.6
         
     | 
| 
      
 11 
     | 
    
         
            +
            platform: ruby
         
     | 
| 
      
 12 
     | 
    
         
            +
            authors: 
         
     | 
| 
      
 13 
     | 
    
         
            +
            - The Ruby-GNOME2 Proejct Team
         
     | 
| 
      
 14 
     | 
    
         
            +
            autorequire: 
         
     | 
| 
      
 15 
     | 
    
         
            +
            bindir: bin
         
     | 
| 
      
 16 
     | 
    
         
            +
            cert_chain: []
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
            date: 2011-01-30 00:00:00 +09:00
         
     | 
| 
      
 19 
     | 
    
         
            +
            default_executable: 
         
     | 
| 
      
 20 
     | 
    
         
            +
            dependencies: 
         
     | 
| 
      
 21 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency 
         
     | 
| 
      
 22 
     | 
    
         
            +
              name: gtk2
         
     | 
| 
      
 23 
     | 
    
         
            +
              prerelease: false
         
     | 
| 
      
 24 
     | 
    
         
            +
              requirement: &id001 !ruby/object:Gem::Requirement 
         
     | 
| 
      
 25 
     | 
    
         
            +
                none: false
         
     | 
| 
      
 26 
     | 
    
         
            +
                requirements: 
         
     | 
| 
      
 27 
     | 
    
         
            +
                - - ">="
         
     | 
| 
      
 28 
     | 
    
         
            +
                  - !ruby/object:Gem::Version 
         
     | 
| 
      
 29 
     | 
    
         
            +
                    hash: 379
         
     | 
| 
      
 30 
     | 
    
         
            +
                    segments: 
         
     | 
| 
      
 31 
     | 
    
         
            +
                    - 0
         
     | 
| 
      
 32 
     | 
    
         
            +
                    - 90
         
     | 
| 
      
 33 
     | 
    
         
            +
                    - 6
         
     | 
| 
      
 34 
     | 
    
         
            +
                    version: 0.90.6
         
     | 
| 
      
 35 
     | 
    
         
            +
              type: :runtime
         
     | 
| 
      
 36 
     | 
    
         
            +
              version_requirements: *id001
         
     | 
| 
      
 37 
     | 
    
         
            +
            description: Ruby/GtkMozEmbed is a Ruby binding of GtkMozEmbed a widget embedding a Mozilla Gecko renderer.
         
     | 
| 
      
 38 
     | 
    
         
            +
            email: ruby-gnome2-devel-en@lists.sourceforge.net
         
     | 
| 
      
 39 
     | 
    
         
            +
            executables: []
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
            extensions: 
         
     | 
| 
      
 42 
     | 
    
         
            +
            - ext/gtkmozembed/extconf.rb
         
     | 
| 
      
 43 
     | 
    
         
            +
            extra_rdoc_files: []
         
     | 
| 
      
 44 
     | 
    
         
            +
             
     | 
| 
      
 45 
     | 
    
         
            +
            files: 
         
     | 
| 
      
 46 
     | 
    
         
            +
            - ChangeLog
         
     | 
| 
      
 47 
     | 
    
         
            +
            - README
         
     | 
| 
      
 48 
     | 
    
         
            +
            - Rakefile
         
     | 
| 
      
 49 
     | 
    
         
            +
            - extconf.rb
         
     | 
| 
      
 50 
     | 
    
         
            +
            - lib/gtkmozembed.rb
         
     | 
| 
      
 51 
     | 
    
         
            +
            - ext/gtkmozembed/rbgtkmozembed-init.o
         
     | 
| 
      
 52 
     | 
    
         
            +
            - ext/gtkmozembed/gtkmozembed-enum-types.h
         
     | 
| 
      
 53 
     | 
    
         
            +
            - ext/gtkmozembed/rbgtkmozembed-init.cpp
         
     | 
| 
      
 54 
     | 
    
         
            +
            - ext/gtkmozembed/rbgtkmozembed.o
         
     | 
| 
      
 55 
     | 
    
         
            +
            - ext/gtkmozembed/rbgtkmozembedversion.h
         
     | 
| 
      
 56 
     | 
    
         
            +
            - ext/gtkmozembed/Makefile
         
     | 
| 
      
 57 
     | 
    
         
            +
            - ext/gtkmozembed/rbgtkmozembed.h
         
     | 
| 
      
 58 
     | 
    
         
            +
            - ext/gtkmozembed/gtkmozembed-enum-types.o
         
     | 
| 
      
 59 
     | 
    
         
            +
            - ext/gtkmozembed/extconf.rb
         
     | 
| 
      
 60 
     | 
    
         
            +
            - ext/gtkmozembed/ruby-gtkmozembed.pc
         
     | 
| 
      
 61 
     | 
    
         
            +
            - ext/gtkmozembed/rbgtkmozembed.c
         
     | 
| 
      
 62 
     | 
    
         
            +
            - ext/gtkmozembed/gtkmozembed.so
         
     | 
| 
      
 63 
     | 
    
         
            +
            - ext/gtkmozembed/gtkmozembed-enum-types.c
         
     | 
| 
      
 64 
     | 
    
         
            +
            - ext/gtkmozembed/depend
         
     | 
| 
      
 65 
     | 
    
         
            +
            - sample/README
         
     | 
| 
      
 66 
     | 
    
         
            +
            - sample/COPYING
         
     | 
| 
      
 67 
     | 
    
         
            +
            - sample/ruby-gecko.rb
         
     | 
| 
      
 68 
     | 
    
         
            +
            - test/test-gtk-moz-embed.rb
         
     | 
| 
      
 69 
     | 
    
         
            +
            - test/run-test.rb
         
     | 
| 
      
 70 
     | 
    
         
            +
            - test/gtk-moz-embed-test-utils.rb
         
     | 
| 
      
 71 
     | 
    
         
            +
            has_rdoc: true
         
     | 
| 
      
 72 
     | 
    
         
            +
            homepage: http://ruby-gnome2.sourceforge.jp/
         
     | 
| 
      
 73 
     | 
    
         
            +
            licenses: []
         
     | 
| 
      
 74 
     | 
    
         
            +
             
     | 
| 
      
 75 
     | 
    
         
            +
            post_install_message: 
         
     | 
| 
      
 76 
     | 
    
         
            +
            rdoc_options: []
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
      
 78 
     | 
    
         
            +
            require_paths: 
         
     | 
| 
      
 79 
     | 
    
         
            +
            - lib
         
     | 
| 
      
 80 
     | 
    
         
            +
            required_ruby_version: !ruby/object:Gem::Requirement 
         
     | 
| 
      
 81 
     | 
    
         
            +
              none: false
         
     | 
| 
      
 82 
     | 
    
         
            +
              requirements: 
         
     | 
| 
      
 83 
     | 
    
         
            +
              - - ">="
         
     | 
| 
      
 84 
     | 
    
         
            +
                - !ruby/object:Gem::Version 
         
     | 
| 
      
 85 
     | 
    
         
            +
                  hash: 61
         
     | 
| 
      
 86 
     | 
    
         
            +
                  segments: 
         
     | 
| 
      
 87 
     | 
    
         
            +
                  - 1
         
     | 
| 
      
 88 
     | 
    
         
            +
                  - 8
         
     | 
| 
      
 89 
     | 
    
         
            +
                  - 5
         
     | 
| 
      
 90 
     | 
    
         
            +
                  version: 1.8.5
         
     | 
| 
      
 91 
     | 
    
         
            +
            required_rubygems_version: !ruby/object:Gem::Requirement 
         
     | 
| 
      
 92 
     | 
    
         
            +
              none: false
         
     | 
| 
      
 93 
     | 
    
         
            +
              requirements: 
         
     | 
| 
      
 94 
     | 
    
         
            +
              - - ">="
         
     | 
| 
      
 95 
     | 
    
         
            +
                - !ruby/object:Gem::Version 
         
     | 
| 
      
 96 
     | 
    
         
            +
                  hash: 3
         
     | 
| 
      
 97 
     | 
    
         
            +
                  segments: 
         
     | 
| 
      
 98 
     | 
    
         
            +
                  - 0
         
     | 
| 
      
 99 
     | 
    
         
            +
                  version: "0"
         
     | 
| 
      
 100 
     | 
    
         
            +
            requirements: []
         
     | 
| 
      
 101 
     | 
    
         
            +
             
     | 
| 
      
 102 
     | 
    
         
            +
            rubyforge_project: 
         
     | 
| 
      
 103 
     | 
    
         
            +
            rubygems_version: 1.3.7
         
     | 
| 
      
 104 
     | 
    
         
            +
            signing_key: 
         
     | 
| 
      
 105 
     | 
    
         
            +
            specification_version: 3
         
     | 
| 
      
 106 
     | 
    
         
            +
            summary: Ruby/GtkMozEmbed is a Ruby binding of GtkMozEmbed a widget embedding a Mozilla Gecko renderer.
         
     | 
| 
      
 107 
     | 
    
         
            +
            test_files: []
         
     | 
| 
      
 108 
     | 
    
         
            +
             
     |