1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 22:17:43 +00:00

Spreadsheet: Do not clear cells when ctrl-selecting

This commit is contained in:
AnotherTest 2020-08-28 11:10:24 +04:30 committed by Andreas Kling
parent 67dbb56444
commit e0b7833078
2 changed files with 9 additions and 3 deletions

View file

@ -131,10 +131,15 @@ void SpreadsheetWidget::setup_tabs(NonnullRefPtrVector<Sheet> new_sheets)
m_cell_value_editor->on_change = nullptr; m_cell_value_editor->on_change = nullptr;
m_cell_value_editor->set_text(""); m_cell_value_editor->set_text("");
m_should_change_selected_cells = false;
m_cell_value_editor->on_focusin = [this] { m_should_change_selected_cells = true; };
m_cell_value_editor->on_focusout = [this] { m_should_change_selected_cells = false; };
m_cell_value_editor->on_change = [cells = move(cells), this] { m_cell_value_editor->on_change = [cells = move(cells), this] {
if (m_should_change_selected_cells) {
for (auto* cell : cells) for (auto* cell : cells)
cell->set_data(m_cell_value_editor->text()); cell->set_data(m_cell_value_editor->text());
m_selected_view->sheet().update(); m_selected_view->sheet().update();
}
}; };
m_cell_value_editor->set_enabled(true); m_cell_value_editor->set_enabled(true);
}; };

View file

@ -55,6 +55,7 @@ private:
RefPtr<GUI::Label> m_current_cell_label; RefPtr<GUI::Label> m_current_cell_label;
RefPtr<GUI::TextEditor> m_cell_value_editor; RefPtr<GUI::TextEditor> m_cell_value_editor;
RefPtr<GUI::TabWidget> m_tab_widget; RefPtr<GUI::TabWidget> m_tab_widget;
bool m_should_change_selected_cells { false };
OwnPtr<Workbook> m_workbook; OwnPtr<Workbook> m_workbook;
}; };