<feed xmlns='http://www.w3.org/2005/Atom'>
<title>luci/modules/luci-base/htdocs/luci-static/resources/tools, branch master</title>
<subtitle>Lua Configuration Interface (mirror)</subtitle>
<id>https://git.openwrt.org/project/luci/atom?h=master</id>
<link rel='self' href='https://git.openwrt.org/project/luci/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/'/>
<updated>2026-09-06T18:47:04Z</updated>
<entry>
<title>treewide: wrap loose view content in cbi-section</title>
<updated>2026-09-06T18:47:04Z</updated>
<author>
<name>Ivan Kvashonkin</name>
</author>
<published>2026-09-05T16:43:28Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=9aff4652380831e40b075a6f698ca427ee59fd04'/>
<id>urn:sha1:9aff4652380831e40b075a6f698ca427ee59fd04</id>
<content type='text'>
Views that returned headings, tables and control rows with nothing around
them now wrap that content in a section: the system and kernel logs,
Processes, the nftables and iptables views, Startup, the wireless station
list, DSL stats and the package manager. The nftables rule tables also
drop an !important that no theme could override.

Nothing changes in the stock bootstrap theme; themes that draw
.cbi-section as a panel get the structure they need.

Signed-off-by: Ivan Kvashonkin &lt;vizzlef@gmail.com&gt;
</content>
</entry>
<entry>
<title>treewide: fix textarea double scrolling issue</title>
<updated>2026-09-05T15:16:34Z</updated>
<author>
<name>Michael Pratt</name>
</author>
<published>2026-08-22T17:42:26Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=82966a62d0adb6ca0785f296f1d36e72cb9f7a3a'/>
<id>urn:sha1:82966a62d0adb6ca0785f296f1d36e72cb9f7a3a</id>
<content type='text'>
In "textarea" class elements, like the syslog,
depending on the browser, it is difficult to scroll if moused over
or after clicking or highlighting text.

The browser perceives that there is scrolling space/content within
the inner element because when the height of the element is exactly
the same size as text inside, the text padding or other invisible content
exceeds the size of the text box and the scroll bar is kept in the window.

This causes scrolling within the element with a range of just a few pixels,
and the rest of the page remains static and refuses to scroll.

To fix this add 1 to the dynamic size of the "textarea" boxes,
and also the initial values before the dynamic size is calculated.
This "+ 1" already exists in some instances of similar Javascript files.

A previous attempt at fixing this used "overflow-y" styling
but that causes undesirable behavior in some "textarea" use cases.

In some cases "+ 1" is added to both dynamic and final sizes, this can equate
to a total addition of 2 lines, which is still reasonable and proper padding,
and this promotes the habit of padding the textarea elements treewide,
no matter what example is used to modify or create the javascript for a new app.

The aria2 application ternary check for a minimum textarea size
seems to be written in reversed logic. It should likely be a minimum of 20 lines,
and the exact number + 1 otherwise, so fix that while at it.

Tested on Chrome 64-bit Windows 10.

Ref: 755061bc9e7e ("themes: remove overflow-y property...")
Signed-off-by: Michael Pratt &lt;mcpratt@pm.me&gt;
</content>
</entry>
<entry>
<title>luci-base: add helper functions for password</title>
<updated>2026-06-03T10:49:07Z</updated>
<author>
<name>Christian Korber</name>
</author>
<published>2026-06-01T06:29:55Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=62862114f0045ddd526b159f091d9c47e96c752d'/>
<id>urn:sha1:62862114f0045ddd526b159f091d9c47e96c752d</id>
<content type='text'>
Because validating password is used in `luci-app-acl` and
`luci-mod-system` this commit adds helper functions for them to
luci-base.

Signed-off-by: Christian Korber &lt;ckorber@tdt.de&gt;
</content>
</entry>
<entry>
<title>luci-base: correctness fixes</title>
<updated>2026-05-27T12:49:44Z</updated>
<author>
<name>Paul Donald</name>
</author>
<published>2026-05-26T14:33:06Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=a818ac89bb0e376b7ac4c9f1a8a35f657bbd64c9'/>
<id>urn:sha1:a818ac89bb0e376b7ac4c9f1a8a35f657bbd64c9</id>
<content type='text'>
validation:

use correct argument position for apply

network:

spec.need_tag -&gt; port.need_tag agrees with old lua compat

widgets:

rv.length is undefined, use firstChild

form:

Follow-up to 315dbfc7498e2f43afb0119b992915e8f311bc37
checkDepends recursion fix and implement cache lookup

uci:

improve timeout and Promise handling

ui:

follow-up to 92381c3ca285c2303a59c74509fb4d6a422fece3
renderListing sort: put directories first
getActiveTabId: check isNaN for tab state
getScrollParent: fix evaluation logic
fadeOutNotification: implement immediate timeout
openDropdown: accelerate draw via getBoundingClientRect

form:
ensure FlagValue parse always resolves

fs:
parse all 'expect' keys in RpcReply

luci:

Use the same source of truth in both the check and the dispatch
for flushRequestQueue

string check for dom string additions

Signed-off-by: Paul Donald &lt;newtwen+github@gmail.com&gt;
</content>
</entry>
<entry>
<title>luci-mod-status: fix syslog page with syslog-ng</title>
<updated>2026-03-16T22:22:31Z</updated>
<author>
<name>Ramon Van Gorkom</name>
</author>
<published>2026-03-08T13:45:19Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=ba590f87eace15ceeada9acdc13bf641478429d0'/>
<id>urn:sha1:ba590f87eace15ceeada9acdc13bf641478429d0</id>
<content type='text'>
If you have syslog-ng installed instead of logd then
syslog page displays errors.
This commit fixes that.

Signed-off-by: Ramon Van Gorkom &lt;Ramon00c00@gmail.com&gt;
</content>
</entry>
<entry>
<title>luci-base: js linting fixes / ES6 treatment</title>
<updated>2026-02-16T00:42:57Z</updated>
<author>
<name>Paul Donald</name>
</author>
<published>2026-02-14T18:46:15Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=50a8d5325db0b631bc86f9e3f375d1473fd4149c'/>
<id>urn:sha1:50a8d5325db0b631bc86f9e3f375d1473fd4149c</id>
<content type='text'>
prevent global variable bleed and reduce size somewhat

-cbi
-network
-protocol/static
-rpc
-tools/widgets
-tools/views
-uci

protocols

Signed-off-by: Paul Donald &lt;newtwen+github@gmail.com&gt;
</content>
</entry>
<entry>
<title>luci-base: jsdoc fixes</title>
<updated>2026-02-16T00:42:56Z</updated>
<author>
<name>Paul Donald</name>
</author>
<published>2026-02-15T23:44:17Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=92381c3ca285c2303a59c74509fb4d6a422fece3'/>
<id>urn:sha1:92381c3ca285c2303a59c74509fb4d6a422fece3</id>
<content type='text'>
@name alone does not provide a linkable symbol.
@member and @memberof do.

Signed-off-by: Paul Donald &lt;newtwen+github@gmail.com&gt;
</content>
</entry>
<entry>
<title>luci-base: amend ZoneSelect widget datatype</title>
<updated>2026-01-12T00:36:35Z</updated>
<author>
<name>Paul Donald</name>
</author>
<published>2026-01-12T00:36:35Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=2a84e490e1b743a208365b542118b40874851e9e'/>
<id>urn:sha1:2a84e490e1b743a208365b542118b40874851e9e</id>
<content type='text'>
mandate proper firewall compliant zone names. Use
validation ucifw4zonename instead of uciname. The former
does not permit leading digits which

Now we only permit "*" if flags .allowany and .nocreate are
set. This is when the widget is used to select pre-existing
zones and the zone 'any' ("*") is added as a .value.
Creating a zone named "*" shall not be allowed.

Signed-off-by: Paul Donald &lt;newtwen+github@gmail.com&gt;
</content>
</entry>
<entry>
<title>luci-mod-network: Add IPSelect widget which eases selection of interface IPs</title>
<updated>2025-10-28T20:01:29Z</updated>
<author>
<name>Paul Donald</name>
</author>
<published>2025-10-25T23:47:57Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=7c1696c420edb9475bfd081b351b3152a94b22b9'/>
<id>urn:sha1:7c1696c420edb9475bfd081b351b3152a94b22b9</id>
<content type='text'>
This widget is modeled after CBINetworkSelect, which is similar in nature.
It presents a dropdown box of all device IPs with an accompanying badge of the
device.

Signed-off-by: Paul Donald &lt;newtwen+github@gmail.com&gt;
</content>
</entry>
<entry>
<title>luci-base: widgets: fix const -&gt; let variable which is later reassigned</title>
<updated>2025-10-24T15:41:25Z</updated>
<author>
<name>Paul Donald</name>
</author>
<published>2025-10-24T15:30:39Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/luci/commit/?id=d3cbf6e6853c1944d0fd163e40fdb76301715154'/>
<id>urn:sha1:d3cbf6e6853c1944d0fd163e40fdb76301715154</id>
<content type='text'>
Signed-off-by: Paul Donald &lt;newtwen+github@gmail.com&gt;
</content>
</entry>
</feed>
