1.7.8348

Май — улучшения производительности TreeView в версии 1.7

Производительность — оптимизация UI макросов

Мы внесли крупные изменения в то, как отрисовываются Macros, поэтому общий UX должен стать лучше. Если заметите какие-либо несоответствия или странности — пожалуйста, сообщите о них. В ближайшие недели будет еще несколько изменений, в том числе направленных на ускорение первоначального рендера.

C# Scripting — объявление namespace в Razor

Проще всего показать это на примере. Возьмем самый базовый Razor-компонент, созданный через:

New Component

На выходе получаем следующее.

UserComponent.razor

html
@namespace GameGrind
@inherits BlazorReactiveComponent
<!-- your Razor/HTML markup here -->

UserComponent.cs

csharp
namespace GameGrind;

public partial class UserComponent : BlazorReactiveComponent {
    //some code here
}

Обратите внимание на случайный namespace (GameGrind в этом примере), который раньше автоматически вставлялся при добавлении нового Razor-компонента.

Это было небольшое, но очень неудобное техническое ограничение системы скриптинга. Например, такой код было неудобно копировать в другой скрипт EyeAuras: приходилось либо менять namespace, либо мириться с тем, что в одном коде у вас оказывалось несколько разных, никак не связанных между собой пространств имен. Оба варианта так себе.

Теперь объявление namespace больше не является обязательным — его можно не указывать и в .razor, и в .cs файлах, а EyeAuras автоматически подставит его во время компиляции. Меньше кода = меньше головной боли = лучше жизнь.

Исправления и улучшения

  • [Overlays] Изменен способ отрисовки overlay на экране (порядок Hide/Show при запуске) — это должно немного ускорить появление элементов на экране
  • [UI] Улучшена отзывчивость drag'n'drop в Macros/BTs
  • [Macros] Исправлена проблема с Repeat/IfThenElse — drag'n'drop работал некорректно
  • [Macros] Исправлена проблема с клонированием — теперь сохраняется вся иерархия, а не только выбранный узел