Commit Graph

158 Commits

Author SHA1 Message Date
Ben Marsh
339de68518 LiveCoding: Add support for lazy loading modules. This lets us enable live coding for the entire engine without a large startup penalty. Project modules are still preloaded by default.
#rb none
#jira

[CL 5437980 by Ben Marsh in 4.22 branch]
2019-03-18 18:06:51 -04:00
Ben Marsh
098d10583d Fix issues related to hot-reload and LiveCoding co-existing.
* Removed code to invalidate makefiles when adding new source files. UBT should be reliable enough to make this determination itself nowadays, and ignored -invalidatemakefilesonly argument was causing modules to be recompiled.
* Fixed incorrect config section name when determining whether to allow hot reload from IDE. Now prevents hot reload from IDE when live coding is enabled.
* Added error message when trying to add a new class with Live Coding enabled.
* Added error messages when trying to start Live Coding after a hot reload has taken place.
* Added error messages when trying to hot reload with Live Coding enabled.

#jira UE-71253
#rb none

[CL 5403464 by Ben Marsh in 4.22 branch]
2019-03-14 17:51:49 -04:00
Ben Marsh
3a8d4dd9d6 LiveCoding: Fix determination of whether a module is part of a project plugin. Such modules report "false" for FModuleStatus.bIsGamePlugin.
#rb none
#jira UE-71399

[CL 5365389 by Ben Marsh in 4.22 branch]
2019-03-11 20:23:51 -04:00
Ben Marsh
0c4e906ca2 LiveCoding: Fix the "Show Console" button being disabled until the first compile.
#rb none
#jira UE-71379

[CL 5362145 by Ben Marsh in 4.22 branch]
2019-03-11 15:30:57 -04:00
Ben Marsh
7642cccb91 LiveCoding: Allow editor thread to keep running while server is processing modules.
#rb none
#jira UE-71269

[CL 5361379 by Ben Marsh in 4.22 branch]
2019-03-11 14:31:39 -04:00
Ben Marsh
2ef7a96902 LiveCoding: Explicitly batch all EnableModules() commands, to prevent user command thread preempting the editor thread before it's finished adding everything. Prevents "Live coding ready" messages being spammed in the console window.
#rb none
#jira UE-71270

[CL 5361279 by Ben Marsh in 4.22 branch]
2019-03-11 14:12:36 -04:00
Ben Marsh
09cfa1adff Fix "Compile" button in toolbar using legacy hot reload when live coding startup is set to manual.
#rb none
#jira UE-71359

[CL 5361201 by Ben Marsh in 4.22 branch]
2019-03-11 13:57:27 -04:00
Ben Marsh
6ad306d80c LiveCoding: Fix setting for enabling/disabling live coding not being saved when modified via the toolbar.
#rb none
#jira UE-71362

[CL 5360814 by Ben Marsh in 4.22 branch]
2019-03-11 13:38:48 -04:00
Ben Marsh
0da1e8572f LiveCoding: Make properties for toggling on/off for engine modules hidden in installed builds.
#rb none
#jira UE-71274

[CL 5353250 by Ben Marsh in 4.22 branch]
2019-03-08 17:03:57 -05:00
Ben Marsh
e48c69bf58 LiveCoding: Tweaks to live coding settings.
* Compile dropdown now just contains a checkbox for enabling live coding.
* Compile dropdown has a link to open the editor preferences window.
* Live coding can be enabled from the editor settings window.
* Option to show the console on startup is now folded into the startup mode.
* Options in the editor settings window are greyed out unless live coding is enabled.

#rb none
#jira

[CL 5352692 by Ben Marsh in 4.22 branch]
2019-03-08 16:02:27 -05:00
Ben Marsh
dc8826b233 LiveCoding: Tidy up console output.
#rb none
#jira

[CL 5350764 by Ben Marsh in 4.22 branch]
2019-03-08 13:05:17 -05:00
Ben Marsh
f37e65e262 LiveCoding: Suppress dev channel log messages from console. Add a new server log channel that they are written to instead.
#rb none
#jira UE-71257

[CL 5350628 by Ben Marsh in 4.22 branch]
2019-03-08 12:56:01 -05:00
Ben Marsh
fb09e8fd42 Move live coding settings back under the editor preferences window, since it's a user-specific thing.
#rb none
#jira UE-71126

[CL 5350227 by Ben Marsh in 4.22 branch]
2019-03-08 12:15:09 -05:00
Ben Marsh
cb5cc7340f LiveCoding: Disable the editor compile button while a compile is in progress.
#rb none
#jira UE-71077

[CL 5343160 by Ben Marsh in 4.22 branch]
2019-03-07 17:30:28 -05:00
Ben Marsh
fc966c05ea Restore code that was accidentally commented out while debugging.
#rb none
#jira
#rnx

[CL 5341380 by Ben Marsh in 4.22 branch]
2019-03-07 16:01:33 -05:00
Ben Marsh
504e281f9e LiveCoding: Expose a Tick() function so that systems that don't use fire EndFrame() callbacks can still tick the live coding module. Also add a -LiveCoding command line argument to force it on.
Also fix an issue where a compile is triggered before the system has been started.

#rb none
#jira

[CL 5340479 by Ben Marsh in 4.22 branch]
2019-03-07 15:20:57 -05:00
Ben Marsh
1a67f46834 Better handling of window focus when compiling for live code.
* Console window is made visible and brought to the front when a compile is triggered.
* Patched application window is brought to the front once patching is complete.

#rb none
#jira UE-71128

[CL 5337696 by Ben Marsh in 4.22 branch]
2019-03-07 11:25:01 -05:00
Brandon Schaefer
e8a22ecc4d Live coding is only available for Win32/Win64, dont try to include diasdk dir for other platforms
#jira none
#rb Ben.Marsh

[CL 5318794 by Brandon Schaefer in 4.22 branch]
2019-03-06 15:50:29 -05:00
Juan Canada
480e234241 Copying //UE4/Private-Woodchuck-Staging@5316917 to Release-4.22 (//UE4/Release-4.22)
#rb none
#JIRA

[CL 5317515 by Juan Canada in 4.22 branch]
2019-03-06 14:49:00 -05:00
Ben Marsh
7cd101b0da Disable warning when building xxhash.c.
#rb none
#jira
#rnx

[CL 5312346 by Ben Marsh in 4.22 branch]
2019-03-06 09:34:27 -05:00
Ben Marsh
d213c83484 Suppress warning in static analysis.
#rb none
#jira
#rnx

[CL 5312269 by Ben Marsh in 4.22 branch]
2019-03-06 09:24:23 -05:00
Ben Marsh
f1c2f7eebc Fix difference in scoping rules for extern'd variables declared inline under Clang.
#rb none
#rnx
#jira

[CL 5312261 by Ben Marsh in 4.22 branch]
2019-03-06 09:24:06 -05:00
Ben Marsh
86aaa79393 Fix copyright notices.
#rb none
#jira
#rnx

[CL 5307349 by Ben Marsh in 4.22 branch]
2019-03-05 17:54:55 -05:00
Ben Marsh
a4484f70be Fixes for static analysis warnings.
#rb none
#jira

[CL 5307320 by Ben Marsh in 4.22 branch]
2019-03-05 17:51:38 -05:00
Ben Marsh
d0bdb3856f Prevent LiveCodingServer module building for targets by default.
#rb none
#rnx
#jira

[CL 5305237 by Ben Marsh in 4.22 branch]
2019-03-05 16:08:00 -05:00