Compare commits

...

3 Commits

Author SHA1 Message Date
Gaspar Capello d85727bb17
Merge 5ddd14106b into 107e846911 2025-10-02 13:50:38 -03:00
David Capello 107e846911 Remove direct TRACEARGS() calls
build / build (Debug, macos-latest, lua, cli) (push) Has been cancelled Details
build / build (Debug, macos-latest, noscripts, cli) (push) Has been cancelled Details
build / build (Debug, ubuntu-latest, lua, cli) (push) Has been cancelled Details
build / build (Debug, ubuntu-latest, noscripts, cli) (push) Has been cancelled Details
build / build (Debug, windows-latest, lua, cli) (push) Has been cancelled Details
build / build (Debug, windows-latest, noscripts, cli) (push) Has been cancelled Details
build / build (RelWithDebInfo, macos-latest, lua, gui) (push) Has been cancelled Details
build / build (RelWithDebInfo, ubuntu-latest, lua, gui) (push) Has been cancelled Details
build / build (RelWithDebInfo, windows-latest, lua, gui) (push) Has been cancelled Details
2025-10-01 16:53:07 -03:00
Gaspar Capello 5ddd14106b Fix move tool with Auto Select Layer isn't working (fix #4812)
Prior to this fix, automatic layer selection for the Move Tool
did not work when the "Compose Groups Separately" option was active.
2025-09-26 15:47:53 -03:00
7 changed files with 18 additions and 20 deletions

View File

@ -1,5 +1,5 @@
// Aseprite
// Copyright (C) 2019-2024 Igara Studio S.A.
// Copyright (C) 2019-2025 Igara Studio S.A.
// Copyright (C) 2001-2018 David Capello
//
// This program is distributed under the terms of
@ -108,7 +108,7 @@ void ColorPicker::pickColor(const Site& site,
plan.addLayer(sprite->root(), site.frame());
doc::CelList cels;
sprite->pickCels(pos, kOpacityThreshold, plan, cels);
sprite->pickCels(pos, plan, cels, kOpacityThreshold);
if (!cels.empty())
m_layer = cels.front()->layer();
@ -181,7 +181,7 @@ void ColorPicker::pickColor(const Site& site,
plan.addLayer(refLayer, site.frame());
doc::CelList cels;
sprite->pickCels(pos, kOpacityThreshold, plan, cels);
sprite->pickCels(pos, plan, cels, kOpacityThreshold);
for (const Cel* cel : cels) {
doc::color_t imageColor;

View File

@ -34,7 +34,6 @@ namespace app { namespace script {
template<>
void push_value_to_lua(lua_State* L, const std::nullptr_t&)
{
TRACEARGS("push_value_to_lua nullptr_t");
lua_pushnil(L);
}

View File

@ -60,6 +60,7 @@
#include "doc/layer.h"
#include "doc/layer_tilemap.h"
#include "doc/mask.h"
#include "doc/render_plan.h"
#include "doc/slice.h"
#include "doc/sprite.h"
#include "fmt/format.h"
@ -153,12 +154,14 @@ bool StandbyState::onMouseDown(Editor* editor, MouseMessage* msg)
// Handle "Auto Select Layer"
if (editor->isAutoSelectLayer()) {
gfx::PointF cursor = editor->screenToEditorF(msg->position());
ColorPicker picker;
picker.pickColor(site, cursor, editor->projection(), ColorPicker::FromComposition);
doc::RenderPlan plan;
plan.addLayer(site.sprite()->root(), site.frame());
doc::CelList cels;
site.sprite()->pickCels(cursor, plan, cels);
const view::RealRange& range = context->range();
if (picker.layer() && !range.contains(picker.layer())) {
layer = picker.layer();
if (!cels.empty() && !range.contains(cels.front()->layer())) {
layer = cels.front()->layer();
if (layer) {
editor->setLayer(layer);
editor->flashCurrentLayer();

View File

@ -1,5 +1,5 @@
// Aseprite
// Copyright (C) 2019-2023 Igara Studio S.A.
// Copyright (C) 2019-2025 Igara Studio S.A.
//
// This program is distributed under the terms of
// the End-User License Agreement for Aseprite.
@ -50,10 +50,8 @@ TaskWidget::TaskWidget(const Type type, base::task::func_t&& func)
}
else if (m_progressBar.parent()) {
float v = m_task.progress();
if (v > 0.0f) {
TRACEARGS("progressBar setValue", int(std::clamp(v * 100.0f, 0.0f, 100.0f)));
if (v > 0.0f)
m_progressBar.setValue(int(std::clamp(v * 100.0f, 0.0f, 100.0f)));
}
}
});
m_monitorTimer.start();

View File

@ -1,5 +1,5 @@
// Aseprite Document Library
// Copyright (C) 2018-2024 Igara Studio S.A.
// Copyright (C) 2018-2025 Igara Studio S.A.
// Copyright (C) 2001-2018 David Capello
//
// This file is released under the terms of the MIT license.
@ -656,9 +656,9 @@ void Sprite::remapTilemaps(const Tileset* tileset, const Remap& remap)
// Drawing
void Sprite::pickCels(const gfx::PointF& pos,
const int opacityThreshold,
const RenderPlan& plan,
CelList& cels) const
CelList& cels,
const int opacityThreshold) const
{
// Iterate cels in reversed order (from the front-most to the
// bottom-most) so we pick first visible cel in the given position.

View File

@ -212,9 +212,9 @@ public:
void remapImages(const Remap& remap);
void remapTilemaps(const Tileset* tileset, const Remap& remap);
void pickCels(const gfx::PointF& pos,
const int opacityThreshold,
const RenderPlan& plan,
CelList& cels) const;
CelList& cels,
const int opacityThreshold = 1) const;
////////////////////////////////////////
// Iterators

View File

@ -1,5 +1,5 @@
// Aseprite Steam Wrapper
// Copyright (c) 2020-2024 Igara Studio S.A.
// Copyright (c) 2020-2025 Igara Studio S.A.
// Copyright (c) 2016 David Capello
//
// This file is released under the terms of the MIT license.
@ -153,8 +153,6 @@ public:
CallbackMsg_t msg;
if (SteamAPI_ManualDispatch_GetNextCallback(m_pipe, &msg)) {
// TRACEARGS("SteamAPI_ManualDispatch_GetNextCallback", msg.callback);
bool disconnected = false;
switch (msg.callback) {
case kSteamServersDisconnected: