1. Nachrichten
  2. Forum
    1. Unerledigte Themen
    2. Forenregeln
  3. Spenden
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. camp-firefox.de
  2. Endor

Beiträge von Endor

  • Übersetzungswünsche oder -Probleme?

    • Endor
    • 25. April 2014 um 18:45

    Ich habe milupo schon vor ein paar Tagen diesbezüglich informiert.
    Leider noch keine Antwort. Da sind auch noch zwei weitere Erweiterungen
    die milupo immer macht. Hoffen wir, dass er bald mal Zeit dazu hat.
    Mfg.
    Endor

  • Kontextmenü in Eingabefeldern

    • Endor
    • 25. April 2014 um 14:11

    die Scripte die in die addonbar kommen.
    Das müsstest Du schon merken wenn Du im 29er die aktuelle Version von ctr
    installiert hast. Dann siehst Du ja ob und was fehlt.
    Mfg.
    Endor

  • Kontextmenü in Eingabefeldern

    • Endor
    • 25. April 2014 um 13:41

    Diese mal sind die Leute von Amo schuld. Die die für die Überprüfung der
    verschiedenen Erweiterungen zuständig sind. Aris musste sämtliche Bezeichnungen - Ids
    der einzelnen Buttons, Symbolleisten usw. ändern, da die bis dahin verwendeten Ids nicht individuell
    genug gewesen sind. Sonst hätten die die Erweiterung auf Amo nicht frei gegeben.

    Diese Änderung betrifft auch alle Scripte die irgendwie mit einer Id von der Ctr Erweiterung
    zu tun haben und müssen entsprechend angepasst werden. Schöne Sauerei....
    jetzt heißt es zbs. nicht mehr ctr_addonbar sonders ctraddon_addonbar.
    Es ist also überall addon dazu gekommen.

    Mfg.
    Endor

  • Kontextmenü in Eingabefeldern

    • Endor
    • 25. April 2014 um 11:58

    Hallo zusammen.
    Ein update für die Erweiterung Classic Theme Restorer
    ab Version 1.1.9beta14 muss alles angepasst werden:

    [Blockierte Grafik: http://i.imgur.com/fqUzau5.png]

    [Blockierte Grafik: http://i.imgur.com/x2DrOK7.png]

    Hier wieder der ganze Code

    CSS
    @-moz-document url-prefix("chrome://classic_theme_restorer/content/options.xul") {	
    
    		button[label="OK"]{margin-top: 10px!important;}
    
    		button[label="OK"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAClUlEQVQ4ja2TXUhTARzFJXWmWbtbWWoZZlZQaVpbay3Q6KGnejCsHovsgwoK+9KNpq3vSOheB+FHBF4bMbdruykZaXpnZtadGfVyCYKiXqIPkKKih18PYSurl+g8/zn//zn/cxISxsEwDNSIiiRKeNwePG4PkiihRlQMw2D8/C9QVRVRlAiFFaKaRkzXiek6UU0jFFYQRQlVVf9MErgSQJZb6RxSODaym03DNkrvZ1IymEnZwFIO3tpC5E4bstxK4EqA3zbLcistw342DhezSrfgGrLgHBBwaALrugvxPtpJWYeTxugFZLk1folhGIiiRMc9hfJYMa77VlYOWHH0Cdh7BOxdAk9ePeTL18/YQhmsCS+kvS+IKErfPVEjKqGwQm1sFysHrTj7LTh6LNhumClWzZQFXQCc6fay4PIk5jWnURmpIBRWUCMqCZIoEdU0yu/aWHHbwvIuK8tUgaKQmYKAmchIEADHxTzm1qeReyGN0oZCopqGJEokeNweYrrOqp4sbJ0WNt8qoaJ3HYUtFlzN+QAoD66SW5dKztmJzDyZwpxTAjFdx+P2xAmc17NZEhSo7z8NwLbABnwdVQCs9TuYdXoi2b4UMmtM5NROiROMSVh/zc6ilikUNc1g9NMoL9++4P2Hdzx+PsKsE6lk1ZqYfjSZaVVJrDi1OC5hzER3x24WNKaT70/nfNdxxrC1aROZXhPT3clMPZKE5UASe5u3x00ce2OkN8zqS4vJrUvFVpfH249vePb6KbO9ZqZVJ2M9lIRQmUhR7XyUm23xN/4cpIauelz+RWT7UphRYyLjx9ZEzPsnsKRmPv528dcgjY9ye3eIfS07cJ4rYGb1ZLIOp2P3LWRPUwXhm3+J8n8p07/W+RtwnC3itIcCYgAAAABJRU5ErkJggg==") !important;}
    
    		button[label="OK"] .button-icon {margin-left: -15px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		menulist[preference="ctraddon_tabs"][sizetopopup="pref"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAATxJREFUeNrUk7tKA0EYhc/cgismRTCKCOoDWCg2FqIgItFC0CY+gpWPIT5CHiGVQkAiEhC8gGAXAtYKEjRWRlzY3ZnffxYLFQ2BrZxiimG+b85hZgQRIcuQyDgyC3T5sAnfwjlXTqytO0cG+KuWgJQi1kptSSlPhWCBX/awVKKxv72C6YlhPL/xVvEd9YeMjQD3nXdTrV83nHUbSrFk/eAMUZxEeztL5sUGuHkIU/gHn2byksWpAKMyRPX4Ks4ZndOUJiAzXsrjstVDcQh9BXdPIXbn87CWDGlf4bNuN7QoMCx/gb9KHE+PPYuZySI63VdwAqpxAmhJKASSYepr8BLrHBJLLKOaT1DZXJtDxFQprwe8O4HV5VkcndxWtODCzYs23HkLA79KZhR35VtIwy5keUji//+FzIIPAQYA9/175SKBJUMAAAAASUVORK5CYII=") !important;}
    
    
    		menulist[preference="ctraddon_tabs"][sizetopopup="pref"].menulist-icon { margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		menulist[preference="ctraddon_tabsontop"][sizetopopup="pref"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAS5JREFUeNrsUztOxDAQfeM40WYjlF1xBA7CEejYpeEAQJUKiX4lKlIgcQ04AuegAAmJCkQArRLwjxlHgQaExBY0WJ6x/ez5jymEgFWGworj7xXo3cPTR2PsxDkPItZICipRkLP3vreiFJJEPTFWDhifkab6AvPqJDjO5PX9Mtwwdbzf2jsOhtfbpo1kvsBEZl7VQYul59bj6u4hekDMrHVo34DmpYvWyvEInqvVmk9sWoyYB2gpovEO0zyLF8vuFdY5bB8s+L53lzishMOY7S8QIkbIUo2iyKHlQcoPJqxRemK9zHF+dgRS9JEoGliIM3qacfpnVQ0tmstxwglZw9BUllfy3zeYhJmxAVGkve0ud6p603F2e/mfO5NFYxVEVhzbYJr8sg0a+v8LeBdgAEwRn9NROShMAAAAAElFTkSuQmCC") !important;}
    
    
    		menulist[preference="ctraddon_tabsontop"][sizetopopup="pref"].menulist-icon { margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		menulist[preference="ctraddon_tabmwidth"][sizetopopup="pref"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABJklEQVR42mL8//8/AyUAIIBYYIzzF87/T552Di4xN8uIYepphMJsUwY4H8Q2NDBkBLEBAogB5AIQTp517v+Xryv+L7jw+/+0k7/+G6bO+f/5y3IwPnf+3H+QPIh94eIZGNsFpA8ggJiQnbPiVjjDn/8sDGxsrAzS0pJwcVXVm3C2svJtMM3DHbEHRAMEEBMuvz19+pyoMAAIIEaQM1Jmn/9vaWqIITl12ly8ms/NSmYECCAWfAqys5Jxyh0/fR5MAwQQEwOFACCA4C5IATo32dSIYe7pc0TTc1INGQACiJHShAQQQCheYDRMIWgauhqAAGIiRTM2tQABBPYCLs3/z89hxGc4SB4ggOBhAFME00TIdpg6gABiQreNGICsFiCAKI4FgAADAGEzlBgLmNd3AAAAAElFTkSuQmCC") !important;}
    
    
    		menulist[preference="ctraddon_tabmwidth"][sizetopopup="pref"].menulist-icon { margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		menulist[preference="ctraddon_tabwidth"][sizetopopup="pref"] {
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAgFJREFUeNrEU89LG1EQ/t4P3ST+aGsU8ST2LyikN6VQCLGRklLQShGp4CXQS+/m4MGK0Etv7VEIiKAItaXdSEhqEUTpSVMCCtZWTUtKLVRFyWb3dd7GiEqQggcHHsy+me+bb+bNMqUULmMclzRWdoIjiXtF2551HFUFqAop3PU5Z5YUiCRjneZJVIO5YB+ikXa0tviQ36cAO8dBp7EG2PoBvH4zD9suhJNDIVPquK4cfdCBnFWNmYU9cEIzdoyCAOMGNj8zdLQBB95uDEam8Go6PUvBancGWnZzUx2y+UM0eAG/V8Lvq6GKPjTWGvDXEhVlPr7zDJ7CNJayfdRkQ5XGyrLKX4c26j1UjzKF8GAtG8bPnAn9SIqEWI4Wcx1dgR7MrU5Qzq6Lk8HnicmjIwuSK9R7OcknAqLN7ZiIP32Jv9YckUg4xCS4H5n8FMK3+yGNOIwXmJSkpbcreAsF6repTlLvAlyUhvi7sI7lb+9PZumot2AkPJOP435gAIvZ8V6ph5X8lIGTXoG7VEQA3IBB7eyxLzCulcCKWrCtki8o5d3qOBz7oTvmQKUFCQ1jlPsQ0kDNWywCTx6V/M1tYP4jzPQIYhct2c1jcvd0jkFNbEMNp6DuxpCgu7Yzr1DBNk5/CHrGje9UOYUUVY7S1dczq/wfVm71z2lyduV/4z8BBgC58qyxRjygSwAAAABJRU5ErkJggg==") !important;}
    
    
    		menulist[preference="ctraddon_tabwidth"][sizetopopup="pref"].menulist-icon { margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		menulist[preference="ctraddon_nbiconsize"][sizetopopup="pref"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2lpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wUmlnaHRzPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvcmlnaHRzLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcFJpZ2h0czpNYXJrZWQ9IkZhbHNlIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjgxMDMxMzYyMTFGQzExRTFBQUJCODU4MzM5ODk4RjAxIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjgxMDMxMzYxMTFGQzExRTFBQUJCODU4MzM5ODk4RjAxIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzMgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ1dWlkOkFDMUYyRTgzMzI0QURGMTFBQUI4QzUzOTBEODVCNUIzIiBzdFJlZjpkb2N1bWVudElEPSJ1dWlkOkM5RDM0OTY2NEEzQ0REMTFCMDhBQkJCQ0ZGMTcyMTU2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8++FrZaAAAAe1JREFUeNqkUzFrU1EU/t7LjR1slL5iIokOFTS0AWMMpRbepAEDZs5WzOCiYwiCMZtapyoiqHQQLPgDshkHdchgIVmEWhWJDlKlIS2NfcHkvZfXc07bjEKbC9895x7O993vwL2a53kYZqlsNnuG4gwhcEDuX8Kycl13tlAo3AkGgzHXdeA4LsGGbXPuoN/vY9ekD5qmBEodQavVWllcfPRQUcMxy7JijUZDmhkkKvhfToiVy+Wjyu/391Op1KHmr1QqmiKbGit+zOcxubaG1XAYMwsL+LBUwsTohjS+/nIKxWIRS6UcRjdWsW1M4vqDVzyiCOhsqzM3h5f1OuLJpMwe0n+h09m9qdlsSu3qtQidIlJjDnP1fQGv3cZ0PC6Rm79uBtCmnEFjSu3n9kkEToQl7gso27ZZBNOJxGA2quFKbn5wntqrTV3KweVzCCLIXNXr9XysRu8BhmEgk8kgnU6j/u45gse7IrC+NYLk5ZtYeVrD+e45fBr5hgv5WTBXp01GuF1+C/PeM7wxLspt42MOXrxvCjjnWre6Bcv0JDKHuQMHv+vLQOgsxta/k70E/rkGntw6LQ5qny2x/CeyCTyuSdwT8GnRaPRutVq9zw0H+gNKwTTNkkZz36B3MHGYh6Tr+g9t2N+oY8i1I8AAkf41JGfn/fAAAAAASUVORK5CYII=") !important;}
    
    		menulist[preference="ctraddon_nbiconsize"][sizetopopup="pref"].menulist-icon { margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		#ctraddon_appbutton_list1 {
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABn0lEQVR42mL8//8/AyUAIICYGCgEAAFEsQEAAcQCIr51KfcBqRQy9M8BCCCwAX///kvhjVnOS6ruz0siUwACCGzAn79/Gf7f30+y9SB9AAEENuDXH6ABv75CAsWlheH/lVUM/19cImgASB9AAIEN+P0baMCPzwyMEnpgCUadMIZ/D44yMCo5MDBpBYLF/m7JZ2AyTWNgFNeG80H6AAIIHAu/fv8BGvCRgckkmeHvoS6wAhCfgYWD4f+bWwx/T05nYLIrZWDgEWf4e3wKw//39xkYNXzA+gACCGzATyDj349PYI3M5hkQr5hnMvz/+ITh/99fDP9/fmFg5BYH2vSZ4f/v70DrfzMwcAiA9QEEEAvMBUzqXkBnH2H4vacebAB7yl6GP/cOMDCL6zAwAfHPOc4MbJErGFgscxgYWDkZfgH5IH0AAQQJA2Bg/Dk5CyWAfkwxY2ALnM7w985eht87KiFhwy3K8HNRAMP/T88YYPoAAggjFpDBz5VxKPzvfdoYsQAQQJB08OfvnNOXbpCVEgECiJHS3AgQQBRnJoAAAwDyV6rZtfjIyAAAAABJRU5ErkJggg==") !important;}
    
    
    		#ctraddon_appbutton_list1.menulist-icon { margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		#ctraddon_appbutton_list2 {
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABn0lEQVR42mL8//8/AyUAIICYGCgEAAFEsQEAAcQCIr51KfcBqRQy9M8BCCCwAX///kvhjVnOS6ruz0siUwACCGzAn79/Gf7f30+y9SB9AAEENuDXH6ABv75CAsWlheH/lVUM/19cImgASB9AAIEN+P0baMCPzwyMEnpgCUadMIZ/D44yMCo5MDBpBYLF/m7JZ2AyTWNgFNeG80H6AAIIHAu/fv8BGvCRgckkmeHvoS6wAhCfgYWD4f+bWwx/T05nYLIrZWDgEWf4e3wKw//39xkYNXzA+gACCGzATyDj349PYI3M5hkQr5hnMvz/+ITh/99fDP9/fmFg5BYH2vSZ4f/v70DrfzMwcAiA9QEEEAvMBUzqXkBnH2H4vacebAB7yl6GP/cOMDCL6zAwAfHPOc4MbJErGFgscxgYWDkZfgH5IH0AAQQJA2Bg/Dk5CyWAfkwxY2ALnM7w985eht87KiFhwy3K8HNRAMP/T88YYPoAAggjFpDBz5VxKPzvfdoYsQAQQJB08OfvnNOXbpCVEgECiJHS3AgQQBRnJoAAAwDyV6rZtfjIyAAAAABJRU5ErkJggg==") !important;}
    
    
    		#ctraddon_appbutton_list2.menulist-icon { margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		menulist[preference="ctraddon_appbuttonc"][sizetopopup="pref"] {
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACuUlEQVQ4ja2SbUjUBxzHv7jTFStYL+yJWQRjbEUP7yoISiIJ9rLikLHNDVks0vIgCUvB9Mozs0UURN0xtTlNm7Wwzsqyh8PDzIfT7q7gKLirZfOQ/0mZd97/05u4CmS92Re+736fz5vfV/q/c3ubMgc2yhpYlWb3Z6Y7/emfOwOWpfYhbbD2aVvmf8LDDmUHy+bUj5zJ75/obIqanpsJs/NWYqLuSnTkxxP9wTn76odlz54W7r+oTcGWrI7JR40GvrPQVAYVNrCVQWkDnO5h8pjPCC78s2NIf236AG5o0ILBntmXX4/+Pk6kFrw2aD8ArhqoOQWVf8MeD1Q+5nX5P+ODn3Vfdsu9ICVwdqngQXhLeMo8DeNFEK6GIRd0tkBrB9QNQO0TKDaYqkjyYH043KjugpSgyqsLj15WTUTYyxjlTE25YMwNoR7ofQjXRknWx4kdhKc2GPjp5cRheS+kBNvvKOhLnjQ9FDKEgzDNjOMlORnBfP6KV/fhWRv4j0L3bri5PWn+qjvBlGDjDYXcySqzkQLacXCXZobx8ox/GTEg0AfdbXDlKDTtBtd3STNHN0IpwaKrum6P5cerKeQ3yqmjHjdeehil14BrffBHExw/CPYdsCM7Fl+sq9ffe4NKVgdWGkUUUkQp1TTi4h4tjNIag7pBqG2F4krI+wG+XhwwpPMl7wT7lJXRnuH/1vg+no8DG80coJcaotTEoNIHe9ogzwHrthhxS3q7XzqR9eGSzso689LcyPqx/YlczpPPfXYSZWcMfvFB7kVYVzqWmPHFpYh0zjr9lnd9YrU4v/FneYqMNS/c8c2J5+bmaMJc2/kivmivx7CscPqVsWta2CJpnqRlWmLJUd5XR1SxtUuHikMqORRSbkWXlv58RJ9+mSNpuaT5b5lU0iTNkjRX0sKPdN7b2zRJegOBTNW9PqQWfgAAAABJRU5ErkJggg==") !important;}
    
    
    		menulist[preference="ctraddon_appbuttonc"][sizetopopup="pref"].menulist-icon { margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		menulist[preference="ctraddon_findbar"][sizetopopup="pref"] {
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QkJCOEY2MDY1OUI1MTFFMjk0NkJGMTdENDYwQ0Y4OTMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QkJCOEY2MDc1OUI1MTFFMjk0NkJGMTdENDYwQ0Y4OTMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpCQkI4RjYwNDU5QjUxMUUyOTQ2QkYxN0Q0NjBDRjg5MyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpCQkI4RjYwNTU5QjUxMUUyOTQ2QkYxN0Q0NjBDRjg5MyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pmi2FncAAAFSSURBVHja1FNNS8NAEH2zu0kaRejPEIO1WkT0ILZgr/4PQfC3KEI9e/GgoBcP3noTCmJb/ID+CAVFKk12ndlSlKY9SE8OmRDCmzfvzeyScw6zhMKMMTOBaZzfvlrrijkrTp7J9khSEZRS18ZaW6xuJJB6IvIA6yyyLIOzUwgYprVGs/W8ZxiLOJ7HXauFx/a975ksl7G5tY00TYdScgQEO/gCK4cRmfFcAS/dNvYPDj2gcXKE6k4NA7IMsvnBKQWnQ4htI684ClkSIQqM1xcGAQqFgD+ZgK3kCQia1IgAiEKD9UoFp9xZ2LXto/fUxeJSwjYI4wNW3MRwjfz2CiIN7NZrqHPKXh86HVxdXmB1bQXpgHLbkBlEgR6uUeRI6F+Acqnk0wNCPf0Qca0QvB+f3SxkMiz30wGj+U866rJGttr//GgKsjwm4C/xRv//Mn0LMAB9DID2Nm/SlAAAAABJRU5ErkJggg==") !important;}
    
    
    		menulist[preference="ctraddon_findbar"][sizetopopup="pref"].menulist-icon { margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		menulist[preference="ctraddon_nav_txt_ico"][sizetopopup="pref"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAhJJREFUeNqEUs9r1EAU/iabzZq2hrbb9CJYf9z07MmDtBVEEMSiouBBetc/wZNX9eJfIEWwKEXxYmF32UNB8CyeVOrBQ2O3FbtkN8nM880kmaSoOMlL5v363ps3n0tEePxS7EnCNCmAAAgWxwFaDnbvX8fc3effX0mVriiO5ReCAxz+uI547XIsdPKN85vscGAXpdjYutzW20zRyr1Lx9E09rxCyr+n775dNQC68jgd4NP2WlGfcObELSgqsLjsrwTobZdeYHEht7tlQUUjTPqhDVBqhPpKJBB4FYDW9bIAjsgw5c/ZFoWQNlkUCZOtw4DCAvDRm94RBEeP2QDPaxl76VcN7sCvhqx1bTcAgxjdZ+/vLOkJ21vQgxqio/3DYdR5sZUs6zPbrvgW0uGgK7SRldNsm8afa4/lC8splpm/+PcNgHxw+wekbFONCI4g5sJBJB5uzq89oh2SCE0DdkZAo4FdcwSlsnbz5ipbvApbxsD6k9BsFcKL1/Kkkkj639lA2y0umuN/Qn14Y3ngnrsCURBBN5aMga8fK/yTZ3MQe40yG0EGs/looSCymJ3CJjAG/ACHdMsDwU9CCeRUYPakH9bdKh+a5XWAkvUFDwTGngLNztgjyCZhoogyA5tgItUAG35uNwA7o7Q//7Z7wZLfJBGicdYzPIijXn89XKzRwCQfxFH/fzzYZ/nM8k//bwEGAHTP4jBfEJ42AAAAAElFTkSuQmCC") !important;}
    
    
    		menulist[preference="ctraddon_nav_txt_ico"][sizetopopup="pref"].menulist-icon { margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		/*Tab-Titel*/
    
    		tab[label="Grundeinstellungen"]{min-width:145px !important;}
    
    		tab[label="Grundeinstellungen"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAACMUlEQVR42mL09vZmYASC////szEwMPxkZ2fXkZGR8QfyGZ4+fbrx58+fV4Di7EAlv4Bi/wECiAUk8e/fPxltbe2sHz9+PDp37ty9adOmlvz9+5chLCz8jKGhoS3QELlr165NA2p6DBBAzLKysuzKysrlRUVFZVpampacnFyS0tIyyr9+/WRiZmYRDQjwj3dycnS9fPnKn5cvXx4GCCBmcXHxv58+ff7LxsYKtERbRUtLS52FhZUNhLW1tdSBpnPt2LHzzOHDR2Z8+/btDkAAAU1h9uPgYHe6fv36g48fPzKcPn36fnh4eAsIg9ifPn1iuH792gOQGpBagABi8PLy6n/27On/CxfO/793795/b2+fhYqKSmwgDGKDxEByIDUgtQABxMzNza148eKlf0CJ10pKanKCgqI/z507+5SNjV05MTE1mI+PT3r58qVH1q/fcOHu3bsnAAKI5cOHD/M3bdp0KSIiuvH/f2YGGxsHM0NDi2XAoGTg5ubg/fTpPcOnT99+ANV0CgkJnQUIADEAzv8D/f38CDExM3x1dX5T8fHy/b6+u9wYGBgT+vr6A7q6tt4RERQQODg8JNTU0ALe3ty5AoiBg4ODkZOT0yIyMnabt7f/VKDBWUePXvp85MjFzyA2SAwkB1IDUgsQQIxAQRAWAGIDIH7PxMSk4esbnPTv31+GrVs3zANG6g2guBAQXwDJAwQQSDELEPMBMSsUg5IIMwME/AXiX0D8B0p/AggwAL7V7cewCAAVAAAAAElFTkSuQmCC") !important;}
    
    		tab[label="Grundeinstellungen"] .tab-icon {margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    
    		#ctraddon_sqtabcolorstab{min-width:95px !important;}
    
    		#ctraddon_sqtabcolorstab{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAB4ElEQVQokW2RT0iTARxAf0HlpS5hOWSQKBR2EFSogzVqELL+MQZRrYNIQZc1HZITpOYkIpoyqRCsr3mJzC2tg2gUpk7D1fpYywgtVwNH5dwYK4fmbK9DBBm98zu9J/IXYZNo31cX1kZ1Fa5oRZUrotHXhsWklf+htkhZrP2gN3PHnljtcLLqbCNj60zEdFd7p6SlbI0cHJTyhcmaGcKXwVcHV+rA1gq2HrgUZME4NhOUwXIRERkYl+Lp2X1DLDngoxVeuuDRLVAeQPskNMzChUWmyz4MDch4sSjqtsa36XPLaaxks9cg6YN3o+CfgodxVjt+8N0Gb4zpZc9mtVFawzt9/ux5XlFPlC6+8YyfS5/IxTIsTsBcN7y2w5OTWS5qwj45oRb1eVbOcg8bj+lCZYQ55vmcgtBzeOoBbxNcN61g3KL2iWZ4k+NM4jAOLLhx42WYUeL4U9A/ATc6wVkPx6sS5G8ccYjcl9IidXugBisN3KSNMW4TR0mBOwBNCpy2QEFBKCDSX/q7qyK6XRF98hTdWHiBnST2NNSFwHwXdugjSRFFt/bcUdHn91aru7/05AzMcygJe/q+5rYe8aoixw78O3qdiGyQPCmRykKzGPY2y35Ds2grzSJ5JSKy/o/4C0S9PJ/q/Z2BAAAAAElFTkSuQmCC") !important;}
    
    		#ctraddon_sqtabcolorstab .tab-icon {margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		tab[label="Extra"]{min-width:70px !important;}
    
    		tab[label="Extra"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAA0UlEQVQokZWPPyvFcRTGPykxmUXJYvYaDCblBbBQDEr+lNKdyGZlYrHcwSZ9v+eUspq9jjve8SY+BpH6fW/x1BnOc57nnOdAAxaWLSy1Zk0YnFk5+o/h1eT5b+IHFk00GNlnprVtw8qewY7BlpVbE020cm2yb3BgcGxhEwsLBi8/ovH1ZDD7deWGSYNLk4+OMBhZOfGciVa8XsNwOP7hpN8w3LfFd0ybDA3erVxYOTV5Mxl6xVTXUFk3GRis/uJWTAZW1lpxdn1krsMX5g22v/tPPzGsW+XvyZ0AAAAASUVORK5CYII=") !important;}
    
    		tab[label="Extra"] .tab-icon {margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }
    
    		tab[label="Oberfläche"]{min-width:105px !important;}
    
    		tab[label="Oberfläche"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAABj0lEQVQokWWRUWtScRyGX0IOEhFEMYw5osZ0ZTAvVuoUNjZOwlpgDKbMZjTIHSpGniCtJd0k6NhGrQYltEFQl912MNbt8Xv4Cf6f4OlCXFkvPPC7eN735idJSrlHpNwj4o/bRB4eEFrd43x+Z4jAUgNJ0uXSHqF8C9l1Ti1UCWU3kf0K2XUml58TmKsgu/4HzVUZ4Lz+AEDB3SZZ3AKg1vrE346UcQmkNrAS69RabQCa7w9pHnw5uQPJMlZiHWUqSMkneJ1fGGNYKj3FGEOtsY+ztQvAfcel1+vR9X10o4w0XcbrHPfX9j8TjN3hUfUNLxvvOH01i/NiG6BfmFpDij/g5t1Nur7PvY1nfP3+g0G8zjGLaxW6vk/BqaGpElKsiGKrKLpM822bf/Px8BuK5NC1AooVkaIrKLqCNXEbY8x/BYDJ2SIDTxrPofEc1hUbz/s5VDLG4HkdIuk8A0+6tMgJY7ewwmmC4STB0QTW6AwKz6OxLArNopF0/9u6OI9GMsNcmEHnptHZODpzvY+k39hGP3/KY5tdAAAAAElFTkSuQmCC") !important;}
    
    		tab[label="Oberfläche"] .tab-icon {margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }		
    
    		tab[label="Spezial Einstellungen"]{min-width:155px !important;}
    
    		tab[label="Spezial Einstellungen"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAA9ElEQVQokX3RIUtDcRQF8N/CKwuGB2J5UQXzBDWYTAObH8DgJ1jxU5iMimlGt+ZcW1kbWIZlCEMmiCazCNew/1PenF444f7vOZfzv4eF6lHcEcgWZ8uqNibeiKO5qPYv+5xiSrwTF8QK+S9Sj+aQGBD3xIyYEmOiS3SIa2KvFI+Ij2TjiXhMGBMPxGvqD8p/Naj3iZckmBB94ipt7xCHxBq734coyLuJPEhWbhP2f8j1ynXatCdJVGJEbNNaJDshfyY+iSFxQ5T96dx7VXBJMUt+12mt0jymNSPOiJyiImiQ7SSvaZgh22Br8688UqrZknQrb19MBHRcgZ1C9gAAAABJRU5ErkJggg==") !important;}
    
    		tab[label="Spezial Einstellungen"] .tab-icon {margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }			
    
    
    		tab[label="Animation / CTR"]{min-width:135px !important;}
    
    		tab[label="Animation / CTR"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAABJklEQVQokWNgoAH4j4RRBDCAg7bi/02e6v9fRZr83+mlB1f3X1Td8D+Dd+F/vex2uEY3I+X/V4qt/n9NN///IcLo//0QQ4QGVTOH/9J9R/8zTbj0nyF24n8GJZv/Sws8///scv3/Mtnk/5sww/93gg1RnWVX0Pvfcunt/6LTr/4XaNzzv79xwv/P8wP+v+92//8+2/L/OX8DVA3yMvL/46fu+G+34sJ/hsmd/wNKF/w/Pjnv//epXv+/Vdj/XxOoj+HX//r6Vv/dp075z7wi/r9SQ+f/dd2N//8usf7/Z5bl/02NWlgD57+lu8n/gM1J/+3WVPxfuDjl//9TOv//nzP931eqjTM0/9vnuf2X2ZX4X7/O8f/6cqP/W9utcSrGFlkEFeMFAFU9o9HKoxD6AAAAAElFTkSuQmCC") !important;}
    
    		tab[label="Animation / CTR"] .tab-icon {margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }	
    
    		tab[label="Tab (aktiv/hover/standard)"]{min-width:188px !important;}
    
    		tab[label="Tab (aktiv/hover/standard)"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAATxJREFUeNrUk7tKA0EYhc/cgismRTCKCOoDWCg2FqIgItFC0CY+gpWPIT5CHiGVQkAiEhC8gGAXAtYKEjRWRlzY3ZnffxYLFQ2BrZxiimG+b85hZgQRIcuQyDgyC3T5sAnfwjlXTqytO0cG+KuWgJQi1kptSSlPhWCBX/awVKKxv72C6YlhPL/xVvEd9YeMjQD3nXdTrV83nHUbSrFk/eAMUZxEeztL5sUGuHkIU/gHn2byksWpAKMyRPX4Ks4ZndOUJiAzXsrjstVDcQh9BXdPIXbn87CWDGlf4bNuN7QoMCx/gb9KHE+PPYuZySI63VdwAqpxAmhJKASSYepr8BLrHBJLLKOaT1DZXJtDxFQprwe8O4HV5VkcndxWtODCzYs23HkLA79KZhR35VtIwy5keUji//+FzIIPAQYA9/175SKBJUMAAAAASUVORK5CYII=") !important;}
    
    		tab[label="Tab (aktiv/hover/standard)"] .tab-icon {margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }	
    
    		tab[label="Tab (ungelesen) / Neuer Tab"]{min-width:195px !important;}
    
    		tab[label="Tab (ungelesen) / Neuer Tab"]{
            list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAB3RJTUUH1wkcAQEBu+5ngQAAAAlwSFlzAAAewQAAHsEBw2lUUwAAAARnQU1BAACxjwv8YQUAAADTSURBVHjaY2AYBYz///9nuNHV5QxktwKxOZH67gFxoUZZ2SYWqMBkEWtrTS5paaixjEhWMEIpIM3EBGb/eP5c6eW+fVOBTLgBIuyiogyf79xh+PfrF0QDSDEQgzUCMSMzM5jNyMrKwK2gANYDIliQ3cXEwsLw/88fsGJkTWA21EAmoAGMUJegGAASBGkAKQDbDFKEbDPMRSDDcRoAdAEwVCEaYK5AZsPUIIUR4/XOzv98mpoMwubmiMCDasQakFDw5tgxho9Xr0Jc8On6dTAeBeQBAOCPK3BygonwAAAAAElFTkSuQmCC") !important;}
    
    		tab[label="Tab (ungelesen) / Neuer Tab"] .tab-icon {margin-left: 5px !important; margin-top: 1px !important; margin-right: 10px !important; }	
    
    
    		[href="https://addons.mozilla.org/addon/cstbb/versions/"]{
                background: #efefef url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC4klEQVQ4jY2Sa0hTcRjGD/7P2Fo2Vw1CsKyYlUn0YdnmOafstq6GWXZRmFS2OdCp2zlnXrI1IrxglJRF0ZUKEu26Sh25NC9b5gSrTxnZivpQUSHOClGfPiyLMKTnywMvPD9e3vehqAmky6dmMyJxMzzpZwXylRXJzXgbNXOizF9a75je5e29i8Dn53jx4Qmq6i0jnCh5/N8ATpC8dfWcxBGPAYcak3HJ6wAnSt/9NyDBFpZvuZD4/WB9Ehz3NyDnfOJ3nTXMPGGIyadXMQIJMDwNhqeRUhY1WN1qxvFHJqSURQ2OzRmBBJh8etU4ACuQvtJ76Tjns+F0hwUn2kzIqp0HY00MjjbvRlVLJqpaMlF8fRNYgfSN34CncbYzD6lXZUi9OumXy5B6RYZtl2XYekmKlItSVD5MB8PToDR51CzOLuleV6L6mMCH5TE8jVNPjEirkyOtbnLIa+XYVSvHzho5jLeiUexOxLE2QwjAiuTmre4Toy8/+XHNVzmUXB45WNW5CwZXODJcU5DhCofhTjgMt8ORdS8KzsYNo5tLI4MMTw+xAvlCsQL5Wu3dh9KOjTjcsQYVnUnI86ix163AXndEyBsV2NOgQEmrDlvKIgcYK9mjMVFytYWSUoxA+ivbt8PknoH97fGo8K+HrU0NU7MSWS1TkdWihKlZCaNHCYdPB71DGUywUkv/lMVON2Rf0Yw4m9bCcCbmW1K5arC8ZzWyvdOQ45sOsWsunN1L4PBrUOhbCHNd3NCKIvk3lic/GJEEqHgbNZO1063LCiSvdXyYheFplD1bjtwuFYqeqmFrWDysdyqCeqdiIPv2gmG7NxZ863zYPHGhI/7rjYd6liK3S4WDzxdhzQF5UMvTei1P61cWy4LW9jnIfBCBnKbofwO4Qskr443ZKPLHotgfhwQbGf0DJ8PZzVEwN83AjotKcAXk1TiAlqe4ZQWS3rHKsnby5ndLRfJ+bM7ZJb1anuJ+AlaseBXu6wE/AAAAAElFTkSuQmCC") no-repeat !important;
                color:black!important;
    			font-size:14px!important;
    			min-height: 25px!important;
    			margin-top: 10px!important;
                text-decoration:none!important;
    			padding-top: 2px !important;
                padding-right:15px!important;
                padding-left:35px!important;
    			border-color: #A6A4A4 !important;
    			border-style: outset !important;
    			border-width:1px !important;
                background-position:10px 3px!important;
                border-radius:4px!important;
    			}
    
    		[href="https://addons.mozilla.org/addon/cstbb/versions/"]:hover{
                background: #E1F3FC url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC4klEQVQ4jY2Sa0hTcRjGD/7P2Fo2Vw1CsKyYlUn0YdnmOafstq6GWXZRmFS2OdCp2zlnXrI1IrxglJRF0ZUKEu26Sh25NC9b5gSrTxnZivpQUSHOClGfPiyLMKTnywMvPD9e3vehqAmky6dmMyJxMzzpZwXylRXJzXgbNXOizF9a75je5e29i8Dn53jx4Qmq6i0jnCh5/N8ATpC8dfWcxBGPAYcak3HJ6wAnSt/9NyDBFpZvuZD4/WB9Ehz3NyDnfOJ3nTXMPGGIyadXMQIJMDwNhqeRUhY1WN1qxvFHJqSURQ2OzRmBBJh8etU4ACuQvtJ76Tjns+F0hwUn2kzIqp0HY00MjjbvRlVLJqpaMlF8fRNYgfSN34CncbYzD6lXZUi9OumXy5B6RYZtl2XYekmKlItSVD5MB8PToDR51CzOLuleV6L6mMCH5TE8jVNPjEirkyOtbnLIa+XYVSvHzho5jLeiUexOxLE2QwjAiuTmre4Toy8/+XHNVzmUXB45WNW5CwZXODJcU5DhCofhTjgMt8ORdS8KzsYNo5tLI4MMTw+xAvlCsQL5Wu3dh9KOjTjcsQYVnUnI86ix163AXndEyBsV2NOgQEmrDlvKIgcYK9mjMVFytYWSUoxA+ivbt8PknoH97fGo8K+HrU0NU7MSWS1TkdWihKlZCaNHCYdPB71DGUywUkv/lMVON2Rf0Yw4m9bCcCbmW1K5arC8ZzWyvdOQ45sOsWsunN1L4PBrUOhbCHNd3NCKIvk3lic/GJEEqHgbNZO1063LCiSvdXyYheFplD1bjtwuFYqeqmFrWDysdyqCeqdiIPv2gmG7NxZ863zYPHGhI/7rjYd6liK3S4WDzxdhzQF5UMvTei1P61cWy4LW9jnIfBCBnKbofwO4Qskr443ZKPLHotgfhwQbGf0DJ8PZzVEwN83AjotKcAXk1TiAlqe4ZQWS3rHKsnby5ndLRfJ+bM7ZJb1anuJ+AlaseBXu6wE/AAAAAElFTkSuQmCC") no-repeat !important;
                color:black!important;
    			font-size:14px!important;
                text-decoration:none!important;
                padding-right:15px!important;
                padding-left:35px!important;
                background-position:10px 3px!important;
                border-style: outset !important;
                border-width:1px !important;
                border-radius:4px!important;
    			}
    
    		#ctraddon_support{
                background: #efefef url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACp0lEQVQ4jV2TPW9cVRCGn3fOuffu9Xo3TnCEkANYQotB2WJpUqWwJSqIUuQPRKKlsAUFpeUmEpXXEv+ACClFitQowmUIMmxASowIkjuQk9jr/fDd7F3fQ7HWdcxI04zmfc47RzPif9G4cXdR0iqy5flL9VYRAoe9rCNpG9nW7v1be2/2qxR+/v0c0vp7C/NrV5euMCkijoYTXucnEALDYcaLwx7DLGsjbTy7d7NbAk7FP12/ttSq1uZ48vyYLA/UZhwg+qMCZ5A6GGVDesODDtLK0x8+69rUh9avX1tqWVzn0dMhWR4A8eDOxzy48xEyEWQcB4O0Tlq73JK5dQBr3Li7+P7C/NpsbY4nf2dTTxKYyhnNG/KGeQfeEVXrRJXqWvP2w0UvafXq0rv8+vz4TCwhJz795s/p62ZlHQkJ4uoFTnqvVj2y5UnwZOP8XNPj75rlTze/3MV5YU4IoQCJS5Bzy3b5rXrraDgBQQEMRgUH/QmNL/4oAXHiiSueJPUkM554JmK2FlGppC1fBBjnBeNJ4HAwQWZEicN7KwFRxeHjaU1mSDCbBIZ9jx0cHXfyyQkvD3NCAHPCnOEid85BUvEkMxGV6jQvzkVk45OOSdp+dTDAOZDpFCCcK3cMnziiiidJp+JaPcZZgZzfNmRbR4MBl2aENE0zIXc2go8cUeKJU0+lGvPhlYh/9kfI3Jbt3r+1N85ftykyUkcJ6Ww2SsCPX7+Nc4aPHY2FiH5vzL8vx+2dzeaeP93Ejfykv+zMtwKzAHzy1V8kaVTOXavFfDAP3f0BP+8cdGS2AWAAz+7d7CKtSL22D11U5MQBqha4GAfeqQYuKOP33/Z59PhFmxBWfvm2cXZMb0bz9sNFma3K+eUkSVs+dozyoiPnt2Vua2ezee6c/wN/E94boB6vcgAAAABJRU5ErkJggg==") no-repeat !important;
                color:black!important;
    			font-size:14px!important;
    			min-height: 25px!important;
    			margin-top: 10px!important;
                text-decoration:none!important;
    			padding-top: 2px !important;
                padding-right:15px!important;
                padding-left:35px!important;
    			border-color: #A6A4A4 !important;
    			border-style: outset !important;
    			border-width:1px !important;
                background-position:10px 3px!important;
                border-radius:4px!important;
    			}
    
    		#ctraddon_support:hover{
                background: #E1F3FC url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACp0lEQVQ4jV2TPW9cVRCGn3fOuffu9Xo3TnCEkANYQotB2WJpUqWwJSqIUuQPRKKlsAUFpeUmEpXXEv+ACClFitQowmUIMmxASowIkjuQk9jr/fDd7F3fQ7HWdcxI04zmfc47RzPif9G4cXdR0iqy5flL9VYRAoe9rCNpG9nW7v1be2/2qxR+/v0c0vp7C/NrV5euMCkijoYTXucnEALDYcaLwx7DLGsjbTy7d7NbAk7FP12/ttSq1uZ48vyYLA/UZhwg+qMCZ5A6GGVDesODDtLK0x8+69rUh9avX1tqWVzn0dMhWR4A8eDOxzy48xEyEWQcB4O0Tlq73JK5dQBr3Li7+P7C/NpsbY4nf2dTTxKYyhnNG/KGeQfeEVXrRJXqWvP2w0UvafXq0rv8+vz4TCwhJz795s/p62ZlHQkJ4uoFTnqvVj2y5UnwZOP8XNPj75rlTze/3MV5YU4IoQCJS5Bzy3b5rXrraDgBQQEMRgUH/QmNL/4oAXHiiSueJPUkM554JmK2FlGppC1fBBjnBeNJ4HAwQWZEicN7KwFRxeHjaU1mSDCbBIZ9jx0cHXfyyQkvD3NCAHPCnOEid85BUvEkMxGV6jQvzkVk45OOSdp+dTDAOZDpFCCcK3cMnziiiidJp+JaPcZZgZzfNmRbR4MBl2aENE0zIXc2go8cUeKJU0+lGvPhlYh/9kfI3Jbt3r+1N85ftykyUkcJ6Ww2SsCPX7+Nc4aPHY2FiH5vzL8vx+2dzeaeP93Ejfykv+zMtwKzAHzy1V8kaVTOXavFfDAP3f0BP+8cdGS2AWAAz+7d7CKtSL22D11U5MQBqha4GAfeqQYuKOP33/Z59PhFmxBWfvm2cXZMb0bz9sNFma3K+eUkSVs+dozyoiPnt2Vua2ezee6c/wN/E94boB6vcgAAAABJRU5ErkJggg==") no-repeat !important;
                color:black!important;
    			font-size:14px!important;
                text-decoration:none!important;
    			padding-top: 2px !important;
                padding-right:15px!important;
                padding-left:35px!important;
                background-position:10px 3px!important;
                border-style: outset !important;
                border-width:1px !important;
                border-radius:4px!important;
    			}	
    
    
    		}
    Alles anzeigen

    Mfg.
    Endor

  • Classic Theme Restorer customize Australis

    • Endor
    • 25. April 2014 um 08:19

    Classic Theme Restorer Version 1.1.9beta15
    https://addons.mozilla.org/de/firefox/add…torer/versions/

    Direkte Installation oder Download:
    https://addons.mozilla.org/firefox/downlo…version-history

    v1.1.9beta15
    [fix] squared tabs: protected/locked/pinned tabs and TMP/TU addons
    [fix] Windows small button mode: urlbar and star button margins
    [fix] some tweaks for rtl locales
    [fix] Windows + squared tabs: tabs toolbar gap in maximized mode

    Mfg.
    Endor

  • TabMix Plus Meldethread bis einschließlich Firefox 56.0.2

    • Endor
    • 25. April 2014 um 08:09

    Hallo Zusammen

    Ich habe wieder eine Version mit Änderung gemacht, damit beim
    Neustart kein neuer Tab, bzw. neues Fenster, mit der Tmp Update Seite geöffnet wird.
    Die Übersetzung ist aktuell!

    Download oder direkte Installation: Tab Mix Plus-0.4.1.4pre.140414a1-fx-spezial.xpi

    Verwendung wie immer auf eigene Gefahr.
    Und nun viel Spaß!
    Mfg.
    Endor

    [Blockierte Grafik: http://dl.dropbox.com/u/15467633/Firefox/Linie.png]

    [Blockierte Grafik: http://db.tt/iaNtST9y] Bei Fragen oder Problemen zu - mit Tabmixplus, bitte immer in diesem Thread schreiben:
    :arrow: https://www.camp-firefox.de/forum/viewtopic.php?f=4&t=98563

  • Classic Toolbar Buttons - Versionsinfo

    • Endor
    • 24. April 2014 um 16:21

    Neue Dev Version Classic Toolbar Buttons 1.4.0beta7

    https://addons.mozilla.org/de/firefox/addon/cstbb/versions/

    Download
    https://addons.mozilla.org/firefox/downlo…version-history

    Changelog
    [Fx29+] added support for CTRs new button ids (CTR1.1.9beta14 required)

    Mfg.
    Endor

  • userChrome.js Scripte für den Fuchs (Zusammenstellung)

    • Endor
    • 24. April 2014 um 14:34

    Hallo Miccovin.
    Habe hier alle meine Scripte die ich so verwende auch schon im 29er, 30er und 31er laufen.
    Da ist mir was die Scripte betrifft, nichts gröberes vorgekommen.

    Was CSS Codes betrifft, da ist das dann schon etwas anderes. Speziell die für die Tabs.
    Von denen muss man praktisch alle anpassen, und durch das besch... Australis Design
    ist das nicht mehr ganz so einfach.
    Mfg.
    Endor

  • Classic Theme Restorer customize Australis

    • Endor
    • 24. April 2014 um 14:31

    Classic Theme Restorer Version 1.1.9beta14
    https://addons.mozilla.org/de/firefox/add…torer/versions/

    Direkte Installation oder Download:
    https://addons.mozilla.org/firefox/downlo…version-history

    v1.1.9beta14
    [fix] issues with pinned tabs and a few add-ons
    [change] almost all CTR ids changed (requested by AMO editors) *

    * Previous ids were not unique enough.
    Every id/class starting with "ctr_" was renamed to "ctraddon_", so all themes, extensions, userstyles etc. using them have to be updated, sorry.

    Because of this id change, some CTR items might end up in customization palette or at the end of the navigation toolbar.
    They have to be moved back to where they were before manually.

    Some settings/features might got broken by this change, so report any new issues.

    Mfg.
    Endor

  • Zeilenabstände in Lesezeichen-Leiste (Sidebar) verkleinern

    • Endor
    • 24. April 2014 um 13:45

    Ja, das kann schon mal passieren.
    //Sei tifoso di Valentino?
    Mfg.
    Endor

  • Edit-Sperre im Forum?

    • Endor
    • 24. April 2014 um 13:43

    Genau, den Thread würde es auch betreffen. Deswegen, bräuchte es eine Art Whitelist für bestimmte Threads,
    wenn automatisch nach so und soviel Tagen, das Editieren nicht mehr möglich ist.
    Keine Ahnung ob es so etwas überhaupt möglich ist.
    Mfg.
    Endor

  • Shockwave Flash Installation Fehler

    • Endor
    • 23. April 2014 um 18:56

    Ach so, Du verwendet eine beta Version des Flash Players.
    Die gibt es hier zum download: http://labs.adobe.com/downloads/flashplayer.html
    Du hast jetzt ja die aktuelle Beta im Moment. Also passt alles. :D
    Ich verwende immer die aktuelle Finale Version.
    Schön, dass es funktioniert hat.
    Auch Dir einen schönen Abend.
    Mfg.
    Endor

  • Shockwave Flash Installation Fehler

    • Endor
    • 23. April 2014 um 18:02

    Hallo ostsee!
    ich verwende immer die OFF Line Installation.
    Also Datei runter laden und dann installieren:

    http://download.macromedia.com/pub/flashplaye…h_player_ax.exe für IE,
    http://download.macromedia.com/pub/flashplaye…lash_player.exe für Firefox

    Teste das mal. Klarerweise muss Firefox zum installieren geschlossen sein.
    Hoffe, es klappt.
    Mfg.
    Endor

  • Edit-Sperre im Forum?

    • Endor
    • 22. April 2014 um 19:56

    Mir würde das mit unserer Seite im Übersetzungs Tread auch sehr ungelegen kommen. Da muss ich den Eingangsbeitrag auch
    regelmäßig ändern, anpassen usw. Das gleiche mit dem NoScript Thread und den TMP Thread von Boersenfeger.
    Edit-Sperre ja, aber mit Whitelist oder so.
    Mfg.
    Endor

  • Silvermel und Charamel - Themen für Firefox und Thunderbird

    • Endor
    • 22. April 2014 um 17:04

    // Wenn dann die neueste Version davon 3.0.3 https://addons.mozilla.org/de/firefox/add…/versions/3.0.3
    Ich ziehe aber die Erweiterung Classic Theme Restorer vor:
    https://www.camp-firefox.de/forum/viewtopi…=911137#p911137

    Mfg.
    Endor

  • userChrome.js Scripte für den Fuchs (Zusammenstellung)

    • Endor
    • 21. April 2014 um 17:28

    Das ist eine gute Idee, habe ich auch gleich mal per Twitter gemacht. Mal sehen
    ob und was der Japaner antwortet. Kann aber etwas dauern....
    Mfg.
    Endor

  • userChrome.js Scripte für den Fuchs (Zusammenstellung)

    • Endor
    • 21. April 2014 um 16:46

    Hallo aborix.
    Schade, dass Du da auch nicht weiter weißt.
    Denn ich bin auch am ende meines Lateins.

    Es wird wohl so sein, dass wir das für Thunderbird nicht zum laufen bringen können.
    Da bleibt wohl nur Übrig die Erweiterung Stylish zu verwenden, wenn man in Thunderbird
    CSS Code anwenden will.

    Trotzdem Danke für Deine Mühe.
    Mfg.
    Endor

  • userChrome.js Scripte für den Fuchs (Zusammenstellung)

    • Endor
    • 21. April 2014 um 08:21

    Ich habe alles probiert was mir eingefallen ist.
    Klar den Pfad zum Editor muss man in about:config eingeben, dann funktioniert auch
    das Erstellen neuer CSS Codes über das Script. Der Editor wird geöffnet usw..
    Leider ändert das aber nichts an dem Problem, dass man vorhandene CSS Codes
    nicht mit rechts klick im Editor öffnen und bearbeiten kann, es tut sich einfach nichts bei
    einem rechts klick, und beim Starten von Thunderbird werden die Stiles nicht automatische geladen.
    Manuell mit Mittelklick geht es. Komische Sache.
    Ich habe auch noch versucht, den Pfad zum CSS Ordner in about:config einzufügen, wie
    am Anfang im Script geschrieben, UserCSSLoader.FOLDER aber auch das bringt nichts.

    Ich weiß auch nicht mehr weiter. Irgendwas muss man im Script ändern nur was... :-??
    Mfg.
    Endor

  • Noscript Website

    • Endor
    • 20. April 2014 um 17:14

    Ist die NoScipt Seite eventuell bei dir als weitere Startseite eingetragen?
    Extras - Einstellungen - Allgemein
    dann bei Startseite mal nachschauen.

    Mfg.
    Endor

  • userChrome.js Scripte für den Fuchs (Zusammenstellung)

    • Endor
    • 20. April 2014 um 16:24

    Hallo zusammen.
    Ich habe mich mal daran versucht, aber wie schon oben geschrieben, es will einfach nicht so.
    Hier mal mein aktuelles Werk,

    HTML
    // ==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.4e
    // @note           0.0.4 Remove E4X
    // @note           CSSEntry クラスを作った
    // @note           スタイルのテスト機能を作り直した
    // @note           ファイルが削除された場合 rebuild 時に CSS を解除しメニューを消すようにした
    // @note           uc で読み込まれた .uc.css の再読み込みに仮対応
    // @note           Version 0.0.4.b ermoeglicht "Styles importieren" per Mittelklick und anderen Dateimanager (s. vFileManager in Zeile 54)
    // @note           Version 0.0.4.c ermoeglicht Darstellung als Button und Einstellung der Zielleiste (s. showAs und showWhere in Zeile 56 bzw. 57)
    //                 sowie Uebernahme des CSS-Pfades in die Zwischenablage per Strg+Rechtsklick, Version 0.0.4.e: Alt+Rechtsklick verschiebt css-Datei in den TEMP-Ordner
    // ==/UserScript==
    
    
    /****** 使い方 ******
    
    
    chrome フォルダに CSS フォルダが作成されるのでそこに .css をぶち込むだけ。
    ファイル名が "xul-" で始まる物、".as.css" で終わる物は AGENT_SHEET で、それ以外は USER_SHEET で読み込む。
    ファイルの内容はチェックしないので @namespace 忘れに注意。
    
    
    メニューバーに CSS メニューが追加される
    メニューを左クリックすると ON/OFF
              中クリックするとメニューを閉じずに ON/OFF
              右クリックするとエディタで開く
    
    
    Pfad zum Editor "view_source.editor.path" に指定されているものを使う
    Pfad zum User CSS Ordner "UserCSSLoader.FOLDER" にパスを入れれば変更可能
    
    
     **** Beschreibung-Ende ****/
    
    
    (function(){
    
    
    let { classes: Cc, interfaces: Ci, utils: Cu, results: Cr } = Components;
    if (!window.Services)
    	Cu.import("resource://gre/modules/Services.jsm");
    
    
    // 起動時に他の窓がある(2窓目の)場合は抜ける
    let list = Services.wm.getEnumerator("messenger:messenger");
    while(list.hasMoreElements()){ if(list.getNext() != window) return; }
    
    
    if (window.UCL) {
    	window.UCL.destroy();
    	delete window.UCL;
    }
    
    
    window.UCL = {
    	// vFileManager: 'C:\\Programme\\totalcmd\\TOTALCMD.EXE',
    	// vFileManager: 'F:\\Adaten\\Downloads\\FreeComander\\FreeCommanderPortable\\FreeCommanderPortable.exe' args: ['T'],
    	vFileManager: '',
    	//etwas anderes als 'button' zeigt den Loader als Menue:
    	showAs: 'menu',
    	showWhere: 'mail-menubar', // wenn oben als Button darstellen gewählt wurde, dann hier tabbar-toolbar oder mail-toolbar-menubar2 verwenden in Thunderbird
    	//Automatische Aktualisierung der Menüliste nach Verschieben einer CSS Datei in den TEMP Ordner mit "rechte Maustatste + Alt"
    	AUTO_REBUILD:  true,
    	USE_UC: "UC" in window,
    	AGENT_SHEET: Ci.nsIStyleSheetService.AGENT_SHEET,
    	USER_SHEET : Ci.nsIStyleSheetService.USER_SHEET,
    	readCSS    : {},
    	get disabled_list() {
    		let obj = [];
    		try {
    			obj = this.prefs.getComplexValue("disabled_list", Ci.nsISupportsString).data.split("|");
    		} catch(e) {}
    		delete this.disabled_list;
    		return this.disabled_list = obj;
    	},
    	get prefs() {
    		delete this.prefs;
    		return this.prefs = Services.prefs.getBranch("UserCSSLoader.")
    	},
    	get styleSheetServices(){
    		delete this.styleSheetServices;
    		return this.styleSheetServices = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService);
    	},
    	get FOLDER() {
    		let aFolder;
    		try {
    			// UserCSSLoader.FOLDER があればそれを使う
    			let folderPath = this.prefs.getCharPref("FOLDER");
    			aFolder = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile)
    			aFolder.initWithPath(folderPath);
    		} catch (e) {
    			aFolder = Services.dirsvc.get("UChrm", Ci.nsILocalFile);
    			aFolder.appendRelativePath("CSS");
    		}
    		if (!aFolder.exists() || !aFolder.isDirectory()) {
    			aFolder.create(Ci.nsIFile.DIRECTORY_TYPE, 0664);
    		}
    		delete this.FOLDER;
    		return this.FOLDER = aFolder;
    	},
    	getFocusedWindow: function() {
    		let win = document.commandDispatcher.focusedWindow;
    		if (!win || win == window) win = content;
    		return win;
    	},
    	init: function() {
    		var xmlStart = '<menu id="usercssloader-menu"';
    		var xmlEnd = '</menu>';
    		if (UCL.showAs === 'button') {
    			xmlStart = '<toolbarbutton type="menu" id="usercssloader-menu" class="toolbarbutton-1"';
    			xmlEnd = '</toolbarbutton>';
    		}
    		var xml = xmlStart + ' \
    			label="CSS" accesskey="C" onclick="if (event.button === 1) {UCL.rebuild()};">\
    				<menupopup id="usercssloader-menupopup">\
    					<menu label="Style Loader Menü"\
    					      accesskey="M">\
    						<menupopup id="usercssloader-submenupopup">\
    							<menuitem label="Styles importieren"\
    							          accesskey="R"\
    							          acceltext="Alt + R"\
    							          oncommand="UCL.rebuild();" />\
    							<menuseparator />\
    							<menuitem label="CSS Datei erstellen"\
    							          accesskey="D"\
    							          oncommand="UCL.create();" />\
    							<menuitem label="CSS Ordner öffnen"\
    							          accesskey="O"\
    							          oncommand="UCL.openFolder();" />\
    							<menuitem label="userChrome.css bearbeiten"\
    							          hidden="true"\
    							          oncommand="UCL.editUserCSS(\'userChrome.css\')" />\
    							<menuitem label="userContent.css bearbeiten"\
    							          hidden="true"\
    							          oncommand="UCL.editUserCSS(\'userContent.css\')" />\
    							<menuseparator />\
    							<menuitem label="Style Test (Chrome)"\
    							          id="usercssloader-test-chrome"\
    							          accesskey="C"\
    							          oncommand="UCL.styleTest(window);" />\
    							<menuitem label="Style Test (Web)"\
    							          id="usercssloader-test-content"\
    							          accesskey="W"\
    							          oncommand="UCL.styleTest();" />\
    							<menuitem label="Styles dieser Seite auf userstyles.org finden"\
    							          accesskey="S"\
    							          oncommand="UCL.searchStyle();" />\
    						</menupopup>\
    					</menu>\
    					<menu label=".uc.css" accesskey="U" hidden="+ !UCL.USE_UC +">\
    						<menupopup id="usercssloader-ucmenupopup">\
    							<menuitem label="Importieren(.uc.js)"\
    							          oncommand="UCL.UCrebuild();" />\
    							<menuseparator id="usercssloader-ucsepalator"/>\
    						</menupopup>\
    					</menu>\
    					<menuseparator id="ucl-sepalator"/>\
    				</menupopup>\
    		';
    		xml = xml + xmlEnd;
    
    
    		var range = document.createRange();
    		range.selectNodeContents($(UCL.showWhere));
    		range.collapse(false);
    		range.insertNode(range.createContextualFragment(xml.replace(/\n|\t/g, '')));
    		range.detach();
    
    
    		$("mainKeyset").appendChild($C("key", {
    			id: "usercssloader-rebuild-key",
    			oncommand: "UCL.rebuild();",
    			key: "R",
    			modifiers: "alt",
    		}));
    
    
    		this.rebuild();
    		this.initialized = true;
    		if (UCL.USE_UC) {
    			setTimeout(function() {
    				UCL.UCcreateMenuitem();
    			}, 1000);
    		}
    		window.addEventListener("unload", this, false);
    	},
    	uninit: function() {
    		var dis = [x for(x in this.readCSS) if (!this.readCSS[x].enabled)];
    		var str = Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString);
    		str.data = dis.join("|");
    		this.prefs.setComplexValue("disabled_list", Ci.nsISupportsString, str);
    		window.removeEventListener("unload", this, false);
    	},
    	destroy: function() {
    		var i = document.getElementById("usercssloader-menu");
    		if (i) i.parentNode.removeChild(i);
    		var i = document.getElementById("usercssloader-rebuild-key");
    		if (i) i.parentNode.removeChild(i);
    		this.uninit();
    	},
    	handleEvent: function(event) {
    		switch(event.type){
    			case "unload": this.uninit(); break;
    		}
    	},
    	rebuild: function() {
    		let ext = /\.css$/i;
    		let not = /\.uc\.css/i;
    		let files = this.FOLDER.directoryEntries.QueryInterface(Ci.nsISimpleEnumerator);
    
    
    		while (files.hasMoreElements()) {
    			let file = files.getNext().QueryInterface(Ci.nsIFile);
    			if (!ext.test(file.leafName) || not.test(file.leafName)) continue;
    			let CSS = this.loadCSS(file);
    			CSS.flag = true;
    		}
    		for (let [leafName, CSS] in Iterator(this.readCSS)) {
    			if (!CSS.flag) {
    				CSS.enabled = false;
    				delete this.readCSS[leafName];
    			}
    			delete CSS.flag;
    			this.rebuildMenu(leafName);
    		}
    		if (this.initialized)
    			XULMessengerWindow.statusTextField.label = "Styles importieren";
    	},
    	loadCSS: function(aFile) {
    		var CSS = this.readCSS[aFile.leafName];
    		if (!CSS) {
    			CSS = this.readCSS[aFile.leafName] = new CSSEntry(aFile);
    			if (this.disabled_list.indexOf(CSS.leafName) === -1) {
    				CSS.enabled = true;
    			}
    		} else if (CSS.enabled) {
    			CSS.enabled = true;
    		}
    		return CSS;
    	},
    	rebuildMenu: function(aLeafName) {
    		var CSS = this.readCSS[aLeafName];
    		var menuitem = document.getElementById("usercssloader-" + aLeafName);
    		if (!CSS) {
    			if (menuitem)
    				menuitem.parentNode.removeChild(menuitem);
    			return;
    		}
    
    
    		if (!menuitem) {
    			menuitem = document.createElement("menuitem");
    			menuitem.setAttribute("label", aLeafName);
    			menuitem.setAttribute("id", "usercssloader-" + aLeafName);
    			menuitem.setAttribute("class", "usercssloader-item " + (CSS.SHEET == this.AGENT_SHEET? "AGENT_SHEET" : "USER_SHEET"));
    			menuitem.setAttribute("type", "checkbox");
    			menuitem.setAttribute("autocheck", "false");
    			menuitem.setAttribute("oncommand", "UCL.toggle('"+ aLeafName +"');");
    			menuitem.setAttribute("onclick", "UCL.itemClick(event);");
    			document.getElementById("usercssloader-menupopup").appendChild(menuitem);
    		}
    		menuitem.setAttribute("checked", CSS.enabled);
    	},
    	toggle: function(aLeafName) {
    		var CSS = this.readCSS[aLeafName];
    		if (!CSS) return;
    		CSS.enabled = !CSS.enabled;
    		this.rebuildMenu(aLeafName);
    	},
    	itemClick: function(event) {
    		if (event.button == 0) return;
    
    
    		event.preventDefault();
    		event.stopPropagation();
    		let label = event.currentTarget.getAttribute("label");
    
    
    		if (event.button == 1) {
    			this.toggle(label);
    		}
    		// Kopieren des Pfades einer CSS-Datei in die Zwischenablage mit Strg + rechte Maustaste
    		else if (event.ctrlKey && event.button == 2) {
    			var clipboard = Cc['@mozilla.org/widget/clipboardhelper;1'].getService(Ci.nsIClipboardHelper);
    			clipboard.copyString(this.getFileFromLeafName(label).path);
    		}
    		// Automatische Aktualisierung der Menüliste nach Verschieben einer CSS Datei in den TEMP Ordner mit "rechte Maustatste + Alt"
    		else if (event.altKey && event.button == 2){
    			this.moveFile(this.getFileFromLeafName(label).path);
    			if (this.AUTO_REBUILD) this.rebuild();
    		}
    		else if (!event.ctrlKey && !event.altKey && event.button == 2){
    			closeMenus(event.target);
    			this.edit(this.getFileFromLeafName(label));
    		}
    	},
    	getFileFromLeafName: function(aLeafName) {
    		let f = this.FOLDER.clone();
    		f.QueryInterface(Ci.nsILocalFile); // use appendRelativePath
    		f.appendRelativePath(aLeafName);
    		return f;
    	},
    	styleTest: function(aWindow) {
    		aWindow || (aWindow = this.getFocusedWindow());
    		new CSSTester(aWindow, function(tester){
    			if (tester.saved)
    				UCL.rebuild();
    		});
    	},
    	searchStyle: function() {
    		let win = this.getFocusedWindow();
    		let word = win.location.host || win.location.href;
    		// openLinkIn("http://userstyles.org/styles/browse/site/" + word, "tab", {});
    		openLinkIn("http://userstyles.org/styles/browse_r?search_terms=" + word, "tab", {});
    	},
    	openFolder: function() {
    		if (this.vFileManager.length != 0) {
    			var file = Cc['@mozilla.org/file/local;1'].createInstance(Ci.nsILocalFile);
    			var process = Cc['@mozilla.org/process/util;1'].createInstance(Ci.nsIProcess);
    			var args=[this.FOLDER.path];
    			file.initWithPath(this.vFileManager);
    			process.init(file);
    			// Verzeichnis mit anderem Dateimanager oeffnen
    			process.run(false, args, args.length);
    		} else {
    			// Verzeichnis mit Dateimanager des Systems oeffnen
    			this.FOLDER.launch();
    		}
    	},
    	// Verschieben einer CSS Datei in den TEMP Ordner
    	moveFile: function(aFile){
    		var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
    		var destDir = Services.dirsvc.get("Trsh", Ci.nsILocalFile);
    			file.initWithPath(aFile);
    			file.moveTo(destDir, "");
    	},
    	editUserCSS: function(aLeafName) {
    		let file = Services.dirsvc.get("UChrm", Ci.nsILocalFile);
    		file.appendRelativePath(aLeafName);
    		this.edit(file);
    	},
    	edit: function(aFile) {
    		var editor = Services.prefs.getCharPref("view_source.editor.path");
    		if (!editor) return alert("Unter about:config den vorhandenen Schalter:\n view_source.editor.path mit dem Editorpfad ergänzen");
    		try {
    			var UI = Cc["@mozilla.org/intl/scriptableunicodeconverter"].createInstance(Ci.nsIScriptableUnicodeConverter);
    			UI.charset = window.navigator.platform.toLowerCase().indexOf("win") >= 0? "Shift_JIS": "UTF-8";
    			var path = UI.ConvertFromUnicode(aFile.path);
    			var app = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
    			app.initWithPath(editor);
    			var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
    			process.init(app);
    			process.run(false, [path], 1);
    		} catch (e) {}
    	},
    	create: function(aLeafName) {
    		if (!aLeafName) aLeafName = prompt("Name des Styles", new Date().toLocaleFormat("Neuer Style"));
    		if (aLeafName) aLeafName = aLeafName.replace(/\s+/g, " ").replace(/[\\/:*?\"<>|]/g, "");
    		if (!aLeafName || !/\S/.test(aLeafName)) return;
    		if (!/\.css$/.test(aLeafName)) aLeafName += ".css";
    		let file = this.getFileFromLeafName(aLeafName);
    		this.edit(file);
    	},
    	UCrebuild: function() {
    		let re = /^file:.*\.uc\.css(?:\?\d+)?$/i;
    		let query = "?" + new Date().getTime();
    		Array.slice(document.styleSheets).forEach(function(css){
    			if (!re.test(css.href)) return;
    			if (css.ownerNode) {
    				css.ownerNode.parentNode.removeChild(css.ownerNode);
    			}
    			let pi = document.createProcessingInstruction('xml-stylesheet','type="text/css" href="'+ css.href.replace(/\?.*/, '') + query +'"');
    			document.insertBefore(pi, document.documentElement);
    		});
    		UCL.UCcreateMenuitem();
    	},
    	UCcreateMenuitem: function() {
    		let sep = $("usercssloader-ucsepalator");
    		let popup = sep.parentNode;
    		if (sep.nextSibling) {
    			let range = document.createRange();
    			range.setStartAfter(sep);
    			range.setEndAfter(popup.lastChild);
    			range.deleteContents();
    			range.detach();
    		}
    
    
    		let re = /^file:.*\.uc\.css(?:\?\d+)?$/i;
    		Array.slice(document.styleSheets).forEach(function(css) {
    			if (!re.test(css.href)) return;
    			let fileURL = decodeURIComponent(css.href).split("?")[0];
    			let aLeafName = fileURL.split("/").pop();
    			let m = document.createElement("menuitem");
    			m.setAttribute("label", aLeafName);
    			m.setAttribute("tooltiptext", fileURL);
    			m.setAttribute("id", "usercssloader-" + aLeafName);
    			m.setAttribute("type", "checkbox");
    			m.setAttribute("autocheck", "false");
    			m.setAttribute("checked", "true");
    			m.setAttribute("oncommand", "this.setAttribute('checked', !(this.css.disabled = !this.css.disabled));");
    			m.setAttribute("onclick", "UCL.UCItemClick(event);");
    			m.css = css;
    			popup.appendChild(m);
    		});
    	},
    	UCItemClick: function(event) {
    		if (event.button == 0) return;
    		event.preventDefault();
    		event.stopPropagation();
    
    
    		if (event.button == 1) {
    			event.target.doCommand();
    		}
    		else if (event.button == 2) {
    			closeMenus(event.target);
    			let fileURL = event.currentTarget.getAttribute("tooltiptext");
    			let file = Services.io.getProtocolHandler("file").QueryInterface(Ci.nsIFileProtocolHandler).getFileFromURLSpec(fileURL);
    			this.edit(file);
    		}
    	},
    };
    
    
    function CSSEntry(aFile) {
    	this.path = aFile.path;
    	this.leafName = aFile.leafName;
    	this.lastModifiedTime = 1;
    	this.SHEET = /^xul-|\.as\.css$/i.test(this.leafName) ?
    		Ci.nsIStyleSheetService.AGENT_SHEET:
    		Ci.nsIStyleSheetService.USER_SHEET;
    }
    CSSEntry.prototype = {
    	sss: Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService),
    	_enabled: false,
    	get enabled() {
    		return this._enabled;
    	},
    	set enabled(isEnable) {
    		var aFile = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile)
    		aFile.initWithPath(this.path);
    
    
    		var isExists = aFile.exists(); // ファイルが存在したら true
    		var lastModifiedTime = isExists ? aFile.lastModifiedTime : 0;
    		var isForced = this.lastModifiedTime != lastModifiedTime; // ファイルに変更があれば true
    
    
    		var fileURL = Services.io.getProtocolHandler("file").QueryInterface(Ci.nsIFileProtocolHandler).getURLSpecFromFile(aFile);
    		var uri = Services.io.newURI(fileURL, null, null);
    
    
    		if (this.sss.sheetRegistered(uri, this.SHEET)) {
    			// すでにこのファイルが読み込まれている場合
    			if (!isEnable || !isExists) {
    				this.sss.unregisterSheet(uri, this.SHEET);
    			}
    			else if (isForced) {
    				// 解除後に登録し直す
    				this.sss.unregisterSheet(uri, this.SHEET);
    				this.sss.loadAndRegisterSheet(uri, this.SHEET);
    			}
    		} else {
    			// このファイルは読み込まれていない
    			if (isEnable && isExists) {
    				this.sss.loadAndRegisterSheet(uri, this.SHEET);
    			}
    		}
    		if (this.lastModifiedTime !== 1 && isEnable && isForced) {
    			log(this.leafName + " の更新を確認しました。");
    		}
    		this.lastModifiedTime = lastModifiedTime;
    		return this._enabled = isEnable;
    	},
    };
    
    
    function CSSTester(aWindow, aCallback) {
    	this.win = aWindow || window;
    	this.doc = this.win.document;
    	this.callback = aCallback;
    	this.init();
    }
    CSSTester.prototype = {
    	sss: Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService),
    	preview_code: "",
    	saved: false,
    	init: function() {
    		this.dialog = openDialog(
    			"data:text/html;charset=utf8,"+encodeURIComponent('<!DOCTYPE HTML><html lang="de"><head><title>CSSTester</title></head><body></body></html>'),
    			"",
    			"width=550,height=400,dialog=no");
    		this.dialog.addEventListener("load", this, false);
    	},
    	destroy: function() {
    		this.preview_end();
    		this.dialog.removeEventListener("unload", this, false);
    		this.previewButton.removeEventListener("click", this, false);
    		this.saveButton.removeEventListener("click", this, false);
    		this.closeButton.removeEventListener("click", this, false);
    	},
    	handleEvent: function(event) {
    		switch(event.type) {
    			case "click":
    				if (event.button != 0) return;
    				if (this.previewButton == event.currentTarget) {
    					this.preview();
    				}
    				else if (this.saveButton == event.currentTarget) {
    					this.save();
    				}
    				else if (this.closeButton == event.currentTarget) {
    					this.dialog.close();
    				}
    				break;
    			case "load":
    				var doc = this.dialog.document;
    				doc.body.innerHTML = '\
    					<style type="text/css">\
    						:not(input):not(select) { padding: 0px; margin: 0px; }\
    						table { border-spacing: 0px; }\
    						body, html, #main, #textarea { width: 100%; height: 100%; }\
    						#textarea { font-family: monospace; }\
    					</style>\
    					<table id="main">\
    						<tr height="100%">\
    							<td colspan="4"><textarea id="textarea"></textarea></td>\
    						</tr>\
    						<tr height="40">\
    							<td><input type="button" value="Vorschau" id="Vorschau"/></td>\
    							<td><input type="button" value="Speichern" id="Speichern"/></td>\
    							<td width="80%"><span class="log"></td>\
    							<td><input type="button" value="Schließen" id="Schliessen"/></td>\
    						</tr>\
    					</table>\
    				';
    				this.textbox = doc.querySelector("textarea");
    				this.previewButton = doc.querySelector('input[value="Vorschau"]');
    				this.saveButton = doc.querySelector('input[value="Speichern"]');
    				this.closeButton = doc.querySelector('input[value="Schließen"]');
    				this.logField = doc.querySelector('.log');
    
    
    				var code = "@namespace url(" + this.doc.documentElement.namespaceURI + ");\n";
    				code += this.win.location.protocol.indexOf("http") === 0?
    					"@-moz-document domain(" + this.win.location.host + ") {\n\n\n\n}":
    					"@-moz-document url(" + this.win.location.href + ") {\n\n\n\n}";
    				this.textbox.value = code;
    				this.dialog.addEventListener("unload", this, false);
    				this.previewButton.addEventListener("click", this, false);
    				this.saveButton.addEventListener("click", this, false);
    				this.closeButton.addEventListener("click", this, false);
    
    
    				this.textbox.focus();
    				let p = this.textbox.value.length - 3;
    				this.textbox.setSelectionRange(p, p);
    
    
    				break;
    			case "unload":
    				this.destroy();
    				this.callback(this);
    				break;
    		}
    	},
    	preview: function() {
    		var code = this.textbox.value;
    		if (!code || !/\:/.test(code))
    			return;
    		code = "data:text/css;charset=utf-8," + encodeURIComponent(this.textbox.value);
    		if (code == this.preview_code)
    			return;
    		this.preview_end();
    		var uri = Services.io.newURI(code, null, null);
    		this.sss.loadAndRegisterSheet(uri, Ci.nsIStyleSheetService.AGENT_SHEET);
    		this.preview_code = code;
    		this.log("Vorschau");
    	},
    	preview_end: function() {
    		if (this.preview_code) {
    			let uri = Services.io.newURI(this.preview_code, null, null);
    			this.sss.unregisterSheet(uri, Ci.nsIStyleSheetService.AGENT_SHEET);
    			this.preview_code = "";
    		}
    	},
    	save: function() {
    		var data = this.textbox.value;
    		if (!data) return;
    
    
    		var fp = Cc["@mozilla.org/filepicker;1"].createInstance(Ci.nsIFilePicker);
    		fp.init(window, "", Ci.nsIFilePicker.modeSave);
    		fp.appendFilter("CSS Files","*.css");
    		fp.defaultExtension = "css";
    		if (window.UCL)
    			fp.displayDirectory = UCL.FOLDER;
    		var res = fp.show();
    		if (res != fp.returnOK && res != fp.returnReplace) return;
    
    
    		var suConverter = Cc["@mozilla.org/intl/scriptableunicodeconverter"].createInstance(Ci.nsIScriptableUnicodeConverter);
    		suConverter.charset = "UTF-8";
    		data = suConverter.ConvertFromUnicode(data);
    		var foStream = Cc["@mozilla.org/network/file-output-stream;1"].createInstance(Ci.nsIFileOutputStream);
    		foStream.init(fp.file, 0x02 | 0x08 | 0x20, 0664, 0);
    		foStream.write(data, data.length);
    		foStream.close();
    		this.saved = true;
    	},
    	log: function() {
    		this.logField.textContent = new Date().toLocaleFormat("%H:%M:%S") + ": " + $A(arguments);
    	}
    };
    
    
    UCL.init();
    
    
    function $(id) { return document.getElementById(id); }
    function $A(arr) Array.slice(arr);
    function $C(name, attr) {
    	var el = document.createElement(name);
    	if (attr) Object.keys(attr).forEach(function(n) el.setAttribute(n, attr[n]));
    	return el;
    }
    
    
    function log() { Application.console.log(Array.slice(arguments)); }
    
    
    })();
    Alles anzeigen

    Es wird in Thunderbird angezeigt, die CSS Codes funktionieren auch, aber
    nach einem Neustart von Thunderbird werden die Codes nicht automatisch geladen.
    manuelles importieren funktioniert. Aus den Script Menü heraus funktioniert das bearbeiten-
    bzw. öffnen der Codes in einem Editor auch nicht. Es tut sich einfach nichts.
    Ich fürchte ja, das ist zu kompliziert um es für Thunderbird richtig zum laufen zu bringen.

    Mfg.
    Endor

Unterstütze uns!

Jährlich (2026)

21,3 %

21,3% (138,31 von 650 EUR)

Jetzt spenden
  1. Kontakt
  2. Datenschutz
  3. Impressum
Community-Software: WoltLab Suite™
Mastodon