new module to enable editing and deleting of bookmarks
[conkeror/arlinius.git] / modules / special-buffer.js
blob69ec738b4be4edb71d1b020fab5daf67c845ce36
1 /**
2 * (C) Copyright 2008 Jeremy Maitin-Shepard
4 * Use, modification, and distribution are subject to the terms specified in the
5 * COPYING file.
6 **/
8 require("buffer.js");
10 define_buffer_local_hook("special_buffer_generated_hook");
11 define_current_buffer_hook("current_special_buffer_generated_hook", "special_buffer_generated_hook");
14 function special_buffer (window) {
15 this.constructor_begin();
16 keywords(arguments);
17 conkeror.buffer.call(this, window, forward_keywords(arguments));
18 this.generated = false;
20 var buffer = this;
21 add_hook.call(this, "buffer_loaded_hook", function () {
22 buffer.generated = true;
23 buffer.generate();
24 call_after_timeout(function () {
25 special_buffer_generated_hook.run(buffer);
26 }, 0);
27 });
28 this.web_navigation.loadURI("chrome://conkeror-gui/content/blank.html", Ci.nsIWebNavigation.LOAD_FLAGS_NONE,
29 null /* referrer */, null /* post data */, null /* headers */);
30 this.constructor_end();
32 special_buffer.prototype = {
33 constructor: special_buffer,
34 __proto__: buffer.prototype,
35 toString: function () "#<special_buffer>",
36 generate: function () {
37 throw Error("subclasses of special_buffer must define 'generate'");
41 provide("special-buffer");