Skip to content

Commit 83885d7

Browse files
committed
[feature] add background image vignette controls
1 parent 8e1d8c5 commit 83885d7

File tree

12 files changed

+290
-15
lines changed

12 files changed

+290
-15
lines changed

‎package-lock.json‎

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "nightTab",
3-
"version": "5.3.0",
3+
"version": "5.4.0",
44
"description": "A neutral new tab page accented with a chosen colour. Customise the layout, style, background and bookmarks in nightTab.",
55
"main": "index.js",
66
"scripts":{

‎src/css/background.css‎

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,24 @@
3333
.background-accent{
3434
background-color:rgba(var(--theme-accent),var(--background-accent));
3535
position: absolute;
36-
top:0;
37-
left:0;
38-
width:100%;
39-
height:100%;
36+
top:-1em;
37+
left:-1em;
38+
width:calc(100%+2em);
39+
height:calc(100%+2em);
4040
pointer-events: none;
4141
display: block;
4242
}
43+
44+
.background-vignette{
45+
position: absolute;
46+
top:-1em;
47+
left:-1em;
48+
width:calc(100%+2em);
49+
height:calc(100%+2em);
50+
pointer-events: none;
51+
background-image:radial-gradient(
52+
circle,
53+
transparent var(--background-vignette-end),
54+
rgba(0,0,0,var(--background-vignette-opacity)) var(--background-vignette-start)
55+
);
56+
}

‎src/css/variables.css‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,9 @@
155155
--background-scale:1;
156156
--background-accent:0;
157157
--background-blur:0;
158+
--background-vignette-opacity:0%;
159+
--background-vignette-start:90%;
160+
--background-vignette-end:70%;
158161
/* form */
159162
--form-label:var(--theme-color-16);
160163
--form-label-hover:var(--theme-color-20);

‎src/html/background.html‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
<divclass="background">
22
<divclass="background-image"></div>
33
<divclass="background-accent"></div>
4+
<divclass="background-vignette"></div>
45
</div>

‎src/html/menu/content/background/image.html‎

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ <h1 class="menu-item-header-text">Image</h1>
6666
<buttonclass="control-background-image-opacity-default button" tabindex="-1" title="Reset to default"><spanclass="icon-replay"></span></button>
6767
</div>
6868
</div>
69+
<hr>
6970
<divclass="form-wrap">
7071
<labelfor="control-background-image-grayscale-range">Greyscale</label>
7172
<divclass="form-group form-group-block">
@@ -74,6 +75,7 @@ <h1 class="menu-item-header-text">Image</h1>
7475
<buttonclass="control-background-image-grayscale-default button" tabindex="-1" title="Reset to default"><spanclass="icon-replay"></span></button>
7576
</div>
7677
</div>
78+
<hr>
7779
<divclass="form-wrap">
7880
<labelfor="control-background-image-blur-range">Blur</label>
7981
<divclass="form-group form-group-block">
@@ -82,6 +84,7 @@ <h1 class="menu-item-header-text">Image</h1>
8284
<buttonclass="control-background-image-blur-default button" tabindex="-1" title="Reset to default"><spanclass="icon-replay"></span></button>
8385
</div>
8486
</div>
87+
<hr>
8588
<divclass="form-wrap">
8689
<labelfor="control-background-image-accent-range">Accent overlay</label>
8790
<divclass="form-group form-group-block">
@@ -90,6 +93,7 @@ <h1 class="menu-item-header-text">Image</h1>
9093
<buttonclass="control-background-image-accent-default button" tabindex="-1" title="Reset to default"><spanclass="icon-replay"></span></button>
9194
</div>
9295
</div>
96+
<hr>
9397
<divclass="form-wrap">
9498
<labelfor="control-background-image-scale-range">Size</label>
9599
<divclass="form-group form-group-block">
@@ -98,6 +102,35 @@ <h1 class="menu-item-header-text">Image</h1>
98102
<buttonclass="control-background-image-scale-default button" tabindex="-1" title="Reset to default"><spanclass="icon-replay"></span></button>
99103
</div>
100104
</div>
105+
<hr>
106+
<divclass="form-wrap">
107+
<labelfor="control-background-image-vignette-opacity-range">Vignette</label>
108+
<divclass="form-group form-group-block">
109+
<inputid="control-background-image-vignette-opacity-range" class="control-background-image-vignette-opacity-range mr-3" type="range" value="0" tabindex="-1">
110+
<inputclass="control-background-image-vignette-opacity-number form-group-item-medium form-group-radius-left" type="number" value="0" tabindex="-1">
111+
<buttonclass="control-background-image-vignette-opacity-default button" tabindex="-1" title="Reset to default"><spanclass="icon-replay"></span></button>
112+
</div>
113+
</div>
114+
<divclass="form-wrap">
115+
<divclass="form-indent">
116+
<divclass="form-wrap">
117+
<labelfor="control-background-image-vignette-start-range">Start</label>
118+
<divclass="form-group form-group-block">
119+
<inputid="control-background-image-vignette-start-range" class="control-background-image-vignette-start-range mr-3" type="range" value="0" tabindex="-1">
120+
<inputclass="control-background-image-vignette-start-number form-group-item-medium form-group-radius-left" type="number" value="0" tabindex="-1">
121+
<buttonclass="control-background-image-vignette-start-default button" tabindex="-1" title="Reset to default"><spanclass="icon-replay"></span></button>
122+
</div>
123+
</div>
124+
<divclass="form-wrap">
125+
<labelfor="control-background-image-vignette-end-range">End</label>
126+
<divclass="form-group form-group-block">
127+
<inputid="control-background-image-vignette-end-range" class="control-background-image-vignette-end-range mr-3" type="range" value="0" tabindex="-1">
128+
<inputclass="control-background-image-vignette-end-number form-group-item-medium form-group-radius-left" type="number" value="0" tabindex="-1">
129+
<buttonclass="control-background-image-vignette-end-default button" tabindex="-1" title="Reset to default"><spanclass="icon-replay"></span></button>
130+
</div>
131+
</div>
132+
</div>
133+
</div>
101134
</div>
102135
</div>
103136
</div>

‎src/js/background.js‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,21 @@ var background = (function(){
122122
html.style.setProperty("--background-accent",state.get.current().background.image.accent);
123123
};
124124

125+
render.vignette={
126+
opacity: function(){
127+
varhtml=helper.e("html");
128+
html.style.setProperty("--background-vignette-opacity",state.get.current().background.image.vignette.opacity+"%");
129+
},
130+
start: function(){
131+
varhtml=helper.e("html");
132+
html.style.setProperty("--background-vignette-start",state.get.current().background.image.vignette.start+"%");
133+
},
134+
end: function(){
135+
varhtml=helper.e("html");
136+
html.style.setProperty("--background-vignette-end",state.get.current().background.image.vignette.end+"%");
137+
}
138+
};
139+
125140
render.input={
126141
clear: function(){
127142
helper.e(".control-background-image-file").value="";
@@ -231,6 +246,9 @@ var background = (function(){
231246
render.opacity();
232247
render.scale();
233248
render.accent();
249+
render.vignette.opacity();
250+
render.vignette.start();
251+
render.vignette.end();
234252
render.feedback.init();
235253
};
236254

0 commit comments

Comments
(0)