Calendar and tasks pack the most body text at the smallest default sizes, so those two gear-icon dialogs get a "Text size" card (Normal/ Large/X-Large) alongside the existing Border card -- a new Widget-level font_scale column with its own POST .../font-scale endpoint, same Widget-property-not-config-field shape as border_style. Threaded through every classic (calendar_render.py) and modern (html_render.py/ calendar_html_render.py) size calc via one shared panel_style. scaled_size() so row heights/max_rows already derived from font size re-fit around the bigger text automatically.
16 lines
609 B
HTML
16 lines
609 B
HTML
<section class="card" style="margin-top: 20px;">
|
|
<h2 class="card-title">Text size</h2>
|
|
<p class="sub">Scales this widget's own text up for easier reading on
|
|
the panel -- rows/columns re-fit around the bigger text automatically.</p>
|
|
<form id="font-scale-config-form">
|
|
<label>Size
|
|
<select id="widget_font_scale">
|
|
{% for value, label in font_scale_choices %}
|
|
<option value="{{ value }}" {% if widget.font_scale == value %}selected{% endif %}>{{ label }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
</label>
|
|
<button type="submit">Save</button>
|
|
</form>
|
|
</section>
|