Commit Graph

1150 Commits

Author SHA1 Message Date
matt kuhlenschmidt
4ee6b9acf3 Fix pie shutdown crash in slate global invalidation
#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: matt.kuhlenschmidt
#ROBOMERGE-SOURCE: CL 7250482 via CL 7262964 via CL 7263123
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v371-7306989)

[CL 7335552 by matt kuhlenschmidt in Dev-Build branch]
2019-07-16 23:32:40 -04:00
matt kuhlenschmidt
60587474e9 Fix widget switcher crash if initialized to an invalid index at construction time
#jira UE-76979

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: matt.kuhlenschmidt
#ROBOMERGE-SOURCE: CL 7248861 via CL 7258595 via CL 7258729
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v371-7306989)

[CL 7334245 by matt kuhlenschmidt in Dev-Build branch]
2019-07-16 23:25:48 -04:00
danny couture
e627ffd295 Improve multi-selection performance
-120 seconds to select 6000 actors to instantaneous to select 60 000.

From dev-enterprise[at]7039407

#rb Chris.Gagnon, Francis.Hurteau
#jira UE-76972

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: danny.couture
#ROBOMERGE-SOURCE: CL 7248140 in //UE4/Release-4.23/... via CL 7248141
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v371-7306989)

[CL 7332866 by danny couture in Dev-Build branch]
2019-07-16 23:15:07 -04:00
matt kuhlenschmidt
8695396826 Non-shipping fix
#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: matt.kuhlenschmidt
#ROBOMERGE-SOURCE: CL 7236328 via CL 7236335
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v371-7306989)

[CL 7332753 by matt kuhlenschmidt in Dev-Build branch]
2019-07-16 23:14:24 -04:00
matt kuhlenschmidt
641bb5abdf Slate Global Invalidation System
This change makes it possible to remove the layout and painting overhead that Slate performs every frame.  The system is off by default as we continue to iterate on it.

However, this includes massive changes to batching, rendering, hit testing, and invalidation panels which are permanent changes and cannot be disabled.

#rb chris.gagnon, nick.darnell
[CODEREVIEW] nick.darnell

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: matt.kuhlenschmidt
#ROBOMERGE-SOURCE: CL 7232617 via CL 7235502 via CL 7235503
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v371-7306989)

[CL 7331494 by matt kuhlenschmidt in Dev-Build branch]
2019-07-16 23:03:49 -04:00
dave belanger
ef8a13f5ca Fix for font material not applied correctly on rich text (because SlateTextRun would reuse a cached ShapedGlyphSequence with the wrong FontMaterial because the CachedShapedTextKey was ignoring it).
Similar fix for outline material and color.

#jira UE-76338
#rb Jamie.Dale

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: dave.belanger
#ROBOMERGE-SOURCE: CL 7231489 in //UE4/Main/...
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v367-6836689)

[CL 7240249 by dave belanger in Dev-Build branch]
2019-07-09 00:36:55 -04:00
nick darnell
e632bedd44 Slate - Provide a static instance accessor to the default rich text writer for escaping unsanitized text.
#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: nick.darnell
#ROBOMERGE-SOURCE: CL 7227445 via CL 7227481 via CL 7227732 via CL 7227758
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v367-6836689)

[CL 7237085 by nick darnell in Dev-Build branch]
2019-07-09 00:19:23 -04:00
mic rooney
0da7277c0a Adding support for removing input preprocessors while they are being processed.
* Scope locking removal of preprocessors and adding a generic iteration function that will remove preprocessors after iteration is complete.

[at]Dan.Hertzka, [at]Nick.Darnell

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: mic.rooney
#ROBOMERGE-SOURCE: CL 7107644 via CL 7110779 via CL 7110830
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v367-6836689)

[CL 7136646 by mic rooney in Dev-Build branch]
2019-06-21 03:59:48 -04:00
jamie dale
a556e40a7c Fixed invalid use of an internal UI_COMMAND function that broke localization support
#jira
#rb Ryan.Schmidt, Anousack.Kitisa
#rnx

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 7101487 in //UE4/Release-4.23/... via CL 7101488
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v367-6836689)

[CL 7127863 by jamie dale in Dev-Build branch]
2019-06-21 02:37:56 -04:00
darby orgain
84b373fcb3 Update to SListView to add support for navigating lists with jagged (non-full final rows) ends. If a suitable list element is not directly below the current one, but there is an incomplete row, navigation will select the final item of the list.
#rb Nick.Darnell, Alex.Thurman

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: darby.orgain
#ROBOMERGE-SOURCE: CL 7064602 via CL 7065052 via CL 7099956 via CL 7100030
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v367-6836689)

[CL 7126803 by darby orgain in Dev-Build branch]
2019-06-21 02:29:01 -04:00
jason stasik
2b45020daa Initialize AccessibleWidgetData in constructor instead of Slate args so that subclasses inherit properly. Fixes crash with non-accessible windows.
#jira UE-76186,UE-76175
#rb matt.kuhlenschmidt

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: jason.stasik
#ROBOMERGE-SOURCE: CL 7042838 in //UE4/Release-4.23/... via CL 7042839
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v367-6836689)

[CL 7119432 by jason stasik in Dev-Build branch]
2019-06-21 01:06:37 -04:00
jon nabozny
dc5e5f458a Add methods to SComboBox so it can use non-nullable template types.
[at]Ryan.Gerleve
#rb Chris.Gagnon

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: jon.nabozny
#ROBOMERGE-SOURCE: CL 6954961 via CL 6955664 via CL 6958342 via CL 6958400 via CL 6959752 via CL 6971531
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v367-6836689)

[CL 7091241 by jon nabozny in Dev-Build branch]
2019-06-19 09:50:51 -04:00
Ben Marsh
cfe09c649f Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 6922670 by Ben Marsh in Dev-Build branch]
2019-06-10 19:47:29 -04:00
chris gagnon
72ba51c5bd Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) for 4.23 From CL 6837861
#rb none


#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: chris.gagnon
#ROBOMERGE-SOURCE: CL 6838042 in //UE4/Main/...
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v366-6836689)

[CL 6874679 by chris gagnon in Dev-Build branch]
2019-06-07 05:27:42 -04:00
marc audy
3fc04f1c88 Copying //UE4/Dev-Framework to Dev-Main (//UE4/Dev-Main) [at] 6835245
#rb
#rnx

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 6835252 in //UE4/Main/...
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v366-6836689)

[CL 6873661 by marc audy in Dev-Build branch]
2019-06-07 05:00:15 -04:00
nick darnell
0e8a353b3b Slate - Making SScrollBars and SSpacer play nicer with invalidation.
Matt.Kuhlenschmidt

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: nick.darnell
#ROBOMERGE-SOURCE: CL 6814806 via CL 6814809 via CL 6817756 via CL 6817925
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v365-6733468)

[CL 6825484 by nick darnell in Dev-Build branch]
2019-06-03 22:54:11 -04:00
nick darnell
fb02d4f984 Slate - When GSlateLayoutCaching is enabled, TextBlocks must always call GetDesiredSize(). If they don't - the text wont ever perform an initial pass to layout anything, since it's done during prepass. Additionally - Whenever a new prepass is needed under GSlateLayoutCahcing, this needs to also imply bNeedsDesiredSize, because some widgets, like Textblocks calculate a different desired size based on that incoming layout scale.
Matt.Kuhlenschmidt

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: nick.darnell
#ROBOMERGE-SOURCE: CL 6814781 via CL 6814794 via CL 6817753 via CL 6817921
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v365-6733468)

[CL 6825478 by nick darnell in Dev-Build branch]
2019-06-03 22:54:10 -04:00
matt kuhlenschmidt
23ed8f7713 Slate - Fix numeric text ignoring "ApplyOutlineToDropShadows" setting
[CODEREVIEW] nick.darnell

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: matt.kuhlenschmidt
#ROBOMERGE-SOURCE: CL 6798777 via CL 6815838 via CL 6815897
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v365-6733468)

[CL 6824115 by matt kuhlenschmidt in Dev-Build branch]
2019-06-03 22:43:36 -04:00
stefan boberg
285a908f86 Copying //UE4/Dev-Core to Dev-Main (//UE4/Dev-Main)
#rb none

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: stefan.boberg
#ROBOMERGE-SOURCE: CL 6815521 in //UE4/Main/...
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v365-6733468)

[CL 6821265 by stefan boberg in Dev-Build branch]
2019-06-03 19:09:16 -04:00
nick darnell
0e8e6fb2ff Slate - Adding additional navigation information when we do perform navigation we report what system is performing the navigate, was it direct, a boundry condition, did it use the hittest grid...etc.
Slate - Also found a bug where we're not using the world switcher before calling the handler for some navigation options.


#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: nick.darnell
#ROBOMERGE-SOURCE: CL 6685364 via CL 6685366 via CL 6752052 via CL 6752454
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v365-6733468)

[CL 6762276 by nick darnell in Dev-Build branch]
2019-06-01 11:01:43 -04:00
nick darnell
80c563435b Slate - Widgets now attach reflection data only once, not every time we syncronize properties, which would actually be a small psuedoleak at editor time. We no longer include the TWeakObjectPtr<> for the userwidget class responsible for creating the Widget in shipping builds. Increased the default trip for 'number of excessive invalidation frame streak' to 60. Fixing a bug where cooked widget templates wouldn't set the widget class responsible for creating the widget, and so none of the debugging info came through as useful information, that should now be fixed.
Matt.Kuhlenschmidt

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: nick.darnell
#ROBOMERGE-SOURCE: CL 6684988 via CL 6684991 via CL 6750900 via CL 6751383
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v365-6733468)

[CL 6762225 by nick darnell in Dev-Build branch]
2019-06-01 10:59:13 -04:00
arciel rekman
a747e48bbb Copying //UE4/Dev-Console[at]6677439 to Dev-Main (//UE4/Dev-Main)
#rb none

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 6677614 in //UE4/Main/...
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v364-6709755)

[CL 6717280 by arciel rekman in Dev-Build branch]
2019-05-31 14:28:17 -04:00
matt hoffman
f6ce7705c0 Fixed a OOB when the Linearized Item list returned an index that didn't exist in the DenseItemInfos due to a combination of tree selection and rebuilding that is used in some places (such as the Skeletal Mesh Editor).
[FYI] Matt.Fischman

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: matt.hoffman
#ROBOMERGE-SOURCE: CL 6657925 via CL 6659145 via CL 6660179
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v363-6677109)

[CL 6703535 by matt hoffman in Dev-Build branch]
2019-05-31 13:15:21 -04:00
nick darnell
822622485a Slate - The SInvalidation panel now logs excessive invalidation, (controlled by cvars, both the rate and if it's enabled).
Slate - The STextBlock can get into invalidation loops due to the nature of floating point precision.  We now compare apples to apples, with the before and after desired size of the TextLayoutCache, and if it changed after paint, it means the new size (discovered in OnPaint), has affected the text's wrapping, and thus we need another frame to lay things out correctly, so we invalidate again.  We now only do this if the text wraps, and we now add in a epsilon.

[REVIEW] Matt.Kuhlenshmift

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: nick.darnell
#ROBOMERGE-SOURCE: CL 6651879 via CL 6651880 via CL 6651881 via CL 6652162 via CL 6652164
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v363-6677109)

[CL 6700047 by nick darnell in Dev-Build branch]
2019-05-31 12:51:16 -04:00
matt hoffman
b4d49de7d2 Removed SNumericList from the generic Slate widgets and moved it to the Curve Editor as SCurveValueSnapList. This widget was only in use by the curve editor and the curve editor may be phasing its use case out soon.
#rb None

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: matt.hoffman
#ROBOMERGE-SOURCE: CL 6634072 via CL 6635977 via CL 6636105
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v363-6677109)

[CL 6696774 by matt hoffman in Dev-Build branch]
2019-05-31 12:32:45 -04:00