Add custom QZ Tray fork with pairing key authentication
- Custom fork of QZ Tray 2.2.x with certificate validation bypassed - Implemented pairing key (HMAC) authentication as replacement - Modified files: PrintSocketClient.java (certificate check disabled) - New files: PairingAuth.java, PairingConfigDialog.java - Excluded build artifacts (out/, lib/javafx*) from repository - Library JARs included for dependency management
This commit is contained in:
7199
tray/css/bootstrap.min.css
vendored
Normal file
7199
tray/css/bootstrap.min.css
vendored
Normal file
File diff suppressed because it is too large
Load Diff
2101
tray/css/font-awesome.min.css
vendored
Normal file
2101
tray/css/font-awesome.min.css
vendored
Normal file
File diff suppressed because it is too large
Load Diff
7
tray/css/gh-fork-ribbon.min.css
vendored
Normal file
7
tray/css/gh-fork-ribbon.min.css
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
/*!
|
||||
* "Fork me on GitHub" CSS ribbon v0.2.3 | MIT License
|
||||
* https://github.com/simonwhitaker/github-fork-ribbon-css
|
||||
*/.github-fork-ribbon{width:12.1em;height:12.1em;position:absolute;overflow:hidden;top:0;right:0;z-index:9999;pointer-events:none;font-size:13px;text-decoration:none;text-indent:-999999px}.github-fork-ribbon.fixed{position:fixed}.github-fork-ribbon:active,.github-fork-ribbon:hover{background-color:rgba(0,0,0,0)}.github-fork-ribbon:after,.github-fork-ribbon:before{position:absolute;display:block;width:15.38em;height:1.54em;top:3.23em;right:-3.23em;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.github-fork-ribbon:before{content:"";padding:.38em 0;background-color:#a00;background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.15)));background-image:-webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:-moz-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:-ms-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:-o-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.15));-webkit-box-shadow:0 .15em .23em 0 rgba(0,0,0,.5);-moz-box-shadow:0 .15em .23em 0 rgba(0,0,0,.5);box-shadow:0 .15em .23em 0 rgba(0,0,0,.5);pointer-events:auto}.github-fork-ribbon:after{content:attr(data-ribbon);color:#fff;font:700 1em "Helvetica Neue",Helvetica,Arial,sans-serif;line-height:1.54em;text-decoration:none;text-shadow:0 -.08em rgba(0,0,0,.5);text-align:center;text-indent:0;padding:.15em 0;margin:.15em 0;border-width:.08em 0;border-style:dotted;border-color:#fff;border-color:rgba(255,255,255,.7)}.github-fork-ribbon.left-bottom,.github-fork-ribbon.left-top{right:auto;left:0}.github-fork-ribbon.left-bottom,.github-fork-ribbon.right-bottom{top:auto;bottom:0}.github-fork-ribbon.left-bottom:after,.github-fork-ribbon.left-bottom:before,.github-fork-ribbon.left-top:after,.github-fork-ribbon.left-top:before{right:auto;left:-3.23em}.github-fork-ribbon.left-bottom:after,.github-fork-ribbon.left-bottom:before,.github-fork-ribbon.right-bottom:after,.github-fork-ribbon.right-bottom:before{top:auto;bottom:3.23em}.github-fork-ribbon.left-top:after,.github-fork-ribbon.left-top:before,.github-fork-ribbon.right-bottom:after,.github-fork-ribbon.right-bottom:before{-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}
|
||||
/*# sourceMappingURL=gh-fork-ribbon.min.css.map */
|
||||
/* QZ Colors */
|
||||
.github-fork-ribbon:before { background-color: #3D994A; }
|
||||
427
tray/css/style.css
Normal file
427
tray/css/style.css
Normal file
@@ -0,0 +1,427 @@
|
||||
.btn-default {
|
||||
color: #333;
|
||||
background-color: #FFF;
|
||||
border-color: #CCC;
|
||||
}
|
||||
|
||||
.btn-primary {
|
||||
color: #FFFFFF;
|
||||
background-color: #44AB53;
|
||||
border-color: #3D994A;
|
||||
}
|
||||
|
||||
.btn-success {
|
||||
color: #FFF;
|
||||
background-color: #33658A;
|
||||
border-color: #2C5777;
|
||||
}
|
||||
|
||||
.btn-warning {
|
||||
color: #FFF;
|
||||
background-color: #F6AE2D;
|
||||
border-color: #F5A515;
|
||||
}
|
||||
|
||||
.btn-danger {
|
||||
color: #FFF;
|
||||
background-color: #F26419;
|
||||
border-color: #E5570D;
|
||||
}
|
||||
|
||||
.btn-info {
|
||||
color: #FFF;
|
||||
background-color: #3680A8;
|
||||
border-color: #307195;
|
||||
}
|
||||
|
||||
.btn-default:hover {
|
||||
background-color: #E6E6E6;
|
||||
border-color: #B3B3B3;
|
||||
}
|
||||
|
||||
.btn-primary:hover {
|
||||
background-color: #358741;
|
||||
border-color: #2E7438;
|
||||
}
|
||||
|
||||
.btn-success:hover {
|
||||
background-color: #254A65;
|
||||
border-color: #1E3C52;
|
||||
}
|
||||
|
||||
.btn-warning:hover {
|
||||
background-color: #E6970A;
|
||||
border-color: #CE8709;
|
||||
}
|
||||
|
||||
.btn-danger:hover {
|
||||
background-color: #CC4E0C;
|
||||
border-color: #B4450A;
|
||||
}
|
||||
|
||||
.btn-info:hover {
|
||||
background-color: #2A6382;
|
||||
border-color: #24546E;
|
||||
}
|
||||
|
||||
.btn-default:focus {
|
||||
background-color: #F2F2F2;
|
||||
border-color: #BFBFBF;
|
||||
}
|
||||
|
||||
.btn-primary:focus {
|
||||
background-color: #3D994A;
|
||||
border-color: #358741;
|
||||
}
|
||||
|
||||
.btn-success:focus {
|
||||
background-color: #2C5777;
|
||||
border-color: #254A65;
|
||||
}
|
||||
|
||||
.btn-warning:focus {
|
||||
background-color: #F5A515;
|
||||
border-color: #E6970A;
|
||||
}
|
||||
|
||||
.btn-danger:focus {
|
||||
background-color: #E5570D;
|
||||
border-color: #CC4E0C;
|
||||
}
|
||||
|
||||
.btn-info:focus {
|
||||
background-color: #307195;
|
||||
border-color: #2A6382;
|
||||
}
|
||||
|
||||
.btn-default:active {
|
||||
background-color: #E6E6E6;
|
||||
border-color: #B3B3B3;
|
||||
}
|
||||
|
||||
.btn-primary:active {
|
||||
background-color: #358741;
|
||||
border-color: #2E7438;
|
||||
}
|
||||
|
||||
.btn-success:active {
|
||||
background-color: #254A65;
|
||||
border-color: #1E3C52;
|
||||
}
|
||||
|
||||
.btn-warning:active {
|
||||
background-color: #E6970A;
|
||||
border-color: #CE8709;
|
||||
}
|
||||
|
||||
.btn-danger:active {
|
||||
background-color: #CC4E0C;
|
||||
border-color: #B4450A;
|
||||
}
|
||||
|
||||
.btn-info:active {
|
||||
background-color: #2A6382;
|
||||
border-color: #24546E;
|
||||
}
|
||||
|
||||
.btn-default.disabled {
|
||||
background-color: #FFFFFF;
|
||||
border-color: #CFCFCF;
|
||||
}
|
||||
|
||||
.btn-primary.disabled {
|
||||
background-color: #45AF55;
|
||||
border-color: #3E9C4C;
|
||||
}
|
||||
|
||||
.btn-success.disabled {
|
||||
background-color: #34688E;
|
||||
border-color: #2D5A7B;
|
||||
}
|
||||
|
||||
.btn-warning.disabled {
|
||||
background-color: #F6B032;
|
||||
border-color: #F5A619;
|
||||
}
|
||||
|
||||
.btn-danger.disabled {
|
||||
background-color: #F2671E;
|
||||
border-color: #E9590D;
|
||||
}
|
||||
|
||||
.btn-info.disabled {
|
||||
background-color: #3783AC;
|
||||
border-color: #317499;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #3680A8;
|
||||
}
|
||||
|
||||
a:hover,
|
||||
a:focus {
|
||||
color: #24546E;
|
||||
}
|
||||
|
||||
.text-primary {
|
||||
color: #44AB53;
|
||||
}
|
||||
|
||||
.text-danger {
|
||||
color: #F26419;
|
||||
}
|
||||
|
||||
.form-control .has-error {
|
||||
border-color: #EED3D7;
|
||||
}
|
||||
|
||||
.form-control .has-success {
|
||||
border-color: #D6E9C6;
|
||||
}
|
||||
|
||||
.navbar-default {
|
||||
background-color: #44AB53;
|
||||
}
|
||||
|
||||
.navbar-default .navbar-nav > li > a,
|
||||
.navbar-default .navbar-nav > li > a:hover,
|
||||
.navbar-default .navbar-header .navbar-brand {
|
||||
color: #FFF;
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.navbar-default .navbar-nav .open .dropdown-menu > li > a {
|
||||
color: #FFF;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-default .navbar-nav > li > a:hover {
|
||||
background-color: #3D994A;
|
||||
}
|
||||
|
||||
.navbar-default .navbar-toggle > .icon-bar {
|
||||
background-color: #FFF;
|
||||
}
|
||||
|
||||
.navbar-default .navbar-toggle:focus > .icon-bar {
|
||||
background-color: #555;
|
||||
color: #24546E;
|
||||
}
|
||||
|
||||
.navbar-default .navbar-toggle:hover > .icon-bar {
|
||||
background-color: #FFF;
|
||||
}
|
||||
|
||||
.navbar-default .navbar-toggle:hover {
|
||||
background-color: #3D994A;
|
||||
}
|
||||
|
||||
.panel.panel-primary {
|
||||
border-color: #3D994A;
|
||||
}
|
||||
|
||||
.panel.panel-primary .panel-heading {
|
||||
border-color: #3D994A;
|
||||
background-color: #3D994A;
|
||||
}
|
||||
|
||||
.alert.alert-warning a {
|
||||
color: #68522C;
|
||||
}
|
||||
|
||||
.alert.alert-danger a {
|
||||
color: #B4450A;
|
||||
}
|
||||
|
||||
html {
|
||||
position: relative;
|
||||
min-height: 100%;
|
||||
}
|
||||
|
||||
body {
|
||||
padding-bottom: 80px;
|
||||
}
|
||||
|
||||
table {
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
.versiontable > tbody > tr > th {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.versiontable > thead > tr > th {
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.homesection + .homesection {
|
||||
border-top: solid 1px #EEE;
|
||||
}
|
||||
|
||||
.homesection {
|
||||
text-align: center;
|
||||
margin: 40px 0;
|
||||
padding: 40px 0;
|
||||
}
|
||||
|
||||
img.jumbo {
|
||||
margin-top: -40px;
|
||||
margin-left: -60px;
|
||||
}
|
||||
|
||||
h1.jumbo {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
footer {
|
||||
text-align: center;
|
||||
height: 80px;
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
h1.jumbo,
|
||||
h3.jumbo {
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 767px) {
|
||||
h1.jumbo,
|
||||
h3.jumbo {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
h1.jumbo {
|
||||
margin-top: 40px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
h3.jumbo {
|
||||
margin-top: -6px;
|
||||
}
|
||||
}
|
||||
|
||||
.vertical-align {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.hide_ {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.dropdown-submenu {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.dropdown-submenu > .dropdown-menu {
|
||||
top: 0;
|
||||
left: 100%;
|
||||
margin-top: -6px;
|
||||
margin-left: 10px;
|
||||
-webkit-border-radius: 0 6px 6px 6px;
|
||||
-moz-border-radius: 0 6px 6px 6px;
|
||||
border-radius: 0 6px 6px 6px;
|
||||
}
|
||||
|
||||
.drag-target {
|
||||
/* color: white; */
|
||||
background: repeating-linear-gradient(
|
||||
45deg,
|
||||
#dbf0de,
|
||||
#dbf0de 10px,
|
||||
#a5d9ad 10px,
|
||||
#a5d9ad 20px
|
||||
);
|
||||
}
|
||||
|
||||
input[type="file"] {
|
||||
display: none;
|
||||
}
|
||||
|
||||
button > .fa-caret-down {
|
||||
height: 100%;
|
||||
display: inline;
|
||||
margin-left: -.75em;
|
||||
margin-right: -1em;
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
.dropdown-submenu:hover > .dropdown-menu {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.dropdown-submenu > .dropdown-menu {
|
||||
margin-left: -1px;
|
||||
}
|
||||
}
|
||||
|
||||
.dropdown-submenu > a:after {
|
||||
display: block;
|
||||
content: " ";
|
||||
float: right;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-color: transparent;
|
||||
border-style: solid;
|
||||
border-width: 5px 0 5px 5px;
|
||||
border-left-color: #CCCCCC;
|
||||
margin-top: 5px;
|
||||
margin-right: -10px;
|
||||
}
|
||||
|
||||
.dropdown-submenu:hover > a:after {
|
||||
border-left-color: #FFFFFF;
|
||||
}
|
||||
|
||||
.dropdown-submenu.pull-left {
|
||||
float: none;
|
||||
}
|
||||
|
||||
.dropdown-submenu.pull-left > .dropdown-menu {
|
||||
left: -100%;
|
||||
margin-left: 10px;
|
||||
-webkit-border-radius: 6px 0 6px 6px;
|
||||
-moz-border-radius: 6px 0 6px 6px;
|
||||
border-radius: 6px 0 6px 6px;
|
||||
}
|
||||
|
||||
.tip {
|
||||
border-bottom: 1px dashed;
|
||||
}
|
||||
|
||||
summary {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
code {
|
||||
color: #31708F;
|
||||
background-color: #D9EDF7;
|
||||
}
|
||||
|
||||
input[type='radio'] {
|
||||
margin-left: .5em;
|
||||
}
|
||||
|
||||
#printersLog {
|
||||
max-height: 20em;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
#printersLog .INFO {
|
||||
color: #303030;
|
||||
}
|
||||
|
||||
#printersLog .WARN {
|
||||
color: #9F7435;
|
||||
}
|
||||
|
||||
#printersLog .FATAL {
|
||||
color: #9F3535;
|
||||
}
|
||||
Reference in New Issue
Block a user