mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 11:47:46 +00:00
PixelPaint: Only scroll into view in LayerListWidget when needed
This makes sure that scroll_into_view is not called when not necessary, or when m_layers is empty, which previously caused a crash upon removing the last layer.
This commit is contained in:
parent
0e04f7cf1e
commit
f3cdb9bfeb
1 changed files with 9 additions and 3 deletions
|
@ -310,12 +310,18 @@ void LayerListWidget::set_selected_layer(Layer* layer)
|
|||
{
|
||||
if (!m_image)
|
||||
return;
|
||||
for (size_t i = 0; i < m_image->layer_count(); ++i)
|
||||
m_image->layer(i).set_selected(layer == &m_image->layer(i));
|
||||
for (size_t i = 0; i < m_image->layer_count(); ++i) {
|
||||
if (layer == &m_image->layer(i)) {
|
||||
m_image->layer(i).set_selected(true);
|
||||
scroll_into_view(m_gadgets[i].rect, false, true);
|
||||
m_selected_layer_index = i;
|
||||
} else {
|
||||
m_image->layer(i).set_selected(false);
|
||||
}
|
||||
}
|
||||
if (on_layer_select)
|
||||
on_layer_select(layer);
|
||||
|
||||
scroll_into_view(m_gadgets[m_selected_layer_index].rect, false, true);
|
||||
update();
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue