Skip to content

[pull] master from mapeditor:master - #97

Merged
pull[bot] merged 22 commits into
dogboydog:masterfrom
mapeditor:master
May 27, 2026
Merged

pull[bot] merged 22 commits into
dogboydog:masterfrom
mapeditor:master

Conversation

@pull

@pull pull Bot commented May 27, 2026 •

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

bjorn and others added 22 commits April 24, 2026 12:59
)

When deselecting the current object, its properties generally remain
visible in the Properties view. But when changing any of the properties,
the changes were only applied to "selected objects".

Now, when there is still a MapObject set as the current object, changing
its properties will apply to it regardless of whether it is still
selected.

(cherry picked from commit db0d1c4)
Co-authored-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
(cherry picked from commit ac6461c)
Regression introduced in 17a47f4.

When switching from a map to the tile collision editor and back while a
collision object was selected, the Properties view could stop updating
entirely.

ScopedUpdatesDisabler unconditionally called setUpdatesEnabled(false) on
the widget, but only called setUpdatesEnabled(true) when they were
previously enabled. However, updates can be disabled due to them being
disabled on a parent widget as well, in which case the updates could
remain explicitly disabled for the child widget.

Now we skip the disable when updates are already effectively disabled,
so they will effectively re-enable as well.

(cherry picked from commit 5b3bf76)
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2 to 3.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](softprops/action-gh-release@v2...v3)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-version: '3'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
(cherry picked from commit fa62547)
…4507)

When the ability to evaluate expressions was added to the spin boxes, it
bypassed the locale-aware number parsing normally performed by
QSpinBox/QDoubleSpinBox. As a result, users in locales using a comma as
decimal separator could no longer enter values like "3,14".

Now the input is first parsed as a number using the widget's locale, and
only falls back to expression evaluation when that fails.

(cherry picked from commit fef53ef)
Added information about pixi-tiledmap as a loader and renderer for Tiled Maps in Pixi.JS.

(cherry picked from commit 1fb0747)
When a tileset image was reloaded, the Tile Animation Editor didn't
immediately repaint and failed to show any new tiles until switching
tilesets. Now it updates immediately.

Closes #3923

(cherry picked from commit 5fac4aa)
…4411)

Added missing LanguageChange / Preferences::languageChanged
retranslation hooks in affected widgets, models, and action handlers,
and refreshed dynamic property labels in PropertiesWidget.

Closes #3443

Co-authored-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
(cherry picked from commit c247b17)
The objectBounds() function was using renderer->shape(object) for Point
objects, which returns the visual pin shape rather than the actual point
position. This caused the selection bounding box to be larger than
expected, affecting snapping and rotation behavior.

Fix by returning a zero-size rect at the point's screen position,
consistent with how Point objects are treated geometrically.

Fixes #3784

(cherry picked from commit 7144155)
This also prevents whitespaces-only property names.

Co-authored-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>

(cherry picked from commit 725993a)
…mand (#4478)

The `eugenesvk/action-homebrew-bump-cask` action had failed on the first test, see:
#4391 (comment)

(cherry picked from commit e48776a)
This way, those indexes can't be navigated to using the keyboard nor
selected using the mouse.

I've also added rendering of the focused tile in TileDelegate, which
helps a little bit to give additional context in some cases like
multi-selection or when toggling selection.

Closes #3498

(cherry picked from commit 77fc9a2)
Bumps [timheuer/base64-to-file](https://github.com/timheuer/base64-to-file) from 1 to 2.
- [Release notes](https://github.com/timheuer/base64-to-file/releases)
- [Commits](timheuer/base64-to-file@v1...v2)

---
updated-dependencies:
- dependency-name: timheuer/base64-to-file
  dependency-version: '2'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
(cherry picked from commit f511930)
Fixes build errors against Qt 6.4 (Ubuntu 24.04) where QStringView
comparisons with const char* literals cause compilation issues.

Wrapped string literals in QLatin1String/QStringLiteral and replaced
implicit const char* conversions with explicit QString::fromStdString /
QLatin1Char.

(cherry picked from commit d6417e4)
…ior (#4517)

Fix copy/paste of list properties and related clean-up

Copying a list custom property and pasting it onto another object
dropped the items, leaving them saved as `type="std::nullptr_t"` in TMX.
The same bug applied to lists nested inside class properties and also
affected storing list properties on projects or worlds.

The clipboard, project files, and world files serialize through
`propertiesToJson` / `propertiesFromJson`, which fed
`QJsonValue::fromVariant` a tree containing `ExportValue` wrappers it
was not programmed to handle. They now use a new `TypedListValues`
`RecursiveBehavior` that produces `{type, propertytype, value}` maps for
each list element (matching the JSON map format on disk) and decodes the
same shape on read.

A few cleanups while in the area:

- Folded the JSON map converter helpers (`exportValuesToVariantMap`,
  `convertListValues`) into `ExportContext` so the same recursion logic
  is shared.

- Replaced the half-baked `ListsAsExportValues` default with an explicit
  `NoRecursion` default. Callers that walk compound values themselves
  (the XML reader and writer, `PropertyTypes::toJson`) now use the
  default. The JSON helpers opt in to `TypedListValues`.

- Made the XML writer mirror the XML reader, driving recursion through
  lists and class members itself, so `ExportValuesOnly` was no longer
  needed and was removed.

- Added autotests for round-tripping list values to XML and JSON.

Closes #4514

(cherry picked from commit c9ad67b)
* Minimum version updated to Qt 5.15.2
* Ubuntu/Debian packages updated to Qt 6
* Arch Linux packages update to Qt 6
* Homebrew packages extended with qttools, necessary for lrelease

(cherry picked from commit 7f243af)
The ExportHelper forgot to recurse into list values.

Also documented exportValueToJson's NoRecursion precondition
and tweaked some comments in MapToVariantConverter.

(cherry picked from commit c676301)
Replaced with a direct snapcraft invocation using --destructive-mode,
which builds on the runner host instead of in LXD. Pin the job to
ubuntu-24.04 so the host matches the snap's core24 base.

Also dropped the dead snap_channel step, since we're not publishing
the snap anymore since d3530f4.

(cherry picked from commit f4fcfcf)
The Qt 6.10.2 build's deployment target is macOS 13, but the artifact
was named "macOS-11+". The Qt 5.15.2 build covers macOS 10.13 through
12, but the artifact was named "macOS-10.13-10.15". Updated both
version_suffix values to match the actual minimum supported version,
matching the manual rename done for 1.12.1.
Conflicts:
	NEWS.md
@pull pull Bot locked and limited conversation to collaborators May 27, 2026
@pull pull Bot added the ⤵️ pull label May 27, 2026
@pull
pull Bot merged commit 255c83c into dogboydog:master May 27, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants