Skip to content

Commit 7595a90

Browse files
committed
Cache editor setting queried in hot path in 2D editor
1 parent 3d91a48 commit 7595a90

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

editor/scene/canvas_item_editor_plugin.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2754,7 +2754,7 @@ void CanvasItemEditor::_gui_input_viewport(const Ref<InputEvent> &p_event) {
27542754
Ref<InputEventMouseButton> mb = p_event;
27552755
bool release_lmb = (mb.is_valid() && !mb->is_pressed() && mb->get_button_index() == MouseButton::LEFT); // Required to properly release some stuff (e.g. selection box) while panning.
27562756

2757-
if (EDITOR_GET("editors/panning/simple_panning") || !pan_pressed || release_lmb) {
2757+
if (simple_panning || !pan_pressed || release_lmb) {
27582758
accepted = true;
27592759
if (_gui_input_rulers_and_guides(p_event)) {
27602760
// print_line("Rulers and guides");
@@ -4143,7 +4143,8 @@ void CanvasItemEditor::_update_editor_settings() {
41434143

41444144
context_toolbar_panel->add_theme_style_override(SceneStringName(panel), get_theme_stylebox(SNAME("ContextualToolbar"), EditorStringName(EditorStyles)));
41454145

4146-
panner->setup((ViewPanner::ControlScheme)EDITOR_GET("editors/panning/2d_editor_panning_scheme").operator int(), ED_GET_SHORTCUT("canvas_item_editor/pan_view"), bool(EDITOR_GET("editors/panning/simple_panning")));
4146+
simple_panning = EDITOR_GET("editors/panning/simple_panning");
4147+
panner->setup((ViewPanner::ControlScheme)EDITOR_GET("editors/panning/2d_editor_panning_scheme").operator int(), ED_GET_SHORTCUT("canvas_item_editor/pan_view"), simple_panning);
41474148
panner->set_scroll_speed(EDITOR_GET("editors/panning/2d_editor_pan_speed"));
41484149
panner->setup_warped_panning(get_viewport(), EDITOR_GET("editors/panning/warped_mouse_panning"));
41494150
panner->set_zoom_style((ViewPanner::ZoomStyle)EDITOR_GET("editors/panning/zoom_style").operator int());

editor/scene/canvas_item_editor_plugin.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,7 @@ class CanvasItemEditor : public VBoxContainer {
260260
int ruler_font_size = 8;
261261
Point2 node_create_position;
262262
real_t grab_distance = 0.0;
263+
bool simple_panning = false;
263264

264265
MenuOption last_option;
265266

0 commit comments

Comments
 (0)