Damit hängt das zusammen
Ah, danke.
Damit hängt das zusammen
Ah, danke.
Bei mir steht auch 2.6.0, aber als letztes Aktualisierungsdatum schon der 14.03.2025.
Ach ja, Nightly.
Ich habe erst einmal den Fehlerbehandlungsmodus ausgeführt, da waren alle meine AddOns weg.
Kann mir jemand sagen ob die nach dem Neustart wieder da sind?
Im Fehlerbehebungsmodus werden alle Add-ons deaktiviert, da sie ja Verursacher von Problemen sein können. Ist im Fehlerbehebungsmodus das Problem noch da, liegt es nicht an deinen Add-ons. Ist es weg, musst du dann nach dem Neustart im Normalmodus das betreffende Add-on herausfinden, indem du die Add-ons deaktivierst und wieder aktivierst. Es kann dann allerdings auch in bestimmten Fällen an der Hardwarebeschleunigung, CSS-Code oder Benutzerskripten liegen, die ebenfalls im Fehlerbehebungsmodus deaktiviert werden. Wenn aber das Problem in Fehlerbehebungsmodus weiterhin existiert, muss die Ursache an anderer Stelle im Benutzerprofil zu finden sein.
sam2008 Ersetze bitte mal in deiner Version aus Beitrag #4388 die Zeilen 12-16 (also die Zeilen von mir) durch:
ChromeUtils.defineESModuleGetters(this, { MigrationUtils: "resource:///modules/MigrationUtils.sys.mjs", });
ChromeUtils.defineESModuleGetters(this, { BookmarkJSONUtils: "resource://gre/modules/BookmarkJSONUtils.sys.mjs", });
ChromeUtils.defineESModuleGetters(this, { PlacesBackups: "resource://gre/modules/PlacesBackups.sys.mjs" });
Auf jeden Fall immer die neueste (am PC). Jetzt schreibe ich am Smartphone.
Nur so: Es gibt nicht die neueste Version. Es gibt vier aktuelle Versionen: Fx 128 ESR, Fx 136 final, Fx 137 Beta und Fx 138 Nightly. Also bitte in Zukunft die genaue Version angegeben.
In der Bibliothek kann man sie auch als .json-Datei speichern, Importieren und Sichern --> Sichern.
Ich habe jetzt mal meine Version an Aris gemeldet:
Dort ganz unten. Irgendwie bin ich da nicht mit dem Code-Kasten klargekommen.
Irgendwie habe ich das Gefühl, dass du dich schnell auf den Schlips getreten fühlst.
Irgendwie habe ich das Gefühl, dass du immer denkst, dass ich mich auf den Schlips getreten fühle.
Vielleicht sollte man Aris mal informieren.
Danke fürs Heraussuchen. Ja, aber er hat derzeit noch die alte Version.
Dann ginge das doch auch anders. Automatisch beim Beenden, ganz ohne Eingreifen.
Es gibt Vieles, was auch anders geht. Es wird aber schon einen Grund haben, warum er das Skript verwendet.
Ich weiß gar nicht wie genau das funktionieren sollte
So genau, weiß ich das auch nicht, ich verwende das Skript ja auch nicht.
Wo werden die Dateien denn wenn dann gespeichert?
In Zeile 26 (mein Code, beim TE durch die Kommentarzeilen weiter unten), steht der Code
Das sorgt dafür, dass die Lesezeichen als .json-Datei gespeichert werden. Ob da vorher noch ein Speichern-Dialog erscheint, weiß ich nicht.
Es gibt da weiter oben die Zeile
Diese definiert die Variable für das Backup-Verzeichnis. „Desk“ könnte sich auf den Dsektop beziehen. In dem Fall braucht man keinen Speicherort angeben.Und weiter unten steht:
Diese Zeile weißt meines Erachtens der Variablen fp mit der Methode displayDirectory (Anzeige eines Verzeichnisses) die Variable backupsDir zu.
Bei Zertifikatsfehlern ist immer der vollständige Fehler wichtig.
Ergänzend: Auf der Seite, die dir angezeigt wird, sollte es eine Schaltfläche Erweitert… geben. Klicke da mal darauf und stelle die Informationen ein, die dir angezeigt werden. Darunter sollten auch genaue Fehlercodes sein.
Ach so genau habe ich nicht hingesehen. Ich sah da bloß .jsm mehrmals hintereinander. Die Schrägstriche vor den Zeilen habe ich nicht gesehen. Ich dachte auch, dass er meinen Code nimmt.
Du hast den alten Code wieder angegeben. Der funktioniert nicht mehr, du hast ja dann nicht einmal mehr die Symbole.
Da kann ich im Moment nicht helfen, ich sehe in der Zeile 10 jetzt keinen Fehler. Ich muss jetzt aber auch erst einmal außer Haus. Vielleicht kann dir inzwischen jemand anders helfen.
bookmarks_backup_restore_button.uc.js
Probiere dafür mal folgenden Code:
(function() {
try {
ChromeUtils.importESModule("resource:///modules/CustomizableUI.sys.mjs");
var sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
var RESTORE_FILEPICKER_FILTER_EXT = "*.json;*.jsonlz4";
const lazy = {};
ChromeUtils.defineESModuleGetters(lazy, { MigrationUtils: "resource:///modules/MigrationUtils.sys.mjs", });
ChromeUtils.defineESModuleGetters(lazy, { BookmarkJSONUtils: "resource://gre/modules/BookmarkJSONUtils.sys.mjs", });
ChromeUtils.defineESModuleGetters(lazy, { PlacesBackups: "resource://gre/modules/PlacesBackups.sys.mjs", });
CustomizableUI.createWidget({
id: "uc-bookmarks_backup", // button id
defaultArea: CustomizableUI.AREA_NAVBAR,
removable: true,
label: "Bookmarks Backup", // button title
tooltiptext: "Bookmarks Backup", // tooltip title
onClick: function(event) {
if(event.button=='0') {
let backupsDir = Services.dirsvc.get("Desk", Ci.nsIFile);
let fp = Cc["@mozilla.org/filepicker;1"].createInstance(Ci.nsIFilePicker);
let fpCallback = function fpCallback_done(aResult) {
if (aResult != Ci.nsIFilePicker.returnCancel) {
// There is no OS.File version of the filepicker yet (Bug 937812).
PlacesBackups.saveBookmarksToJSONFile(fp.file.path)
.catch(Cu.reportError);
}
};
fp.init(BrowsingContext.getFromWindow(window), "json", Ci.nsIFilePicker.modeSave);
fp.appendFilter("json",
RESTORE_FILEPICKER_FILTER_EXT);
fp.defaultString = PlacesBackups.getFilenameForDate();
fp.defaultExtension = "json";
fp.displayDirectory = backupsDir;
fp.open(fpCallback);
}
},
onCreated: function(button) {
return button;
}
});
CustomizableUI.createWidget({
id: "uc-bookmarks_restore", // button id
defaultArea: CustomizableUI.AREA_NAVBAR,
removable: true,
label: "Bookmarks Restore", // button title
tooltiptext: "Bookmarks Restore", // tooltip title
onClick: function(event) {
if(event.button=='0') {
let backupsDir = Services.dirsvc.get("Desk", Ci.nsIFile);
let fp = Cc["@mozilla.org/filepicker;1"].createInstance(Ci.nsIFilePicker);
let fpCallback = aResult => {
if (aResult != Ci.nsIFilePicker.returnCancel) {
// check file extension
if (!fp.file.path.toLowerCase().endsWith("json") &&
!fp.file.path.toLowerCase().endsWith("jsonlz4")) {
this._showErrorAlert(PlacesUIUtils.getString("bookmarksRestoreFormatError"));
return;
}
// confirm ok to delete existing bookmarks
if (!Services.prompt.confirm(null,
PlacesUIUtils.getString("bookmarksRestoreAlertTitle"),
PlacesUIUtils.getString("bookmarksRestoreAlert")))
return;
(async function() {
try {
await BookmarkJSONUtils.importFromFile(fp.file.path, {
replace: true,
});
} catch (ex) {
PlacesOrganizer._showErrorAlert(PlacesUIUtils.getString("bookmarksRestoreParseError"));
}
})();
}
};
fp.init(BrowsingContext.getFromWindow(window), "json", Ci.nsIFilePicker.modeOpen);
fp.appendFilter("json",
RESTORE_FILEPICKER_FILTER_EXT);
fp.appendFilters(Ci.nsIFilePicker.filterAll);
fp.displayDirectory = backupsDir;
fp.open(fpCallback);
}
},
onCreated: function(button) {
return button;
}
});
// style button icon
var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent('\
\
#uc-bookmarks_backup .toolbarbutton-icon {\
list-style-image: url( data:image/png;base64,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); /* icon / path to icon */ \
fill: red; /* icon color name/code */\
}\
#uc-bookmarks_restore .toolbarbutton-icon {\
list-style-image: url( data:image/png;base64,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); /* icon / path to icon */ \
fill: green; /* icon color name/code */\
}\
\
'), null, null);
sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
} catch (e) {
Components.utils.reportError(e);
};
})();
Alles anzeigen
Du hast einige Zeilen, wo noch .jsm-Module eingelesen werden. Die gibt es nicht mehr. Im Neustart-Skript entferne mal nur Zeile 3. Die neue Zeile hast du schon in Zeile 4. Zeile 3 hast du offenbar vergessen auszukommentieren (mit //) bzw. zu entfernen. Vielleicht funktioniert es dann schon wieder.
Das erste Skript müsste ich jetzt erst einmal genauer durchsehen.
Und nur so nebenbei: Aus dem gleichen Grund gibt es keine aktuellste Version, wie man immer mal wieder liest. Ja mehr noch, aktuell ist das „höchste der Gefühle“, es gibt nichts aktuelleres. Ähnlich verhält es sich mit einzigste. Es gibt nichts einzigeres als das Einzige. Die Rechtschreibprüfung hier weiß das auch, denn sie unterstreicht beide Wörter mit einer roten Wellenlinie.
Naja, er hatte geschrieben dass es in einem anderen Profil funktioniert.
Er hatte aber dann noch ein großes „ABER“ geschrieben und seinen Beitrag #29 offenbar noch nachträglich editiert. Später ergänzte er ja auch noch, dass auch er die Einstellung in about:config auf false gesetzt hat.
Warum auch immer, mit dem Skript aus Beitrag Nr. 5 und der Änderung in der config funktioniert es jetzt hier auch. Getestet in Fx 136.0.2
Na wunderbar, Ende gut, alles gut. Es gibt eben Dinge zwischen Skripten und Erde …
Hast du das inzwischen schon gemacht?
So wie ich das jetzt verstanden habe, ist das Problem des TE für ihn gelöst. Mit der von mir genannten Einstellung in about:config. Der Ball liegt jetzt eher bei dir, da du geschrieben hast, dass du das Problem selbst mit browser.newtabpage.activity-stream.improvesearch.handoffToAwesomebar auf false hast.