Hallo Speravir.
Ist aktualisiert:
Update usercssloader.uc.js · Endor8/userChrome.js@9642390
Aktualisierung von Speravir - camp-firefox.de
github.com
Mfg.
Endor
Hallo Speravir.
Ist aktualisiert:
Mfg.
Endor
Ich weiß jetzt nicht ob diese Version nach euren Wünschen funktioniert,
aber der Autor hat sie erst kürzlich aktualisiert:
/* Firefox userChrome script
* Tab bar at bottom of window
* Tested on Firefox 140
* Author: garywill (https://garywill.github.io)
*/
// ==UserScript==
// @include main
// ==/UserScript==
console.log("tabs_below_content.uc.js");
(() => {
const Services = globalThis.Services || ChromeUtils.import("resource://gre/modules/Services.jsm").Services;
const sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
// always loaded css
const tabbar_css = Services.io.newURI( "data:text/css;charset=utf-8," + encodeURIComponent(`
#TabsToolbar {
position: fixed;
bottom: 0px;
width: 100%;
background-image: var(--lwt-header-image, var(--lwt-additional-images) ) ;
background-color: var(--toolbar-bgcolor, var(--toolbar-field-background-color, var(--lwt-accent-color-inactive, var(--lwt-accent-color)))) !important;
}
#fake_tabbar {
height: var(--tabstrip-min-height);
}
`), null, null );
if ( ! sss.sheetRegistered(tabbar_css, sss.USER_SHEET) )
sss.loadAndRegisterSheet(tabbar_css, sss.USER_SHEET);
// loaded when tab bar shown (eg: not fullscreen)
const css_tabbar_shown = `
#TabsToolbar {
}
#browser {
}
`;
// loaded when tab bar totally hidden (eg: all fullscreen)
const css_tabbar_hidden = `
#TabsToolbar {
display: none;
}
#fake_tabbar {
display: none;
}
#browser {
}
`;
const style_tag = document.createElement("style");
style_tag.id = "styletag_tabbarbelowcontent";
document.head.appendChild(style_tag);
function show_tabbar() {
style_tag.textContent = css_tabbar_shown;
}
function hide_tabbar() {
style_tag.textContent = css_tabbar_hidden;
}
const tabsbar = document.getElementById("TabsToolbar");
const fake_tabbar = document.createElement("toolbox");
fake_tabbar.id = "fake_tabbar";
const ele_browser = document.getElementById("browser");
ele_browser.parentNode.appendChild(fake_tabbar, ele_browser);
// tabsbar.setAttribute("flex", "0");
// #fullscr-toggler [ hidden ]
// window.fullScreen (R/W bool)
// window.FullScreen (obj)
// document.fullscreen (R bool)
// document.fullscreenElement (DOM)
let status_fullscreen;
let status_tabbarvertical;
const fullscr_toggler = document.getElementById("fullscr-toggler");
const fullscreen_warning = document.getElementById("fullscreen-warning");
var tabsbar_fullscr_observer = new MutationObserver(check_status_fullscreen);
function check_status_fullscreen(){
if (window.fullScreen)
{
console.log("fullscreen !!!");
if(document.fullscreenElement) // video fullscreen
{
console.log("fullscreen video");
status_fullscreen = true;
}
else // manually browser fullscreen
{
console.log("fullscreen non-video");
status_fullscreen = false;
}
}
else // not fullscreen
{
console.log("not fullscreen");
status_fullscreen = false;
}
update_css();
}
tabsbar_fullscr_observer.observe(fullscr_toggler,{attributes:true});
tabsbar_fullscr_observer.observe(fullscreen_warning,{attributes:true});
const box_vertical_tabs = document.getElementById("vertical-tabs");
box_vertical_tabs_observer = new MutationObserver(check_status_tabbarvertical);
function check_status_tabbarvertical() {
if (box_vertical_tabs.querySelector('tabs'))
{
console.log('tabbar is vertical');
status_tabbarvertical = true;
}
else
{
console.log('tabbar not vertical');
status_tabbarvertical = false;
}
update_css();
}
box_vertical_tabs_observer.observe(box_vertical_tabs, {childList: true});
function update_css() {
if (status_fullscreen || status_tabbarvertical) {
console.log('hide_tabbar()')
hide_tabbar();
}else{
console.log('show_tabbar()')
show_tabbar();
}
}
check_status_fullscreen();
check_status_tabbarvertical();
})();
Alles anzeigen
Quelle: https://github.com/garywill/tabs-…w_content.uc.js
Mfg.
Endor
Speravir.
Klasse Arbeit.![]()
![]()
Danke auch für den neuen Header.
Passt perfekt. Sobald Du dein OK gibst lade ich sie bei Github
rauf.
Mfg.
Endor
Das war mal der original Header und die Bedienung
aus dem Script vom Autor Griever:
// ==UserScript==
// @name UserCSSLoader
// @description Stylish みたいなもの
// @namespace http://d.hatena.ne.jp/Griever/
// @author Griever
// @include main
// @license MIT License
// @compatibility Firefox 4
// @charset UTF-8
// @version 0.0.4
// @note 0.0.4 Remove E4X
// @note CSSEntry クラスを作った
// @note スタイルのテスト機能を作り直した
// @note ファイルが削除された場合 rebuild 時に CSS を解除しメニューを消すようにした
// @note uc で読み込まれた .uc.css の再読み込みに仮対応
// ==/UserScript==
/****** 使い方 ******
chrome フォルダに CSS フォルダが作成されるのでそこに .css をぶち込むだけ。
ファイル名が "xul-" で始まる物、".as.css" で終わる物は AGENT_SHEET で、それ以外は USER_SHEET で読み込む。
ファイルの内容はチェックしないので @namespace 忘れに注意。
メニューバーに CSS メニューが追加される
メニューを左クリックすると ON/OFF
中クリックするとメニューを閉じずに ON/OFF
右クリックするとエディタで開く
エディタは "view_source.editor.path" に指定されているものを使う
フォルダは "UserCSSLoader.FOLDER" にパスを入れれば変更可能
**** 説明終わり ****/
Alles anzeigen
Quelle: https://github.com/Griever/userCh…r/UserCSSLoader
Den hat dann Mithrandir , ardiman bei „Github“, übersetzt.
Durch die Aktualisierungen von wem auch immer wurde wie üblich
das dann erweitert. Ob man das dann alles braucht ist eine andere Frage.
Mfg.
Endor
Soll ja auch in Linux und Mac funktionieren.
Das wäre die optimale Lösung.
Gegenteil von "so einfach wie möglich"
Das ist bei diesem komplexen Script von Haus aus nicht machbar.
Es geht auch darum, dass wir hier im Forum nicht mit Anfragen
zur Verwendung überhäuft werden. Denn der Großteil der Benutzer
will sich gar nicht näher mit der Materie befassen müssen.
Es soll funktionieren und fertig.
Vielleicht baut ihr noch eine Funktion ein, die abfragt, ob ein Dateimanager eingetragen ist,
und wenn nicht, dass dann der alte Code als Backup greift.
Ich schließe mich da Mira_Belle an.
Wenn dann schon so.
Was die Bedienungsanleitung betrifft, würde ich mit eurer Hilfe,
bei Github eine für das Script machen. Diese hier von Ardiman könnte man
als Basis verwenden und entsprechend erweitern.
Mfg.
Endor
Hallo Mira_Belle .
Alles gut. Hier funktioniert alles einwandfrei.
Also keinerlei Eile wegen mir notwendig.
Ich hatte nur auf deinen Hinweis geantwortet.
Viele Grüße
Endor
Da fehlen vorher die ";"
Das hatte ich schon gleich bemerkt und hatte die bei mir eingefügt.
Also daran hat es sicher nicht gelegen. Schade.
Boersenfeger.
Was mich betrifft, gern geschehen.
Mfg.
Endor
Hallo Speravir.
Danke für den neuen CSS Code für die Schaltfläche.
Der funktioniert prima.
Mfg.
Endor
Hallo Boersenfeger.
Version 208 funktioniert hier nun einwandfrei.
Melde mich per PN.
Mfg.
Endor
Ja Mira_Belle ist sehr fleißig. Sie versucht auf alle Wünsche einzugehen.
Daher gibt es dann halt auch öfter Aktualisierungen.
Ich bleibe mal bei Version Scrollbar.v2.0.7.js
da funktioniert alles einwandfrei.
Vielen Dank nochmals Mira_Belle .
Mfg.
Endor
Ich habe hier:
const custom_scrollbar_arrows_version = 2;
Da ich ja eigene Symbole verwende.
lies nochmal hier:
Der Absatz im Script da steht:
// only for 'custom_scrollbar_arrows_version = 2'
const cs_scrollbar_arrows_color = "#33CCFF"; // " #7c7c7c "
const cs_scrollbar_arrows_hover_color = "#ffa600";
und nun?
Bezeichnungen stimmen da sie ja angezeigt werden.
Nur nicht in der definierten Farbe sondern in dunkelgrau - schwarz.
Eben nochmal getestet mit Symbolen aus deinem Betrag immer das gleiche
Immer schwarz, normal und bei hover.
Ja der Pfad stimmt einwandfrei.
Das hat ja auch nicht daran gelegen vorhin.
War meine Schuld, dass ich nicht bemerkt hatte dass die Bezeichnung der Symbole
angepasst werden musste. Also nicht Dein Fehler.
Aber warum das Umfärben hier nicht funktioniert ist mir ein Rätsel.
Hallo Mira_Belle .
Diese beiden Zeilen, zum Umfärben der Symbole funktionieren nicht.
Da kann ich eingeben was ich will.
Verwende Dein Script aus: #111
und die Symbole aus letztem Beitrag.
Symbole werden angezeigt usw. auch rest passt
nur die Farben der Symbole werden nicht geändert.
Hallo 2002Andreas.
Ja genau die.
Prima vielen Dank!!
Klasse!!
Mfg.
Endor