Refine shell surfaces, spacing, and Ferese symbol
This commit is contained in:
1 parent
b3fa82b53b
commit
90e8986d8e
5 files changed
+14
-20
No files matched your search
@@ -166,10 +166,10 @@ target/debug/ferese --backend nested --grant-effects --grant-shell-control -- \
|
||||
|
||||
The Ferese mark enters overview, where workspace indicators become available.
|
||||
The focused app appears on the left; status controls and day/time sit on the
|
||||
right. The 28px bar has square screen edges, 19px icons, a fine bottom separator,
|
||||
and no drop shadow. An 8px gap separates it from windows; adjust
|
||||
`top_bar_window_gap` under `[theme.geometry]` to change it. This is additional to
|
||||
the workspace outer gap. Its dark startup fallback matches the material palette.
|
||||
right. The 28px bar has square screen edges, 19px icons, and no border or drop
|
||||
shadow. Window spacing uses the workspace outer gap; `top_bar_window_gap` under
|
||||
`[theme.geometry]` adds optional extra space (default 0). Solid and translucent
|
||||
shell surfaces also omit outlines. The dark startup fallback matches the material palette.
|
||||
|
||||
Keyboard and direct-session touchpad settings are applied at startup:
|
||||
|
||||
|
||||
@@ -256,11 +256,9 @@ void main() {
|
||||
* shadow_values.y * (1.0 - coverage) * alpha;
|
||||
gl_FragColor = vec4(0.0, 0.0, 0.0, opacity);
|
||||
} else if (paint_mode > 0.5) {
|
||||
if (edge_bar > 0.5) {
|
||||
float bottom = logical_size.y * pixel_scale
|
||||
- dot(gl_FragCoord.xy - local_origin, local_axes.zw);
|
||||
float opacity = 0.10 * (1.0 - smoothstep(pixel_scale - 0.5, pixel_scale + 0.5, bottom)) * coverage * alpha;
|
||||
gl_FragColor = vec4(vec3(opacity), opacity);
|
||||
// Screen-edge bars and non-glass materials have no outline.
|
||||
if (edge_bar > 0.5 || glass_edges < 0.5) {
|
||||
gl_FragColor = vec4(0.0);
|
||||
return;
|
||||
}
|
||||
float border = smoothstep(-pixel_scale - 0.5, -pixel_scale + 0.5, sdf);
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round">
|
||||
<path d="M7 20V6a2 2 0 0 1 2-2h10M7 11.5h9"/>
|
||||
<path d="M4 20h3"/>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" role="img" aria-label="Ferese symbol: tiled F">
|
||||
<rect x="20" y="20" width="50" height="160" rx="8" fill="currentColor"/>
|
||||
<rect x="80" y="20" width="100" height="55" rx="8" fill="currentColor"/>
|
||||
<rect x="80" y="95" width="70" height="45" rx="8" fill="currentColor"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 261 B After Width: | Height: | Size: 341 B |
@@ -72,7 +72,7 @@ impl Default for ShellTheme {
|
||||
shadow: [0, 0, 0, 85],
|
||||
bar_height: 28.0,
|
||||
bar_margin_top: 0,
|
||||
bar_window_gap: 8,
|
||||
bar_window_gap: 0,
|
||||
bar_margin_horizontal: 0,
|
||||
bar_radius: 0.0,
|
||||
material_radius: 14.0,
|
||||
@@ -415,7 +415,7 @@ const fn default_bar_height() -> f32 {
|
||||
28.0
|
||||
}
|
||||
const fn default_bar_window_gap() -> i32 {
|
||||
8
|
||||
0
|
||||
}
|
||||
const fn default_bar_margin_top() -> i32 {
|
||||
0
|
||||
|
||||
@@ -599,13 +599,8 @@ impl FereseShell {
|
||||
text_color: Some(primary),
|
||||
icon_color: Some(primary),
|
||||
border: Border {
|
||||
color: if compositor_material {
|
||||
Color::TRANSPARENT
|
||||
} else {
|
||||
color_with_opacity(theme.border, p * 0.6)
|
||||
},
|
||||
width: 1.0,
|
||||
radius: theme.material_radius.into(),
|
||||
..Default::default()
|
||||
},
|
||||
// Iced's shadow fills the silhouette behind the quad. With
|
||||
// transparent client content that fill remains visible over
|
||||
|
||||
Reference in new issue
Block a user