that
Hoffnungsloser Optimist
|
Mozilla 0wnz, weil man mit wenig Aufwand alles umbauen kann... Ergebnis des heutigen Hacks: Shift+Click auf ein Image speichert das Bild ohne weitere Fragen ins Download-Verzeichnis unter dem Filenamen, wie ihn der Server liefert. Vorbereitungen zum Hack: 1. bin/chrome/comm.jar unzippen (mit Dirs!) 2. bin/chrome/installed-chrome.txt editieren: die Zeile (bei mir ist es Zeile 11): content,install,url,jar:resource:/chrome/comm.jar!/content/navigator/ ersetzen durch: content,install,url,resource:/chrome/comm/content/navigator/ der Hack selbst (2 Files in bin/chrome/comm/content/communicator sind zu ändern): (Zeilen mit "-" löschen, stattdessen Zeilen mit "+" einfügen (das "-" oder "+" nicht eintippen!). Viele Zeilen sind einfach nur eingerückt worden. Die Zeilen mit "+++" geben den Filenamen an, und Zeilen mit "@@" sind zur Orientierung, bei welchen Zeilennummern die Blöcke sind): --- contentAreaClick.js.orig Thu May 30 23:21:49 2002
+++ contentAreaClick.js Sun Jun 2 19:52:10 2002
@@ -125,6 +125,10 @@
local_name = local_name.toLowerCase();
}
+ if (local_name == "img" && event.button == 0 && event.shiftKey) {
+ saveURL(target.src, "@@default@@", "SaveImageTitle", false);
+ }
+
switch (local_name) {
case "a":
case "area":
--- contentAreaUtils.js.orig Sun Jun 2 18:57:47 2002
+++ contentAreaUtils.js Sun Jun 2 20:19:11 2002
@@ -254,16 +254,22 @@
var defaultExtension = getDefaultExtension(defaultFileName, aSniffer.uri, contentType);
fp.defaultExtension = defaultExtension;
fp.defaultString = getNormalizedLeafName(defaultFileName, defaultExtension);
-
- if (fp.show() == Components.interfaces.nsIFilePicker.returnCancel || !fp.file)
- return;
+
+ var saveFile;
+ if (aData.fileName != "@@default@@" || defaultFileName == "@@default@@") {
+ if (fp.show() == Components.interfaces.nsIFilePicker.returnCancel || !fp.file)
+ return;
- if (isDocument)
- prefs.setIntPref("save_converter_index", fp.filterIndex);
- var directory = fp.file.parent.QueryInterface(nsILocalFile);
- prefs.setComplexValue("dir", nsILocalFile, directory);
+ if (isDocument)
+ prefs.setIntPref("save_converter_index", fp.filterIndex);
+ var directory = fp.file.parent.QueryInterface(nsILocalFile);
+ prefs.setComplexValue("dir", nsILocalFile, directory);
- fp.file.leafName = validateFileName(fp.file.leafName);
+ fp.file.leafName = validateFileName(fp.file.leafName);
+ } else {
+ saveFile = prefs.getComplexValue("dir", nsILocalFile);
+ saveFile.appendRelativePath(getNormalizedLeafName(defaultFileName, defaultExtension));
+ }
// If we're saving a document, and are saving either in complete mode or
// as converted text, pass the document to the web browser persist component.
@@ -272,7 +278,7 @@
var persistArgs = {
source : source,
contentType : (isDocument && fp.filterIndex == 2) ? "text/plain" : contentType,
- target : fp.file,
+ target : saveFile ? saveFile : fp.file,
postData : aData.document ? getPostData() : null,
bypassCache : aData.bypassCache
};
Nach dem Abspeichern den Mozilla neu starten und Babes Home surfen. Ich übernehme selbstverständlich keine Haftung für Schäden an Soft- oder Hardware (falls es jemand wegen dieses w00ten Features vom Sessel haut). Wenn was nicht funktioniert, unter Tools -> Web Development -> JavaScript Console schauen, wo der Fehler ist. Ich beantworte gerne etwaige Fragen hier im Thread, solange sie nicht das Entpacken oder Editieren von Files betreffen.
|
-wrax-
<...>
|
brav gemacht also ich wuerde mich mit solchen sachen nicht beschäftigen,,, aber zum glueck gibt es eben leute wie dich. (move to include('coding_stuff.inc'); ?)
|
HVG
Vereinsmitglieduntitled
|
willst ned no was nützliches machn?
|