1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2025-12-24 00:32:27 +01:00

Dispatch input event after external editing.

This commit is contained in:
Kris Maglione
2011-07-21 23:03:04 -04:00
parent 9667a0d19a
commit 307ca9a621
3 changed files with 16 additions and 8 deletions

View File

@@ -1,3 +1,4 @@
// Copyright (c) 2008-2011 Kris Maglione <maglione.k at Gmail>
// Copyright (c) 2006-2009 by Martin Stubenschrott <stubenschrott@vimperator.org> // Copyright (c) 2006-2009 by Martin Stubenschrott <stubenschrott@vimperator.org>
// //
// This work is licensed for reuse under an MIT license. Details are // This work is licensed for reuse under an MIT license. Details are
@@ -303,8 +304,14 @@ var Editor = Module("editor", {
lastUpdate = Date.now(); lastUpdate = Date.now();
let val = tmpfile.read(); let val = tmpfile.read();
if (textBox) if (textBox) {
textBox.value = val; textBox.value = val;
textBox.setAttributeNS(NS, "modifiable", true);
util.computedStyle(textBox).MozUserInput;
events.dispatch(textBox, events.create(textBox.ownerDocument, "input", {}));
textBox.removeAttributeNS(NS, "modifiable");
}
else { else {
while (editor_.rootElement.firstChild) while (editor_.rootElement.firstChild)
editor_.rootElement.removeChild(editor_.rootElement.firstChild); editor_.rootElement.removeChild(editor_.rootElement.firstChild);

View File

@@ -431,14 +431,11 @@ var File = Class("File", {
ofstream.init(this, mode, perms, 0); ofstream.init(this, mode, perms, 0);
try { try {
if (callable(buf))
buf(ofstream.QueryInterface(Ci.nsIOutputStream));
else {
var ocstream = getStream(0); var ocstream = getStream(0);
ocstream.writeString(buf); ocstream.writeString(buf);
} }
} catch (e if e.result == Cr.NS_ERROR_LOSS_OF_SIGNIFICANT_DATA) {
catch (e if callable(buf) && e.result == Cr.NS_ERROR_LOSS_OF_SIGNIFICANT_DATA) { ocstream.close();
ocstream = getStream("?".charCodeAt(0)); ocstream = getStream("?".charCodeAt(0));
ocstream.writeString(buf); ocstream.writeString(buf);
return false; return false;

View File

@@ -7,6 +7,10 @@
-moz-binding: url(resource://dactyl-content/bindings.xml#frame) !important; -moz-binding: url(resource://dactyl-content/bindings.xml#frame) !important;
} }
[dactyl|modifiable][dactyl|modifiable] {
-moz-user-input: enabled !important;
}
[dactyl|highlight~=hints] { [dactyl|highlight~=hints] {
-moz-binding: url(resource://dactyl-content/bindings.xml#hints) !important; -moz-binding: url(resource://dactyl-content/bindings.xml#hints) !important;
position: static !important; position: static !important;