Commit Graph

2348 Commits

Author SHA1 Message Date
patrick boutot
d2790cd2ae Add tag to prevent creating FScopedPreventDebuggingMode without a name.
#jira UE-198626

[CL 30041563 by patrick boutot in ue5-main branch]
2023-12-01 10:53:57 -05:00
sebastian arleryd
9c6fc7628b Improve structure and formatting of SDockingTabStack::ReserveSpaceForWindowChrome
#jira UE-179910
#rb aditya.ravichandran

[CL 30013641 by sebastian arleryd in ue5-main branch]
2023-11-30 09:04:49 -05:00
zahra nikbakht
99005e7cc7 Slate: fix retainer box and invalidation panel not propagating "Not Hit-Testable" to their children.
ensure widgets that are not hit visible are not added to the root hittest grid
#jira UE-161583
#rb Patrick.Boutot

[CL 29962040 by zahra nikbakht in ue5-main branch]
2023-11-28 11:50:44 -05:00
zahra nikbakht
b577bc1559 Slate: fix retainer box not doing prepass on its content when in slow path.
bNeedsSlowPath is set to false when we call FSlateInvalidationRoot::PaintInvalidationRoot, so we can't rely on it later in the prepass call to determine if we are in slow path.
The issue is more hidden in Invalidation Panel as it avoids calling InvalidateRootLayout() and PaintInvalidationRoot() at the same time in most cases (the first call sets NeedsSlowPath to true and the second sets it to false before we get to prepass).
#jira UE-150807
#rb Patrick.Boutot

[CL 29900904 by zahra nikbakht in ue5-main branch]
2023-11-22 18:05:03 -05:00
MalikuMane
912dd29f62 Fix missing padding for title bar buttons.
#jira UE-179910
#10240
#rb brooke.hubert

[CL 29895225 by MalikuMane in ue5-main branch]
2023-11-22 15:02:49 -05:00
daren cheng
a82b866b00 Add support for layered Slate Post RT processing
---
Add PostBufferUpdate widget which can be used to trigger an update to the Slate Post RT when it "draws"
Updated Post RT will contain Scene + All UI drawn at that time & also be processed by provided processor.
Updated ICustomSlateElement interface to support draw context params.

#rb Patrick.Boutot
#jira UE-199609

[CL 29892909 by daren cheng in ue5-main branch]
2023-11-22 13:45:14 -05:00
patrick boutot
d7a0038d0e Prevent entering debug mode when it would create an infinit loop. When the application is ticking we need to complete the tick before entering the debugging mode. When there is modal open that is stealing the focus, we don't have inputs on the other windows.
#jira UE-197297, UE-198626

[CL 29892434 by patrick boutot in ue5-main branch]
2023-11-22 13:24:54 -05:00
aditya ravichandran
481ea924cb TEDS - Add a TypedElementUIStyleOverrideCapability to allow specifying ColorAndOpacity to TypedElementLabelWidget alongside a IsReadOnly attribute on TypedElementUIEditableCapability to disallow entering edit mode
#jira UE-200638, UE-200835
#rb Brooke.Hubert

[CL 29863739 by aditya ravichandran in ue5-main branch]
2023-11-21 09:45:41 -05:00
aditya ravichandran
a94abf2d1c UToolMenus: Add API to support Menu Profiles, a menu profile is a lightweight version of a menu customization - but you can have multiple menu profiles and activate/deactivate them at runtime per menu instance using a new menu context.
Read Only Asset Editors: Automatically hide any custom menu and toolbar items in read only mode, with an opt in permission list for specific asset editors to selectively allow entries that are valid in read only mode

#jira UE-195628
#rb Rex.Hill

[CL 29809442 by aditya ravichandran in ue5-main branch]
2023-11-17 11:26:45 -05:00
sebastian arleryd
3ebafeef04 Fix padding around menu search fields
* The search fields in our menus were laid out too close to the left and right edges of the menus. This adds 8 pixels of padding on both sides.
* Update a check in SWidgetBlock to adjust for the nested structure where the SSearchField of menus now reside inside an SBox.

#jira UE-186875
#rb brooke.hubert

[CL 29773224 by sebastian arleryd in ue5-main branch]
2023-11-16 05:13:07 -05:00
sebastian arleryd
e07a2c498c Revert changelist 29745157
The reverted change prevented focus to jump to the search field in menus when users typed on the keyboard.

#jira UE-186875

[CL 29747732 by sebastian arleryd in ue5-main branch]
2023-11-15 11:09:50 -05:00
sebastian arleryd
2ce9aea972 Fix padding around menu search fields
The search fields in our menus were laid out too close to the left and right edges of the menus. This adds 8 pixels of padding on both sides.

#jira UE-186875
#rb brooke.hubert

[CL 29745168 by sebastian arleryd in ue5-main branch]
2023-11-15 09:29:57 -05:00
sebastian arleryd
9c780f9018 Highlight active search field in menus
Highlight the search field that will receive keyboard input when "Slate.AlwaysShowMenuSearchField" is turned on. This makes it easier for users to understand where their typing will end up when search fields are drawn both in a parent menu and its submenus, as this will highlight the active input field and make the others look greyed out (all using SWidget::SetEnabled).

#jira UE-186875
#rb brooke.hubert
[FYI] kyle.robertson

[CL 29741594 by sebastian arleryd in ue5-main branch]
2023-11-15 04:45:22 -05:00
brooke hubert
a9e38c7bc3 [Keyboard Shortcuts] Add the ability to have project level, read only keybindings supported by the input manager.
#Jira UE-200170
#rb aditya.ravichandran

[CL 29717924 by brooke hubert in ue5-main branch]
2023-11-14 13:01:16 -05:00
patrick boutot
fda065455f WidgetComponent: Add support for invalidation.
#rb daren.cheng

[CL 29709785 by patrick boutot in ue5-main branch]
2023-11-14 07:13:32 -05:00
jeanmichel dignard
7978999b99 SWindowTitleBar: Moved the implementation out of the header file.
#jira UE-0
#rb aditya.ravichandran

[CL 29694411 by jeanmichel dignard in ue5-main branch]
2023-11-13 16:15:48 -05:00
ben zeigler
42c06f0b00 Fix editor hang when trying to debug a blueprint while a different modal dialog is already open
#jira UE-200157
#rb patrick.boutot

[CL 29645940 by ben zeigler in ue5-main branch]
2023-11-10 13:05:35 -05:00
sebastian arleryd
77f4c8082e Add CVAR to always show search field in menus that support it
* Add the CVAR Slate.AlwaysShowMenuSearchField (default to false). When it is enabled, the search field of menus that support search always show the search widget. The idea is to make the feature easier to find.

#jira UE-186875
#rb brooke.hubert, aditya.ravichandran
[FYI] nicole.keffer

[CL 29553056 by sebastian arleryd in ue5-main branch]
2023-11-08 02:08:35 -05:00
patrick boutot
7934991cf0 [Backout] - CL29374691
Original CL Desc
-----------------------------------------------------------------
WidgetComponent: Add support for invalidation.
#rb daren.cheng

[CL 29394847 by patrick boutot in ue5-main branch]
2023-11-02 22:34:02 -04:00
patrick boutot
577d4fd40b WidgetComponent: Add support for invalidation.
#rb daren.cheng

[CL 29381749 by patrick boutot in ue5-main branch]
2023-11-02 17:39:32 -04:00
eric morneaulepine
0b398b8ad0 Juno Mobile - Fix scroll inconsistencies in build menu
[REVIEW]
#rnx

[CL 29371027 by eric morneaulepine in ue5-main branch]
2023-11-02 13:18:01 -04:00
sebastian arleryd
42e984c06e Backout CLs 29179069 and 29180697
#jira UE-183373

[CL 29204097 by sebastian arleryd in ue5-main branch]
2023-10-27 19:29:17 -04:00
sebastian arleryd
43a532aa97 Fix automation issue in TabManager caused by assuming FSlateApplication is always available
* Now guarding on FSlateApplication::IsInitialized before adding a delegate to FSlateApplication::OnWindowBeingDestroyed in FTabManager's constructor. Without this guard, crashes can happen in UAT workloads where FSlateApplication has not been initialized.

#jira UE-183373
[FYI] huw.bowles

[CL 29180721 by sebastian arleryd in ue5-main branch]
2023-10-27 09:24:59 -04:00
sebastian arleryd
9d8c431bba Fix flickering menus by recreating main menu widgets for each window
* Add FTabManager::SetGeneratePerWindowMainMenuDelegate that allows users to set a delegate the tab manager calls when it needs a main menu widget for a tab's window. This way we can avoid drawing the same main menu widget in multiple windows and the flickering that can cause.
* Generated main menu widgets are cached and reused to avoid regenerating widgets for the same tab manager and window combination. FSlateApplication::OnWindowBeingDestroyed is used to clean this cache up as windows are destroyed.
* The old method FTabManager::SetMenuMultiBox to set a main menu widget for a tab manager now uses FTabManager::SetGeneratePerWindowMainMenuDelegate behind the scenes.
* Update FMainMenu::MakeMainMenu to use the new FTabManager::SetGeneratePerWindowMainMenuDelegate to avoid the main menu flickering described in this ticket.
* Remove unused code.

#jira UE-183373
#rb brooke.hubert, Matt.Kuhlenschmidt, aditya.ravichandran

[CL 29179083 by sebastian arleryd in ue5-main branch]
2023-10-27 07:00:49 -04:00
sebastian arleryd
9d33aff7c9 Resubmit: Move macOS main menu into UE window by default
* On the Mac, this change moves the Unreal Engine editor's main menu from the macOS system main menu into the editor window.
* Remove the CVAR Slate.MacMainMenuInsideUnrealWindow that previously turned this main menu move on or off on the Mac.
* Remove FGenericPlatformMisc::CanShowMenusInWindows because menus in the UE window is default on all platforms now. Note that this function was never released so we don't need to deprecate it (added after 5.3).

#jira UE-195597
[FYI] brooke.hubert, zack.neyland, sean.boocock

[CL 28964517 by sebastian arleryd in ue5-main branch]
2023-10-20 10:02:41 -04:00