gtk-webkit-ruby 0.0.4 → 0.0.5
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/README.md +21 -5
- data/Rakefile +5 -2
- data/ext/webkit/extconf.rb +7 -3
- data/ext/webkit/javascript-type-convert.h +2 -0
- data/ext/webkit/javascript.h +24 -10
- data/ext/webkit/webkit.c +55 -54
- data/ext/webkit/webkit.cr +1 -0
- data/lib/webkit.rb +3 -0
- data/lib/webkit/version.rb +3 -0
- metadata +6 -4
data/README.md
CHANGED
@@ -3,19 +3,26 @@ Gtk Webkit Ruby
|
|
3
3
|
|
4
4
|
Requires
|
5
5
|
--------
|
6
|
-
* rubber-generate >= 0.0.
|
7
|
-
*
|
8
|
-
*
|
6
|
+
* rubber-generate >= 0.0.17
|
7
|
+
* rake-compiler, rake to build
|
8
|
+
* ruby-gnome2 (including development files)
|
9
|
+
* webkit (including development files)
|
10
|
+
|
11
|
+
Changes
|
12
|
+
-------
|
13
|
+
* 0.0.4 - 16 Nov 2012
|
14
|
+
* Use rubygems to find Ruby-GNOME2 installation (fixes #2, missing rbglib.h header file)
|
15
|
+
* Wrap stored JS ref pointer with Data_Wrap_Struct (fixes GC bug)
|
9
16
|
|
10
17
|
Description
|
11
18
|
-----------
|
12
|
-
|
13
19
|
Gtk Webkit bindings for ruby. Partial coverage sufficient to embed a webview in a ruby-gnome2 application.
|
14
20
|
|
15
|
-
Also
|
21
|
+
Also experimental support for allowing ruby code to be called by javascript & executing javascript from ruby.
|
16
22
|
|
17
23
|
e.g
|
18
24
|
|
25
|
+
````ruby
|
19
26
|
require 'gtk2'
|
20
27
|
require 'webkit'
|
21
28
|
require 'digest/md5'
|
@@ -30,4 +37,13 @@ e.g
|
|
30
37
|
puts v.main_frame.exec_js("ruby_eval('RUBY_DESCRIPTION')")
|
31
38
|
puts v.main_frame.exec_js("md5('foo')")
|
32
39
|
puts Digest::MD5.hexdigest('foo')
|
40
|
+
````
|
41
|
+
|
42
|
+
License
|
43
|
+
-------
|
44
|
+
Copyright (c) 2011-2012 Geoff Youngs
|
45
|
+
|
46
|
+
This program is free software.
|
47
|
+
You can distribute/modify this program under the terms of
|
48
|
+
the GNU LESSER GENERAL PUBLIC LICENSE Version 2.1.
|
33
49
|
|
data/Rakefile
CHANGED
@@ -5,6 +5,9 @@ BASE_DIR = Dir.pwd
|
|
5
5
|
require 'rubygems/package_task'
|
6
6
|
require 'rake/testtask'
|
7
7
|
|
8
|
+
$: << './lib'
|
9
|
+
|
10
|
+
require 'webkit/version'
|
8
11
|
exts = []
|
9
12
|
|
10
13
|
namespace :prepare do
|
@@ -22,13 +25,13 @@ spec = Gem::Specification.new do |s|
|
|
22
25
|
s.name = "gtk-webkit-ruby"
|
23
26
|
s.author = "Geoff Youngs"
|
24
27
|
s.email = "git@intersect-uk.co.uk"
|
25
|
-
s.version =
|
28
|
+
s.version = WebKit::BINDINGS_VERSION
|
26
29
|
s.homepage = "http://github.com/geoffyoungs/gtk-webkit-ruby"
|
27
30
|
s.summary = "Webkit bindings using rubber-generate"
|
28
31
|
s.add_dependency("rubber-generate", ">= 0.0.17")
|
29
32
|
s.platform = Gem::Platform::RUBY
|
30
33
|
s.extensions = FileList["ext/*/extconf.rb"]
|
31
|
-
s.files = FileList['ext/*/*.{c,h,cr,rd}'] + ['Rakefile', 'README.md']
|
34
|
+
s.files = FileList['ext/*/*.{c,h,cr,rd}'] + ['Rakefile', 'README.md'] + FileList['lib/**/*.rb']
|
32
35
|
s.description = <<-EOF
|
33
36
|
Gtk Webkit bindings for ruby. Partial coverage sufficient to embed a webview in a Ruby-GNOME2 application.
|
34
37
|
|
data/ext/webkit/extconf.rb
CHANGED
@@ -16,15 +16,19 @@ if use_gems or Object.const_defined?('Gem')
|
|
16
16
|
end
|
17
17
|
end
|
18
18
|
end
|
19
|
+
# Look for headers in {gem_root}/ext/{package}
|
20
|
+
if use_gems
|
19
21
|
%w[
|
20
|
-
glib2 gdk_pixbuf2 atk gtk2].each do |package|
|
21
|
-
|
22
|
-
|
22
|
+
glib2 gdk_pixbuf2 atk gtk2 ].each do |package|
|
23
|
+
require package
|
24
|
+
$CFLAGS += " -I"+Gem.loaded_specs[package].full_gem_path+"/ext/"+package
|
25
|
+
end
|
23
26
|
end
|
24
27
|
if RbConfig::CONFIG.has_key?('rubyhdrdir')
|
25
28
|
$CFLAGS += " -I" + RbConfig::CONFIG['rubyhdrdir']+'/ruby'
|
26
29
|
end
|
27
30
|
|
31
|
+
$CFLAGS += " -I."
|
28
32
|
have_func("rb_errinfo")
|
29
33
|
PKGConfig.have_package("gtk+-2.0") or exit(-1)
|
30
34
|
PKGConfig.have_package("webkit-1.0") or exit(-1)
|
data/ext/webkit/javascript.h
CHANGED
@@ -1,10 +1,15 @@
|
|
1
1
|
#include <alloca.h>
|
2
2
|
#include "javascript-type-convert.h"
|
3
3
|
|
4
|
+
#ifndef STRINGIZE
|
4
5
|
#define STRINGIZE(s) #s
|
6
|
+
#endif
|
5
7
|
|
6
8
|
#define JS_fn(f) _JS_fn(ctx, STRINGIZE(f), f)
|
7
|
-
|
9
|
+
#ifdef __GNUC__
|
10
|
+
#pragma GCC diagnostic ignored "-Wunused-parameter"
|
11
|
+
#pragma GCC diagnostic ignored "-Wunused-variable"
|
12
|
+
#endif
|
8
13
|
|
9
14
|
typedef struct {
|
10
15
|
JSClassDefinition definition;
|
@@ -95,7 +100,7 @@ static void jsrb_class_init(JSContextRef ctx, JSObjectRef object)
|
|
95
100
|
|
96
101
|
static void jsrb_class_final(JSObjectRef object) {
|
97
102
|
// Clean up?
|
98
|
-
VALUE robject = JSObjectGetPrivate(object);
|
103
|
+
VALUE robject = (VALUE)JSObjectGetPrivate(object);
|
99
104
|
if (RTEST(robject)) {
|
100
105
|
ruby_js_class_def *def = (ruby_js_class_def*)DATA_PTR(rb_iv_get(robject, "_js_ref"));
|
101
106
|
rb_iv_set(robject, "_js_ref", Qnil);
|
@@ -113,7 +118,7 @@ static void jsrb_class_final(JSObjectRef object) {
|
|
113
118
|
|
114
119
|
static bool jsrb_has_prop(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName)
|
115
120
|
{
|
116
|
-
VALUE robject = JSObjectGetPrivate(object);
|
121
|
+
VALUE robject = (VALUE)JSObjectGetPrivate(object);
|
117
122
|
|
118
123
|
if (RTEST(robject)) {
|
119
124
|
ID prop = convert_javascript_to_intern(propertyName);
|
@@ -168,8 +173,8 @@ static void jsrb_get_prop_names(JSContextRef ctx, JSObjectRef object, JSProperty
|
|
168
173
|
static JSValueRef jsrb_call_fn(JSContextRef ctx, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
|
169
174
|
{
|
170
175
|
//
|
171
|
-
VALUE robject = JSObjectGetPrivate(function);
|
172
|
-
VALUE self = JSObjectGetPrivate(thisObject);
|
176
|
+
VALUE robject = (VALUE)JSObjectGetPrivate(function);
|
177
|
+
VALUE self = (VALUE)JSObjectGetPrivate(thisObject);
|
173
178
|
if (RTEST(robject)) {
|
174
179
|
VALUE rbo = rb_funcall2(robject, rb_intern("call"), 0, NULL);
|
175
180
|
JSValueRef retval = convert_ruby_to_javascript(ctx, rbo);
|
@@ -194,7 +199,7 @@ static JSObjectRef wrapRubyObject(JSContextRef ctx, VALUE value)
|
|
194
199
|
def = jsrb_newClass(value);
|
195
200
|
def->ctx = ctx;
|
196
201
|
rb_iv_set(value, "_js_ref", Data_Wrap_Struct(cJsPtr, NULL, NULL, def));
|
197
|
-
object = JSObjectMake(ctx, def->class_ref, value);
|
202
|
+
object = JSObjectMake(ctx, def->class_ref, (void*)value);
|
198
203
|
return object;
|
199
204
|
}
|
200
205
|
|
@@ -231,16 +236,25 @@ static void jsrb_class_construct_ffi(ffi_cif* cif,
|
|
231
236
|
|
232
237
|
static JSObjectRef jsrb_call_create(JSContextRef ctx, JSObjectRef constructor, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
|
233
238
|
{
|
234
|
-
int no_args = 0;
|
235
|
-
VALUE *arg_list = NULL;
|
239
|
+
int no_args = 0, i;
|
240
|
+
volatile VALUE *arg_list = NULL;
|
236
241
|
JSObjectRef object;
|
237
242
|
VALUE value = Qnil;
|
238
243
|
|
239
244
|
VALUE robject = JSObjectGetPrivate(constructor);
|
240
245
|
|
241
246
|
if (RTEST(robject)) {
|
247
|
+
arg_list = ALLOC_N(VALUE, argumentCount);
|
248
|
+
|
249
|
+
for(i = 0; i < argumentCount; i++) {
|
250
|
+
no_args += 1;
|
251
|
+
arg_list[i] = convert_javascript_to_ruby(ctx, arguments[i]);
|
252
|
+
}
|
253
|
+
|
242
254
|
value = rb_class_new_instance(no_args, arg_list, robject);
|
243
255
|
RUBYFUNC_ADD(value);
|
256
|
+
|
257
|
+
xfree(arg_list);
|
244
258
|
|
245
259
|
return wrapRubyObject(ctx, value);
|
246
260
|
}
|
@@ -396,7 +410,7 @@ javascript_add_ruby_eval(JSGlobalContextRef ctx)
|
|
396
410
|
{
|
397
411
|
JSObjectRef global = JSContextGetGlobalObject(ctx);
|
398
412
|
|
399
|
-
js_obj_set_value(ctx, global, "ruby_eval", JS_fn(js_call_ruby_eval));
|
413
|
+
js_obj_set_value(ctx, global, (char*)"ruby_eval", JS_fn(js_call_ruby_eval));
|
400
414
|
|
401
415
|
return NULL;
|
402
416
|
}
|
@@ -431,7 +445,7 @@ javascript_exec(JSGlobalContextRef ctx, char *script)
|
|
431
445
|
len = JSStringGetUTF8CString(str, buf, max);
|
432
446
|
|
433
447
|
JSStringRelease(str);
|
434
|
-
rb_raise(cJavascriptError, buf);
|
448
|
+
rb_raise(cJavascriptError, "%s", buf);
|
435
449
|
//free(buf); // Will this ever be called?
|
436
450
|
}
|
437
451
|
|
data/ext/webkit/webkit.c
CHANGED
@@ -179,6 +179,7 @@ static void __gcpool_RubyFunc_del(VALUE val);
|
|
179
179
|
/* Inline C code */
|
180
180
|
|
181
181
|
#include <intern.h>
|
182
|
+
#include <ruby.h>
|
182
183
|
#include "javascript.h"
|
183
184
|
|
184
185
|
static inline VALUE strOrNil(const char *str) {
|
@@ -197,7 +198,7 @@ WebKit_CLASS_set_web_database_path(VALUE self, VALUE __v_path)
|
|
197
198
|
char * path; char * __orig_path;
|
198
199
|
__orig_path = path = ( NIL_P(__v_path) ? NULL : StringValuePtr(__v_path) );
|
199
200
|
|
200
|
-
#line
|
201
|
+
#line 46 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
201
202
|
webkit_set_web_database_directory_path(path);
|
202
203
|
|
203
204
|
return self;
|
@@ -207,7 +208,7 @@ static VALUE
|
|
207
208
|
WebKit_CLASS_remove_all_web_databases(VALUE self)
|
208
209
|
{
|
209
210
|
|
210
|
-
#line
|
211
|
+
#line 49 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
211
212
|
webkit_remove_all_web_databases();
|
212
213
|
|
213
214
|
return Qnil;
|
@@ -219,7 +220,7 @@ WebKit_CLASS_set_default_web_database_quota(VALUE self, VALUE __v_quota)
|
|
219
220
|
guint64 quota; guint64 __orig_quota;
|
220
221
|
__orig_quota = quota = rb_num2ull(__v_quota);
|
221
222
|
|
222
|
-
#line
|
223
|
+
#line 52 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
223
224
|
webkit_set_default_web_database_quota(quota);
|
224
225
|
|
225
226
|
return self;
|
@@ -229,7 +230,7 @@ static VALUE
|
|
229
230
|
WebSettings_initialize(VALUE self)
|
230
231
|
{
|
231
232
|
|
232
|
-
#line
|
233
|
+
#line 58 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
233
234
|
G_INITIALIZE(self, webkit_web_settings_new());
|
234
235
|
|
235
236
|
return Qnil;
|
@@ -240,7 +241,7 @@ WebPolicyDecision_download(VALUE self)
|
|
240
241
|
{
|
241
242
|
WebKitWebPolicyDecision *_self = ((WebKitWebPolicyDecision*)RVAL2GOBJ(self));
|
242
243
|
|
243
|
-
#line
|
244
|
+
#line 65 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
244
245
|
webkit_web_policy_decision_download(_self);
|
245
246
|
|
246
247
|
return Qnil;
|
@@ -251,7 +252,7 @@ WebPolicyDecision_use(VALUE self)
|
|
251
252
|
{
|
252
253
|
WebKitWebPolicyDecision *_self = ((WebKitWebPolicyDecision*)RVAL2GOBJ(self));
|
253
254
|
|
254
|
-
#line
|
255
|
+
#line 68 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
255
256
|
webkit_web_policy_decision_use(_self);
|
256
257
|
|
257
258
|
return Qnil;
|
@@ -262,7 +263,7 @@ WebPolicyDecision_ignore(VALUE self)
|
|
262
263
|
{
|
263
264
|
WebKitWebPolicyDecision *_self = ((WebKitWebPolicyDecision*)RVAL2GOBJ(self));
|
264
265
|
|
265
|
-
#line
|
266
|
+
#line 71 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
266
267
|
webkit_web_policy_decision_ignore(_self);
|
267
268
|
|
268
269
|
return Qnil;
|
@@ -276,7 +277,7 @@ WebFrame_exec_js(VALUE self, VALUE __v_js)
|
|
276
277
|
WebKitWebFrame *_self = ((WebKitWebFrame*)RVAL2GOBJ(self));
|
277
278
|
__orig_js = js = ( NIL_P(__v_js) ? NULL : StringValuePtr(__v_js) );
|
278
279
|
|
279
|
-
#line
|
280
|
+
#line 78 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
280
281
|
do { __p_retval = javascript_exec(webkit_web_frame_get_global_context(_self), js); goto out; } while(0);
|
281
282
|
out:
|
282
283
|
return __p_retval;
|
@@ -291,7 +292,7 @@ WebFrame_add_ruby_class(VALUE self, VALUE __v_name, VALUE klass)
|
|
291
292
|
if (! ((TYPE(klass) == T_CLASS) || (TYPE(klass) == T_MODULE)) )
|
292
293
|
rb_raise(rb_eArgError, "klass argument must be one of Class, Module");
|
293
294
|
|
294
|
-
#line
|
295
|
+
#line 81 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
295
296
|
javascript_add_class(webkit_web_frame_get_global_context(_self), name, klass);
|
296
297
|
|
297
298
|
return Qnil;
|
@@ -302,7 +303,7 @@ WebFrame_add_ruby_eval(VALUE self)
|
|
302
303
|
{
|
303
304
|
WebKitWebFrame *_self = ((WebKitWebFrame*)RVAL2GOBJ(self));
|
304
305
|
|
305
|
-
#line
|
306
|
+
#line 84 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
306
307
|
javascript_add_ruby_eval(webkit_web_frame_get_global_context(_self));
|
307
308
|
|
308
309
|
return Qnil;
|
@@ -316,7 +317,7 @@ WebFrame_add_js_api(VALUE self, VALUE __v_name)
|
|
316
317
|
__orig_name = name = ( NIL_P(__v_name) ? NULL : StringValuePtr(__v_name) );
|
317
318
|
VALUE block = rb_block_proc();
|
318
319
|
|
319
|
-
#line
|
320
|
+
#line 87 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
320
321
|
javascript_add_ruby_fn(webkit_web_frame_get_global_context(_self), name, block);
|
321
322
|
|
322
323
|
return Qnil;
|
@@ -335,7 +336,7 @@ WebFrame_load_string(VALUE self, VALUE __v_content, VALUE __v_mime_type, VALUE _
|
|
335
336
|
__orig_encoding = encoding = ( NIL_P(__v_encoding) ? NULL : StringValuePtr(__v_encoding) );
|
336
337
|
__orig_base_uri = base_uri = ( NIL_P(__v_base_uri) ? NULL : StringValuePtr(__v_base_uri) );
|
337
338
|
|
338
|
-
#line
|
339
|
+
#line 90 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
339
340
|
webkit_web_frame_load_string(_self, content, mime_type, encoding, base_uri);
|
340
341
|
|
341
342
|
return Qnil;
|
@@ -345,7 +346,7 @@ static VALUE
|
|
345
346
|
WebView_initialize(VALUE self)
|
346
347
|
{
|
347
348
|
|
348
|
-
#line
|
349
|
+
#line 97 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
349
350
|
RBGTK_INITIALIZE(self, webkit_web_view_new());
|
350
351
|
|
351
352
|
return Qnil;
|
@@ -358,7 +359,7 @@ WebView_open(VALUE self, VALUE __v_uri)
|
|
358
359
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
359
360
|
__orig_uri = uri = ( NIL_P(__v_uri) ? NULL : StringValuePtr(__v_uri) );
|
360
361
|
|
361
|
-
#line
|
362
|
+
#line 100 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
362
363
|
webkit_web_view_open(_self, uri);
|
363
364
|
|
364
365
|
return Qnil;
|
@@ -371,7 +372,7 @@ WebView_execute_script(VALUE self, VALUE __v_script)
|
|
371
372
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
372
373
|
__orig_script = script = ( NIL_P(__v_script) ? NULL : StringValuePtr(__v_script) );
|
373
374
|
|
374
|
-
#line
|
375
|
+
#line 103 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
375
376
|
webkit_web_view_execute_script(_self, script);
|
376
377
|
|
377
378
|
return Qnil;
|
@@ -384,7 +385,7 @@ WebView_set_settings(VALUE self, VALUE __v_settings)
|
|
384
385
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
385
386
|
__orig_settings = settings = RVAL2GOBJ(__v_settings);
|
386
387
|
|
387
|
-
#line
|
388
|
+
#line 106 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
388
389
|
webkit_web_view_set_settings(_self, settings);
|
389
390
|
|
390
391
|
return self;
|
@@ -403,7 +404,7 @@ WebView_load_string(VALUE self, VALUE __v_content, VALUE __v_mime_type, VALUE __
|
|
403
404
|
__orig_encoding = encoding = ( NIL_P(__v_encoding) ? NULL : StringValuePtr(__v_encoding) );
|
404
405
|
__orig_base_uri = base_uri = ( NIL_P(__v_base_uri) ? NULL : StringValuePtr(__v_base_uri) );
|
405
406
|
|
406
|
-
#line
|
407
|
+
#line 109 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
407
408
|
webkit_web_view_load_string(_self, content, mime_type, encoding, base_uri);
|
408
409
|
|
409
410
|
return Qnil;
|
@@ -416,7 +417,7 @@ WebView_load_uri(VALUE self, VALUE __v_uri)
|
|
416
417
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
417
418
|
__orig_uri = uri = ( NIL_P(__v_uri) ? NULL : StringValuePtr(__v_uri) );
|
418
419
|
|
419
|
-
#line
|
420
|
+
#line 112 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
420
421
|
webkit_web_view_load_uri(_self, uri);
|
421
422
|
|
422
423
|
return Qnil;
|
@@ -428,7 +429,7 @@ WebView_main_frame(VALUE self)
|
|
428
429
|
VALUE __p_retval = Qnil;
|
429
430
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
430
431
|
|
431
|
-
#line
|
432
|
+
#line 115 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
432
433
|
do { __p_retval = GOBJ2RVAL(webkit_web_view_get_main_frame(_self)); goto out; } while(0);
|
433
434
|
out:
|
434
435
|
return __p_retval;
|
@@ -440,7 +441,7 @@ WebView_focused_frame(VALUE self)
|
|
440
441
|
VALUE __p_retval = Qnil;
|
441
442
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
442
443
|
|
443
|
-
#line
|
444
|
+
#line 118 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
444
445
|
do { __p_retval = GOBJ2RVAL(webkit_web_view_get_focused_frame(_self)); goto out; } while(0);
|
445
446
|
out:
|
446
447
|
return __p_retval;
|
@@ -452,7 +453,7 @@ WebView_progress(VALUE self)
|
|
452
453
|
VALUE __p_retval = Qnil;
|
453
454
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
454
455
|
|
455
|
-
#line
|
456
|
+
#line 121 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
456
457
|
do { __p_retval = rb_float_new(webkit_web_view_get_progress(_self)); goto out; } while(0);
|
457
458
|
out:
|
458
459
|
return __p_retval;
|
@@ -464,7 +465,7 @@ WebView_title(VALUE self)
|
|
464
465
|
VALUE __p_retval = Qnil;
|
465
466
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
466
467
|
|
467
|
-
#line
|
468
|
+
#line 124 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
468
469
|
do { __p_retval = rb_str_new2(webkit_web_view_get_title(_self)); goto out; } while(0);
|
469
470
|
out:
|
470
471
|
return __p_retval;
|
@@ -476,7 +477,7 @@ WebView_uri(VALUE self)
|
|
476
477
|
VALUE __p_retval = Qnil;
|
477
478
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
478
479
|
|
479
|
-
#line
|
480
|
+
#line 127 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
480
481
|
do { __p_retval = rb_str_new2(webkit_web_view_get_uri(_self)); goto out; } while(0);
|
481
482
|
out:
|
482
483
|
return __p_retval;
|
@@ -487,7 +488,7 @@ WebView_reload(VALUE self)
|
|
487
488
|
{
|
488
489
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
489
490
|
|
490
|
-
#line
|
491
|
+
#line 130 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
491
492
|
webkit_web_view_reload(_self);
|
492
493
|
|
493
494
|
return Qnil;
|
@@ -498,7 +499,7 @@ WebView_reload_bypass_cache(VALUE self)
|
|
498
499
|
{
|
499
500
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
500
501
|
|
501
|
-
#line
|
502
|
+
#line 133 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
502
503
|
webkit_web_view_reload_bypass_cache(_self);
|
503
504
|
|
504
505
|
return Qnil;
|
@@ -511,7 +512,7 @@ WebView_set_custom_encoding(VALUE self, VALUE __v_encoding)
|
|
511
512
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
512
513
|
__orig_encoding = encoding = ( NIL_P(__v_encoding) ? NULL : StringValuePtr(__v_encoding) );
|
513
514
|
|
514
|
-
#line
|
515
|
+
#line 136 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
515
516
|
webkit_web_view_set_custom_encoding(_self, encoding);
|
516
517
|
|
517
518
|
return self;
|
@@ -522,7 +523,7 @@ WebView_stop_loading(VALUE self)
|
|
522
523
|
{
|
523
524
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
524
525
|
|
525
|
-
#line
|
526
|
+
#line 139 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
526
527
|
webkit_web_view_stop_loading(_self);
|
527
528
|
|
528
529
|
return Qnil;
|
@@ -534,7 +535,7 @@ WebView_has_selection_query(VALUE self)
|
|
534
535
|
VALUE __p_retval = Qnil;
|
535
536
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
536
537
|
|
537
|
-
#line
|
538
|
+
#line 142 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
538
539
|
do { __p_retval = ((webkit_web_view_has_selection(_self)) ? Qtrue : Qfalse); goto out; } while(0);
|
539
540
|
out:
|
540
541
|
return __p_retval;
|
@@ -546,7 +547,7 @@ WebView_inspector(VALUE self)
|
|
546
547
|
VALUE __p_retval = Qnil;
|
547
548
|
WebKitWebView *_self = ((WebKitWebView*)RVAL2GOBJ(self));
|
548
549
|
|
549
|
-
#line
|
550
|
+
#line 145 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
550
551
|
do { __p_retval = GOBJ2RVAL(webkit_web_view_get_inspector(_self)); goto out; } while(0);
|
551
552
|
out:
|
552
553
|
return __p_retval;
|
@@ -561,7 +562,7 @@ WebInspector_inspect_coordinates(VALUE self, VALUE __v_x, VALUE __v_y)
|
|
561
562
|
__orig_x = x = NUM2DBL(__v_x);
|
562
563
|
__orig_y = y = NUM2DBL(__v_y);
|
563
564
|
|
564
|
-
#line
|
565
|
+
#line 152 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
565
566
|
webkit_web_inspector_inspect_coordinates(_self, x, y);
|
566
567
|
|
567
568
|
return Qnil;
|
@@ -573,7 +574,7 @@ WebInspector_uri(VALUE self)
|
|
573
574
|
VALUE __p_retval = Qnil;
|
574
575
|
WebKitWebInspector *_self = ((WebKitWebInspector*)RVAL2GOBJ(self));
|
575
576
|
|
576
|
-
#line
|
577
|
+
#line 155 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
577
578
|
do { __p_retval = strOrNil(webkit_web_inspector_get_inspected_uri(_self)); goto out; } while(0);
|
578
579
|
out:
|
579
580
|
return __p_retval;
|
@@ -584,7 +585,7 @@ WebInspector_show(VALUE self)
|
|
584
585
|
{
|
585
586
|
WebKitWebInspector *_self = ((WebKitWebInspector*)RVAL2GOBJ(self));
|
586
587
|
|
587
|
-
#line
|
588
|
+
#line 158 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
588
589
|
webkit_web_inspector_show(_self);
|
589
590
|
|
590
591
|
return Qnil;
|
@@ -595,7 +596,7 @@ WebInspector_close(VALUE self)
|
|
595
596
|
{
|
596
597
|
WebKitWebInspector *_self = ((WebKitWebInspector*)RVAL2GOBJ(self));
|
597
598
|
|
598
|
-
#line
|
599
|
+
#line 161 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
599
600
|
webkit_web_inspector_close(_self);
|
600
601
|
|
601
602
|
return Qnil;
|
@@ -607,7 +608,7 @@ WebInspector_view(VALUE self)
|
|
607
608
|
VALUE __p_retval = Qnil;
|
608
609
|
WebKitWebInspector *_self = ((WebKitWebInspector*)RVAL2GOBJ(self));
|
609
610
|
|
610
|
-
#line
|
611
|
+
#line 164 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
611
612
|
do { __p_retval = GOBJ2RVAL(webkit_web_inspector_get_web_view(_self)); goto out; } while(0);
|
612
613
|
out:
|
613
614
|
return __p_retval;
|
@@ -619,7 +620,7 @@ WebResource_encoding(VALUE self)
|
|
619
620
|
VALUE __p_retval = Qnil;
|
620
621
|
WebKitWebResource *_self = ((WebKitWebResource*)RVAL2GOBJ(self));
|
621
622
|
|
622
|
-
#line
|
623
|
+
#line 171 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
623
624
|
do { __p_retval = strOrNil(webkit_web_resource_get_encoding(_self)); goto out; } while(0);
|
624
625
|
out:
|
625
626
|
return __p_retval;
|
@@ -631,7 +632,7 @@ WebResource_frame_name(VALUE self)
|
|
631
632
|
VALUE __p_retval = Qnil;
|
632
633
|
WebKitWebResource *_self = ((WebKitWebResource*)RVAL2GOBJ(self));
|
633
634
|
|
634
|
-
#line
|
635
|
+
#line 174 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
635
636
|
do { __p_retval = strOrNil(webkit_web_resource_get_frame_name(_self)); goto out; } while(0);
|
636
637
|
out:
|
637
638
|
return __p_retval;
|
@@ -643,7 +644,7 @@ WebResource_mime_type(VALUE self)
|
|
643
644
|
VALUE __p_retval = Qnil;
|
644
645
|
WebKitWebResource *_self = ((WebKitWebResource*)RVAL2GOBJ(self));
|
645
646
|
|
646
|
-
#line
|
647
|
+
#line 177 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
647
648
|
do { __p_retval = strOrNil(webkit_web_resource_get_mime_type(_self)); goto out; } while(0);
|
648
649
|
out:
|
649
650
|
return __p_retval;
|
@@ -655,7 +656,7 @@ WebResource_uri(VALUE self)
|
|
655
656
|
VALUE __p_retval = Qnil;
|
656
657
|
WebKitWebResource *_self = ((WebKitWebResource*)RVAL2GOBJ(self));
|
657
658
|
|
658
|
-
#line
|
659
|
+
#line 180 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
659
660
|
do { __p_retval = strOrNil(webkit_web_resource_get_mime_type(_self)); goto out; } while(0);
|
660
661
|
out:
|
661
662
|
return __p_retval;
|
@@ -667,7 +668,7 @@ WebResource_data(VALUE self)
|
|
667
668
|
VALUE __p_retval = Qnil;
|
668
669
|
WebKitWebResource *_self = ((WebKitWebResource*)RVAL2GOBJ(self));
|
669
670
|
|
670
|
-
#line
|
671
|
+
#line 183 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
671
672
|
|
672
673
|
do {
|
673
674
|
GString * data =
|
@@ -687,7 +688,7 @@ WebResource_data_equals(VALUE self, VALUE data)
|
|
687
688
|
WebKitWebResource *_self = ((WebKitWebResource*)RVAL2GOBJ(self));
|
688
689
|
Check_Type(data, T_STRING);
|
689
690
|
|
690
|
-
#line
|
691
|
+
#line 187 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
691
692
|
|
692
693
|
do {
|
693
694
|
GString * odata =
|
@@ -710,7 +711,7 @@ WebNetworkRequest_uri(VALUE self)
|
|
710
711
|
VALUE __p_retval = Qnil;
|
711
712
|
WebKitNetworkRequest *_self = ((WebKitNetworkRequest*)RVAL2GOBJ(self));
|
712
713
|
|
713
|
-
#line
|
714
|
+
#line 199 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
714
715
|
do { __p_retval = rb_str_new2(webkit_network_request_get_uri(_self)); goto out; } while(0);
|
715
716
|
out:
|
716
717
|
return __p_retval;
|
@@ -723,7 +724,7 @@ WebNetworkRequest_uri_equals(VALUE self, VALUE __v_uri)
|
|
723
724
|
WebKitNetworkRequest *_self = ((WebKitNetworkRequest*)RVAL2GOBJ(self));
|
724
725
|
__orig_uri = uri = ( NIL_P(__v_uri) ? NULL : StringValuePtr(__v_uri) );
|
725
726
|
|
726
|
-
#line
|
727
|
+
#line 202 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
727
728
|
webkit_network_request_set_uri(_self, uri);
|
728
729
|
|
729
730
|
return __v_uri;
|
@@ -735,7 +736,7 @@ WebNetworkRequest_message(VALUE self)
|
|
735
736
|
VALUE __p_retval = Qnil;
|
736
737
|
WebKitNetworkRequest *_self = ((WebKitNetworkRequest*)RVAL2GOBJ(self));
|
737
738
|
|
738
|
-
#line
|
739
|
+
#line 205 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
739
740
|
do { __p_retval = GOBJ2RVAL(SOUP_MESSAGE(webkit_network_request_get_message(_self))); goto out; } while(0);
|
740
741
|
out:
|
741
742
|
return __p_retval;
|
@@ -747,7 +748,7 @@ WebNetworkResponse_uri(VALUE self)
|
|
747
748
|
VALUE __p_retval = Qnil;
|
748
749
|
WebKitNetworkResponse *_self = ((WebKitNetworkResponse*)RVAL2GOBJ(self));
|
749
750
|
|
750
|
-
#line
|
751
|
+
#line 212 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
751
752
|
do { __p_retval = rb_str_new2(webkit_network_response_get_uri(_self)); goto out; } while(0);
|
752
753
|
out:
|
753
754
|
return __p_retval;
|
@@ -760,7 +761,7 @@ WebNetworkResponse_uri_equals(VALUE self, VALUE __v_uri)
|
|
760
761
|
WebKitNetworkResponse *_self = ((WebKitNetworkResponse*)RVAL2GOBJ(self));
|
761
762
|
__orig_uri = uri = ( NIL_P(__v_uri) ? NULL : StringValuePtr(__v_uri) );
|
762
763
|
|
763
|
-
#line
|
764
|
+
#line 215 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
764
765
|
webkit_network_response_set_uri(_self, uri);
|
765
766
|
|
766
767
|
return __v_uri;
|
@@ -772,7 +773,7 @@ WebNetworkResponse_message(VALUE self)
|
|
772
773
|
VALUE __p_retval = Qnil;
|
773
774
|
WebKitNetworkResponse *_self = ((WebKitNetworkResponse*)RVAL2GOBJ(self));
|
774
775
|
|
775
|
-
#line
|
776
|
+
#line 218 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
776
777
|
do { __p_retval = GOBJ2RVAL(SOUP_MESSAGE(webkit_network_response_get_message(_self))); goto out; } while(0);
|
777
778
|
out:
|
778
779
|
return __p_retval;
|
@@ -784,7 +785,7 @@ Download_initialize(VALUE self, VALUE __v_request)
|
|
784
785
|
WebKitNetworkRequest * request; WebKitNetworkRequest * __orig_request;
|
785
786
|
__orig_request = request = RVAL2GOBJ(__v_request);
|
786
787
|
|
787
|
-
#line
|
788
|
+
#line 225 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
788
789
|
RBGTK_INITIALIZE(self, webkit_download_new(request));
|
789
790
|
|
790
791
|
return Qnil;
|
@@ -795,7 +796,7 @@ Download_start(VALUE self)
|
|
795
796
|
{
|
796
797
|
WebKitDownload *_self = ((WebKitDownload*)RVAL2GOBJ(self));
|
797
798
|
|
798
|
-
#line
|
799
|
+
#line 228 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
799
800
|
webkit_download_start(_self);
|
800
801
|
|
801
802
|
return Qnil;
|
@@ -806,7 +807,7 @@ Download_cancel(VALUE self)
|
|
806
807
|
{
|
807
808
|
WebKitDownload *_self = ((WebKitDownload*)RVAL2GOBJ(self));
|
808
809
|
|
809
|
-
#line
|
810
|
+
#line 231 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
810
811
|
webkit_download_cancel(_self);
|
811
812
|
|
812
813
|
return Qnil;
|
@@ -818,7 +819,7 @@ Download_progress(VALUE self)
|
|
818
819
|
VALUE __p_retval = Qnil;
|
819
820
|
WebKitDownload *_self = ((WebKitDownload*)RVAL2GOBJ(self));
|
820
821
|
|
821
|
-
#line
|
822
|
+
#line 234 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
822
823
|
do { __p_retval = rb_float_new(webkit_download_get_progress(_self)); goto out; } while(0);
|
823
824
|
out:
|
824
825
|
return __p_retval;
|
@@ -830,7 +831,7 @@ Download_current_size(VALUE self)
|
|
830
831
|
VALUE __p_retval = Qnil;
|
831
832
|
WebKitDownload *_self = ((WebKitDownload*)RVAL2GOBJ(self));
|
832
833
|
|
833
|
-
#line
|
834
|
+
#line 237 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
834
835
|
do { __p_retval = rb_ull2inum(webkit_download_get_current_size(_self)); goto out; } while(0);
|
835
836
|
out:
|
836
837
|
return __p_retval;
|
@@ -842,7 +843,7 @@ Download_total_size(VALUE self)
|
|
842
843
|
VALUE __p_retval = Qnil;
|
843
844
|
WebKitDownload *_self = ((WebKitDownload*)RVAL2GOBJ(self));
|
844
845
|
|
845
|
-
#line
|
846
|
+
#line 240 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
846
847
|
do { __p_retval = rb_ull2inum(webkit_download_get_total_size(_self)); goto out; } while(0);
|
847
848
|
out:
|
848
849
|
return __p_retval;
|
@@ -854,7 +855,7 @@ Download_uri(VALUE self)
|
|
854
855
|
VALUE __p_retval = Qnil;
|
855
856
|
WebKitDownload *_self = ((WebKitDownload*)RVAL2GOBJ(self));
|
856
857
|
|
857
|
-
#line
|
858
|
+
#line 243 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
858
859
|
do { __p_retval = rb_str_new2(webkit_download_get_uri(_self)); goto out; } while(0);
|
859
860
|
out:
|
860
861
|
return __p_retval;
|
@@ -866,7 +867,7 @@ Download_suggested_filename(VALUE self)
|
|
866
867
|
VALUE __p_retval = Qnil;
|
867
868
|
WebKitDownload *_self = ((WebKitDownload*)RVAL2GOBJ(self));
|
868
869
|
|
869
|
-
#line
|
870
|
+
#line 246 "/home/geoff/Projects/gtk-webkit-ruby/ext/webkit/webkit.cr"
|
870
871
|
do { __p_retval = rb_str_new2(webkit_download_get_suggested_filename(_self)); goto out; } while(0);
|
871
872
|
out:
|
872
873
|
return __p_retval;
|
data/ext/webkit/webkit.cr
CHANGED
data/lib/webkit.rb
ADDED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gtk-webkit-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-01-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rubber-generate
|
@@ -59,13 +59,15 @@ extensions:
|
|
59
59
|
- ext/webkit/extconf.rb
|
60
60
|
extra_rdoc_files: []
|
61
61
|
files:
|
62
|
-
- ext/webkit/webkit.c
|
63
|
-
- ext/webkit/javascript.h
|
64
62
|
- ext/webkit/javascript-type-convert.h
|
63
|
+
- ext/webkit/javascript.h
|
64
|
+
- ext/webkit/webkit.c
|
65
65
|
- ext/webkit/webkit.cr
|
66
66
|
- ext/webkit/webkit.rd
|
67
67
|
- Rakefile
|
68
68
|
- README.md
|
69
|
+
- lib/webkit.rb
|
70
|
+
- lib/webkit/version.rb
|
69
71
|
- ext/webkit/extconf.rb
|
70
72
|
homepage: http://github.com/geoffyoungs/gtk-webkit-ruby
|
71
73
|
licenses: []
|