### Godot version

4.0.stable

### System information

Windows 10, Forward+, GTX 1070 driver 528.49

### Issue description

When trying to edit the handle mode of a bezier cruve key from the inspector tab, the mode doesn't change. It works fine when right clicking on the key and setting the handle mode from here though. 

https://user-images.githubusercontent.com/24484962/222379540-29d71b6d-ff0c-4a21-9905-9750d0581fda.mp4



### Steps to reproduce

On an animation track using a bezier curve, select a key and try to change the handle mode from the inspector tab

### Minimal reproduction project

N/A
Vector2 popup_pos = get_screen_position() + loop_wrap_rect.position + Vector2(0, loop_wrap_rect.size.height);
				menu->set_position(popup_pos);
				menu->popup();
				accept_event();
			}
			if (remove_rect.has_point(pos)) {
				emit_signal(SNAME("remove_request"), track);
				accept_event();
				return;
			}
		}
		
		if (!animation->track_is_compressed(track)) { 
			float scale = timeline->get_zoom_scale();
			int limit = timeline->get_name_limit();
			int limit_end = get_size().width - timeline->get_buttons_width();
			
			int limit_start_hitbox = limit - type_icon->get_width();
			if (pos.x >= limit_start_hitbox && pos.x <= limit_end) {
				int key_idx = -1;
				float key_distance = 1e20;
				
				for (int i = animation->track_get_key_count(track) - 1; i >= 0; i--) {
					Rect2 rect = get_key_rect(i, scale);
					float offset = animation->track_get_key_time(track, i) - timeline->get_value();
					offset = offset * scale + limit;
					rect.position.x += offset;
					if (rect.has_point(pos)) {
						if (is_key_selectable_by_distance()) {
							float distance = ABS(offset - pos.x);