fenix-fox/chrome/fake_statusbar_w_menubar.css
2020-06-02 17:41:42 +03:00

78 lines
3.1 KiB
CSS

/* Source file https://github.com/MrOtherGuy/firefox-csshacks/tree/master/chrome/fake_statusbar_w_menubar.css made available under Mozilla Public License v. 2.0
See the above repository for updates as well as full license text. */
/* Creates a statusbar by using menubar */
/* Since it's really the menubar this won't work if you also want the menubar on top of the screen */
/* The setup requires few things:
1. Put the preferences button to the LEFT of the menubar items
2. Put a single toolbarspring next to the menubar items on RIGHT side
3. Move your "statusbar"-addons to menubar
4. Make menubar permanently enabled
Move your "statusbar" elements to menubar
*/
#titlebar{
position: fixed;
display: block;
bottom: 0px;
height: var(--tab-min-height);
width: 100vw;
}
#navigator-toolbox{ margin-top: var(--tab-min-height) }
#TabsToolbar{
position: fixed;
display: block;
top: 0px;
width: 100vw;
padding-left: 30px !important;
}
#TabsToolbar > .toolbar-items{ max-width: calc(100vw - 120px) }
#TabsToolbar > .titlebar-buttonbox-container{
display: block !important;
float: right !important;
}
#toolbar-menubar{ width: 100% }
#toolbar-menubar > .titlebar-buttonbox-container,#toolbar-menubar > spacer{ display: none !important; }
#toolbar-menubar > .toolbarbutton-1:first-child:not(:hover) + #menubar-items:not(:hover){ visibility: collapse }
#toolbar-menubar > .titlebar-buttonbox-container + toolbarspring{
background-position: left 2px;
background-repeat: no-repeat;
background-image: -moz-element(#statuspanel);
max-width: none !important;
}
/* Using -moz-element() causes some problems after Firefox has been running several hours such as long tab switch times. For this reason the background image is removed on hover and focused states which appears to clear the state. */
#titlebar:hover > #toolbar-menubar > .titlebar-buttonbox-container + toolbarspring{ background-image: none }
#toolbar-menubar > .titlebar-buttonbox-container + toolbarspring{ background-image: -moz-element(#statuspanel) !important; }
#statuspanel-inner > #statuspanel-label{
height:3em;
min-width: 1000px;
background-color: var(--lwt-accent-color, hsla(0,0%,100%,.8)) !important;
border: none !important;
font-size: inherit;
color: inherit !important;
margin-right: 0px !important;
}
/* If you use a theme where urlbar is partially transparent you should edit this color to something that closely matches the perceived color of urlbar. Or perhaps use background-image - linear-gradient() can work well here. But keep the color or image opaque or otherwise you'll face an issue where urlbar text bleeds through */
#statuspanel-inner{ background-color: var(--toolbar-accent-color) }
/*#statuspanel-inner{ background-color: var(--toolbar-non-lwt-bgcolor) }*/
#statuspanel{ color: lightpink; z-index: -1; }
#statuspanel[type="status"] { color: skyblue }
#statuspanel-inner{ margin-left: -3px; margin-top: 1px}
#statuspanel-inner > #statuspanel-label[value^="https"]{ color: var(--lwt-toolbar-field-color, black) !important;}
:root:not([inDOMFullscreen]) #content-deck,
:root:not([inDOMFullscreen]) #browser{ margin-bottom: var(--tab-min-height) }