View Issue Details

IDProjectCategoryView StatusLast Update
0005412DarkRadiantGeneralpublic05.02.2021 11:29
ReporterMirceaKitsune Assigned Togreebo  
Status closedResolutionfixed 
Platformx64OSLinux openSUSEOS VersionRelease
Product Version2.8.0 
Target Version2.9.0Fixed in Version2.9.0 
Summary0005412: Undo / redo system records cycling through textures (previewing) in the Surface Inspector shader browser
DescriptionWhen browsing through multiple textures in the Choose Shader window of the Surface Inspector, each texture you've browsed over (on the selected faces) are recorded by the undo / redo system, even if you clicked Cancel in which case they should normally be forgotten (you were only browsing and never actually applied them). This is mainly annoying as it fills the undo queue quickly and makes it harder to go back to other changes in need.
Steps To Reproduce- Select a face and open the Surface Inspector, then click on the folder icon to browse for a shader.
- Expand some directories and select a few textures, just use the arrow keys to rapidly navigate through them (which causes this inconvenience most easily). The texture will be applied to the face you currently have selected, which itself isn't a bad thing and desired.
- Now click the Cancel button to drop all changes.

Result: The textures on the selected faces will revert to the images they had before you started browsing for new ones. However if you hit Control + Z to undo, you'll be able to reproduce the entire history of cycling through that media browser window. Normally the undo system shouldn't record anything since you cancelled... if you had clicked okay instead, it should only record one change (the final texture you chose when clicking okay).
TagsNo tags attached.


There are no notes attached to this issue.

Related Changesets

DarkRadiant: master ebc08f67

2020-11-16 04:18:01


Details Diff
0005412: Prevent ShaderChooser preview selections from generating lots of UndoableCommands Affected Issues
mod - libs/selectionlib.h Diff File
mod - radiant/ui/common/ShaderChooser.h Diff File
mod - radiant/ui/surfaceinspector/SurfaceInspector.cpp Diff File
mod - radiantcore/entity/EntityModule.cpp Diff File
mod - radiantcore/selection/algorithm/Shader.cpp Diff File
mod - radiantcore/selection/algorithm/Shader.h Diff File

Issue History

Date Modified Username Field Change
15.11.2020 20:20 MirceaKitsune New Issue
16.11.2020 03:07 greebo Status new => confirmed
16.11.2020 04:19 greebo Assigned To => greebo
16.11.2020 04:19 greebo Status confirmed => assigned
16.11.2020 04:19 greebo Target Version => 2.9.0
16.11.2020 04:20 greebo Changeset attached => DarkRadiant master ebc08f67
16.11.2020 04:20 greebo Status assigned => resolved
16.11.2020 04:20 greebo Resolution open => fixed
16.11.2020 04:20 greebo Fixed in Version => 2.9.0
05.02.2021 11:29 greebo Status resolved => closed