summaryrefslogtreecommitdiff
path: root/indra/newview/skins/default
diff options
context:
space:
mode:
authorRider Linden <rider@lindenlab.com>2026-07-22 17:41:55 -0700
committerGitHub <noreply@github.com>2026-07-22 17:41:55 -0700
commita6a2f98070cd55fcaadafc237bd0ffba9d466655 (patch)
tree82f5444312786242e062de65ce6891213b032051 /indra/newview/skins/default
parent8a22869dfad731f8cd9f4164a7a2b57cd70af51c (diff)
Publish object inventories to external editor. (#5834)
* Adding tight integration flag for vscode and open code through a URL. * [WIP] Publish objects and their contents from the viewer into VS code. * [WIP] Still very much a work in progress, supports most of the core operations publish, get, write, delete, and create. Still quite a few bugs to work out. * [WIP] Object publishing checkpoint. * [checkpoint] Script tight integration with vscode, object publishing. * Number of fixed issue. * A few redundancy and performance fixes. * Some cosmetics. * I like "Explore" better than "Publish" * Object renaming, luau inventory icon, runstate, restart. * Some clean up around permissions and possible nullptr deref. * Code review feedback.
Diffstat (limited to 'indra/newview/skins/default')
-rw-r--r--indra/newview/skins/default/textures/icons/Inv_Script_Luau.pngbin0 -> 807 bytes
-rw-r--r--indra/newview/skins/default/textures/textures.xml1
-rw-r--r--indra/newview/skins/default/xui/en/floater_scripting_settings.xml15
-rw-r--r--indra/newview/skins/default/xui/en/floater_tools.xml51
-rw-r--r--indra/newview/skins/default/xui/en/menu_viewer.xml21
-rw-r--r--indra/newview/skins/default/xui/en/strings.xml2
6 files changed, 68 insertions, 22 deletions
diff --git a/indra/newview/skins/default/textures/icons/Inv_Script_Luau.png b/indra/newview/skins/default/textures/icons/Inv_Script_Luau.png
new file mode 100644
index 0000000000..5666193fab
--- /dev/null
+++ b/indra/newview/skins/default/textures/icons/Inv_Script_Luau.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml
index 1f4b12fc91..b7f6d23bcc 100644
--- a/indra/newview/skins/default/textures/textures.xml
+++ b/indra/newview/skins/default/textures/textures.xml
@@ -332,6 +332,7 @@ with the same filename but different name
<texture name="Inv_Object_Multi" file_name="icons/Inv_Object_Multi.png" preload="false" />
<texture name="Inv_Pants" file_name="icons/Inv_Pants.png" preload="false" />
<texture name="Inv_Script" file_name="icons/Inv_Script.png" preload="false" />
+ <texture name="Inv_Script_Luau" file_name="icons/Inv_Script_Luau.png" preload="false" />
<texture name="Inv_Shirt" file_name="icons/Inv_Shirt.png" preload="false" />
<texture name="Inv_Shoe" file_name="icons/Inv_Shoe.png" preload="false" />
<texture name="Inv_Skin" file_name="icons/Inv_Skin.png" preload="false" />
diff --git a/indra/newview/skins/default/xui/en/floater_scripting_settings.xml b/indra/newview/skins/default/xui/en/floater_scripting_settings.xml
index 07f073edb2..093c3f1d6b 100644
--- a/indra/newview/skins/default/xui/en/floater_scripting_settings.xml
+++ b/indra/newview/skins/default/xui/en/floater_scripting_settings.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<floater
legacy_header_height="18"
- height="265"
+ height="295"
layout="topleft"
name="floater_scripting_settings"
help_topic="scripting_settings"
@@ -82,6 +82,17 @@
</button>
<check_box
+ control_name="ExternalEditorTightIntegration"
+ follows="top|left"
+ height="20"
+ label="VS Code Tight Integration"
+ layout="topleft"
+ left="30"
+ name="tight_integration"
+ top_pad="20"
+ width="256" />
+
+ <check_box
control_name="ExternalWebsocketSyncEnable"
follows="top|left"
height="20"
@@ -89,7 +100,7 @@
layout="topleft"
left="30"
name="websocket_sync_enable"
- top_pad="20"
+ top_pad="10"
width="200" />
<text
diff --git a/indra/newview/skins/default/xui/en/floater_tools.xml b/indra/newview/skins/default/xui/en/floater_tools.xml
index d94a6c71b5..39762d324f 100644
--- a/indra/newview/skins/default/xui/en/floater_tools.xml
+++ b/indra/newview/skins/default/xui/en/floater_tools.xml
@@ -3058,35 +3058,56 @@ even though the user gets a free copy.
name="Contents"
top_delta="0"
width="295">
- <button
+ <flyout_button
follows="left|top"
height="23"
label="New Script"
- label_selected="New Script"
layout="topleft"
- left="8"
+ left="7"
name="button new script"
top="10"
- width="134"
- font="DejaVu"
- font.size="LSmall"
- pad_bottom="1" />
+ width="137">
+ <flyout_button.item
+ label="New LSL Script"
+ name="new_lsl_script"
+ value="lsl" />
+ <flyout_button.item
+ label="New Lua Script"
+ name="new_lua_script"
+ value="lua" />
+ </flyout_button>
+ <button
+ follows="left|top"
+ height="23"
+ label="New Notecard"
+ layout="topleft"
+ left_pad="7"
+ name="button new notecard"
+ width="137" />
<button
follows="left|top"
height="23"
label="Permissions"
layout="topleft"
- left_pad="8"
+ left="7"
+ top="37"
name="button permissions"
- width="134"
- font="DejaVu"
- font.size="LSmall"
- pad_bottom="1" />
+ width="137" />
+ <button
+ follows="left|top"
+ height="23"
+ is_toggle="true"
+ label="Explore in IDE"
+ label_selected="Stop Exploring"
+ layout="topleft"
+ left_pad="7"
+ name="button publish"
+ width="137" />
<filter_editor
follows="left|top|right"
label="Enter filter text"
layout="topleft"
- top="40"
+ top="67"
left="10"
text_pad_left="10"
max_length_chars="300"
@@ -3099,11 +3120,11 @@ even though the user gets a free copy.
border_visible="true"
bevel_style="in"
follows="left|top|right"
- height="367"
+ height="340"
layout="topleft"
left="10"
name="contents_inventory"
- top="70"
+ top="97"
width="275" />
</panel>
</tab_container>
diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml
index ffe4bcebd5..34b30e424d 100644
--- a/indra/newview/skins/default/xui/en/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/en/menu_viewer.xml
@@ -1384,14 +1384,25 @@ function="World.EnvPreset"
function="EditableSelected" />
</menu_item_call>
<menu_item_call
- label="Set Scripts to Not Running"
- name="Set Scripts to Not Running">
+ label="Set Scripts to Not Running"
+ name="Set Scripts to Not Running">
<menu_item_call.on_click
- function="Tools.SelectedScriptAction"
- parameter="stop" />
+ function="Tools.SelectedScriptAction"
+ parameter="stop" />
<menu_item_call.on_enable
- function="EditableSelected" />
+ function="EditableSelected" />
</menu_item_call>
+ <menu_item_separator/>
+ <menu_item_check
+ label="Script Editor Server"
+ name="Script Editor Server">
+ <menu_item_check.on_check
+ function="Tools.CheckScriptEditorServer" />
+ <menu_item_check.on_click
+ function="Tools.ToggleScriptEditorServer" />
+ <menu_item_check.on_enable
+ function="Tools.EnableScriptEditorServer" />
+ </menu_item_check>
</menu>
<menu
diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml
index b8e71928dc..0dbcfe9bfe 100644
--- a/indra/newview/skins/default/xui/en/strings.xml
+++ b/indra/newview/skins/default/xui/en/strings.xml
@@ -4052,6 +4052,8 @@ Try enclosing path to the editor with double quotes.
(e.g. "/path to my/editor" "%s")</string>
<string name="ExternalEditorCommandParseError">Error parsing the external editor command.</string>
<string name="ExternalEditorFailedToRun">External editor failed to run.</string>
+ <string name="ExternalEditorFailedToStart">Failed to start the WebSocket server. Ensure the ExternalWebsocketSyncEnable setting is on.</string>
+ <string name="VSCodeLaunchFailed">Failed to launch VS Code. Ensure the 'code' command is available on your PATH.</string>
<!-- Machine translation of chat messahes -->
<string name="TranslationFailed">Translation failed: [REASON]</string>