BrowserWindow.bjs
authorAlan Knowles <alan@roojs.com>
Thu, 12 Nov 2015 03:59:43 +0000 (11:59 +0800)
committerAlan Knowles <alan@roojs.com>
Thu, 12 Nov 2015 03:59:43 +0000 (11:59 +0800)
BrowserWindow.vala

BrowserWindow.bjs
BrowserWindow.vala

index 27e5ee6..a7ca545 100644 (file)
@@ -25,7 +25,7 @@
       {
        "listeners" : {
         "print" : "(pe) => {\n\t\n    \t\t print(\"got callback for print\");\n    \t\tpe.ref();\n\t\t\tpe.failed.connect(() => {\n \t\t\t\tprint(\"print failed\\n\");\n\t\t\t\t Gtk.main_quit();\n        \t\t\n    \t\t});\n    \t\t pe.finished.connect(() => {\n \t\t\t\tprint(\"print completed\\n\");\n\t\t\t\t Gtk.main_quit();\n        \t\t\n    \t\t});\n    \t\t\n    \t\t//pe.run_dialog(_this.el);\n    \t\treturn false;\n    \t\t\n\t\t    var list = Gtk.PaperSize.get_paper_sizes(false);\n\t\t    var psetup = new Gtk.PageSetup();\n\t\t    for(var i = 0; i < list.length(); i++ ) {\n\t\t        var entry = list.nth_data(i).copy();\n\t\t        if (entry.get_name() == \"iso_a2\") {\n\t\t            psetup.set_paper_size(entry);\n\t\t        }\n\t\t    }\n\t\t        \n\n\n\t\t    var ps = new Gtk.PrintSettings();\n\t\t    ps.set_printer(\"Print to File\");\n\t\t    ps.set(\"output-file-format\", \"pdf\");\n\t\t    //ps.set(\"output-uri\", \"file://\" + webkitpdf.opt_target_pdf);\n\t\t    ps.set(\"output-uri\",  webkitpdf.opt_target_pdf);\n\n\t\t    pe.set_print_settings(ps);\n\t\t    pe.set_page_setup(psetup);\n\t\t    print(\"Calling Print?\\n\");\n\t\t    pe.run_dialog(_this.el);\n\t\t    //pe.print();\n\t\t    return false;\n\t\t   \n}",
-        "load_changed" : "(le) => {\n\t\t \n        print(\"load_changed %d ?= %d\\n\", le, WebKit.LoadEvent.FINISHED);\n\n        if (le != WebKit.LoadEvent.FINISHED) {\n            return;\n        }\n        /*\n        GLib.Timeout.add_seconds(webkitpdf.opt_delay, () => { \n            print(\"making screenshot\\n\");\n            _this.view.el.get_snapshot.begin(\n        \t\t\tWebKit.SnapshotRegion.FULL_DOCUMENT, \n        \t\t\tWebKit.SnapshotOptions.NONE, null, (obj, res) => {\n                var sf = _this.view.el.get_snapshot.end(res);\n\n                sf.write_to_png(webkitpdf.opt_target_png);\n            });\n            Gtk.main_quit();\n            return false;\n        }, GLib.Priority.DEFAULT);\n */       \n \n\t\tprint(\"calling print in %d seconds\\n\", (int)webkitpdf.opt_delay);\n        GLib.Timeout.add_seconds(webkitpdf.opt_delay, () => { \n    \t\tprint(\"calling print in js\\n\");\n    \t\t\n    \t\t var loop = new MainLoop();\n\t\t\tthis.el.run_javascript.begin(\"print();\", null, () => {\n\t\t\t\t\tprint(\"calling print in js ended\\n\");\n\t\t\t\t    this.el.run_javascript.end(res);\n\t\t\t\t    loop.quit();\n\t\t\t});\n\t\t\tloop.run();\n\n\t\t\treturn false;\n        }, GLib.Priority.DEFAULT);\n \n}"
+        "load_changed" : "(le) => {\n\t\t \n        print(\"load_changed %d ?= %d\\n\", le, WebKit.LoadEvent.FINISHED);\n\n        if (le != WebKit.LoadEvent.FINISHED) {\n            return;\n        }\n        /*\n        GLib.Timeout.add_seconds(webkitpdf.opt_delay, () => { \n            print(\"making screenshot\\n\");\n            _this.view.el.get_snapshot.begin(\n        \t\t\tWebKit.SnapshotRegion.FULL_DOCUMENT, \n        \t\t\tWebKit.SnapshotOptions.NONE, null, (obj, res) => {\n                var sf = _this.view.el.get_snapshot.end(res);\n\n                sf.write_to_png(webkitpdf.opt_target_png);\n            });\n            Gtk.main_quit();\n            return false;\n        }, GLib.Priority.DEFAULT);\n */       \n \n\t\tprint(\"calling print in %d seconds\\n\", (int)webkitpdf.opt_delay);\n        GLib.Timeout.add_seconds(webkitpdf.opt_delay, () => { \n    \t\tprint(\"calling print in js\\n\");\n    \t\t\n    \t\t var loop = new MainLoop();\n\t\t\tthis.el.run_javascript.begin(\"print();\", null, (obj,res) => {\n\t\t\t\t\tprint(\"calling print in js ended\\n\");\n\t\t\t\t    this.el.run_javascript.end(res);\n\t\t\t\t    loop.quit();\n\t\t\t});\n\t\t\tloop.run();\n\n\t\t\treturn false;\n        }, GLib.Priority.DEFAULT);\n \n}"
        },
        "id" : "view",
        "xtype" : "WebView",
index 7b8a98f..80ad5f1 100644 (file)
@@ -161,7 +161,7 @@ public class BrowserWindow : Object
                                print("calling print in js\n");
                                
                                 var loop = new MainLoop();
-                               this.el.run_javascript.begin("print();", null, () => {
+                               this.el.run_javascript.begin("print();", null, (obj,res) => {
                                                print("calling print in js ended\n");
                                            this.el.run_javascript.end(res);
                                            loop.quit();