<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dolphin/src/kitemviews, branch master</title>
<subtitle>Patched KDE Dolphin with Pixel Scaling</subtitle>
<id>https://fiftyfourth.xyz/git/dolphin/atom/src/kitemviews?h=master</id>
<link rel='self' href='https://fiftyfourth.xyz/git/dolphin/atom/src/kitemviews?h=master'/>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/'/>
<updated>2026-06-25T19:09:01Z</updated>
<entry>
<title>kfileitemmodel: Avoid zero-as-null-pointer-constant warnings in natural sort</title>
<updated>2026-06-25T19:09:01Z</updated>
<author>
<name>Méven Car</name>
<email>meven@kde.org</email>
</author>
<published>2026-06-25T19:08:18Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=50c8b5a3eefcb95c4c0a07c454311ad650f0b5ae'/>
<id>urn:sha1:50c8b5a3eefcb95c4c0a07c454311ad650f0b5ae</id>
<content type='text'>
The natural sort comparison helpers compare Qt::strong_ordering values
against the literal 0. The compiler reads that 0 as a null pointer
constant and warns under -Wzero-as-null-pointer-constant.

Use the named ordering helpers is_lt, is_gt and is_neq instead, which
express the same checks without a literal 0. The plain integer
comparisons in the surrounding code are left as they are.
</content>
</entry>
<entry>
<title>Replace the itemsChanged disconnect/connect dance with a guard</title>
<updated>2026-06-14T06:56:21Z</updated>
<author>
<name>Méven Car</name>
<email>meven@kde.org</email>
</author>
<published>2026-06-13T16:11:44Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=451ae420c8454c3f6a157019646781fa97af3b2e'/>
<id>urn:sha1:451ae420c8454c3f6a157019646781fa97af3b2e</id>
<content type='text'>
The updater must not react to its own setData() changes, or it would
resolve the roles again. Instead of disconnecting slotItemsChanged()
around every setData() and reconnecting (a dozen times), add a
setModelData() helper that sets a guard while calling setData(), and
make slotItemsChanged() return early while it is set. The view still
gets itemsChanged and repaints.

This also drops a stray disconnect of itemsMoved (never reconnected)
that a hover-sequence block did while duplicating the itemsChanged
connection.
</content>
</entry>
<entry>
<title>smoothscroller: always emit scrollingStopped from scrollTo</title>
<updated>2026-06-13T15:26:22Z</updated>
<author>
<name>Méven Car</name>
<email>meven@kde.org</email>
</author>
<published>2026-06-13T15:24:49Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=5ccdce11680528d1e993bffe2cae8417b5aba8c8'/>
<id>urn:sha1:5ccdce11680528d1e993bffe2cae8417b5aba8c8</id>
<content type='text'>
When scrollTo() is asked to move to the position the scrollbar already
holds (clamped, e.g. an item at the bottom, or a sub-pixel offset), no
animation runs and scrollingStopped() was never emitted. Callers waiting
for it stayed blocked: KItemListView::scrollToItem() delegates to scrollTo
for any non-zero offset, and DolphinView::renameSelectedItems() only opens
the inline rename editor once scrollingStopped() arrives. So inline rename
silently did nothing for the affected items.

Emit scrollingStopped() in the no-op case too, and add a regression test.
</content>
</entry>
<entry>
<title>remove version guards below the build minimums</title>
<updated>2026-06-13T15:00:09Z</updated>
<author>
<name>Méven Car</name>
<email>meven@kde.org</email>
</author>
<published>2026-06-13T14:28:08Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=d49b4aa1bc826bc2343f518af6712981228f1c8e'/>
<id>urn:sha1:d49b4aa1bc826bc2343f518af6712981228f1c8e</id>
<content type='text'>
KIO_VERSION and KFILEMETADATA_VERSION checks up to 6.23 are always true
given the Qt 6.4 / KF 6.23 minimum versions.
</content>
</entry>
<entry>
<title>Allow grouping by a separate criterion</title>
<updated>2026-06-11T10:30:18Z</updated>
<author>
<name>Ramil Nurmanov</name>
<email>ramil2004nur@gmail.com</email>
</author>
<published>2026-06-04T20:06:12Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=989c0f4f0319f7d8e573c8a88fe8011bd3315466'/>
<id>urn:sha1:989c0f4f0319f7d8e573c8a88fe8011bd3315466</id>
<content type='text'>
Add an explicit group role to Dolphin views so items can be grouped independently from the active sort role.
Previously, Dolphin's grouped view always used the current sort role as the grouping criterion. This meant that grouping and sorting were tied together, for example grouping by type also required sorting by type.
This change adds a separate Group By menu. It replaces the previous Show in Groups toggle and allows the user to disable grouping, keep the old Same as Sort behavior, or explicitly group by a selected criterion.
When an explicit group role is set, the model keeps groups stable and uses the normal sort role as a secondary key inside each group. The roles
updater also receives the active group role, so roles used only for grouping are still updated correctly.

BUG: 416134
CCBUG: 510670
CCBUG: 513235
CCBUG: 46393
</content>
</entry>
<entry>
<title>kitemviews: handle macOS pixel wheel scrolling immediately</title>
<updated>2026-06-10T11:33:48Z</updated>
<author>
<name>Ketal Wang</name>
<email>k@ketal.icu</email>
</author>
<published>2026-05-29T10:14:59Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=6eed05fd769b01c37530b8b62cdcd65933ea8d14'/>
<id>urn:sha1:6eed05fd769b01c37530b8b62cdcd65933ea8d14</id>
<content type='text'>
</content>
</entry>
<entry>
<title>kfileitemmodel: prefer prefix over postfix increment for iterator</title>
<updated>2026-06-01T09:04:16Z</updated>
<author>
<name>Sebastian Englbrecht</name>
<email>sebastian.englbrecht@tum.de</email>
</author>
<published>2026-05-31T17:05:52Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=4b68a7ca5ea08df4bc108dfcb645fd8a067df7f2'/>
<id>urn:sha1:4b68a7ca5ea08df4bc108dfcb645fd8a067df7f2</id>
<content type='text'>
Postfix increment creates an unnecessary temporary copy.
</content>
</entry>
<entry>
<title>dolphinview: Unselect navigator when click on background</title>
<updated>2026-05-31T08:57:56Z</updated>
<author>
<name>Florian RICHER</name>
<email>florian.richer@protonmail.com</email>
</author>
<published>2026-05-15T15:29:46Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=2a72145eb09276a4576762b74cb976fcd4550e87'/>
<id>urn:sha1:2a72145eb09276a4576762b74cb976fcd4550e87</id>
<content type='text'>
</content>
</entry>
<entry>
<title>KItemListWidget: Add pressedChanged</title>
<updated>2026-05-29T12:59:42Z</updated>
<author>
<name>Akseli Lahtinen</name>
<email>akselmo@akselmo.dev</email>
</author>
<published>2026-05-29T10:25:07Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=8f0baa45053312914812cc908e94138bc23fe44f'/>
<id>urn:sha1:8f0baa45053312914812cc908e94138bc23fe44f</id>
<content type='text'>
When items were pressed, we never called the
updateAdditionalInfoTextColor, which caused
some of the text colors get out of sync.
This was especially noticeable in details view
when using an accent color that makes the font
color change to preserve readability.

BUG: 508329
</content>
</entry>
<entry>
<title>dolphinmainwindow,kitemlistview: fix unowned object allocations</title>
<updated>2026-05-28T08:59:00Z</updated>
<author>
<name>Sebastian Englbrecht</name>
<email>sebastian.englbrecht@tum.de</email>
</author>
<published>2026-05-23T15:40:53Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=680ccee08cfac2b53bb7bf7d35b780889efa4b51'/>
<id>urn:sha1:680ccee08cfac2b53bb7bf7d35b780889efa4b51</id>
<content type='text'>
Parent QMenu to the main window so it is owned and deleted with it.
Register KItemListContainerAccessible in Qt's accessibility cache so
Qt takes ownership and deletes it with the container widget.
</content>
</entry>
</feed>
