aboutsummaryrefslogtreecommitdiffhomepage
path: root/examples/data/uzbl
diff options
context:
space:
mode:
authorGravatar Mason Larobina <mason.larobina@gmail.com>2009-12-14 03:47:46 +0800
committerGravatar Mason Larobina <mason.larobina@gmail.com>2009-12-14 03:47:46 +0800
commit58ca1929a360565b6114d1fbdd47a41ba88f903e (patch)
tree2c03195c9eca6c14df07fdbb29e971571fb4a22e /examples/data/uzbl
parentf75a2b19017778a8dace0a8004d2a7cf10323bfd (diff)
parent3261368285832a1efc552a8be4dfd7e6f53b5505 (diff)
Merge branch 'master' into mode-binds
Diffstat (limited to 'examples/data/uzbl')
-rw-r--r--examples/data/uzbl/plugins/completion.py3
-rw-r--r--examples/data/uzbl/scripts/follow_Numbers.js5
-rw-r--r--examples/data/uzbl/scripts/follow_Numbers_Strings.js7
-rwxr-xr-xexamples/data/uzbl/scripts/uzbl-event-manager18
4 files changed, 28 insertions, 5 deletions
diff --git a/examples/data/uzbl/plugins/completion.py b/examples/data/uzbl/plugins/completion.py
index 770f310..8e055e1 100644
--- a/examples/data/uzbl/plugins/completion.py
+++ b/examples/data/uzbl/plugins/completion.py
@@ -29,6 +29,9 @@ def escape(str):
def add_instance(uzbl, *args):
UZBLS[uzbl] = dict(DEFAULTS)
+ # Make sure the config keys for all possible completions are known.
+ uzbl.send('dump_config_as_events')
+
def del_instance(uzbl, *args):
if uzbl in UZBLS:
diff --git a/examples/data/uzbl/scripts/follow_Numbers.js b/examples/data/uzbl/scripts/follow_Numbers.js
index efde4d7..00b279e 100644
--- a/examples/data/uzbl/scripts/follow_Numbers.js
+++ b/examples/data/uzbl/scripts/follow_Numbers.js
@@ -17,6 +17,10 @@ var doc = document;
var win = window;
var links = document.links;
var forms = document.forms;
+
+//Reset keycmd, modcmd and return to default mode.
+function clearKeycmd() { Uzbl.run('set mode ='); }
+
//Make onlick-links "clickable"
try {
HTMLElement.prototype.click = function() {
@@ -123,6 +127,7 @@ function generateHint(el, label) {
//but at least set the href of the link. (needs some improvements)
function clickElem(item) {
removeAllHints();
+ clearKeycmd();
if (item) {
var name = item.tagName;
if (name == 'A') {
diff --git a/examples/data/uzbl/scripts/follow_Numbers_Strings.js b/examples/data/uzbl/scripts/follow_Numbers_Strings.js
index 67da2f9..e50da5d 100644
--- a/examples/data/uzbl/scripts/follow_Numbers_Strings.js
+++ b/examples/data/uzbl/scripts/follow_Numbers_Strings.js
@@ -4,6 +4,10 @@ var doc = document;
var win = window;
var links = document.links;
var forms = document.forms;
+
+//Reset keycmd, modcmd and return to default mode.
+function clearKeycmd() { Uzbl.run('set mode ='); }
+
try {
HTMLElement.prototype.click = function() {
if (typeof this.onclick == 'function') {
@@ -93,8 +97,10 @@ function generateHint(el, label) {
hint.style.webkitTransform = 'scale(1) rotate(0deg) translate(-6px,-5px)';
return hint;
}
+
function clickElem(item) {
removeAllHints();
+ clearKeycmd();
if (item) {
var name = item.tagName;
if (name == 'A') {
@@ -117,6 +123,7 @@ function clickElem(item) {
}
}
}
+
function addLinks() {
res = [[], []];
for (var l = 0; l < links.length; l++) {
diff --git a/examples/data/uzbl/scripts/uzbl-event-manager b/examples/data/uzbl/scripts/uzbl-event-manager
index 6669282..7a02da9 100755
--- a/examples/data/uzbl/scripts/uzbl-event-manager
+++ b/examples/data/uzbl/scripts/uzbl-event-manager
@@ -357,6 +357,7 @@ class UzblInstance(object):
self.depth = 0
self.buffer = ''
+ self.pid = None
# Call the init() function in every plugin. Inside the init function
# is where the plugins insert the hooks into the event system.
@@ -423,6 +424,9 @@ class UzblInstance(object):
'''Connect event with handler and return the newly created handler.
Handlers can either be a function or a uzbl command string.'''
+ event = event.upper().strip()
+ assert event and ' ' not in event
+
if event not in self._handlers.keys():
self._handlers[event] = []
@@ -478,12 +482,16 @@ class UzblInstance(object):
def event(self, event, *args, **kargs):
- '''Raise a custom event.'''
+ '''Raise an event.'''
+
+ event = event.upper()
+ elems = [event,]
+ if args: elems.append(unicode(args))
+ if kargs: elems.append(unicode(kargs))
+ print "%s--> %s" % (' ' * self.depth, ' '.join(elems))
- # Silence _printing_ of geo events while debugging.
- if event != "GEOMETRY_CHANGED":
- print "%s--> %s %s %s" % (' ' * self.depth, event, args,
- '' if not kargs else kargs)
+ if event == "INSTANCE_START" and args:
+ self.pid = int(args[0])
if event not in self._handlers:
return