Bin zur Zeit nur immer kurz vor dem PC.
Die Scrollbar habe ich wie 2002Andreas schon geschrieben hat ausgeblendet.
Sieht bei mir auch ähnlich wie bei 2002Andreas aus.
Nur unten die Schaltfläche ist hier nicht zweizeilig.
Mal sehen.
Mfg.
Endor
Bin zur Zeit nur immer kurz vor dem PC.
Die Scrollbar habe ich wie 2002Andreas schon geschrieben hat ausgeblendet.
Sieht bei mir auch ähnlich wie bei 2002Andreas aus.
Nur unten die Schaltfläche ist hier nicht zweizeilig.
Mal sehen.
Mfg.
Endor
Hallo 2002Andreas
Vielen Dank für den Hinweis.
Ja das aus Zeile 6 wird hier auch nicht angezeigt.
Muss ich gleich noch ändern. Des weiteren hatte ich zwei
Anpassungen vergessen wieder zu entfernen.
Demnächst kommt eine neue Version.
Mfg.
Endor
So bitte nochmal testen:
@namespace url(http://www.w3.org/1999/xhtml);
@-moz-document url-prefix(about:logins) {
.container > ol:nth-child(1){scrollbar-width: none !important;}
.column:before {
content: "Design by Endor";
margin-left: 150px!important;
margin-top: -10px!important;
font-size: 25px!important;
font-weight: bold!important;
color: red!important;}
body > header:nth-child(1){
margin-left: -35px !important;
margin-top: 1px !important;
border-bottom: none !important;
border-top-right-radius:28px !important;
border-top-left-radius:28px !important;}
body > login-item:nth-child(3){border-right-width: 1px !important;}
body > login-list{
width: auto !important;
margin-top: 70px !important;
border-right: none !important;
border-bottom: none !important;
scrollbar-width: none !important;}
.count{
color: #0f6acc !important;
font-size: 15px !important;
font-weight: bold !important;}
body > login-list:nth-child(2){ border-bottom: none !important;}
li[class="login-list-item"],
li[class="login-list-item selected"]{padding-left: 25px !important;}
div.detail-row:nth-child(2) > div:nth-child(1) > label:nth-child(1) > input:nth-child(2),
.password-display {width: 240px !important;}
.meta{padding-left: 35px !important; border-right: none !important; border-bottom: none !important;}
.create-login-button-container {padding-left: 10px !important; padding-right: 70px !important;
margin-bottom: 1px !important; box-shadow: none !important; border-top: none !important;}
.container > ol:nth-child(1){border-bottom: none !important; box-shadow: none !important;}
.header, li {border-bottom: none !important; box-shadow: none !important;}
header {
background:#fbe8d2 !important;
margin-left: -320px !important;
margin-top: 5px !important;
border-top-left-radius: 28px !important;
border-top-right-radius: 28px !important;}
.empty-search-message{
background:#fffff0 !important;
border-bottom: none !important;
box-shadow: none !important;}
html{background:#ffffff!important;}
body > h1:nth-child(2){margin-top: 10px !important;}
body{margin-left: 175px !important; max-width: 1150px !important;}
.filter,
login-filter{appearance: none !important; border-radius:24px !important;}
.menu-button{fill: #e69500 !important;}
.fxaccounts-extra-text{color: #0066cc !important; font-weight: bold !important;}
.time-created,
.create-login-button-container,
body > login-list:nth-child(2), li, .header, header,
.meta{box-shadow: none !important;}
.container > ol:nth-child(1),
.meta, .create-login-button-container,
body > login-item:nth-child(3),
.container {background-color: #FFFFF0 !important;}
.meta:hover, .create-login-button-container:hover
{background: #ffe680 !important; }
.login-list-item.selected{background: #fff0b3 !important; border-left: 2px!important;}
.login-list-item.selected:hover{background: #ffdb4d !important; }
.login-list-item {background-color: #FFFFF0 !important;}
.login-list-item:hover {background-color: #ffe680 !important;}
.header{margin-top: 20px!important;}
.login-item-title{color: #0066cc !important;}
.favicon-wrapper,
.login-item-favicon-wrapper{fill: #e69500 !important;}
#login-sort{
background: #F0F0F0 url("..//icons/Bild86.png")no-repeat !important;
padding-left:30px !important;
padding-right: 5px !important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 6px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
color:black !important;
margin-left: -15px !important;
max-width: 180px !important;}
#login-sort:hover{
background: #B2EDFA url("..//icons/Bild86.png")no-repeat !important;
padding-left:30px!important ;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;
background-position:10px 6px!important;}
.copy-username-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild73.png")no-repeat !important;
padding-left:20px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:14px 6px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px!important;
color:black !important; }
.copy-username-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild73.png")no-repeat !important;
padding-left:20px!important ;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;
background-position:14px 6px!important;}
.copy-username-button{margin-left: 50px !important;}
.copy-username-button,
.copy-password-button {min-width: 130px !important;}
.copy-password-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild74.png")no-repeat !important;
padding-left:20px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:14px 6px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px!important;
color:black !important;}
.copy-password-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild74.png")no-repeat !important;
padding-left:20px!important ;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;
background-position:14px 6px!important;}
.origin-input{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild75.png")no-repeat !important;
padding-left:35px !important;
padding-top: 2px !important;
padding-bottom: 4px !important;
padding-right: 35px !important;
min-width: 350px !important;
background-position:10px 5px!important;
color:black!important;
font-size:14px!important;
text-decoration:none!important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-style: outset !important;
border-width:2px !important;
border-radius:16px!important;}
.origin-input:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild75.png")no-repeat !important;
background-position:10px 5px!important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;}
.fxaccounts-enable-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild83.png")no-repeat !important;
padding-left:35px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 6px!important;
color:black!important;
font-size:14px!important;
text-decoration:none!important;
padding-right:25px!important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-style: outset !important;
border-width:2px !important;
border-radius:16px!important;}
.fxaccounts-enable-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild83.png")no-repeat !important;
background-position:10px 6px!important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;}
.create-login-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild84.png")no-repeat !important;
width: 235px !important;
padding-left:32px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 5px!important;
color:black!important;
font-size:14px!important;
text-decoration:none!important;
padding-right:35px!important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-style: outset !important;
border-width:2px !important;
border-radius:16px!important;}
.create-login-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild84.png")no-repeat !important;
padding-left:32px!important ;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;
background-position:10px 5px!important;}
.edit-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild67.png")no-repeat !important;
padding-left:40px!important;
padding-right: 20px !important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 5px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px !important;
color:black !important; }
.edit-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild67.png")no-repeat !important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;
background-position:10px 5px!important;}
.delete-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild8.gif")no-repeat !important;
padding-left:40px!important;
padding-right:20px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 5px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px !important;
color:black !important; }
.delete-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild8.gif")no-repeat !important;
background-position:10px 5px!important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;}
.save-changes-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild87.png")no-repeat !important;
padding-left:40px!important;
padding-right:20px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 5px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px !important;
color:black !important; }
.save-changes-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild87.png")no-repeat !important;
background-position:10px 5px!important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;}
.cancel-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild88.png")no-repeat !important;
padding-left:40px!important;
padding-right:20px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 5px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px !important;
color:black !important; }
.cancel-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild88.png")no-repeat !important;
background-position:10px 5px!important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;}
.reveal-password-checkbox{fill: #0066cc !important;}
.menu{border-radius: 20px !important;}
.menuitem-import-browser{
width: 100% !important;
height: 24px !important;
fill: green !important;
color: black!important;}
.menuitem-export {
width: 100% !important;
height: 24px !important;
fill: orange !important;
color: black !important;}
.menuitem-import{
width: 100% !important;
height: 24px !important;
fill: #cc3300!important;
color: black !important;}
.menuitem-import-file{
width: 100% !important;
height: 24px !important;
fill: blue !important;
color: black !important;}
.menuitem-remove-all-logins{
width: 100% !important;
height: 24px !important;
fill: #cc3300!important;
color: black !important;
margin-left: -1px !important;}
.menuitem-help {
width: 100% !important;
height: 24px !important;
fill: blue!important;
color: black !important;}
.menuitem-preferences {
width: 100% !important;
height: 24px !important;
fill: red!important;
color: black !important;}
.menuitem-mobile[data-l10n-id="menu-menuitem-android-app"] {
width: 100% !important;
height: 24px !important;
fill: #33cc33!important;
color: black!important;}
.menuitem-mobile[data-l10n-id="menu-menuitem-iphone-app"] {
width: 100% !important;
height: 24px !important;
fill: #9900ff!important;
color: black!important;}
}
Alles anzeigen
Mfg.
Endor
Hallo zusammen.
Für about:logins im Nightly bitte mal testen:
@namespace url(http://www.w3.org/1999/xhtml);
@-moz-document url-prefix(about:logins) {
.container > ol:nth-child(1){scrollbar-width: none !important;}
body > login-item:nth-child(3):before {
content: "Design by Endor";
margin-left: 150px!important;
margin-top: -10px!important;
font-size: 25px!important;
font-weight: bold!important;
color: red!important;}
body > header:nth-child(1){margin-left: -35px !important; margin-top: 1px !important; border-bottom: none !important;
border-top-right-radius:28px !important; border-top-left-radius:28px !important;}
body > login-item:nth-child(3){border-right-width: 1px !important;}
body > login-list{
width: auto !important;
margin-top: 70px !important;
border-right: none !important;
border-bottom: none !important;
scrollbar-width: none !important;}
.count{
color: #0f6acc !important;
font-size: 15px !important;
font-weight: bold !important;}
body > login-list:nth-child(2){ border-bottom: none !important;}
li[class="login-list-item"],
li[class="login-list-item selected"]{padding-left: 25px !important;}
div.detail-row:nth-child(2) > div:nth-child(1) > label:nth-child(1) > input:nth-child(2),
.password-display {width: 240px !important;}
.meta{padding-left: 35px !important; border-right: none !important; border-bottom: none !important;}
.create-login-button-container {padding-left: 10px !important; padding-right: 70px !important;
margin-bottom: 1px !important; box-shadow: none !important; border-top: none !important;}
.container > ol:nth-child(1){border-bottom: none !important; box-shadow: none !important;}
.header, li {border-bottom: none !important; box-shadow: none !important;}
header {
background:#fbe8d2 !important;
margin-left: -320px !important;
margin-top: 5px !important;
border-top-left-radius: 24px !important;
border-top-right-radius: 24px !important;}
.empty-search-message{background:#fffff0 !important; border-bottom: none !important; box-shadow: none !important;}
html{background:#ffffff!important;}
body > h1:nth-child(2){margin-top: 10px !important;}
body{margin-left: 175px !important; max-width: 1350px !important;}
.filter,
login-filter{appearance: none !important; border-radius:24px !important;}
.menu-button{fill: #e69500 !important;}
.time-created,
.create-login-button-container,
body > login-list:nth-child(2), li, .header, header,
.meta{box-shadow: none !important;}
.container > ol:nth-child(1),
.meta, .create-login-button-container,
body > login-item:nth-child(3),
.container {background-color: #FFFFF0 !important;}
.meta:hover, .create-login-button-container:hover
{background: #ffe680 !important; }
.login-list-item.selected{background: #fff0b3 !important; border-left: 2px!important;}
.login-list-item.selected:hover{background: #ffdb4d !important; }
.login-list-item {background-color: #FFFFF0 !important;}
.login-list-item:hover {background-color: #ffe680 !important;}
.header{margin-top: 20px!important;}
.login-item-title{color: #0066cc !important;}
.favicon-wrapper,
.login-item-favicon-wrapper{fill: #e69500 !important;}
#login-sort{
background: #F0F0F0 url("..//icons/Bild86.png")no-repeat !important;
padding-left:30px !important;
padding-right: 5px !important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 6px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
color:black !important;
margin-left: -15px !important;
max-width: 180px !important;}
#login-sort:hover{
background: #B2EDFA url("..//icons/Bild86.png")no-repeat !important;
padding-left:30px!important ;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;
background-position:10px 6px!important;}
.copy-username-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild73.png")no-repeat !important;
padding-left:20px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:14px 6px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px!important;
color:black !important; }
.copy-username-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild73.png")no-repeat !important;
padding-left:20px!important ;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;
background-position:14px 6px!important;}
.copy-username-button{margin-left: 50px !important;}
.copy-username-button,
.copy-password-button {min-width: 130px !important;}
.copy-password-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild74.png")no-repeat !important;
padding-left:20px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:14px 6px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px!important;
color:black !important;}
.copy-password-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild74.png")no-repeat !important;
padding-left:20px!important ;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;
background-position:14px 6px!important;}
.origin-input{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild75.png")no-repeat !important;
padding-left:35px !important;
padding-top: 2px !important;
padding-bottom: 4px !important;
padding-right: 35px !important;
width: 350px !important;
background-position:10px 5px!important;
color:black!important;
font-size:14px!important;
text-decoration:none!important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-style: outset !important;
border-width:2px !important;
border-radius:16px!important;}
.origin-input:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild75.png")no-repeat !important;
background-position:10px 5px!important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;}
.fxaccounts-enable-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild83.png")no-repeat !important;
padding-left:35px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 6px!important;
color:black!important;
font-size:14px!important;
text-decoration:none!important;
padding-right:25px!important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-style: outset !important;
border-width:2px !important;
border-radius:16px!important;}
.fxaccounts-enable-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild83.png")no-repeat !important;
background-position:10px 6px!important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;}
.create-login-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild84.png")no-repeat !important;
width: 235px !important;
padding-left:32px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 5px!important;
color:black!important;
font-size:14px!important;
text-decoration:none!important;
padding-right:35px!important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-style: outset !important;
border-width:2px !important;
border-radius:16px!important;}
.create-login-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild84.png")no-repeat !important;
padding-left:32px!important ;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;
background-position:10px 5px!important;}
.edit-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild67.png")no-repeat !important;
padding-left:40px!important;
padding-right: 20px !important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 5px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px !important;
color:black !important; }
.edit-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild67.png")no-repeat !important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;
background-position:10px 5px!important;}
.delete-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild8.gif")no-repeat !important;
padding-left:40px!important;
padding-right:20px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 5px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px !important;
color:black !important; }
.delete-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild8.gif")no-repeat !important;
background-position:10px 5px!important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;}
.save-changes-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild87.png")no-repeat !important;
padding-left:40px!important;
padding-right:20px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 5px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px !important;
color:black !important; }
.save-changes-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild87.png")no-repeat !important;
background-position:10px 5px!important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;}
.cancel-button{
appearance:none!important;
background: #F0F0F0 url("..//icons/Bild88.png")no-repeat !important;
padding-left:40px!important;
padding-right:20px!important;
padding-top: 2px!important;
padding-bottom: 4px!important;
background-position:10px 5px!important;
font-size:14.0px!important;
border-style: outset !important;
border-left-color: lightblue!important;
border-top-color: lightblue!important;
border-right-color: dodgerblue!important;
border-bottom-color: dodgerblue!important;
border-width:2px !important;
border-radius:16px !important;
color:black !important; }
.cancel-button:hover{
appearance:none!important;
background: #B2EDFA url("..//icons/Bild88.png")no-repeat !important;
background-position:10px 5px!important;
border-style: outset !important;
border-width:2px !important;
border-left-color: #bbddff !important;
border-top-color: #bbddff !important;
border-right-color: #11508d !important;
border-bottom-color: #11508d !important;}
.reveal-password-checkbox{fill: #0066cc !important;}
.menu{border-radius: 20px !important;}
.menuitem-import-browser{
width: 100% !important;
height: 24px !important;
fill: green !important;
color: black!important;}
.menuitem-export {
width: 100% !important;
height: 24px !important;
fill: orange !important;
color: black !important;}
.menuitem-import{
width: 100% !important;
height: 24px !important;
fill: #cc3300!important;
color: black !important;}
.menuitem-import-file{
width: 100% !important;
height: 24px !important;
fill: blue !important;
color: black !important;}
.menuitem-remove-all-logins{
width: 100% !important;
height: 24px !important;
fill: #cc3300!important;
color: black !important;
margin-left: -1px !important;}
.menuitem-help {
width: 100% !important;
height: 24px !important;
fill: blue!important;
color: black !important;}
.menuitem-preferences {
width: 100% !important;
height: 24px !important;
fill: red!important;
color: black !important;}
.menuitem-mobile[data-l10n-id="menu-menuitem-android-app"] {
width: 100% !important;
height: 24px !important;
fill: #33cc33!important;
color: black!important;}
.menuitem-mobile[data-l10n-id="menu-menuitem-iphone-app"] {
width: 100% !important;
height: 24px !important;
fill: #9900ff!important;
color: black!important;}
}
Alles anzeigen
Hoffe es passt nun.
Mfg.
Endor
Hallo omar1979
Aborix meint, falls Du Scripte zum einfügen von zusätzlichen Symbolleisten verwendet,
solltest Du diese als erste laden lassen. Ich habe hier auch zwei davon.
Ich habe meine Scripte 0-Leiste1.uc.js und 0-Leiste2.uc.js genannt.
So sind sie in der Liste ganz am Anfang und werden als erstes geladen.
Mfg.
Endor
ich habe die Schaltfläche in der Menüleiste. Da ist sie auch noch nach dem Neustart
von Firefox.
Mfg.
Endor
Ich brauche den sowieso nicht.
Also für mich keine Eile.
Mfg.
Endor
Also, bei mir wird er auch nicht angezeigt, aber wenn ich die Seite mit den
Entwicklerwerkzeugen untersuche ist er dort zu sehen aber als hidden = Ausgeblendet.
Vielleicht kann man den über einen Eintrag in about:config aktivieren.
Die Erweiterung ist hier nicht installiert.
Es dürfte dieser Eintrag sein: extensions.ui.sitepermission.hidden = true
Mit klick kann man ihn auf false setzen aber wird sofort wieder auf true gesetzt.
Mfg.
Endor
Das halte ich für unpraktisch. Das Menü der Entwicklerwerkzeuge kann ich mir da eher vorstellen.
Ja das sehe ich auch so. Kenne diese Version des Scriptes schon länger,
aber habe es nicht mehr weiter verfolgt unter anderem genau wegen diesen
Änderungen am Firefox Menü. Finde ich unpraktisch. Unsere Version hat auch
mehr Menüeinträge usw. Ich fände es ja besser wenn man nur die Verschiebbare Schaltfläche
in unsere Script Version einbauen würde. Das obige Script setzt ja für einige Funktionen
die userChrome.js Datei von Alice voraus, welche unter anderem einen SubScriptloader
enthält. Das verursacht dann wieder Probleme mit anderen Scripten die wir verwenden.
Mfg.
Endor
Ja das wird durch das Script in das Menü der Schaltfläche verschoben.
Auch das Menü der Entwicklerwerkzeuge wird dahin verschoben.
Aber eben leider funktioniert das Menü nicht.
Hallo 2002Andreas.
Könntest Du mal bitte testen, habe milupos Übersetzung übertragen:
// ==UserScript==
// @name ExtrasConfigMenuPlus.uc.js
// @include main
// @charset UTF-8
// @note extras_config_menu.uc.js Funktionsreduktion + α
// @note Klicken Sie mit der rechten Maustaste auf die Schaltfläche /
// @note um neu zu starten, klicken Sie mit der mittleren Maustaste, um Folgendes zu öffnen: config
// @note Der Code zum Aktivieren/Deaktivieren des Skripts wurde von alice0775s rebuild_userChrome.uc.xul übernommen.
// @Version 2.0.6 Es wurde ein Problem behoben, bei dem "Neustart" durch Rechtsklick auf eine Schaltfläche nicht funktionierte
// @Version 2.0.5 Fx72beta
// @Version 2.0.4 Fx65 oder höher
// @Version 2.0.3 Unterstützt Fx65 oder höher Die Erweiterung des Skriptdateinamens wurde in versteckt geändert.
// @Version 2.0.2 Unterstützt Fx57 oder höher Kontextmenüformat wurde abgeschafft, Schaltflächen können frei angeordnet werden
// @note Das Problem wurde behoben, dass ein Neustart durch Rechtsklick auf das Symbol in @version 2.0.1 Fx47 oder höher
// @note nicht möglich war.
// @version 2.0.0 Die Funktion wurde abgeschafft, um das Scratchpad zu einem Editor zu machen, behoben, dass es nach Fx44 nicht
// @version 2.0.0 neu gestartet werden konnte
// ==/UserScript==
/*
■ Über die Bearbeiten & Öffnen-Funktion
Verwenden Sie die Funktion 'Bearbeiten', um eine Datei zu bearbeiten
Verwenden Sie die „Öffnen“-Funktion, um eine Datei oder einen Ordner zu öffnen
Verwenden Sie die Funktion 'toggle', um zwischen falschen Werten umzuschalten
Das erste Argument jeder Funktion gibt den Ordner als Basispunkt an
0 = chrome
1 = profile
2 = C:\WINDOWS
3 = C:\Programme oder C:\Programme (x86)
4 = Beim Schreiben des vollständigen Pfads in das zweite Argument * Setzen Sie das Pfadtrennzeichen auf \\\\
'C' = Laufwerk C
'D' = D-Laufwerk
Das zweite Argument gibt den Datei- oder Ordnernamen im Basisordner an, der im ersten Argument angegeben ist.
Vergessen Sie nicht, es in [] einzuschließen und den Datei-(Ordner-)Namen in '' einzuschließen.
■ Beispiel für die Bearbeitung von prefs.js im Profilordner
ECM.edit (1, ['prefs.js'])
■ Beispiel für das Öffnen eines Chrome-Ordners
ECM.open (0)
■ Beispiel zum Starten von Firefox (Parameter des 3. Arguments kann weggelassen werden)
ECM.open (3, ['Mozilla Firefox','firefox.exe'],'-no-remote')
■ Beispiel für das Umschalten zwischen gültig und ungültig von Javascript
ECM.toggle ('javascript.enabled')
*/
(function () {
'use strict';
const Preferences = Cu.import("resource://gre/modules/Preferences.jsm", {}).Preferences;
window.ECM = {
editor: 1,
// 1 = Editor in view_source.editor.path eingestellt
// Wenn Sie den vollständigen Pfad zum Editor schreiben, verwenden Sie diesen Editor *
// Schließen Sie den Pfad in'' ein und ersetzen Sie \ durch \\
itemLength: null,
init: function () {
try {
CustomizableUI.createWidget({
id: 'ExtrasConfigMenu',
type: 'custom',
onBuild: function(aDocument) {
var toolbaritem = aDocument.createXULElement('toolbarbutton');
var attributes = {
id: 'ExtrasConfigMenu',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
type: 'menu',
label: 'Extras Config Menu',
image: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACnElEQVR4Xm2RzYtbZRSHn/fr3pvJzTB3qiNM2k2pMBUGhEHaqsUqdeFGQalCobgREaFu/B/cqCtxVSjoQhBEQRBmIfWDKgNGJUPt0Nhah9JJ4iSd5E6+bu5972tAO4SS5/DjXZ1znsMrNiq1eikMQqYYJCmjxNH5+zdW777L0J5KKl9VPmnf+ut9KWkwhbheuzNcOVYOmGKc5iRO0r1ykeXCx0h7kt4fC3z5wfqbQnAJwQHa5S7jAZSRuJ0mkf81cheobhBXZa+ri1uptQjHAZoZCEC1PiPgDuwxCfwerBU7b73zXn//3usCcdt4HkZ7SGZg431U51NUCgwlO3cV/bVXhR/6p9ut+nP9QYeNn7/n8qUPZxvQ/Q6VVWHk4ZqWRvlJjpx9hcGfW2wO95N2q8m3618A2WwDt/0RplSAXsBed57eyossHl5GYdHacG3zGpADM06wjQ1UUIN+CLHPvfAxojPnKLiE+bDE1R9+5GatAmgPeGCAteQ7l5GBhGSyuROyd/gFouUyWkqEErR2mwXAAA8BRS0AgMQBjSra30ZkEeDzz9Dn4ZcvMO51SMcJcTdGChmA0ABA6cAgzyG3I8jLEBylV4fWoaeIc0V7t0Uv7pFbC+CA+28mp/8+SwXKnMVmz1O9HpE+eobMZdjcoY1GIHD/NwIdoH1fBaNguzlg88pVyoUi4vTbFI8eJxsNAIfSkrliESllH/L0v0jktNNomFGv1TFrL3Fo9QSMR3jaEEXzLC09gjaKp595No0WjyCEB4zRclICUMDxtRMce/wJ1MIi2SglXShhfI/cOjxPoZRmbq4gXzt/gVrtBrdvbiG+Wf+p/mvll1BpiVAGhCDPxuAUDotz4HKHlIJON6bRbL4hhPjcMx5mkn8BBLEUrsVZbq0AAAAASUVORK5CYII=',
tooltiptext: 'Extras Config Menu',
oncontextmenu: 'return false'
};
for (var a in attributes) {
toolbaritem.setAttribute(a, attributes[a]);
};
return toolbaritem;
},
onCreated: function(toolbaritem) {
}
});
} catch (e) {};
setTimeout(() => ECM.init2(), 1000);
this.addPrefListener(ECM.readLaterPrefListener);
window.addEventListener('unload', this, false);
},
init2: function (btn) {
var btn = document.getElementById('ExtrasConfigMenu');
if (!btn)
setTimeout(() => ECM.init2(), 1000);
btn.addEventListener('click', (event) => ECM.onClick(event));
var mp = btn.appendChild(this.createME('menupopup', 0, 0, 0, 'ecm-popup'));
mp.setAttribute('onclick', 'event.preventDefault(); event.stopPropagation();');
mp.addEventListener('popupshowing', (event) => ECM.onpopup(event));
/* ==================== Einstellungen Beginn ==================== */
var devMenu = $('webDeveloperMenu');
//Werkzeug
mp.appendChild($('tools-menu')).firstChild.className = "menu-text";
//Entwicklungswerkzeuge
mp.appendChild(devMenu);
//Speicher freigeben
mp.appendChild(this.createME('menuitem', 'Purge Memory', () => {
var os = Services.obs;
var gMgr = Cc['@mozilla.org/memory-reporter-manager;1'].getService(Ci.nsIMemoryReporterManager);
var parentWindow = Services.wm.getMostRecentWindow('navigator:browser');
os.notifyObservers(null, 'child-gc-request', null);
Cu.forceGC();
os.notifyObservers(null, 'child-cc-request', null);
parentWindow.windowUtils.cycleCollect();
os.notifyObservers(null, 'child-mmu-request', null);
gMgr.minimizeMemoryUsage(() => '');
}));
mp.appendChild(this.createME('menuitem', 'Makro', 'ECM.open(4, "D:\\\\Software\\\\empty\\\\empty.vbs")', 'ecm_vbs', 0));
mp.appendChild(document.createXULElement('menuseparator'));
//Neuen Passwortmanager öffnen
mp.appendChild(this.createME('menuitem', 'about:logins', 'openTrustedLinkIn("about:logins", "tab");', 0, 0));
mp.appendChild(document.createXULElement('menuseparator'));
mp.appendChild(this.createME('menuitem', 'Javascript On/Off', 'ECM.toggle("javascript.enabled")', 'ecm_pref', 0));
mp.appendChild(this.createME('menuitem', 'Standort On/Off', 'ECM.toggle("geo.enabled")', 'ecm_pref', 0));
mp.appendChild(document.createXULElement('menuseparator'));
mp.appendChild(this.createME('menuitem', 'userChrome.css', 'ECM.edit(0, ["userChrome.css"])', 'ecm_edit', 0));
mp.appendChild(this.createME('menuitem', 'userContent.css', 'ECM.edit(0, ["userContent.css"])', 'ecm_edit', 0));
mp.appendChild(document.createXULElement('menuseparator'));
mp.appendChild(this.createME('menuitem', 'prefs.js', 'ECM.edit(1, ["prefs.js"])', 'ecm_js', 0));
mp.appendChild(this.createME('menuitem', 'user.js', 'ECM.edit(1, ["user.js"])', 'ecm_js', 0));
mp.appendChild(this.createME('menuitem', '_keychanger.js', 'ECM.edit(0, ["_keychanger.js"])', 'ecm_edit', 0));
/*
mp.appendChild(this.createME('menuitem', '_uAutoPagerize.js', 'ECM.edit(0, ["_uAutoPagerize.js"])', 'ecm_edit', 0));
*/
mp.appendChild(document.createXULElement('menuseparator'));
mp.appendChild(this.createME('menuitem', 'Chrome', 'ECM.open(0)', 'ecm_folder', 0));
mp.appendChild(this.createME('menuitem', 'Profile', 'ECM.open(1)', 'ecm_folder', 0));
/*
mp.appendChild(this.createME('menuitem', 'SubScript', 'ECM.open(0, ["SubScript"])', 'ecm_folder', 0));
*/ mp.appendChild(this.createME('menuitem', 'CSS', 'ECM.open(0, ["CSS"])', 'ecm_folder', 0));
mp.appendChild(this.createME('menuitem', 'UserScriptLoader', 'ECM.open(0, ["UserScriptLoader"])', 'ecm_folder', 0));
mp.appendChild(this.createME('menuitem', 'Install Folder', 'ECM.open(3, ["Mozilla Firefox"])', 'ecm_folder', 0));
mp.appendChild(document.createXULElement('menuseparator'));
mp.appendChild($('aboutName').cloneNode(false));
/* ==================== Einstellungen Ende ==================== */
this.itemLength = mp.childNodes.length;
},
handleEvent: function (event) {
if (event.type === 'unload') {
this.removePrefListener(ECM.readLaterPrefListener);
this.itemLength = null;
}
},
onClick: function (event) {
if (event.button === 1) {
gBrowser.selectedTab = gBrowser.addTrustedTab("about:config");
} else if (event.button === 2) {
event.preventDefault();
Services.startup.quit(Ci.nsIAppStartup.eRestart | Ci.nsIAppStartup.eAttemptQuit);
}
},
edit: function (key, pathArray) {
var path = this.getPath(key, pathArray);
if (this.editor === 1) {
this.launch(Services.prefs.getCharPref('view_source.editor.path'), path);
} else {
this.launch(this.editor, path);
}
},
open: function (key, pathArray, arg) {
var path = this.getPath(key, pathArray);
this.launch(path, arg);
},
launch: function (path, arg) {
arg = [arg] || [];
var file = this.getFile(path);
if (!file.exists()) {
return;
}
if (!file.isDirectory()) {
var process = Cc['@mozilla.org/process/util;1'].createInstance(Ci.nsIProcess);
process.init(file);
process.run(false, arg, arg.length);
} else {
file.reveal();
}
},
getFile: function (path) {
var file = Cc['@mozilla.org/file/local;1'].createInstance(Ci.nsIFile);
file.initWithPath(path);
return file;
},
getDir: function (key, pathArray) {
var dir;
if (key.indexOf('\\') !== -1) {
dir = this.getFile(key);
} else {
dir = Services.dirsvc.get(key, Ci.nsIFile);
}
if (pathArray != null) {
for (var i = 0, len = pathArray.length; i < len; ++i) {
dir.append(pathArray[i]);
}
}
return dir.path;
},
getPath: function (key, pathArray) {
pathArray = pathArray || [];
var path = '';
switch (key) {
case 0:
path = this.getDir('UChrm', pathArray);
break;
case 1:
path = this.getDir('ProfD', pathArray);
break;
case 2:
path = this.getDir('WinD', pathArray);
break;
case 3:
path = this.getDir('ProgF', pathArray);
break;
case 4:
path = pathArray;
break;
case 'C':
path = this.getDir('C:\\', pathArray);
break;
case 'D':
path = this.getDir('D:\\', pathArray);
break;
}
return path;
},
toggle: function (prefName) {
var pref = this.getPref(prefName);
var prefType = Services.prefs.getPrefType(prefName);
if (prefType === Ci.nsIPrefBranch.PREF_BOOL) {
this.setPref(prefName, !pref);
}
},
createME: function (sTyp, sLabel, sCommand, sClass, sId) {
var ele = document.createXULElement(sTyp);
switch (sTyp) {
case 'menuitem':
ele.setAttribute('label', sLabel);
ele.setAttribute('class', 'menuitem-iconic');
if (typeof sCommand === 'function') {
ele.setAttribute('oncommand', '(' + sCommand.toSource() + ').call(this, event);');
} else {
ele.setAttribute('oncommand', sCommand);
}
if (sClass) ele.classList.add(sClass);
break;
case 'menu':
ele.setAttribute('label', sLabel);
ele.setAttribute('id', sId);
break;
case 'menupopup':
ele.setAttribute('id', sId);
break;
}
return ele;
},
onpopup: function (event) {
var mp = event.target;
if (mp !== event.currentTarget) {
return;
}
for (let i = this.itemLength, len = mp.childNodes.length; i < len; i++) {
mp.removeChild(mp.lastChild);
}
var sep = document.createXULElement('menuseparator');
mp.appendChild(sep);
var scripts = userChrome_js.scripts.concat(userChrome_js.overlays);
for (let j = 0, lenj = userChrome_js.arrSubdir.length; j < lenj; j++) {
var dirName = (userChrome_js.arrSubdir[j] == '') ? 'root' : userChrome_js.arrSubdir[j];
var flg = false;
for (var i = 0, len = scripts.length; i < len; i++) {
var script = scripts[i];
if (script.dir !== dirName) continue;
flg = true;
break;
}
if (!flg) continue;
var menu = mp.appendChild(document.createXULElement('menu'));
menu.setAttribute('label', 'chrome/' + (dirName == 'root' ? '' : dirName));
menu.dirName = dirName;
var mp = menu.appendChild(document.createXULElement('menupopup'));
mp.setAttribute('onpopupshowing', 'event.stopPropagation();');
var flg = false;
for (let i = 0, len = scripts.length; i < len; i++) {
var script = scripts[i];
var type = script.filename.lastIndexOf('uc.js') !== -1;
if (script.dir != dirName) continue;
if (flg && type !== flg) {
var sep = document.createXULElement('menuseparator');
mp.appendChild(sep);
}
flg = type;
var mi = mp.appendChild(document.createXULElement('menuitem'));
mi.setAttribute('label', script.filename.replace(/\.uc\.js$|\.uc\.xul$/g, ''));
mi.setAttribute('oncommand', 'ECM.chgScriptStat(script.filename);');
mi.setAttribute('onclick', 'if (event.button !== 0) { event.preventDefault(); event.stopPropagation(); ECM.clickScriptMenu(event); }');
mi.setAttribute('closemenu', 'none');
mi.setAttribute('type', 'checkbox');
mi.setAttribute('checked', !userChrome_js.scriptDisable[script.filename]);
if (script.description)
mi.setAttribute('tooltiptext', script.description);
mi.script = script;
}
mp = event.target;
}
},
clickScriptMenu: function (event) {
var target = event.target;
var script = target.script;
var fileURL = Services.io.getProtocolHandler('file').QueryInterface(Ci.nsIFileProtocolHandler).getFileFromURLSpec(script.url);
if (event.button === 1) {
this.chgScriptStat(script.filename);
target.setAttribute('checked', !userChrome_js.scriptDisable[script.filename]);
} else if (event.button === 2) {
this.edit(4, fileURL.path);
}
},
chgScriptStat: function (afilename) {
var s = this.getPref('userChrome.disable.script');
if (!userChrome_js.scriptDisable[afilename]) {
s = (s + ',').replace(afilename + ',', '') + afilename + ',';
} else {
s = (s + ',').replace(afilename + ',', '');
}
s = s.replace(/,,/g, ',').replace(/^,/, '');
this.setPref('userChrome.disable.script', s);
userChrome_js.scriptDisable = this.restoreState(s.split(','));
},
restoreState: function (arr) {
var disable = [];
for (var i = 0, len = arr.length; i < len; i++) {
disable[arr[i]] = true;
}
return disable;
},
getPref: function (prefName) {
return Preferences.get(prefName);
},
setPref: function (prefName, value) {
Preferences.set(prefName, value);
},
addPrefListener: function (aObserver) {
Services.prefs.addObserver(aObserver.domain, aObserver, false);
},
removePrefListener: function (aObserver) {
Services.prefs.removeObserver(aObserver.domain, aObserver);
},
readLaterPrefListener: {
domain: 'userChrome.disable',
observe: function (aSubject, aTopic, aPrefstring) {
if (aTopic === 'nsPref:changed') {
setTimeout(() => {
var s = ECM.getPref('userChrome.disable.script');
userChrome_js.scriptDisable = ECM.restoreState(s.split(','));
}, 0);
}
}
}
};
window.ECM.init();
function $(id) {
var ele = {};
if (ele[id] == null) {
ele[id] = document.getElementById(id);
}
return ele[id];
}
}());
Alles anzeigen
Hier wird damit die SChaltfläche wieder angezeigt, aber eben kein Menü.
Mfg.
Endor
In Zeile 119
/ * ==================== Von hier einstellen ==================== * /
sind je ein Leerzeichen zwischen Stern und Schrägstrich.
sollte so sein:
/* ==================== Von hier einstellen ==================== */
Vielleicht liegt es daran.
Mfg.
Endor
Hallo milupo.
Vielen Dank für Deine Mühe.
Leider funktioniert es hier ja nicht.
Vermute es braucht dazu die userChrome.js Datei von Alice
https://github.com/alice0775/user…r/userChrome.js
sonst läuft es nicht.
Diese Datei hat schon mein Meister loshombre abgelehnt.
Da ist soviel Zeug drinnen, das da mit geladen wird ohne dass man genau weis
was es macht, da ist Vorsicht geboten.
Mfg.
Endor
//
Da hast Du eigentlich recht. Ist hier auch schon ewig an der selben Stelle.
Mal sehen.
Mfg.
Endor
Für Firefox und aboutconfig
habe wir doch schon länger ein Script mit frei verschiebbarer Schaltfläche:
// aboutconfig-button.uc.js
(function() {
if (location != 'chrome://browser/content/browser.xhtml') return;
try {
CustomizableUI.createWidget({
id: 'aboutconfig-ToolBarButton',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
var props = {
id: 'aboutconfig-ToolBarButton',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
label: 'About:Config',
tooltiptext: 'About:Config',
style: 'list-style-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACkUlEQVQ4ja2SX0hTcRTHv27euz/qLvfqdtO8lRmEoLm2RTTUmWHFtlgYIlFPleNuI5cggYTJpDGIVnP+CaVQ3FtCkYQvPfYSprewxCZCUYwgUKIeHIidHvSKiPrUef2ez/ec3/l9gf9VoijmhcPhq7FYbKizszNSUVFRvFOfATggsqgEUA5AtynYbDb78PDwfCaToaWlJUokEk8A6LfxZfHThsG3rcKk38reA3Bwq8hJktQSiUSmstksLS8vr9XX11/cokv3bRih0fI1Shyi+euGNMfAAQCMw+E4KoriSQD5jY2NiUwmQ0REsiz3qnDMhhEaMBNN24nuFtH4GShGwA4AOo/Hc01RFOrq6nqZTCa/K4pCCwtpejqammIY5kTMiiHqK1yjaTtRTwk9d2sWLDoEAZgAACzLVvb393+amZmh2dlZGhsbo0g0Sg/jiWz0WO7HvwlhVYVfuDWLJgZBAGYAOer7dDqd7qzX632dSqXoZlvbvBzu+BFv2E+rj0ykwuPnMcczCAEQdvohlud5r8fjeceybDOg9QdrKn/+8YMouo8mzmmpLI95ACB/jzSgiGGY4wDMDoejnYio54p35VldLk1UW+mWif/WUlratJcBALBOpzNAROSX5UkA0RqN/utEtZXSPh/Fef53myR1ANDuBBe6XK4gEVEgEHgFoA5AIQe0tHPc5w+1tZT2+aiX4+h2SUkfAIMKakRRbKCNktcnuwGwG7oxH2jqtli+vKmqotaCgulujlu5xPNu1UAbCoVGVQNBEG4A4LZtZ+CBy3fM5sUBSfrl57j3xRtBAgCjy+UaTCaTcxaLpQfA4V3uUyBotc2n9PrHPHABgHHTHUA1ACeAI7sdSB2G9RwYAeT8A0L0/bjRXZQXAAAAAElFTkSuQmCC)',
onclick: 'if (event.button == 0) { \
openTrustedLinkIn("about:config", "tab");\
}; '
};
for (var p in props)
toolbaritem.setAttribute(p, props[p]);
return toolbaritem;
}
});
CustomizableUI.registerToolbarNode(tb);
} catch(e) { };
})();
Alles anzeigen
und Browsertoolbox auch:
// browsertoolbox.uc.js
(function() {
if (location != 'chrome://browser/content/browser.xhtml')
return;
try {
CustomizableUI.createWidget({
id: 'browser-toolbox-button',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
var props = {
id: 'browser-toolbox-button',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
label: 'Browser-Werkzeuge',
tooltiptext: 'Browser-Werkzeuge',
style: 'list-style-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAdUlEQVQokZVSwRHAIAgLPYfoXs7RCTpG53Avt7APrhaFU8gLMEEJAkEQgFbc7IxkVjt0r6Sp7VIVITumBpKt00FA2ThmjXzkfMMWO8EZFSj8LrUyjsG9b9DaJXq+qAIVxEUxtLHpaXE95dj1NcK2rmbwaGJ4Af0tIg00j/6iAAAAAElFTkSuQmCC)',
oncommand: '(' + onCommand.toString() + ')()'
};
for (var p in props)
toolbaritem.setAttribute(p, props[p]);
return toolbaritem;
}
});
CustomizableUI.registerToolbarNode(tb);
} catch(e) { };
function onCommand() {
var document = event.target.ownerDocument;
if (!document.getElementById('menu_browserToolbox')) {
let { require } = Cu.import("resource://devtools/shared/loader/Loader.jsm", {});
require("devtools/client/framework/devtools-browser");
};
document.getElementById('menu_browserToolbox').click();
};
})();
Alles anzeigen
Mfg.
Endor
Ja kann ich mittlerweile bestätigen. Leider.
Diese Version ist auch etwas anders aufgebaut als unsere.
Habe versucht den Teil für die frei verschiebbare Schaltfläche in unsere Version
zu übernehmen aber bin mal wieder gescheitert....
Hoffe aborix hilft uns mal wieder.
Mfg.
Endor
Hallo omar1979
Ich habe da diese Version in den Asiatischen Tiefen gefunden.
Die müsste eine frei verschiebbare Schaltfläche haben.
Aber ob die überhaupt funktioniert kann ich nicht sagen.
Edit: funktioniert hier leider nicht.
Falls Du mal testen möchtest:
// ==UserScript==
// @name ExtrasConfigMenuPlus.uc.js
// @include main
// @charset UTF-8
// @note extras_config_menu.uc.js から機能削減+α
// @note ボタンを右クリックで再起動、 中クリックでabout:configを開く
// @note スクリプトの有効無効を切り替えるコードはalice0775氏のrebuild_userChrome.uc.xulから拝借
// @version 2.0.6 ボタン右クリックでの「再起動」が機能していない問題を修正
// @version 2.0.5 Fx72betaでも
// @version 2.0.4 Fx65以降に対応
// @version 2.0.3 Fx65以降に対応? scriptファイル名の拡張子を非表示固定に変更
// @version 2.0.2 Fx57以降に対応 コンテキストメニュー形式を廃止、ボタンを自由に配置できるように変更
// @version 2.0.1 Fx47以降でアイコン右クリックによる再起動ができなくなっていたのを修正
// @version 2.0.0 スクラッチパッドをエディタにする機能を廃止、Fx44以降で再起動できなくなっていたのを修正
// ==/UserScript==
/*
■ edit & open関数について
ファイルを編集する場合は'edit'関数を使う
ファイルやフォルダを開く場合は'open'関数を使う
真偽値を切り替える場合は'toggle'関数を使う
各関数の第一引数は基点にするフォルダを指定する
0 = chrome
1 = profile
2 = C:\WINDOWS
3 = C:\Program Files またはC:\Program Files (x86)
4 = 第2引数にフルパスを書く場合 ※パスの区切り文字は\\\\にする
'C' = Cドライブ
'D' = Dドライブ
第2引数は第1引数で指定した基点フォルダにあるファイルかフォルダ名を指定する
[]で囲むのとファイル(フォルダ)名を''で括るのを忘れずに
■ profileフォルダ内のprefs.jsを編集する例
ECM.edit(1, ['prefs.js'])
■ chromeフォルダを開く例
ECM.open(0)
■ firefoxを起動する例(第3引数のパラメータは省略可)
ECM.open(3, ['Mozilla Firefox', 'firefox.exe'], '-no-remote')
■ javascriptの有効無効を切り替える例
ECM.toggle('javascript.enabled')
*/
(function () {
'use strict';
const Preferences = Cu.import("resource://gre/modules/Preferences.jsm", {}).Preferences;
window.ECM = {
editor: 1,
// 1 = view_source.editor.pathに設定したエディタ
// エディタへのフルパスを記述すればそのエディタを使う ※パスを''で囲い\は\\に置き換える
itemLength: null,
init: function () {
try {
CustomizableUI.createWidget({
id: 'ExtrasConfigMenu',
type: 'custom',
onBuild: function(aDocument) {
var toolbaritem = aDocument.createXULElement('toolbarbutton');
var attributes = {
id: 'ExtrasConfigMenu',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
type: 'menu',
label: 'Extras Config Menu',
image: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACnElEQVR4Xm2RzYtbZRSHn/fr3pvJzTB3qiNM2k2pMBUGhEHaqsUqdeFGQalCobgREaFu/B/cqCtxVSjoQhBEQRBmIfWDKgNGJUPt0Nhah9JJ4iSd5E6+bu5972tAO4SS5/DjXZ1znsMrNiq1eikMQqYYJCmjxNH5+zdW777L0J5KKl9VPmnf+ut9KWkwhbheuzNcOVYOmGKc5iRO0r1ykeXCx0h7kt4fC3z5wfqbQnAJwQHa5S7jAZSRuJ0mkf81cheobhBXZa+ri1uptQjHAZoZCEC1PiPgDuwxCfwerBU7b73zXn//3usCcdt4HkZ7SGZg431U51NUCgwlO3cV/bVXhR/6p9ut+nP9QYeNn7/n8qUPZxvQ/Q6VVWHk4ZqWRvlJjpx9hcGfW2wO95N2q8m3618A2WwDt/0RplSAXsBed57eyossHl5GYdHacG3zGpADM06wjQ1UUIN+CLHPvfAxojPnKLiE+bDE1R9+5GatAmgPeGCAteQ7l5GBhGSyuROyd/gFouUyWkqEErR2mwXAAA8BRS0AgMQBjSra30ZkEeDzz9Dn4ZcvMO51SMcJcTdGChmA0ABA6cAgzyG3I8jLEBylV4fWoaeIc0V7t0Uv7pFbC+CA+28mp/8+SwXKnMVmz1O9HpE+eobMZdjcoY1GIHD/NwIdoH1fBaNguzlg88pVyoUi4vTbFI8eJxsNAIfSkrliESllH/L0v0jktNNomFGv1TFrL3Fo9QSMR3jaEEXzLC09gjaKp595No0WjyCEB4zRclICUMDxtRMce/wJ1MIi2SglXShhfI/cOjxPoZRmbq4gXzt/gVrtBrdvbiG+Wf+p/mvll1BpiVAGhCDPxuAUDotz4HKHlIJON6bRbL4hhPjcMx5mkn8BBLEUrsVZbq0AAAAASUVORK5CYII=',
tooltiptext: 'Extras Config Menu',
oncontextmenu: 'return false'
};
for (var a in attributes) {
toolbaritem.setAttribute(a, attributes[a]);
};
return toolbaritem;
},
onCreated: function(toolbaritem) {
}
});
} catch (e) {};
setTimeout(() => ECM.init2(), 1000);
this.addPrefListener(ECM.readLaterPrefListener);
window.addEventListener('unload', this, false);
},
init2: function (btn) {
var btn = document.getElementById('ExtrasConfigMenu');
if (!btn)
setTimeout(() => ECM.init2(), 1000);
btn.addEventListener('click', (event) => ECM.onClick(event));
var mp = btn.appendChild(this.createME('menupopup', 0, 0, 0, 'ecm-popup'));
mp.setAttribute('onclick', 'event.preventDefault(); event.stopPropagation();');
mp.addEventListener('popupshowing', (event) => ECM.onpopup(event));
/* ==================== ここから設定 ==================== */
var devMenu = $('webDeveloperMenu');
//ツール
mp.appendChild($('tools-menu')).firstChild.className = "menu-text";
//開発ツール
mp.appendChild(devMenu);
//ブラウザ内メモリ開放
mp.appendChild(this.createME('menuitem', 'Purge Memory', () => {
var os = Services.obs;
var gMgr = Cc['@mozilla.org/memory-reporter-manager;1'].getService(Ci.nsIMemoryReporterManager);
var parentWindow = Services.wm.getMostRecentWindow('navigator:browser');
os.notifyObservers(null, 'child-gc-request', null);
Cu.forceGC();
os.notifyObservers(null, 'child-cc-request', null);
parentWindow.windowUtils.cycleCollect();
os.notifyObservers(null, 'child-mmu-request', null);
gMgr.minimizeMemoryUsage(() => '');
}));
mp.appendChild(this.createME('menuitem', 'メモリ解放', 'ECM.open(4, "D:\\\\Software\\\\empty\\\\empty.vbs")', 'ecm_vbs', 0));
mp.appendChild(document.createXULElement('menuseparator'));
//新パスワードマネージャ
mp.appendChild(this.createME('menuitem', 'パスワードマネージャ', 'openTrustedLinkIn("about:logins", "tab");', 0, 0));
mp.appendChild(document.createXULElement('menuseparator'));
mp.appendChild(this.createME('menuitem', 'Javascript On/Off', 'ECM.toggle("javascript.enabled")', 'ecm_pref', 0));
mp.appendChild(this.createME('menuitem', '位置情報 On/Off', 'ECM.toggle("geo.enabled")', 'ecm_pref', 0));
mp.appendChild(document.createXULElement('menuseparator'));
mp.appendChild(this.createME('menuitem', 'userChrome.css', 'ECM.edit(0, ["userChrome.css"])', 'ecm_edit', 0));
mp.appendChild(this.createME('menuitem', 'userContent.css', 'ECM.edit(0, ["userContent.css"])', 'ecm_edit', 0));
mp.appendChild(document.createXULElement('menuseparator'));
mp.appendChild(this.createME('menuitem', 'prefs.js', 'ECM.edit(1, ["prefs.js"])', 'ecm_js', 0));
mp.appendChild(this.createME('menuitem', 'user.js', 'ECM.edit(1, ["user.js"])', 'ecm_js', 0));
mp.appendChild(this.createME('menuitem', '_keychanger.js', 'ECM.edit(0, ["_keychanger.js"])', 'ecm_edit', 0));
/*
mp.appendChild(this.createME('menuitem', '_uAutoPagerize.js', 'ECM.edit(0, ["_uAutoPagerize.js"])', 'ecm_edit', 0));
*/
mp.appendChild(document.createXULElement('menuseparator'));
mp.appendChild(this.createME('menuitem', 'Chrome', 'ECM.open(0)', 'ecm_folder', 0));
mp.appendChild(this.createME('menuitem', 'Profile', 'ECM.open(1)', 'ecm_folder', 0));
/*
mp.appendChild(this.createME('menuitem', 'SubScript', 'ECM.open(0, ["SubScript"])', 'ecm_folder', 0));
mp.appendChild(this.createME('menuitem', 'CSS', 'ECM.open(0, ["CSS"])', 'ecm_folder', 0));
mp.appendChild(this.createME('menuitem', 'UserScriptLoader', 'ECM.open(0, ["UserScriptLoader"])', 'ecm_folder', 0));
mp.appendChild(this.createME('menuitem', 'Install Folder', 'ECM.open(3, ["Mozilla Firefox"])', 'ecm_folder', 0));
*/
mp.appendChild(document.createXULElement('menuseparator'));
mp.appendChild($('aboutName').cloneNode(false));
/* ==================== END ==================== */
this.itemLength = mp.childNodes.length;
},
handleEvent: function (event) {
if (event.type === 'unload') {
this.removePrefListener(ECM.readLaterPrefListener);
this.itemLength = null;
}
},
onClick: function (event) {
if (event.button === 1) {
gBrowser.selectedTab = gBrowser.addTrustedTab("about:config");
} else if (event.button === 2) {
event.preventDefault();
Services.startup.quit(Ci.nsIAppStartup.eRestart | Ci.nsIAppStartup.eAttemptQuit);
}
},
edit: function (key, pathArray) {
var path = this.getPath(key, pathArray);
if (this.editor === 1) {
this.launch(Services.prefs.getCharPref('view_source.editor.path'), path);
} else {
this.launch(this.editor, path);
}
},
open: function (key, pathArray, arg) {
var path = this.getPath(key, pathArray);
this.launch(path, arg);
},
launch: function (path, arg) {
arg = [arg] || [];
var file = this.getFile(path);
if (!file.exists()) {
return;
}
if (!file.isDirectory()) {
var process = Cc['@mozilla.org/process/util;1'].createInstance(Ci.nsIProcess);
process.init(file);
process.run(false, arg, arg.length);
} else {
file.reveal();
}
},
getFile: function (path) {
var file = Cc['@mozilla.org/file/local;1'].createInstance(Ci.nsIFile);
file.initWithPath(path);
return file;
},
getDir: function (key, pathArray) {
var dir;
if (key.indexOf('\\') !== -1) {
dir = this.getFile(key);
} else {
dir = Services.dirsvc.get(key, Ci.nsIFile);
}
if (pathArray != null) {
for (var i = 0, len = pathArray.length; i < len; ++i) {
dir.append(pathArray[i]);
}
}
return dir.path;
},
getPath: function (key, pathArray) {
pathArray = pathArray || [];
var path = '';
switch (key) {
case 0:
path = this.getDir('UChrm', pathArray);
break;
case 1:
path = this.getDir('ProfD', pathArray);
break;
case 2:
path = this.getDir('WinD', pathArray);
break;
case 3:
path = this.getDir('ProgF', pathArray);
break;
case 4:
path = pathArray;
break;
case 'C':
path = this.getDir('C:\\', pathArray);
break;
case 'D':
path = this.getDir('D:\\', pathArray);
break;
}
return path;
},
toggle: function (prefName) {
var pref = this.getPref(prefName);
var prefType = Services.prefs.getPrefType(prefName);
if (prefType === Ci.nsIPrefBranch.PREF_BOOL) {
this.setPref(prefName, !pref);
}
},
createME: function (sTyp, sLabel, sCommand, sClass, sId) {
var ele = document.createXULElement(sTyp);
switch (sTyp) {
case 'menuitem':
ele.setAttribute('label', sLabel);
ele.setAttribute('class', 'menuitem-iconic');
if (typeof sCommand === 'function') {
ele.setAttribute('oncommand', '(' + sCommand.toSource() + ').call(this, event);');
} else {
ele.setAttribute('oncommand', sCommand);
}
if (sClass) ele.classList.add(sClass);
break;
case 'menu':
ele.setAttribute('label', sLabel);
ele.setAttribute('id', sId);
break;
case 'menupopup':
ele.setAttribute('id', sId);
break;
}
return ele;
},
onpopup: function (event) {
var mp = event.target;
if (mp !== event.currentTarget) {
return;
}
for (let i = this.itemLength, len = mp.childNodes.length; i < len; i++) {
mp.removeChild(mp.lastChild);
}
var sep = document.createXULElement('menuseparator');
mp.appendChild(sep);
var scripts = userChrome_js.scripts.concat(userChrome_js.overlays);
for (let j = 0, lenj = userChrome_js.arrSubdir.length; j < lenj; j++) {
var dirName = (userChrome_js.arrSubdir[j] == '') ? 'root' : userChrome_js.arrSubdir[j];
var flg = false;
for (var i = 0, len = scripts.length; i < len; i++) {
var script = scripts[i];
if (script.dir !== dirName) continue;
flg = true;
break;
}
if (!flg) continue;
var menu = mp.appendChild(document.createXULElement('menu'));
menu.setAttribute('label', 'chrome/' + (dirName == 'root' ? '' : dirName));
menu.dirName = dirName;
var mp = menu.appendChild(document.createXULElement('menupopup'));
mp.setAttribute('onpopupshowing', 'event.stopPropagation();');
var flg = false;
for (let i = 0, len = scripts.length; i < len; i++) {
var script = scripts[i];
var type = script.filename.lastIndexOf('uc.js') !== -1;
if (script.dir != dirName) continue;
if (flg && type !== flg) {
var sep = document.createXULElement('menuseparator');
mp.appendChild(sep);
}
flg = type;
var mi = mp.appendChild(document.createXULElement('menuitem'));
mi.setAttribute('label', script.filename.replace(/\.uc\.js$|\.uc\.xul$/g, ''));
mi.setAttribute('oncommand', 'ECM.chgScriptStat(script.filename);');
mi.setAttribute('onclick', 'if (event.button !== 0) { event.preventDefault(); event.stopPropagation(); ECM.clickScriptMenu(event); }');
mi.setAttribute('closemenu', 'none');
mi.setAttribute('type', 'checkbox');
mi.setAttribute('checked', !userChrome_js.scriptDisable[script.filename]);
if (script.description)
mi.setAttribute('tooltiptext', script.description);
mi.script = script;
}
mp = event.target;
}
},
clickScriptMenu: function (event) {
var target = event.target;
var script = target.script;
var fileURL = Services.io.getProtocolHandler('file').QueryInterface(Ci.nsIFileProtocolHandler).getFileFromURLSpec(script.url);
if (event.button === 1) {
this.chgScriptStat(script.filename);
target.setAttribute('checked', !userChrome_js.scriptDisable[script.filename]);
} else if (event.button === 2) {
this.edit(4, fileURL.path);
}
},
chgScriptStat: function (afilename) {
var s = this.getPref('userChrome.disable.script');
if (!userChrome_js.scriptDisable[afilename]) {
s = (s + ',').replace(afilename + ',', '') + afilename + ',';
} else {
s = (s + ',').replace(afilename + ',', '');
}
s = s.replace(/,,/g, ',').replace(/^,/, '');
this.setPref('userChrome.disable.script', s);
userChrome_js.scriptDisable = this.restoreState(s.split(','));
},
restoreState: function (arr) {
var disable = [];
for (var i = 0, len = arr.length; i < len; i++) {
disable[arr[i]] = true;
}
return disable;
},
getPref: function (prefName) {
return Preferences.get(prefName);
},
setPref: function (prefName, value) {
Preferences.set(prefName, value);
},
addPrefListener: function (aObserver) {
Services.prefs.addObserver(aObserver.domain, aObserver, false);
},
removePrefListener: function (aObserver) {
Services.prefs.removeObserver(aObserver.domain, aObserver);
},
readLaterPrefListener: {
domain: 'userChrome.disable',
observe: function (aSubject, aTopic, aPrefstring) {
if (aTopic === 'nsPref:changed') {
setTimeout(() => {
var s = ECM.getPref('userChrome.disable.script');
userChrome_js.scriptDisable = ECM.restoreState(s.split(','));
}, 0);
}
}
}
};
window.ECM.init();
function $(id) {
var ele = {};
if (ele[id] == null) {
ele[id] = document.getElementById(id);
}
return ele[id];
}
}());
Alles anzeigen
Hinweis: diese Version ist noch nicht übersetzt. Vieles ist noch auf japanisch oder Chinesisch.
Vielleicht könnte man daraus auch den Teil für die frei verschiebbare Schaltfläche in unsere Version
hier übernehmen. Wenn dann müsste sich das aber aborix mal anschauen.
Mfg.
Endor
Da habe ich für die Boxen gleich einen Rand gesetzt, dann ist es vorbei.
Könntest Du mir diesen Teil mal geben,
das möchte ich hier mal testen, den das Hüpfen habe ich auch bemerkt,
aber eben nicht wegbekommen.
Mfg.
Endor
Zeile 113 bis 118,
der wirkt rechts bei Dokumentation bei den einzelnen Richtlinien
beim Hovern, den roten Rand außen.
Mfg.
Endor