From 3d535a2282484ccb2250fd2660c568e7d7405b31 Mon Sep 17 00:00:00 2001 From: str4d Date: Mon, 19 Jun 2017 13:00:50 +0000 Subject: [PATCH] I2PSnark: - Disable JavaScript td:onclick (handled by css) - Fix minimode bug in vanilla/ubergine - Minimode for dark/classic - ubergine: - Further optimizations to reduce lag/cpu load - New hidpi details.png to bypass mix-blend mode in .snarkTorrents - Usability: - Tab navigation now works for toggle panels - Touch target for configure button now extends entire length - All themes: cleanups and optimizations --- .../org/klomp/snark/web/I2PSnarkServlet.java | 15 +- history.txt | 11 + .../resources/themes/snark/classic/snark.css | 363 ++++++--- .../resources/themes/snark/dark/snark.css | 287 +++++-- .../resources/themes/snark/light/snark.css | 76 +- .../resources/themes/snark/midnight/snark.css | 37 +- .../themes/snark/ubergine/images/details.png | Bin 834 -> 2337 bytes .../resources/themes/snark/ubergine/snark.css | 754 +++++++++--------- .../resources/themes/snark/vanilla/snark.css | 222 +++--- 9 files changed, 1051 insertions(+), 714 deletions(-) diff --git a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java index b199f0d55..423923df8 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java +++ b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java @@ -1694,13 +1694,14 @@ public class I2PSnarkServlet extends BasicServlet { } // Torrent name column - out.write(""); + // No need for javascript here.. css now handles this + //if (isMultiFile) { // link on the whole td - out.write(" onclick=\"document.location='" + encodedBaseName + "/';\">"); - } else { - out.write('>'); - } + // out.write(" onclick=\"document.location='" + encodedBaseName + "/';\">"); + //} else { + // out.write('>'); + //} if (remaining == 0 || isMultiFile) { StringBuilder buf = new StringBuilder(128); buf.append("" + "$FdXQY2RelY+sC;%tKio?5ry0Ue#pJ1MnQIU;HjEP2wVHjX504pT` zBn1EkqGO?bIecCfT@U~e2mlDmk;$-fuc>ROom`xUM231bd3ZB-Vi{pw6I@UQPcQ&4 z8UPv#01MZk*1v?lxP7;^c(jX1iWmSG6aW;_nb50ls&+7SSPoZF22d{mE+GIR&X&!t zaIKhEmsbr|Rt!}m03sFu7RZjry@I^9dbOu$rj?78kWP;(04eY6@4|<{mW!5lPjzWN zXks;CAOIiVsovC_)5(y?s%)vGkE5H5nv#o>i*1U5V1RyFeQ`!`Z9;5iIAm8TRzng( zBLE}Po6*IL#E(smjf;(qUX6!ohl6K>gj|DrTzYs^cy(BHQ6o`12|N4x`}z3!=;Y|y zq}i2Rl!Rl1d{BFFSaEMTZeB56TP|8zLRm~5Oh_0%NP|9>9>$-R!}1r5t4Of^YiZQjEx&RCPV*;1YB$rH5M^JbMkU6W>fY62+@J6kN16kgh)K{WzY9*`5I**mFbfONo?{1S0^9-guqi0 zZ)&W9jv$}??Vh7V;ArLRud85^d|H5 z1$<};re;$Z;w2bj%D-)SI!m+Jv?Dt^d$7^ex$mpA@ZDxR2Tl(vGf*a{izp1ke@7wV zd5+Br70gYYrX40zXUx2NLkFJk=s5!&mBKq0;L7Q23fbU#8J%yl?E3qnE3c%3M(1W!BKZ_}qQV~)qleu+068?gH;{Ct? zknd}7gD?(zQA7*Y$$Wkmi^ar&pZ=};ks!I2hlaut0x%7Gk3yo!xpid$M;c!sAUm8E z4A9P%e0>-i0w!Xk$yyPKR?e-fE0f`r)z)zt2a!+#c`}2C@~R>?5=LX#Lb8@br_X+aE!Pv^H?$;0W5En_GsY*6U5%h2hDw9rl_^LT~|Cw_d`C=PxBjrk9c ztktqbBpf;k5Q$GC!H5pu?y9_+A2tR9UNZ2Y2smuEh|Q=Fi^a~g;Ht0eQ&qb9!kMTa zv?H8R|Eu6J7-Wiq0yzI%1AK&puCA`uOAV?N+7Bu)3PUV0ibJ@9WBiqP1HWY!q5UJK zV`+vzQtzw?Nq7Lmb^b=-_sErYU`1CSM3Wy>xtwCLA!IPr-z5A&xXQ4}*i|M)RF&I| zMyJ!Mx&)2mtOa)M+V%I<{D?`|bG4!i+ZVS%`gce&?Bc9^*t*Wa%~W{p6ZvMTDgR6;v5hexi~K00000NkvXX Hu0mjfOMVV~ literal 834 zcmV-I1HJr-P)pH^hrcPRCt_iQ(H?^Q562p#kr3<%IKhuMw%v+Bo>j-n>|HDQa)5* z81)eSh92rSgivqwl0hK#&`%I7i&Bd)HN?v}w{ynvT=%)O&dv!N+aKrU?7hDAt#7R* z;QvSHLRW_fG2_FJ3lKC9UTzbc+jQsGKbGr%^q^;07Ujuv*|XPAwhUzAenKj#Wp|~# zl8^31-&wGpZD8ZmVKU)Ryp%tZKvFqfez!#YR5Ai`mlK>OAHj zq>-LkzyjleHHL0<-?%k&^Tqv(_u`3I0-GO5;q>vJG$c<4U?^UQd zF(4rWZ;yA4r)=GZQPQCmHSE*JsuovimJL{%3CpCid<&!m0~kn>>30K54itDCMU>W(NWT7O>}g`JG$Q$mMn6U!Lo5-;sgW~eu*-uMzkG(O zDtuvzC=`k07$wu{cSj(i%OQlGw;+{?B6ei8O)7vo^MlGAsS(tZ@I%AbPfEsR$ajda zTZYu&z-82lH5=?Pl`tFla5&}&N$vEZuaT_F5Sc`z8tuzYZENe#Z}0Sl8DmGrV*mgE M07*qoM6N<$f?S(_ZU6uP diff --git a/installer/resources/themes/snark/ubergine/snark.css b/installer/resources/themes/snark/ubergine/snark.css index 20ecc0caa..7a3d21672 100644 --- a/installer/resources/themes/snark/ubergine/snark.css +++ b/installer/resources/themes/snark/ubergine/snark.css @@ -2,33 +2,27 @@ /* Guantanamo Commemorative Edition. */ /* Author: dr|z3d */ -html { - min-height: 100%; -} - body { - background: #130313 url(images/graytile.png) scroll left top / 96px 96px; - background-size: 100% 100%, 96px 96px; - color: #fff; + background: #130313 url(images/graytile.png) fixed left top / 96px 96px; + color: #ddd; font: 8pt "DejaVu Sans", Verdana, "Noto Sans", Ubuntu, Helvetica, sans-serif; } /* preload top navigation mouseovers */ body:not(old) { - background: linear-gradient(to bottom, rgba(64,0,64,0.2), rgba(11,0,11,0.1), rgba(11,0,11,0.2)), - repeating-linear-gradient(135deg, rgba(32,0,32,0.5) 2px, rgba(16, 0, 16, 0.3) 3px, rgba(32,0,32,0.5) 5px), + background: url(images/graytile.png) left top, url(images/button_snark_hover.png) top center no-repeat, url(images/button_snark_active.png) top center no-repeat, url(images/button_tracker_hover.png) top center no-repeat, url(images/button_tracker_active.png) top center no-repeat, url(images/button_forum_hover.png) top center no-repeat, url(images/button_forum_active.png) no-repeat #130313 !important; - background-size: 100% 100%, 100% 100%, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0 !important; + background-size: 96px 96px, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0 !important; } body.iframed { - background: transparent url(themes/console/images/transparent.gif) !important; + background: transparent url(/themes/console/images/transparent.gif) !important; margin: 0 !important; } @@ -45,16 +39,11 @@ body.iframed:not(old) { .page { background: #323 url(images/tile2.png); - background: linear-gradient(to right, rgba(30,0,30,0.4) 0%, rgba(55,0,55,0.5) 50%, rgba(30,0,30,0.4) 100%), url(images/tile2.png); - color: #310; + background: repeating-linear-gradient(to bottom, #1f081f 1px, #2b172f 1px, #1f081f 3px); margin: 5px 0 0 0; - padding: 10px 10px 0 10px; + padding: 10px 10px 0; border-radius: 4px; border: 1px solid #101; - font-size: 8pt !important; - line-height: 160% !important; - text-align: center; - opacity: 1; box-shadow: inset 0 0 3px 0 #101, 0 0 2px 3px rgba(0,0,0,0.4); } @@ -64,7 +53,6 @@ body.iframed:not(old) { border-radius: 0; box-shadow: none; padding: 0 0; - filter: none; } ::selection { @@ -92,9 +80,6 @@ body.iframed:not(old) { filter: drop-shadow(0 1px 4px #000); background: #101 url(images/snarktopnav.png) repeat-x scroll center center; background: linear-gradient(to bottom, #522852 0%, #4a2449 11%, #321831 33%, #281428 51%, #1c0e1c 52%, #101 54%, #101 100%); - text-transform: uppercase !important; - font-weight: bold; - color: #001; min-width: 600px; width: 70%; text-align: center; @@ -120,11 +105,12 @@ _:-ms-lang(x), .snarknavbar { } .snarkNav:link, .snarkNav:visited { + display: inline-block; text-decoration: none !important; text-transform: uppercase !important; text-shadow: 0 0 1px #000; padding: 5px 12px 5px 29px !important; - margin-right: -4px !important; + margin: -5px -4px -5px 0; letter-spacing: 0.11em; font-family: "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "Lucida Grande", "DejaVu Sans", Verdana, sans-serif; font-weight: bold; @@ -140,12 +126,6 @@ _:-ms-lang(x), .snarknavbar { border: 1px solid #730; } -/* Arabic fix */ -.snarkNav { - display: inline-block; - margin: -5px -4px -5px 0; -} - _:-ms-lang(x), .snarkNav:link, .snarkNav:visited { padding-top: 1px !important; } @@ -177,7 +157,7 @@ _:-ms-lang(x), .snarkNav:link, .snarkNav:visited { color: #fff !important; text-shadow: none; border: 1px solid #730; - box-shadow: 0 0 1px 0 #000, inset 0 0 0 1px #000, inset 3px 3px 3px 1px #3F1900 !important; + box-shadow: 0 0 1px 0 #000, inset 0 0 0 1px #000, inset 3px 3px 3px 1px #3f1900 !important; } .snarkNav:link:first-child, .snarkNav:last-child[href="/i2psnark/"] { @@ -214,19 +194,16 @@ _:-ms-lang(x), .snarkNav:last-child[href="/i2psnark/"] { .nav_forum:link { background: #310 url(images/button_forum.png) 11px center no-repeat; background: url(images/button_forum.png) 11px center no-repeat, linear-gradient(to bottom, #a68058 1%, #7a6045 27%, #5e4730 50%, #2e1700 51%, #1f0f00 100%); - background-size: 16px auto, 100% 100%; } .nav_forum:link:hover, .nav_forum:link:focus { background: #707 url(images/button_forum_hover.png) 11px center no-repeat; background: url(images/button_forum_hover.png) 11px center no-repeat, linear-gradient(to bottom, #a15b73 0%, #7e4062 50%, #591c3e 51%, #46133e 100%); - background-size: 16px auto, 100% 100%; color: #d2baff !important; } .nav_forum:link:active { background: #f60 url(images/button_forum_active.png) 11px center no-repeat; - background-size: 16px auto, 100% 100%; color: #fff !important; } @@ -258,9 +235,8 @@ _:-ms-lang(x), .snarkNav:last-child[href="/i2psnark/"] { background: #2a192a url(images/hat.png) no-repeat scroll right center; background: url(images/hat.png) no-repeat scroll right center, linear-gradient(to bottom, #2a192a 0%, #202 100%); background-size: 80px auto, 100% 100%; - box-shadow: inset 0 0 3px 1px rgba(16, 0, 16, 0.6); + box-shadow: inset 0 0 3px 1px rgba(16, 0, 16, 0.6), 0 0 1px 1px rgba(16, 8, 16, 0.3); outline: none; - filter: drop-shadow(0 0 1px rgba(16, 8, 16, 0.5)); } .snarkMessages:hover, .snarkMessages:focus { @@ -335,6 +311,7 @@ _:-ms-lang(x), .snarkNav:last-child[href="/i2psnark/"] { /* end screenlogger */ +/* pre { width: 100%; font: 8pt "Droid Sans Mono", "Lucida Console", "DejaVu Sans Mono", monospace !important; @@ -342,8 +319,9 @@ pre { text-align: left !important; height: 8px; color: #35f; - font-weight: bold !important; + font-weight: bold !important; } +*/ table { margin: 0 0 10px 0; @@ -359,7 +337,7 @@ thead, tfoot { background: #101; } -thead, .snarkTorrentInfo th { +thead th, .snarkTorrentInfo th { background: linear-gradient(to bottom, #202 0%, #101 100%); border-top: 1px solid #101 !important; border-bottom: 1px solid #101 !important; @@ -384,29 +362,11 @@ tfoot td:first-child { padding-left: 0; } -th:first-child img { - margin: 1px 1px 3px 3px !important; -} - -th:nth-child(2) img { - margin: 1px 7px 3px 2px !important; -} - -tfoot img, tfoot:nth-child(2) img, tfoot:nth-child(1) img, tfoot:nth-child(3) img, tfoot:nth-child(4) img { - margin: 0 2px 3px 0 !important; - padding-right: 0 !important; -} - -tfoot tr:nth-child(n+1) { - text-align: left; -} - .headerstatus { text-align: center; } .ParentDir { - background: #656; background: #351933; border: 1px solid #101 !important; text-align: left !important; @@ -447,7 +407,7 @@ tfoot tr:nth-child(n+1) { border-collapse: separate; border-spacing: 0; border-radius: 4px; - box-shadow: 0 0 1px 1px rgba(16, 8, 16, 0.5); + box-shadow: 0 0 1px 1px rgba(16, 8, 16, 0.3); } @media screen and (-webkit-min-device-pixel-ratio:0) { /* fixes webkit/blink double border */ @@ -461,19 +421,23 @@ tfoot tr:nth-child(n+1) { border-top: 1px solid #202 !important; } +.snarkTorrents tr:first-child td { + padding-top: 3px !important; +} + .snarkTorrents thead th { border-top: 1px solid transparent !important; } .snarkTorrents thead th { - padding: 2px; - background-clip: padding-box; + padding-top: 3px; + padding-bottom: 6px; border-bottom: 1px solid #313; - border-bottom: 1px solid rgba(51, 17, 51, 0.8); + vertical-align: middle; } -.snarkTorrents thead th:nth-child(-n+3) { - max-width: 45px; +.snarkTorrents thead th:nth-child(2) img { + margin-bottom: 3px; } .snarkGraphicStatus, .snarkTorrentStatus { @@ -536,6 +500,7 @@ th.snarkTorrentStatus { font-style: italic; color: #dd7 !important; line-height: 120%; + text-align: center !important; } .snarkTorrentAction { @@ -564,12 +529,10 @@ th.snarkTorrentAction input[type="image"]:hover, .snarkTorrentAction input[type= .snarkTorrentAction img { margin: 0 2px !important; - opacity: 0.6; } .snarkTorrentAction img:hover { box-shadow: 0 0 1px 1px #f90; - opacity: 1; } .snarkTorrents tfoot { @@ -587,31 +550,10 @@ th.snarkTorrentAction input[type="image"]:hover, .snarkTorrentAction input[type= font-weight: bold; vertical-align: middle; border-top: 1px solid #313; - border-bottom: 1px solid rgba(51, 17, 51, 0.8); -} - -.snarkTorrents tfoot th:nth-child(even) { - background: #120012; -} - -.snarkTorrents thead th:nth-last-child(4), .snarkTorrents tfoot th:nth-last-child(4) { - text-align: center; -} - -.snarkTorrents thead th:nth-last-child(4), .snarkTorrents tfoot th:nth-last-child(4) { - text-align: right; -} - -.snarkTorrents tfoot th:nth-child(n+2) { - text-align: right; -} - -.peerinfo td:nth-child(3), .peerinfo td:nth-child(4) { - padding: 2px 4px; } .snarkTorrents tt { - font-family: "Noto Mono", "Droid Sans Mono", "Lucida Console", "DejaVu Sans Mono", monospace; + font-family: "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", monospace; color: #cc0; font-weight: bold; margin-right: 2px; @@ -641,7 +583,6 @@ th.snarkTorrentAction input[type="image"]:hover, .snarkTorrentAction input[type= td { padding: 2px 4px; color: #ddd !important; - opacity: 1; font-size: 8pt; } @@ -651,24 +592,23 @@ td { td:first-child { text-align: right; - font-size: 8pt; } -img[src$="details.png"] { - mix-blend-mode: luminosity; +.snarkTrackerDetails img { + width: 16px; + height: 16px; + opacity: 0.75; } -a img[src$="details.png"]:hover, a:focus img[src$="details.png"] { - mix-blend-mode: initial !important; +.snarkTrackerDetails a img:hover, .snarkTrackerDetails a img:focus { + opacity: 1; } .snarkTorrentOdd { background: #351933; - font-size: 8pt; } .snarkTorrentEven { - font-size: 8pt; background: #270027; } @@ -694,19 +634,9 @@ a img[src$="details.png"]:hover, a:focus img[src$="details.png"] { } } -.snarkTorrentEven + .snarkTorrentEven td:nth-child(2), .snarkTorrentOdd + .snarkTorrentOdd td:nth-child(2) { - text-align: left; - padding-left: 0; - color: #ffdfff !important; -} - -.snarkTorrentEven + .snarkTorrentEven td:nth-child(4), .snarkTorrentOdd + .snarkTorrentOdd td:nth-child(4) { - text-align: right !important; - font-weight: bold; -} - -.snarkTorrentEven + .snarkTorrentEven td:nth-child(n+5), .snarkTorrentOdd + .snarkTorrentOdd td:nth-child(n+5) { - text-align: right !important; +.peerinfo td[colspan="4"], .debuginfo td[colspan="10"] { + padding-left: 0 !important; + line-height: 120% !important; } .snarkTorrents tbody tr:hover, .snarkDirInfo tbody tr:hover { @@ -716,7 +646,7 @@ a img[src$="details.png"]:hover, a:focus img[src$="details.png"] { tr:hover .percentBarText { opacity: 1; - text-shadow: 0 1px 1px rgba(0,0,0,0.8); + text-shadow: 0 1px 1px #313; } /* MS Edge fix */ @@ -724,10 +654,6 @@ _:-ms-lang(x), .snarkTorrents tbody tr:hover, .snarkDirInfo tbody tr:hover { background: #58165e !important; } -.snarkTorrents tbody tr:hover .snarkTorrentName, .snarkDirInfo tbody tr:hover td .snarkFileName { - color: #fff !important; -} - .snarkFileIcon { width: 16px; text-align: center; @@ -778,10 +704,6 @@ _:-ms-lang(x), .snarkTorrents tbody tr:hover, .snarkDirInfo tbody tr:hover { filter: drop-shadow(0 0 1px #000); } -.snarkTorrentInfo img:nth-child(n+2) { - margin-left: 8px !important; -} - .snarkTorrentInfo th { text-align: left; padding: 6px 0; @@ -892,8 +814,8 @@ _:-ms-lang(x), .snarkDirInfo img, .snarkTorrents img { .snarkTorrentDownloaded { text-align: right !important; - width: 110px; - max-width: 110px; + width: 108px; + max-width: 108px; color: #76a !important; white-space: nowrap; } @@ -918,14 +840,11 @@ _:-ms-lang(x), .snarkDirInfo img, .snarkTorrents img { margin: 0 !important; } -.snarkTorrentDownloaded .percentBarOuter { - margin-left: 5px !important; -} - .peerinfo .percentBarOuter { background: repeating-linear-gradient(135deg, #000 1px, #000 6px, #0f0a08 6px, #0f0a08 11px) !important; height: 16px; line-height: 13px; + display: inline-block; } .percentBarInner { @@ -958,8 +877,8 @@ _:-ms-lang(x), .snarkDirInfo img, .snarkTorrents img { float: left; } -.peerinfo .percentBarOuter { - float: right; +.peerinfo .snarkTorrentDownloaded { + text-align: right !important; } .percentBarText { @@ -989,7 +908,6 @@ _:-ms-lang(x), .snarkDirInfo img, .snarkTorrents img { } .unchoked { - color: #00f000 !important; color: #34CF19 !important; } @@ -1023,7 +941,7 @@ _:-ms-lang(x), .snarkDirInfo img, .snarkTorrents img { font-weight: bold; } -table#trackerselect { +#trackerselect { width: 100% !important; } @@ -1060,54 +978,6 @@ table#trackerselect { user-select: all; } -.toggleview, .snarkConfigTitle, .snarknavbar, img, input[type="image"], label { - -moz-user-select: none; - -webkit-user-select: none; - user-select: none; -} - -.snarkConfigTitle, label.toggleview, .configsectionpanel .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle:active { - font-family: "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "Lucida Grande", "DejaVu Sans", Verdana, sans-serif; - font-size: 12pt; - font-weight: bold; - padding: 4px 18px 3px; - margin: 5px 0 10px 0 !important; - border: 1px solid #101; - border-top: none; - border-radius: 0; - background: #101 url(images/snarknav.png) repeat-x scroll center center; - background: linear-gradient(to bottom, #4a3d49 0%, #3d303d 50%, #0d000d 50%, #0d000d 100%); - font-variant: small-caps !important; - letter-spacing: 0.15em; - filter: drop-shadow(0 1px 1px rgba(16, 0, 16, 0.5)); - color: #f7e3fc; - text-shadow: 0 0 1px #000; - box-shadow: inset 0 0 1px 0 #313; - display: inline-block; - margin: 0 0 -3px !important; - min-width: 210px; -} - -.snarkConfigTitle:hover, label.toggleview:hover { - background: linear-gradient(to bottom, #5f475d 0%, #4f3b4f 50%, #1f001f 50%, #1f001f 100%); - box-shadow: inset 0 0 1px #3f173f; - color: #d2baff; -} - -.snarkConfigTitle:active, label.toggleview:active { - box-shadow: inset 0 0 1px #7f2f7f, inset 3px 3px 3px 1px #0d000d; -} - -.snarkConfigTitle img, label.toggleview img { - margin: 1px -3px 2px 0; - vertical-align: middle; - filter: drop-shadow(0 0 1px #000); -} - -.configsectionpanel .snarkConfigTitle:hover img { - filter: drop-shadow(0 0 1px #000) !important; -} - .snarkConfig { font-size: 10pt; width: 100%; @@ -1152,57 +1022,6 @@ a:active, a:visited:active { color: #f10; } -a.control, a.controld, a.control:active { - display: inline-block; - vertical-align: middle; - background: #989; - background: linear-gradient(to bottom, #989 0%, #878 100%); - background-size: 100% 100% !important; - border: 1px inset #bbb; - border-radius: 2px; - box-shadow: 0 0 1px 1px rgba(48,16,48,0.7); - color: #1c081e; - font-weight: bold; - padding: 4px 6px 3px 6px; - text-shadow: 0 0 #410; - white-space: nowrap; - filter: drop-shadow(0 0 1px #313) !important; -} - -a.controld { - color: #444; - font-weight: normal; -} - -a.control img { - margin: -2px 2px 0 -4px !important; - padding: 0; - height: 14px; -} - -a.control:hover img, a.control:focus img { - mix-blend-mode: luminosity; -} - -a.control:active img { - mix-blend-mode: soft-light; -} - -a.controld img { - display: none; -} - -input[type="submit"], input[type="reset"] { - background-size: 14px 14px, 100% 100% !important; - box-shadow: 0 0 1px 1px rgba(48,16,48,0.7); -} - -a.control:active, input[type="submit"]:active, input[type="reset"]:active { - color: #ce1641 !important; - border: 1px solid #fff !important; - box-shadow: inset 3px 3px 3px #fff; -} - #configs input[type="submit"], .trackerconfig input[type="submit"], input[name="savepri"] { text-transform: capitalize; } @@ -1215,6 +1034,103 @@ th.headerpriority br, .snarkTorrents thead th br { display: none; } +/* panel titles */ + +.toggleview, .snarkConfigTitle, .snarknavbar, img, input[type="image"], label, th img { + -moz-user-select: none; + -webkit-user-select: none; + user-select: none; +} + +.snarkConfigTitle:hover, .snarkConfigTitle:focus, label.toggleview:hover, label.toggleview:focus, .toggle_input:focus + label { + background: linear-gradient(to bottom, #5f475d 0%, #4f3b4f 50%, #1f001f 50%, #1f001f 100%); + box-shadow: inset 0 0 1px #3f173f; + color: #d2baff !important; +} + +.snarkConfigTitle, label.toggleview, .configsectionpanel .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle:active { + font-family: "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "Lucida Grande", "DejaVu Sans", Verdana, sans-serif; + font-size: 12pt; + font-weight: bold; + padding: 4px 1px 3px; + margin: 5px 0 10px 0 !important; + border: 1px solid #101; + border-top: none; + background: #101 url(images/snarknav.png) repeat-x scroll center center; + background: linear-gradient(to bottom, #4a3d49 0%, #3d303d 50%, #0d000d 50%, #0d000d 100%); + font-variant: small-caps !important; + letter-spacing: 0.15em; + color: #f7e3fc; + text-shadow: 0 0 1px #000; + box-shadow: inset 0 0 1px 0 #313, 0 0 0 1px rgba(16, 0, 16, 0.4); + display: inline-block; + margin: 0 0 -3px !important; + min-width: 260px; +} + +.snarkConfigTitle:hover a img, a:focus .snarkConfigTitle img, .toggle_input:focus + .toggleview img { + filter: drop-shadow(0px 0 1px #d2baff); +} + +.snarkConfigTitle:active, label.toggleview:active { + box-shadow: inset 0 0 1px #7f2f7f, inset 3px 3px 3px 1px #0d000d; +} + +.snarkConfigTitle img, label.toggleview img { + margin: 1px -3px 2px 0; + vertical-align: middle; + filter: drop-shadow(0 0 1px #000); +} + +.configsectionpanel .snarkConfigTitle:hover { + color: #f7e3fc !important; +} + +.configsectionpanel .snarkConfigTitle:hover img { + filter: drop-shadow(0 0 1px #000) !important; +} + +label.toggleview { + color: #f60; +} + +label.toggleview:active, .snarkConfigTitle a:active { + color: #9183af !important; +} + +label.toggleview img:hover, label.toggleview:hover img, .snarkConfigTitle:hover a img { + color: #f90; + filter: drop-shadow(0 0 1px #d2baff); +} + +label.toggleview img:active, label.toggleview:active img, .snarkConfigTitle:active a img { + transform: rotate(90deg); + transition: ease transform 0.3s 0s; +} + +.configsection a, label.toggleview { + color: #f60; + text-shadow: 0 0 1px #000; +} + +.configsection a:hover, .snarkConfig .snarkConfigTitle:hover a, .snarkConfig .snarkConfigTitle a:focus { + color: #d2baff; + text-decoration: none; +} + +.snarkConfig .snarkConfigTitle:hover img, .snarkConfig .snarkConfigTitle:focus img, .snarkConfig .snarkConfigTitle a:focus img { + filter: drop-shadow(0 0 1px #d2baff); +} + +.snarkConfig .snarkConfigTitle a { + display: inline-block; + width: 100%; +} + +/* end panel titles */ + +/* buttons & inputs */ + input, a.control { font: 8pt "Droid Sans", "Noto Sans", "DejaVu Sans", Verdana, Helvetica, sans-serif; font-weight: bold; @@ -1227,7 +1143,7 @@ input { padding: 3px 3px !important; border-radius: 2px; border: 1px solid #101; - background: #212 url(images/graytile.png); + background: #212 url(images/graytile.png); color: #f60; margin: 2px 4px; } @@ -1237,48 +1153,12 @@ input.r { background: url(images/graytile.png); } -input[type=submit] { - color: #1c081e; - background: #989; - background: linear-gradient(to bottom, #989 0%, #878 100%); - border: 1px inset #bbb; - padding: 4px 2px !important; -} - -input[type="submit"]::-moz-focus-inner, input[type="reset"]::-moz-focus-inner { - border: none; - outline: none; -} - -input[type=submit]:hover, input[type=submit]:focus { - background-blend-mode: luminosity; -} - -input[type=submit]:hover, input[type=submit]:focus, a.control:hover, a.control:focus { - border: 1px outset #bbb; - color: #fff; - filter: drop-shadow(0 0 1px #515) !important; -} - -input[type=submit]:focus, a.control:focus { - filter: drop-shadow(0 0 2px #f60) !important; -} - -input[type=submit]:active, a.control:active { - background-blend-mode: soft-light; - color: #2e134c !important; - filter: drop-shadow(0 0 1px #f60) sepia(100%) invert(100%) !important; - mix-blend-mode: hard-light; -} - input[type=image], thead img { padding: 0 !important; - border-radius: 3px; border: 1px solid transparent; margin: 0 2px; opacity: 0.8; background: none; - filter: drop-shadow(0 0 1px #000); outline: none; max-height: 22px; } @@ -1432,76 +1312,140 @@ input.disabled, input.disabled:hover, input.disabled:active, a.control.disabled: cursor: not-allowed; } -input.accept, input.accept:active { - background: #989 url(images/accept.png) no-repeat 6px center; - background: url(images/accept.png) no-repeat 6px center, linear-gradient(to bottom, #989 0%, #878 100%); +a.control, a.controld, a.control:active { + display: inline-block; + vertical-align: middle; + background: #989; + background: linear-gradient(to bottom, #989 0%, #878 100%); + background-size: 100% 100% !important; + border: 1px inset #bbb; + border-radius: 2px; + box-shadow: 0 0 1px 1px rgba(48,16,48,0.7); + color: #1c081e; + font-weight: bold; + padding: 4px 6px 3px 6px; + text-shadow: 0 0 #410; + white-space: nowrap; + filter: drop-shadow(0 0 1px #313) !important; +} + +a.controld { + color: #444; + font-weight: normal; +} + +a.control img { + margin: -2px 2px 0 -4px !important; + padding: 0; + height: 14px; +} + +a.control:hover img, a.control:focus img { + mix-blend-mode: luminosity; +} + +a.control:active img { + mix-blend-mode: soft-light; +} + +a.controld img { + display: none; +} + +input[type="submit"]::-moz-focus-inner, input[type="reset"]::-moz-focus-inner { + border: none; + outline: none; +} + +input[type="submit"], input[type="reset"] { padding: 4px 6px 4px 22px !important; + color: #1c081e; + background: #989; + background: linear-gradient(to bottom, #989 0%, #878 100%); + background-size: 14px 14px, 100% 100% !important; + background-position: 6px center, center center !important; + background-repeat: no-repeat, repeat !important; + border: 1px inset #bbb; + box-shadow: 0 0 1px 1px rgba(48,16,48,0.7); +} + +input[type="submit"]:hover, input[type="submit"]:focus { + background-blend-mode: luminosity; +} + +input[type="submit"]:hover, input[type="submit"]:focus, a.control:hover, a.control:focus { + border: 1px outset #bbb; + color: #fff; + filter: drop-shadow(0 0 1px #515) !important; +} + +input[type="submit"]:focus, input[type="reset"]:focus, a.control:focus { + filter: drop-shadow(0 0 1px #f60) !important; +} + +input.accept, input.accept:active { + background: #989 url(images/accept.png); + background: url(images/accept.png), linear-gradient(to bottom, #989 0%, #878 100%); } input.accept:hover, input.accept:focus { - background: #767 url(images/accept.png) no-repeat 6px center; - background: url(images/accept.png) no-repeat 6px center, linear-gradient(to bottom, #767 0%, #989 100%); + background: #767 url(images/accept.png); + background: url(images/accept.png), linear-gradient(to bottom, #767 0%, #989 100%); } input.add, input.add:active { - background: #989 url(images/add.png) no-repeat 6px center; - background: url(images/add.png) no-repeat 6px center, linear-gradient(to bottom, #989 0%, #878 100%); - padding: 4px 6px 4px 22px !important; + background: #989 url(images/add.png); + background: url(images/add.png), linear-gradient(to bottom, #989 0%, #878 100%); } input.add:hover, input.add:focus { - background: #767 url(images/add.png) no-repeat 6px center; - background: url(images/add.png) no-repeat 6px center, linear-gradient(to bottom, #767 0%, #989 100%); + background: #767 url(images/add.png); + background: url(images/add.png), linear-gradient(to bottom, #767 0%, #989 100%); } input.cancel, input.cancel:active { - background: #989 url(images/cancel.png) no-repeat 6px center; - background: url(images/cancel.png) no-repeat 6px center, linear-gradient(to bottom, #989 0%, #878 100%); - padding: 4px 6px 4px 22px !important; + background: #989 url(images/cancel.png); + background: url(images/cancel.png), linear-gradient(to bottom, #989 0%, #878 100%); } input.cancel:hover, input.cancel:focus { - background: #767 url(images/cancel.png) no-repeat 6px center; - background: url(images/cancel.png) no-repeat 6px center, linear-gradient(to bottom, #767 0%, #989 100%); + background: #767 url(images/cancel.png); + background: url(images/cancel.png), linear-gradient(to bottom, #767 0%, #989 100%); } input.create, input.create:active { - background: #989 url(images/create.png) no-repeat 6px center; - background: url(images/create.png) no-repeat 6px center, linear-gradient(to bottom, #989 0%, #878 100%); - padding: 4px 6px 4px 22px !important; + background: #989 url(images/create.png); + background: url(images/create.png), linear-gradient(to bottom, #989 0%, #878 100%); } input.create:hover, input.create:focus { - background: #767 url(images/create.png) no-repeat 6px center; - background: url(images/create.png) no-repeat 6px center, linear-gradient(to bottom, #767 0%, #989 100%); + background: #767 url(images/create.png); + background: url(images/create.png), linear-gradient(to bottom, #767 0%, #989 100%); } input.delete, input.delete:active { - background: #989 url(images/nuke.png) no-repeat 6px center; - background: url(images/nuke.png) no-repeat 6px center, linear-gradient(to bottom, #989 0%, #878 100%); - padding: 4px 6px 4px 22px !important; + background: #989 url(images/nuke.png); + background: url(images/nuke.png), linear-gradient(to bottom, #989 0%, #878 100%); } input.delete:hover, input.delete:focus { - background: #767 url(images/nuke.png) no-repeat 6px center; - background: url(images/nuke.png) no-repeat 6px center, linear-gradient(to bottom, #767 0%, #989 100%); + background: #767 url(images/nuke.png); + background: url(images/nuke.png), linear-gradient(to bottom, #767 0%, #989 100%); } input.reload, input.reload:active { - background: #989 url(images/restore.png) no-repeat 6px center; - background: url(images/restore.png) no-repeat 6px center, linear-gradient(to bottom, #989 0%, #878 100%); - padding: 4px 6px 4px 22px !important; + background: #989 url(images/restore.png); + background: url(images/restore.png), linear-gradient(to bottom, #989 0%, #878 100%); } input.reload:hover, input.reload:focus { - background: #767 url(images/restore.png) no-repeat 6px center; - background: url(images/restore.png) no-repeat 6px center, linear-gradient(to bottom, #767 0%, #989 100%); + background: #767 url(images/restore.png); + background: url(images/restore.png), linear-gradient(to bottom, #767 0%, #989 100%); } input.reload[name="recheck"], input.reload[name="recheck"]:active, input.disabled[name="recheck"] { - background: #989 url(images/recheck.png) no-repeat 6px center; - background: url(images/recheck.png) no-repeat 6px center, linear-gradient(to bottom, #989 0%, #878 100%); - padding: 4px 6px 4px 22px !important; + background: #989 url(images/recheck.png); + background: url(images/recheck.png), linear-gradient(to bottom, #989 0%, #878 100%); margin-left: 2px !important } @@ -1510,47 +1454,61 @@ input.disabled[name="recheck"]:hover { } input.reload[name="recheck"]:hover, input.reload[name="recheck"]:focus { - background: #767 url(images/recheck.png) no-repeat 6px center; - background: url(images/recheck.png) no-repeat 6px center, linear-gradient(to bottom, #767 0%, #989 100%); + background: #767 url(images/recheck.png); + background: url(images/recheck.png), linear-gradient(to bottom, #767 0%, #989 100%); } input.starttorrent, input.starttorrent:active { - background: #989 url(images/next.png) no-repeat 6px center; - background: url(images/next.png) no-repeat 6px center, linear-gradient(to bottom, #989 0%, #878 100%); + background: #989 url(images/next.png); + background: url(images/next.png), linear-gradient(to bottom, #989 0%, #878 100%); padding: 4px 6px 4px 20px !important; } input.starttorrent:hover, input.starttorrent:focus { - background: #767 url(images/next.png) no-repeat 6px center; - background: url(images/next.png) no-repeat 6px center, linear-gradient(to bottom, #767 0%, #989 100%); + background: #767 url(images/next.png); + background: url(images/next.png), linear-gradient(to bottom, #767 0%, #989 100%); } input.stoptorrent, input.stoptorrent:active { - background: #989 url(images/btn_stop.png) no-repeat 6px center; - background: url(images/btn_stop.png) no-repeat 6px center, linear-gradient(to bottom, #989 0%, #878 100%); - padding: 4px 6px 4px 22px !important; + background: #989 url(images/btn_stop.png); + background: url(images/btn_stop.png), linear-gradient(to bottom, #989 0%, #878 100%); } input.stoptorrent:hover, input.stoptorrent:focus { - background: #767 url(images/btn_stop.png) no-repeat 6px center; - background: url(images/btn_stop.png) no-repeat 6px center, linear-gradient(to bottom, #767 0%, #989 100%); + background: #767 url(images/btn_stop.png); + background: url(images/btn_stop.png), linear-gradient(to bottom, #767 0%, #989 100%); } -.configsectionpanel tr:nth-last-child(2) td { - text-align: right !important; - border-top: 1px solid #57415F; - padding-top: 10px !important; +/* +a.control:active, input[type="submit"]:active, input[type="reset"]:active { + color: #ce1641 !important; + border: 1px solid #fff !important; + box-shadow: inset 3px 3px 3px #fff; +} + +input[type=submit]:active, a.control:active { + background-blend-mode: soft-light; + color: #2e134c !important; + filter: drop-shadow(0 0 1px #f60) sepia(100%) invert(100%) !important; + mix-blend-mode: hard-light; +} +*/ + +a.control:active, input[type="submit"]:active, input[type="reset"]:active { + background-color: #322c5c !important; + color: #c6bfff; + box-shadow: inset 3px 3px 3px #20122f; + border: 1px solid #101; } select { background: #212 !important; - background: #212 url(images/graytile.png) !important; + background: #212 url(images/dropdown.png) right center no-repeat !important; background: url(images/dropdown.png) right center no-repeat, url(images/graytile.png) #212 !important; background-size: 17px 17px, 96px 96px !important; color: #f60; - font: 8pt "DejaVu Sans", Verdana, Helvetica, sans-serif; font-weight: bold; - padding: 2px 18px 2px 1px; + padding: 2px 18px 2px 4px; border-radius: 2px; border: 1px solid #000; margin: 2px; @@ -1570,7 +1528,7 @@ select:hover, select:focus, select:active { select[disabled], select[disabled]:hover, select[disabled]:focus { opacity: 0.5; - background: #212 url(images/graytile.png) !important; + background: #212 url(images/dropdown.png) right center no-repeat !important; background: url(images/dropdown.png) right center no-repeat, url(images/graytile.png) #212 !important; background-blend-mode: normal; color: #f60 !important; @@ -1620,17 +1578,17 @@ textarea { transition: ease box-shadow 0.15s 0s; } +/* end buttons & inputs */ + img { border: none; margin: 0 3px 1px 3px; vertical-align: middle; - opacity: 1.0; line-height: 100%; } img:hover { border: none; - opacity: 1; line-height: 100%; } @@ -1690,6 +1648,12 @@ img[src$="magnet.png"] { background-size: 84px 82px, 100% 100%; } +.configsectionpanel tr:nth-last-child(2) td { + text-align: right !important; + border-top: 1px solid #57415f; + padding-top: 10px !important; +} + .configsectionpanel, .configsectionpanel td, .snarkNewTorrent, .snarkNewTorrent td, .snarkAddInfo, select, input, input.r, input[name="nofilter_dataDir"], textarea[name="i2cpOpts"], a.control { font-family: "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "Lucida Grande", "DejaVu Sans", Verdana, sans-serif; @@ -1749,30 +1713,6 @@ select, input, input.r, input[name="nofilter_dataDir"], textarea[name="i2cpOpts" margin-top: 1px; } -.configsection table { - color: #ffb; - opacity: 1; -} - -.configsection a, label.toggleview { - color: #f60; - text-shadow: 0 0 1px #000; -} - -.configsection a:hover, .snarkConfig .snarkConfigTitle:hover a, .snarkConfig .snarkConfigTitle a:focus { - color: #d2baff; - text-decoration: none; -} - -.snarkConfig .snarkConfigTitle:hover img, .snarkConfig .snarkConfigTitle:focus img, .snarkConfig .snarkConfigTitle a:focus img { - filter: drop-shadow(0 0 1px #d2baff); -} - -.snarkConfig .snarkConfigTitle a { - display: inline-block; - width: 100%; -} - code { font-size: 8pt; color: #b8b; @@ -1864,8 +1804,10 @@ input.trackerannounce { /* toggle create/add panel view */ -input.toggle_input { /* hide checkbox and use label as faux panel heading */ - display: none !important; +input.toggle_input { + position: absolute; + opacity: 0; + z-index: -1; } label.toggleview:hover { @@ -1904,23 +1846,7 @@ input#toggle_addtorrent:checked + label + hr + table, input#toggle_createtorrent display: none; } -label.toggleview, .snarkConfigTitle a:visited { - color: #f60; -} - -label.toggleview:active, .snarkConfigTitle a:active { - color: #9183af !important; -} - -label.toggleview img:hover, label.toggleview:hover img, .snarkConfigTitle a:hover img { - color: #f90; - filter: drop-shadow(0 0 1px #d2baff); -} - -label.toggleview img:active, label.toggleview:active img, .snarkConfigTitle a:active img { - transform: rotate(90deg); - transition: ease transform 0.3s 0s; -} +/* end toggle panels */ .peerinfo td { border-bottom: 1px solid #414 !important; @@ -1970,9 +1896,14 @@ label.toggleview img:active, label.toggleview:active img, .snarkConfigTitle a:ac } .peerinfo:hover td:nth-child(2), .debuginfo:hover td:nth-child(2) { - color: #fff !important; + color: #ddd !important; } +.debuginfo td { + color: #ddd !important; +} + +/* .from, .to { font-family: sans-serif; font-size: 12pt; @@ -1982,10 +1913,6 @@ label.toggleview img:active, label.toggleview:active img, .snarkConfigTitle a:ac text-shadow: 0 0 1px #000; } -.debuginfo td { - color: #fff !important; -} - .debugConnStat { display: inline-block; white-space: nowrap; @@ -1999,9 +1926,10 @@ label.toggleview img:active, label.toggleview:active img, .snarkConfigTitle a:ac .debugConnStat b { color: #ffdfff !important; } +*/ .peerinfo:hover b, .debuginfo:hover b { - color: #fff !important; + color: #ddd !important; color: #b9b; } @@ -2074,14 +2002,16 @@ hr.debug + hr { #dhtDebugPanel label { padding: 8px 4px 4px !important; display: block; - margin: 0 0 -13px !important; + margin: 0 0 -12px !important; border-radius: 0 0 4px 4px; background: #202; + box-shadow: none; } input#toggle_debug:not(checked) + label { border-radius: 0; background: #101; + background: linear-gradient(to bottom, #212 50%, #101 50%); text-align: center; } @@ -2089,8 +2019,16 @@ input#toggle_debug:not(checked) + label { text-align: left; padding: 3px 10px 5px; background: #000; - margin: -33px 0 -12px; + margin: -32px -1px -13px; border-radius: 0 0 4px 4px; + border-left: 1px solid #414; + border-right: 1px solid #414; +} + +@media screen and (-webkit-min-device-pixel-ratio:0) { +#dhtDebugInner { + margin-top: -33px; +} } .dhtDebug th b:first-of-type, .dhtDebug th b:first-of-type + br + hr.debug { @@ -2161,6 +2099,7 @@ input#toggle_debug:checked + label + #dhtDebugInner { display: inline-block; margin: 2px 0 2px 6px; font-weight: bold; + vertical-align: middle; } .priority::after { @@ -2386,10 +2325,6 @@ input#toggle_debug:checked + label + #dhtDebugInner { padding-right: 2px; } -.snarkCommentInfo td:last-child, .snarkComments td:last-child { -/* width: 1% !important;*/ -} - .snarkComments td { white-space: nowrap; } @@ -2635,7 +2570,7 @@ b.alwaysShow { display: inline; } -.snarkTorrents td:nth-child(2), .snarkTorrents td:nth-child(2) a { +td.snarkTorrentStatus, td.snarkTorrentStatus a { font-weight: bold; } @@ -2734,6 +2669,11 @@ _:-ms-lang(x), .snarkNav:link, .snarkNav:visited { background-size: 15px auto, 100% 100% !important; } +img[src="/themes/snark/ubergine/images/details.png"] { + width: 14px; + height: 14px; +} + .peerinfo .percentBarOuter { filter: sepia(1); height: 14px; @@ -2758,6 +2698,10 @@ _:-ms-lang(x), .snarkNav:link, .snarkNav:visited { font-size: 8pt !important; } +.peerinfo .percentBarOuter { + margin-right: -4px !important; +} + .mainsection td { padding-top: 3px !important; padding-bottom: 3px !important; @@ -2796,6 +2740,14 @@ _:-ms-lang(x), .snarknavbar { display: inline-block; box-shadow: 0 0 0 1px #101; } + +#totals { + word-spacing: 0.15em !important; +} + +#dhtdebugInner { + margin-top: -33px; +} } @media screen and (min-width: 1400px) { @@ -2803,11 +2755,16 @@ th, td, .choked, .unchoked { letter-spacing: 0 !important; } -body, .snarkTorrents td, .snarkAddInfo, th, td, .snarkFileName, .snarkFileStatus, .snarkCommentInfo textarea { +body, .snarkAddInfo, th, td, .snarkCommentInfo textarea, input[type="submit"], input[type="reset"], +select, select option, button, a.control, .snarkTorrents a:link { font-family: "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "DejaVu Sans", Verdana, "Lucida Grande", Helvetica, sans-serif; font-size: 10pt !important; } +code { + font-size: 10pt !important; +} + .debuginfo td { font-family: "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", monospace !important; } @@ -2826,23 +2783,15 @@ body, .snarkTorrents td, .snarkAddInfo, th, td, .snarkFileName, .snarkFileStatus .snarkNav:link:first-child, .snarkNav:last-child[href="/i2psnark/"] { background-position: 11px 45%, center center !important; -} -input[type="submit"], input[type="reset"], select, select option, button, a.control, .snarkTorrents a:link, td, th, code { - font-size: 10pt !important; } - -.snarkConfigTitle, label.toggleview { - font-size: 13pt !important; - min-width: 240px !important; -} - .snarkNav:link { font-size: 11pt; } .snarkConfigTitle, label.toggleview { - font-size: 12pt; + font-size: 13pt !important; + min-width: 320px !important; } .mainsection td { @@ -2923,6 +2872,7 @@ select { .debuginfo td { font-size: 9pt !important; + line-height: 120%; } #pagenav img { @@ -2946,6 +2896,10 @@ select { .debugConnStat { margin-right: 5px; } + +#dhtdebugInner { + margin-top: -34px; +} } @media screen and (min-width: 1600px) { @@ -2984,15 +2938,15 @@ th.snarkTorrentStatus a img, .snarkTorrentETA a img, .snarkTrackerDetails a img, max-width: 18px; } +.snarkTorrentName a:not(old) { + max-width: 360px !important; +} + .snarkTorrents th img { max-height: 18px; } -.snarkTorrentUploaded, .snarkTorrentRateUp { - display: none; -} - -.alwaysShow { +.snarkTorrentUploaded, .snarkTorrentRateUp, .peerinfo, .debuginfo, .alwaysShow { display: none !important; } @@ -3001,17 +2955,23 @@ th.snarkTorrentStatus a img, .snarkTorrentETA a img, .snarkTrackerDetails a img, } .snarkTorrentStatus, .snarkTorrentETA, .snarkTrackerDetails { - font-size: 0; + font-size: 0 !important; max-width: 0 !important; min-width: 0 !important; width: 0 !important; padding: 0; + overflow: hidden; + color: transparent !important; } #totals { margin-left: 2px !important; } +.addtorrentsection td:first-child, .newtorrentsection td:first-child { + width: 20%; +} + .toggleview, .snarkConfigTitle, .snarkConfigTitle a { font-size: 10pt !important; } @@ -3097,7 +3057,7 @@ th a img { } .addtorrentsection input[type="text"], .newtorrentsection input[type="text"] { - width: 60% !important; + width: 65% !important; } .snarkCommentInfo td:first-child, .snarkComments td:first-child { @@ -3114,6 +3074,22 @@ th a img { background: none !important; padding-left: 0 !important; } + +#dhtDebugInner { + margin-top: -28px !important; +} + +.snarkTorrentStatus { + -moz-user-select: none !important; + -webkit-user-select: none; + user-select: none; +} +} + +@media screen and (-webkit-min-device-pixel-ratio:0) and (max-width: 800px) { +#dhtDebugInner { + margin-top: -29px !important; +} } /* end mini-mode */ diff --git a/installer/resources/themes/snark/vanilla/snark.css b/installer/resources/themes/snark/vanilla/snark.css index c40a6be2a..a32cf645c 100644 --- a/installer/resources/themes/snark/vanilla/snark.css +++ b/installer/resources/themes/snark/vanilla/snark.css @@ -1,10 +1,6 @@ /* I2PSnark theme "Vanilla" by dr|z3d */ /* Now with 100% more chocolate */ -html { - min-height: 100%; -} - body { background: #2f231a; background: repeating-linear-gradient(to bottom, #9f948b 1px, #6f5b4c 1px, #bfa285 3px); @@ -44,8 +40,22 @@ body.iframed:not(old) { outline: none; } -td *:focus { - filter: drop-shadow(0 0 1px #df0067); +form { + margin-bottom: 0; +} + +p { + line-height: 150%; +} + +hr { + color: #6f533e; + background:#6f533e; + height: 1px; + border: none; + width: 0%; + margin: 5px 0 7px 0; + text-align: center; } ::selection { @@ -155,6 +165,8 @@ th a:active, th a:visited:active, td a:active, td a:visited:active { font-size: 10pt; color: #3f271b; background-size: 17px auto, 100% 100%, 100% 100% !important; + background-position: 12px center, center center, center center !important; + background-repeat: no-repeat !important; border-radius: 0; border: 1px solid #efe6e0; text-shadow: 0 0 1px #fff5ef; @@ -186,54 +198,52 @@ _:-ms-lang(x), .snarkNav:link, .snarkNav:visited { } .nav_main:link { - background: #fff7ef url(images/button_snark.png) 11px center no-repeat; - background: url(images/button_snark.png) 11px center no-repeat, linear-gradient(to bottom, #fff7ef 47%, rgba(207, 193, 181, 0.6) 50%), repeating-linear-gradient(45deg, #75604e 1px, #a09286 1px, #bfafa2 2px); + background: #fff7ef url(images/button_snark.png) 11px center no-repeat !important; + background: url(images/button_snark.png) 11px center no-repeat, linear-gradient(to bottom, #fff7ef 47%, rgba(207, 193, 181, 0.6) 50%), repeating-linear-gradient(45deg, #75604e 1px, #a09286 1px, #bfafa2 2px) !important; background-size: 18px auto, 100% 100%, 100% 100% !important; } .nav_forum:link { - background: #fff7ef url(images/button_forum.png) 12px center no-repeat; - background: url(images/button_forum.png) 12px center no-repeat, linear-gradient(to bottom, #fff7ef 47%, rgba(207, 193, 181, 0.6) 50%), repeating-linear-gradient(45deg, #75604e 1px, #a09286 1px, #bfafa2 2px); + background: #fff7ef url(images/button_forum.png); + background: url(images/button_forum.png), linear-gradient(to bottom, #fff7ef 47%, rgba(207, 193, 181, 0.6) 50%), repeating-linear-gradient(45deg, #75604e 1px, #a09286 1px, #bfafa2 2px); } .nav_tracker:link { - background: #fff7ef url(images/button_tracker.png) 12px center no-repeat; - background: url(images/button_tracker.png) 12px center no-repeat, linear-gradient(to bottom, #fff7ef 47%, rgba(207, 193, 181, 0.6) 50%), repeating-linear-gradient(135deg, #75604e 1px, #a09286 1px, #bfafa2 2px); + background: #fff7ef url(images/button_tracker.png); + background: url(images/button_tracker.png), linear-gradient(to bottom, #fff7ef 47%, rgba(207, 193, 181, 0.6) 50%), repeating-linear-gradient(135deg, #75604e 1px, #a09286 1px, #bfafa2 2px); + background-size: 18px auto, 100% 100%, 100% 100% !important; } .nav_main:hover, .nav_main:focus { - background: #ffeadf url(images/button_snark_hover.png) 11px center no-repeat; - background: url(images/button_snark_hover.png) 11px center no-repeat, linear-gradient(to bottom, #ffeadf 47%, #cfb6a8 50%, #cfb6a8 100%); + background: #ffeadf url(images/button_snark_hover.png) 11px center no-repeat !important; + background: url(images/button_snark_hover.png) 11px center no-repeat, linear-gradient(to bottom, #ffeadf 47%, #cfb6a8 50%, #cfb6a8 100%) !important; + background-size: 18px auto, 100% 100%, 100% 100% !important; } .nav_forum:hover, .nav_forum:focus { - background: #ffeadf url(images/button_forum_hover.png) 12px center no-repeat; - background: url(images/button_forum_hover.png) 12px center no-repeat, linear-gradient(to bottom, #ffeadf 47%, #cfb6a8 50%, #cfb6a8 100%); - background-size: 17px auto, 100% 100%, 100% 100%; + background: #ffeadf url(images/button_forum_hover.png); + background: url(images/button_forum_hover.png), linear-gradient(to bottom, #ffeadf 47%, #cfb6a8 50%, #cfb6a8 100%); } .nav_tracker:hover, .nav_tracker:focus { - background: #ffeadf url(images/button_tracker_hover.png) 12px center no-repeat; - background: url(images/button_tracker_hover.png) 12px center no-repeat, linear-gradient(to bottom, #ffeadf 47%, #cfb6a8 50%, #cfb6a8 100%); - background-size: 17px auto, 100% 100%, 100% 100%; + background: #ffeadf url(images/button_tracker_hover.png); + background: url(images/button_tracker_hover.png), linear-gradient(to bottom, #ffeadf 47%, #cfb6a8 50%, #cfb6a8 100%); } .nav_main:active { - background: #dfb899 url(images/button_snark_active.png) 11px center no-repeat; - background: url(images/button_snark_active.png) 11px center no-repeat, linear-gradient(to bottom, #dfb899 47%, #af9178 50%, #af9178 100%); - background-size: 18px auto, 100% 100%, 100% 100%; + background: #dfb899 url(images/button_snark_active.png) 11px center no-repeat !important; + background: url(images/button_snark_active.png) 11px center no-repeat, linear-gradient(to bottom, #dfb899 47%, #af9178 50%, #af9178 100%) !important; + background-size: 18px auto, 100% 100%, 100% 100% !important; } .nav_forum:active { - background: #dfb899 url(images/button_forum_active.png) 12px; - background: url(images/button_forum_active.png) 12px center no-repeat, linear-gradient(to bottom, #dfb899 47%, #af9178 50%, #af9178 100%); - background-size: 17px auto, 100% 100%, 100% 100%; + background: #dfb899 url(images/button_forum_active.png); + background: url(images/button_forum_active.png), linear-gradient(to bottom, #dfb899 47%, #af9178 50%, #af9178 100%); } .nav_tracker:active { - background: #dfb899 url(images/button_tracker_active.png) 12px center no-repeat; - background: url(images/button_tracker_active.png) 12px center no-repeat, linear-gradient(to bottom, #dfb899 47%, #af9178 50%, #af9178 100%); - background-size: 17px auto, 100% 100%, 100% 100%; + background: #dfb899 url(images/button_tracker_active.png); + background: url(images/button_tracker_active.png), linear-gradient(to bottom, #dfb899 47%, #af9178 50%, #af9178 100%); } .snarkNav:last-child { @@ -267,7 +277,6 @@ _:-ms-lang(x), .snarkNav:link, .snarkNav:visited { text-align: left; margin: 0 0 10px; padding: 0 3px; - border-spacing: 0; border: 1px solid #6f533e; border-radius: 2px; box-shadow: inset 0 0 6px 0 #3f2307; @@ -285,7 +294,6 @@ _:-ms-lang(x), .snarkNav:link, .snarkNav:visited { } .snarkMessages:focus { - box-shadow: inset 0 0 6px 0 #3f2307, 0 0 1px #f60; box-shadow: inset 0 0 6px 0 #3f2307, 0 0 1px #df0067; filter: drop-shadow(0 0 2px rgba(200, 80, 0, 0.3)); } @@ -330,12 +338,6 @@ _:-ms-lang(x), .snarkNav:link, .snarkNav:visited { color: #f30 !important; } -.snarkMessages p { - font-style: italic; - margin: 0; - text-align: right; -} - .snarkMessages img { float: right; margin: -1px -3px 4px 4px; @@ -396,16 +398,6 @@ _:-ms-lang(x), .snarkNav:link, .snarkNav:visited { /* end pagenav */ -pre { - width: 100%; - font: 8pt "DejaVu Sans Mono", "Droid Sans Mono", "Lucida Console", monospace !important; - padding: 0; - text-align: left !important; - height: 8px; - color: #731; - font-weight: bold !important; -} - table { margin: 0 0 10px 0; border: 1px solid #6f533e; @@ -476,11 +468,6 @@ tfoot tr:first-child th { color: #2f1500 !important; } -tfoot img, tfoot:nth-child(2) img, tfoot:nth-child(1) img, tfoot:nth-child(3) img, tfoot:nth-child(4) img { - margin: 0 2px 3px 0 !important; - padding-right: 0 !important; -} - .headerstatus { text-align: left; } @@ -521,15 +508,6 @@ tfoot img, tfoot:nth-child(2) img, tfoot:nth-child(1) img, tfoot:nth-child(3) im border-bottom: 1px solid #6f533e; } -.snarkTorrents thead th > * { - vertical-align: middle !important; -} - -.snarkTorrents thead th:nth-child(2) { - text-align: left; - min-width: 50px; -} - .snarkTorrents tfoot th { border-bottom: none !important; white-space: normal !important; @@ -619,10 +597,6 @@ th.snarkTorrentStatus { padding: 0 3px !important; } -.snarkTorrentDetails { - font-weight: bold; -} - .snarkTorrentETA, .snarkTorrentUploaded, .snarkTorrentRateDown, .snarkTorrentRateUp { width: 5%; min-width: 40px; @@ -699,7 +673,6 @@ th.snarkTorrentStatus { } .snarkTorrents tt { - background: #313; background: #7F654F; color: #fff; padding: 2px 3px; @@ -889,11 +862,10 @@ _:-ms-lang(x), .snarkTorrents tbody tr:hover, .snarkDirInfo tbody tr:hover { #torrentInfoControl { border-top: 1px solid #6f533e; - background: linear-gradient(to bottom, #efefef, #cfc7c2); } #torrentInfoControl td { - border-bottom: none !important;; + border-bottom: none !important; background: linear-gradient(to bottom, #efefef, #cfc7c2); text-align: right !important; padding-right: 8px !important; @@ -1164,32 +1136,41 @@ thead img.disable, img.disable:hover { text-transform: capitalize; } -.snarkConfigTitle, label.toggleview, .configsectionpanel .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle:active { - font-family: "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "Lucida Grande", "Bitstream Vera Sans", Verdana, sans-serif; - font-size: 11pt !important; - font-weight: bold; +/* panel titles */ + +.snarkConfigTitle, .toggleview, .configsectionpanel .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle:active { + font: bold 11pt "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "Lucida Grande", "Bitstream Vera Sans", Verdana, sans-serif; font-variant: small-caps !important; - padding: 4px 15px 2px 12px; + padding: 4px 1px 2px; margin: 0 0 -3px !important; letter-spacing: 0.1em; border: 1px solid #111; border-top: 0; background: #fff7ef; background: linear-gradient(to bottom, #fff7ef 0%, #fff7ef 51%, rgba(207, 193, 181, 0.6) 52%), repeating-linear-gradient(135deg, #75604e 1px, #a09286 1px, #bfafa2 2px); - color: #444039; + color: #444039 !important; box-shadow: 0 0 2px #4d453e, inset 0 0 0 1px #efe6e0; display: inline-block; - min-width: 220px; + min-width: 280px; vertical-align: middle; text-shadow: 0 0 1px #fff5ef; } -.snarkConfigTitle:hover, label.toggleview:hover { +.snarkConfigTitle:hover, .toggleview:hover, input.toggle_input:focus + .toggleview { background: #ffeadf; background: linear-gradient(to bottom, #ffeadf 0%, #ffeadf 51%, #cfb6a8 52%, #cfb6a8 100%); + color: #930 !important; } -.snarkConfigTitle:active, label.toggleview:active { +input.toggle_input:focus + .toggleview img, .snarkConfigTitle a:focus { + mix-blend-mode: normal; +} + +.snarkConfigTitle a:focus img { + filter: drop-shadow(0px 0 1px #7f6c5f); +} + +.snarkConfigTitle:active, .toggleview:active { box-shadow: 0 0 2px #4d453e, inset 0 0 0 1px #fff, inset 2px 2px 3px 1px #59513b; } @@ -1226,68 +1207,54 @@ thead img.disable, img.disable:hover { } @media screen and (-webkit-min-device-pixel-ratio:0) { -.snarkConfigTitle, label.toggleview, .configsectionpanel .snarkConfigTitle, .snarkConfigTitle a, .snarkConfigTitle a:hover, +.snarkConfigTitle, .toggleview, .configsectionpanel .snarkConfigTitle, .snarkConfigTitle a, .snarkConfigTitle a:hover, .configsectionpanel .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle:active { font-size: 12pt !important; } } /* MS Edge fix */ -_:-ms-lang(x), .snarkConfigTitle, .snarkConfigTitle a, label.toggleview, +_:-ms-lang(x), .snarkConfigTitle, .snarkConfigTitle a, .toggleview, .configsectionpanel .snarkConfigTitle, .configsectionpanel .snarkConfigTitle:hover { padding: 3px 15px 4px; font-size: 12pt !important; } -.snarkConfigTitle a, label.toggleview { - color: #930 !important; - color: #3F271B !important; +.snarkConfigTitle a { + display: inline-block; + width: 100%; +} + +.snarkConfigTitle a, .toggleview { + color: #3f271b !important; text-shadow: 0 0 1px #fff5ef; } -.snarkConfigTitle a:hover, label.toggleview:hover, .snarkConfigTitle a:focus, label.toggleview:focus { - color: #df0072 !important; +.snarkConfigTitle a:hover, .toggleview:hover, .snarkConfigTitle a:focus, .toggleview:focus { color: #930 !important; } - -.snarkConfigTitle a:active, .snarkConfigTitle a:visited:active, label.toggleview:active { +.snarkConfigTitle a:active, .snarkConfigTitle a:visited:active, .toggleview:active { color: #603110 !important; } -.snarkConfigTitle img, label.toggleview img { +.snarkConfigTitle img, .toggleview img { margin: 1px -2px 3px 0; filter: drop-shadow(0 0 1px #7f6c5f) !important; mix-blend-mode: luminosity; } -.snarkConfigTitle:hover img, label.toggleview:hover img, .snarkConfigTitle:focus img, label.toggleview:focus img { +.snarkConfigTitle:hover img, .toggleview:hover img, .snarkConfigTitle:focus img, .toggleview:focus img { mix-blend-mode: normal; } +/* end panel titles */ + .snarkConfig { font-size: 8pt; width: 100%; } -form { - margin-bottom: 0; -} - -p { - line-height: 150%; -} - -hr { - color: #6f533e; - background:#6f533e; - height: 1px; - border: none; - width: 0%; - margin: 5px 0 7px 0; - text-align: center; -} - /* buttons & inputs */ .script { @@ -1839,8 +1806,10 @@ code, tt { /* toggle create/add panel view */ -.toggle_input { /* hide checkbox and use label as faux panel heading */ - display: none !important; +input.toggle_input { /* hide checkbox and use label as faux panel heading */ + position: absolute; + opacity: 0; + z-index: -1; } .toggleview:hover { @@ -1912,6 +1881,8 @@ code, tt { font-family: "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "Bitstream Vera Sans", Verdana, "Lucida Grande", Helvetica, sans-serif; } +/* + .from, .to { font-family: sans-serif; font-size: 12pt; @@ -1948,6 +1919,8 @@ code, tt { margin: 2px 3px !important; } +*/ + .dhtDebug th { padding: 0 10px 10px; background: #fff; @@ -2255,7 +2228,6 @@ td#bwHelp a { border: 1px solid #6f533e; border-top: none; border-bottom: none; -/* box-shadow: 0 0 2px 1px rgba(77, 69, 62, 0.3);*/ border-collapse: separate; } @@ -2388,6 +2360,10 @@ td#bwHelp a { padding-left: 20px; } +.commentAuthorName:empty { + display: none; +} + .commentText { white-space: normal; text-align: justify; @@ -2528,9 +2504,8 @@ b.alwaysShow { display: inline; } -.lowersection .snarkConfigTitle, .lowersection .snarkConfigTitle:hover, label.toggleview, .snarkConfigTitle a { +.lowersection .snarkConfigTitle, .lowersection .snarkConfigTitle:hover, .toggleview, .snarkConfigTitle a { font-size: 11pt !important; - max-width: 220px !important } .configsectionpanel .snarkConfigTitle { @@ -2541,9 +2516,11 @@ td.snarkGraphicStatus img { max-height: 16px; } +/* .from, .to { font-size: 11pt !important; } +*/ .snarkTorrentOdd td, .snarkTorrentEven td { padding-top: 3px; @@ -2613,7 +2590,7 @@ td.snarkGraphicStatus img { } @media screen and (-webkit-min-device-pixel-ratio:0) and (max-width: 1000px) { -.snarkConfigTitle, label.toggleview, .configsectionpanel .snarkConfigTitle, .snarkConfigTitle a, .snarkConfigTitle a:hover, +.snarkConfigTitle, .toggleview, .configsectionpanel .snarkConfigTitle, .snarkConfigTitle a, .snarkConfigTitle a:hover, .configsectionpanel .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle:active { font-size: 12pt !important; letter-spacing: 0.1em !important; @@ -2684,7 +2661,7 @@ _:-ms-lang(x), .snarkNav:link, .snarkNav:visited { } @media screen and (-webkit-min-device-pixel-ratio:0) and (max-width: 1200px) { -.snarkConfigTitle, label.toggleview, .configsectionpanel .snarkConfigTitle, .snarkConfigTitle a, .snarkConfigTitle a:hover, +.snarkConfigTitle, .toggleview, .configsectionpanel .snarkConfigTitle, .snarkConfigTitle a, .snarkConfigTitle a:hover, .configsectionpanel .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle:active { font-size: 11pt !important; letter-spacing: 0.1em !important; @@ -2695,7 +2672,6 @@ _:-ms-lang(x), .snarkNav:link, .snarkNav:visited { } } - @media screen and (min-width: 1000px) { body, .snarkTorrents td, .snarkAddInfo, th, td, .snarkFileName, a.control, input[type="submit"], input[type="reset"], select, button { font-size: 9pt !important; @@ -2784,6 +2760,10 @@ body, .snarkTorrents td, .snarkAddInfo, th, td, .snarkFileName, a.control, input padding-right: 10px !important; } +#totals { + word-spacing: 0.15em; +} + thead a img, thead img { max-height: 21px; } @@ -2802,7 +2782,7 @@ thead a img, thead img { } @media screen and (-webkit-min-device-pixel-ratio:0) and (min-width: 1200px) { -.snarkConfigTitle, label.toggleview, .configsectionpanel .snarkConfigTitle, .snarkConfigTitle a, .snarkConfigTitle a:hover, +.snarkConfigTitle, .toggleview, .configsectionpanel .snarkConfigTitle, .snarkConfigTitle a, .snarkConfigTitle a:hover, .configsectionpanel .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle:active { font-size: 13pt !important; letter-spacing: 0.1em !important; @@ -2877,8 +2857,8 @@ thead a img, thead img { } .snarkConfigTitle, .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle, -.configsectionpanel .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle:active, label.toggleview { - min-width: 240px !important; +.configsectionpanel .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle:active, .toggleview { + min-width: 300px !important; font-size: 12pt !important; } @@ -2924,7 +2904,7 @@ tr#torrentInfoStats td { } @media screen and (-webkit-min-device-pixel-ratio:0) and (min-width: 1400px) { -.snarkConfigTitle, label.toggleview, .configsectionpanel .snarkConfigTitle, .snarkConfigTitle a, .snarkConfigTitle a:hover, +.snarkConfigTitle, .toggleview, .configsectionpanel .snarkConfigTitle, .snarkConfigTitle a, .snarkConfigTitle a:hover, .configsectionpanel .snarkConfigTitle:hover, .configsectionpanel .snarkConfigTitle:active { font-size: 14pt !important; letter-spacing: 0.1em !important; @@ -2959,7 +2939,7 @@ th.snarkTorrentStatus a img, .snarkTorrentETA a img, .snarkTrackerDetails a img max-height: 18px; } -.snarkTorrentUploaded, .snarkTorrentRateUp { +.snarkTorrentUploaded, .snarkTorrentRateUp, .peerinfo, .debuginfo { display: none; } @@ -3049,6 +3029,10 @@ th.snarkTorrentStatus a img, .snarkTorrentETA a img, .snarkTrackerDetails a img background: none !important; padding-left: 0 !important; } + +#dhtDebugInner { + margin-top: -24px !important; +} } /* end mini-mode */