Advanced options toggle (#238)
* Advanced options toggle Whole div is clickable. Arrows to indicate functions. I went with carets and centered collapsed text, but we can use different arrow and/or keep the text to the left. * advanced options toggle * advanced options toggle * Only apply to Chrome * Delete options.css * Delete options.js * Only apply to Chrome * Only apply to Chrome * Fix label * Fix label again
This commit is contained in:
parent
b9f6095db5
commit
24c513929e
13
options.html
13
options.html
|
@ -113,8 +113,17 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="block collapsible" id="advanced">
|
<div class="block" id="advanced">
|
||||||
<h1 i18n-text="optionsAdvanced"></h1>
|
<div class="collapsible-resizer">
|
||||||
|
<h1 i18n-text="optionsAdvanced">
|
||||||
|
<svg class="svg-icon is-collapsed" viewBox="0 0 1792 1792">
|
||||||
|
<path fill-rule="evenodd" d="M1408 704q0 26-19 45l-448 448q-19 19-45 19t-45-19l-448-448q-19-19-19-45t19-45 45-19h896q26 0 45 19t19 45z"/>
|
||||||
|
</svg>
|
||||||
|
<svg class="svg-icon is-expanded" viewBox="0 0 1792 1792">
|
||||||
|
<path fill-rule="evenodd" d="M1408 1216q0 26-19 45t-45 19h-896q-26 0-45-19t-19-45 19-45l448-448q19-19 45-19t45 19l448 448q19 19 19 45z"/>
|
||||||
|
</svg>
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
<div class="items">
|
<div class="items">
|
||||||
<label>
|
<label>
|
||||||
<span i18n-text="optionsAdvancedNewStyleAsUsercss"></span>
|
<span i18n-text="optionsAdvancedNewStyleAsUsercss"></span>
|
||||||
|
|
|
@ -180,6 +180,80 @@ input[type="color"] {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible.collapsed {
|
||||||
|
height: 40px;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
html:not(.firefox):not(.opera) #options > .block:nth-last-of-type(3) {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible:not(.collapsed) .collapsible-resizer, #advanced:not(.collapsible) .collapsible-resizer {
|
||||||
|
padding-right: 8px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
width: 30%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible h1 {
|
||||||
|
width: unset;
|
||||||
|
padding: 0;
|
||||||
|
color: #333;
|
||||||
|
transition: color .5s;
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced:not(.collapsible) .collapsible-resizer h1 {
|
||||||
|
width: unset;
|
||||||
|
padding: 0;
|
||||||
|
display: inline-flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible:not(.collapsed) h1:hover {
|
||||||
|
color: #666;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible.collapsed h1 {
|
||||||
|
padding: 0;
|
||||||
|
color: #666;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible.collapsed:hover h1 {
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible .svg-icon {
|
||||||
|
fill: #333;
|
||||||
|
transition: fill .5s;
|
||||||
|
height: 16px;
|
||||||
|
width: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible.collapsed .svg-icon,
|
||||||
|
#advanced.collapsible:not(.collapsed) h1:hover .svg-icon {
|
||||||
|
fill: #666;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible.collapsed:hover .svg-icon {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible h1 .svg-icon {
|
||||||
|
margin-left: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible.collapsed .is-expanded,
|
||||||
|
#advanced:not(.collapsible) .svg-icon {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#advanced.collapsible:not(.collapsed) .is-collapsed {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
#notes {
|
#notes {
|
||||||
background-color: #f4f4f4;
|
background-color: #f4f4f4;
|
||||||
padding: 1.5ex 16px 1ex calc(16px + 2ex);
|
padding: 1.5ex 16px 1ex calc(16px + 2ex);
|
||||||
|
|
|
@ -6,7 +6,7 @@ enforceInputRange($('#popupWidth'));
|
||||||
|
|
||||||
if (!FIREFOX && !OPERA) {
|
if (!FIREFOX && !OPERA) {
|
||||||
const block = $('#advanced');
|
const block = $('#advanced');
|
||||||
block.classList.add('collapsed');
|
block.classList.add('collapsible', 'collapsed');
|
||||||
block.onclick = event => {
|
block.onclick = event => {
|
||||||
if (block.classList.contains('collapsed') || event.target.closest('h1')) {
|
if (block.classList.contains('collapsed') || event.target.closest('h1')) {
|
||||||
block.classList.toggle('collapsed');
|
block.classList.toggle('collapsed');
|
||||||
|
|
Loading…
Reference in New Issue
Block a user