Commit Graph

63 Commits

Author SHA1 Message Date
luc eygasier
b8e3c2dc0e Fixes moving uncontrolled files to existing changelist.
#rb Patrick.Laflamme
#jira UE-162549
#preflight 631b50d4d135b61bc56332c4

[CL 21929890 by luc eygasier in ue5-main branch]
2022-09-09 18:18:54 -04:00
patrick laflamme
613bcd7b4d Fixed the 'Submit Window' saving the description of the default changelist into a new changelist without moving the files.
- In the 'Submit' window, renamed the 'Apply' button to 'Save' button.
  - If the user saves with the 'default' changelist, a new changelist is created with the user description and files are moved into that changelist.
  - If the user saves with any other changelist, ony the description is edited.

#rb Luc.Eygasier
#preflight 631a13a2304480f8f85aba2c

[CL 21909342 by patrick laflamme in ue5-main branch]
2022-09-08 20:48:26 -04:00
luc eygasier
92a1bc7f30 Adds support for multiple uncontrolled changelists
* Add creation of new uncontrolled changelists
* Add modification of uncontrolled changelists description
* Add uncontrolled changelists deletion

#preflight 6318ebec980179553e9254aa
#jira UE-163065
#rb Patrick.Laflamme

[CL 21892780 by luc eygasier in ue5-main branch]
2022-09-08 09:19:01 -04:00
luc eygasier
1dcadd2e97 Moves FUncontrolledChangelist::Name to FUncontrolledChangelistState::Description.
#rb Patrick.Laflamme
#preflight 6318ac73f448dc6e585d5fbd
#jira UE-163065

[CL 21864892 by luc eygasier in ue5-main branch]
2022-09-07 18:11:16 -04:00
patrick laflamme
b3737f5dd6 Updated the source control changelist code to be more reusable.
- Moved all source control table row widgets found in SSourceControlChangelists.cpp into a separated files SSourceControlChangelistRows.h/.cpp
 - Moved content SFileTableRow.h into SSourceControlChangelistRows.h/.cpp and deleted the file.
 - Created column Id constants for the changelist files "Icon", "Name", "Path", "Type" rather than using hardcoded string.
 - Moved functions shared by the SSourceCOntrolChangeslists.cpp and SSourceControlChangelistRows.cpp into SSourceControlCommon.h/.cpp.

#rb Luc.Eygasier
#preflight 6317ab57f448dc6e583f2132

[CL 21862849 by patrick laflamme in ue5-main branch]
2022-09-07 17:15:39 -04:00
patrick laflamme
e3370eeb19 Implemented 2-columns sort in the changelist window.
Added a tooltip over the 'icon' colum in the changelist window.

#jira UE-155217 - Make the selected changelist view (list of files in a CL) sortable (2-columns sort).
#rb Patrick.Enfedaque
#preflight 63176791980179553e3d5dae

[CL 21827312 by patrick laflamme in ue5-main branch]
2022-09-06 15:43:24 -04:00
luc eygasier
c4dec1008a Adds Source Control File Dialog.
Displays source control file dialog when checkouting files is impossible during conversion from Uncontrolled Changelist to Changelist.

#preflight 630f740ce352708d444276e0
#rb Patrick.Laflamme

[CL 21727336 by luc eygasier in ue5-main branch]
2022-08-31 16:14:08 -04:00
patrick laflamme
126984d8d7 Fixed the double popup issue that can happen in the changelist window for source control provider other than P4 that support changelist.
#rb Patrick.Enfedaque
#preflight 630e07e9e1124837754de0d7

[CL 21709903 by patrick laflamme in ue5-main branch]
2022-08-30 17:19:01 -04:00
SRombauts
8df7cabe69 Updated the changelist window to handle the Enter and Delete keys to Submit or Delete the currently selected changelist if conditions to do these operations are met. This mimics P4V behavior.
Updated the changelist window to handle double clicking on a changelist. This opens the submit dialog if the submit conditions are met. This mimics P4V behavior.

PR #9433: [Source Control] Changelists window: intercept Enter and Delete keys to Submit or Delete the current changelist (Contributed by SRombauts)
#jira UE-160314
#rb Patrick.Enfedaque
#preflight 630d1e68f92416fb92702657

[CL 21709874 by SRombauts in ue5-main branch]
2022-08-30 17:17:25 -04:00
patrick enfedaque
3efc94dd9d SceneOutliner:
- SCC Show in changelist
- Fix Unloaded actors not having SCC Menu

#jira UE-155244
#rb patrick.laflamme
#preflight 630ca346f92416fb925faead

[CL 21685112 by patrick enfedaque in ue5-main branch]
2022-08-29 14:51:36 -04:00
patrick enfedaque
2d8d4adaa3 SourceControlWindowExtender: Extends functionality of the SourceControlWindows window
Actor: Focus, Pin, Select
Assets: Browse To

#jira UE-155245
#rb patrick.laflamme, richard.malo
#preflight 630796aa0968fbaf691de565

[CL 21590365 by patrick enfedaque in ue5-main branch]
2022-08-26 11:04:20 -04:00
SRombauts
b914d4ce07 Fix ClearChangeListDescription() not getting called when submitted a Changelist from the changelist window.
PR #9432: [Source Control][UE5.1] Fix regression ClearChangeListDescription() not getting called when submitted a Changelist (Contributed by SRombauts)
#jira UE-160313 - GitHub 9432 : [Source Control] Fix ClearChangeListDescription() not getting called when submitted a Changelist
#rb trivial
#preflight 6306376ac744dac967279605

[CL 21540506 by SRombauts in ue5-main branch]
2022-08-24 10:40:15 -04:00
patrick laflamme
bff7926319 Modified the source control submit window opened from the changelist window:
- Supported editing the changelist and saving it in P4. If the submit fails, the code will also try to save any edited changelist description.
  - Enabled the 'keep checked out' button when submitting from the changelist window.
  - Fixed the P4 cache not properly updating the file 'kept in checkout'.
  - If the submit window is opened from the Source Control menu at the bottom right of the Eitor, the new 'Update' button to save the changelist description is not visible, this is not supported for all source control provider.

Added a delay of 1.5 seconds before showing the slow stack in the changelist window when refreshing the UI.

#jira UE-155238 - Add the option to "keep file in checkout"
#jira UE-155235 - Allow the user to save the description from the submit window.
#rb Patrick.Enfedaque
#preflight 6303e4e75a5d4e4624f5ab6d

[CL 21512088 by patrick laflamme in ue5-main branch]
2022-08-23 13:05:52 -04:00
patrick laflamme
081f94e945 Fixed circular dependecies between the SourceControlWindows and OutputModule reported on Linux.
#rb trivial
#preflight 6303ba1d5a5d4e4624e5e83f

[CL 21500745 by patrick laflamme in ue5-main branch]
2022-08-22 21:50:47 -04:00
patrick laflamme
32cca29e12 Fix CIS error about missing TabManager include.
#rb trivial
#preflight trivial

[CL 21499899 by patrick laflamme in ue5-main branch]
2022-08-22 21:20:45 -04:00
patrick laflamme
7f2a598696 Refactored the Changelist Window UI to work better with large changelists along with bug fixes.
This submit should not regress any existing functionalites of the previous widget.

Along with the user interface changes, notable bug fixes were included
  - If a changelist is not specified for P4 operations 'Mark for Add', 'Mark for Delete and 'Checkout', defaulted to the 'default' P4 changlist. Without a valid changelist, the cache wasn't properly updated.
  - Fixed updating the cache for P4 'Mark for delete' operation not correctly updating the file changelist cached in the file state.

Other changes:
  - P4 changelists are now always returned sorted by changelist number, ascending.
  - Some of the safe operations were running synchronous are not running asynchrnous (create new changelist, delete empty changelist, delete shelved files).

This submit addresses the following Jiras:

#jira UE-155207 - Refactor the changelist window layout to have the left/right panel.
#jira UE-155209 - Add the context menu on right click on a file or a changelist.
#jira UE-155218 - Support creating new empty changelist from the changelist view.
#jira UE-155220 - Support moving files from the selected changelist (right view) to another changelist (left view)
#jira UE-155211 - Add visual feedback for any operation taking more than 0.5s.
#jira UE-155212 - Display a list of uncontrolled files in the left panel of the changelist window
#jira UE-155499 - Changelist windows buttons should be disabled if SCC is disabled
#jira UE-155229 - Add an option to automatically refresh the changelist window when new assets are imported|created (as uncontrolled), marked for add, checked out, marked for delete
#jira UE-107577 - Source Control's Changelists dialog does not refresh to reflect changes made while open

#rb Patrick.Enfedaque
#preflight 62ff946ef7404b55a326297b

[CL 21499885 by patrick laflamme in ue5-main branch]
2022-08-22 21:20:05 -04:00
luc eygasier
0cda7fc8ed Modifies revert operations in source control window to also reload packages.
Adds Source Control Helper method to perform a modular source control operation and reload the concerned packages

#rb Patrick.Enfedaque
#preflight 62fd4e63e64b1a510937890b
#changelist validated

[CL 21444877 by luc eygasier in ue5-main branch]
2022-08-18 13:03:11 -04:00
luc eygasier
f431296a8a Changes reverting UncontrolledChangelist new assets to also delete them.
#rb Patrick.Enfedaque
#preflight 62f56afaad3bd8ad642e2a79

#ROBOMERGE-AUTHOR: luc.eygasier
#ROBOMERGE-SOURCE: CL 21354458 via CL 21354491 via CL 21354503
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21356205 by luc eygasier in ue5-main branch]
2022-08-12 11:43:42 -04:00
jeanfrancois dube
5dcc8dc617 Changelist validations: split changelist validation warnings and errors.
#rb patrick.enfedaque
#preflight none
#rnx

#ROBOMERGE-AUTHOR: jeanfrancois.dube
#ROBOMERGE-SOURCE: CL 21267254 via CL 21267256 via CL 21267257
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21267736 by jeanfrancois dube in ue5-main branch]
2022-08-08 09:19:30 -04:00
paul chipchase
135e304463 Add an ini file option which when set to true allows package submissions to source control to go ahead even if the virtualization process failed.
#rb none
#jira UE-159596
#rnx
#preflight 62d94160110da0f944afdd32

### Problem
- When rolling our virtualization to projects we have run into a number of set up problems which has caused users to fail to submit packages from the editor as when the virtualization failed we prevented the overall submit from going through.
- Although we will eventually work through all of these problems and add better fault tolerance for now it is annoying for the content team so we need an easy way for a project to allow package submits to be completed even if the virtualization process part of the submit failed.
- Worth noting that the virtualization process failing should never affect the state of the package files, the only downside is that the packages may not be virtualized.

### Fix
- The virtualization/rehydration of packages now return an enum instead of a bool although at the moment we are only returning Success and Failed, but it will allow us to expand in the future
- Combined the code calling the virtualization process from both the source control window and the source control changelist window into a single utility function.
-- Now the two windows only diverge on how they report failure to the user.

- This new utility function now checks to see if the virtualization manager suggests if failing the virtualization process should block any package submission to source control or not.
- I am not happy with this solution, but I haven't come up with anything that feels right, this solution will at least work.

[CL 21199597 by paul chipchase in ue5-main branch]
2022-07-21 08:31:47 -04:00
paul chipchase
8dd016450e We now call the virtualization process directly when submitting content via the editor rather than invoking a delegate.
#rb trivial
#rnx
#preflight 62d15f427e1c26dcd715699c

- Now that the IVirtualizationSystem interface supports both virtualization and rehydration of package files, it seems pointless to keep a delegate that occurs on pre-submit, rather than just calling the system we really want to call directly.
- Deprecating the public methods accessing the delegate from ISourceControlModule should prevent licensees from trying to use it. The delegate was added in 5.0 so even though it is unlikely to have been used by anyone we need to go through the deprecation steps to remove it.
-- This leaves the calling code a little more complicated than I'd like, but cannot be avoided.

[CL 21109464 by paul chipchase in ue5-main branch]
2022-07-15 09:52:19 -04:00
Lauren Barnes
6248f8d412 Replacing legacy EditorStyle calls with AppStyle
#preflight 6272a74d2f6d177be3c6fdda
#rb Matt.Kuhlenschmidt

#ROBOMERGE-OWNER: Lauren.Barnes
#ROBOMERGE-AUTHOR: lauren.barnes
#ROBOMERGE-SOURCE: CL 20057269 via CL 20070159 via CL 20072035 via CL 20072203
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)
#ROBOMERGE-CONFLICT from-shelf

[CL 20105363 by Lauren Barnes in ue5-main branch]
2022-05-09 13:12:28 -04:00
leon huang
0193ffe8d3 Fix for CIS warnings for localization duplicate keys. Fixes simply involve changing one of the colliding localization keys.
#rnx
	#rb: Vincent.Gauthier
	#jira: UE-143620
	#preflight: 6222489d2f7d78332e121416
	#lockdown Mitchell.Wilson

#ROBOMERGE-AUTHOR: leon.huang
#ROBOMERGE-SOURCE: CL 19272838 in //UE5/Release-5.0/... via CL 19273134
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v924-19243027)

[CL 19275063 by leon huang in ue5-main branch]
2022-03-04 16:10:23 -05:00
luc eygasier
5c80611276 Adds FSourceControlFilesDeletedDelegate. Should be broadcasted when revert/markfordelete operation could require cleanups (eg package/assets/ref deleted).
Fixes Reverting mark for add asset preventing to recreate an asset with the same name in the same editor session (Asset was still present in AssetRegistry).

#jira UE-140995, UEENGQA-62727
#rb Sebastien.Lussier
#tb Tim.Gautier
#preflight 62056230b84973a2bb61b450

#ROBOMERGE-OWNER: luc.eygasier
#ROBOMERGE-AUTHOR: luc.eygasier
#ROBOMERGE-SOURCE: CL 18943038 in //UE5/Release-5.0/... via CL 18943294 via CL 18943483
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v917-18934589)
#ROBOMERGE-CONFLICT from-shelf

[CL 18943896 by luc eygasier in ue5-main branch]
2022-02-10 17:08:14 -05:00
luc eygasier
d6b8aa4536 Adds "Delete new files on revert" option for Source Control
Prevents Uncontrolled Changelist's UpdateStatus usage to pollute the error logs.

#jira UE-140095
#rb JeanFrancois.Dube
#preflight 61f44e47801201ab3894f020

#changelist validated

#ROBOMERGE-AUTHOR: luc.eygasier
#ROBOMERGE-SOURCE: CL 18796586 in //UE5/Release-5.0/... via CL 18797752 via CL 18798475
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18798602 by luc eygasier in ue5-main branch]
2022-01-31 17:03:09 -05:00