Commit Graph

21405 Commits

Author SHA1 Message Date
d7b6e4a32d Merge pull request #10867 from smoogipoo/refactor-user-request
Refactor user caching to improve readability and fix threadsafety issues
2020-11-17 14:20:45 +09:00
009d666241 Use dictionary to avoid linq overhead 2020-11-17 10:57:11 +09:00
72a8734f93 Merge branch 'master' into add-back-initiallifetimeoffset 2020-11-16 18:54:37 +01:00
e8dbc190f1 Remove ability to pool DHOs in parent playfields 2020-11-16 23:30:24 +09:00
cead67d512 Add back removed InitialLifetimeOffset removal 2020-11-16 21:49:29 +09:00
85b0f71467 Handle duplicate user IDs within the same batch 2020-11-16 21:17:43 +09:00
87bf168718 Use queue instead of list 2020-11-16 20:52:51 +09:00
1b1f4c9c09 Refactor user request to fix threadsafety issues 2020-11-16 20:35:22 +09:00
a98327f0c5 Merge branch 'master' into fix-currentskininfo-thread-safety 2020-11-16 17:55:22 +09:00
09298139e1 Merge pull request #10844 from bdach/spinner-rotation-tracker-state
Fix rotation tracker state not being reset on drawable spinner re-use
2020-11-16 17:10:40 +09:00
709370c69b Move schedule call outwards 2020-11-16 16:49:31 +09:00
9a7fdb2b7e Move skin deletion logic to OsuGameBase to promote thread safety
`CurrentSkinInfo` is used in multiple places expecting thread safety,
while ItemRemoved events are explicitly mentioning they are not thread
safe. As SkinManager itself doesn't have the ability to schedule to the
update thread, I've just moved the logic to `OsuGameBase`. We may want
to move the current skin bindable out of the manager class in the
future to match things like `BeatmapManager`.

Closes https://github.com/ppy/osu/issues/10837.
2020-11-16 16:43:19 +09:00
6706840b54 Merge pull request #10853 from bdach/add-to-legacy-conversion-tests 2020-11-16 15:22:04 +09:00
baed1573dc Merge pull request #10838 from nbvdkamp/fix-quick-delete-crash 2020-11-16 14:42:52 +09:00
3dbd7d5654 Merge pull request #10856 from bdach/reset-transforms-on-return-to-pool
Clear DrawableHitObject transforms on return to pool
2020-11-16 14:40:38 +09:00
7b79b9b9c1 Merge branch 'master' into fix-quick-delete-crash 2020-11-16 13:54:54 +09:00
399a1a16a0 Refactor beginClickSelection in a slightly different way 2020-11-15 21:06:47 +01:00
9c0a0031d6 Clear existing transforms on DHO return to pool 2020-11-15 19:50:22 +01:00
1db303b159 Revert beginClickSelection logic 2020-11-15 16:54:48 +01:00
5d44286d38 Add missing generic mappings to legacy mods 2020-11-15 15:35:06 +01:00
5ace7abaa8 Add abstract non-generic ModNightcore to pattern-match over 2020-11-15 15:32:02 +01:00
8b74298567 Add base method for testing conversion in other direction 2020-11-15 14:48:23 +01:00
9899687bfe Rename existing method to allow for new one 2020-11-15 14:17:41 +01:00
199043f677 Allow preview tracks to exist without an owner (without hard crashing) 2020-11-15 13:21:09 +09:00
34f09e2e20 Merge branch 'master' into fix-spectator-preview-crash 2020-11-15 13:16:10 +09:00
f8cabbdd21 Clear result when freeing pooled hitobject 2020-11-14 21:09:22 +01:00
b344a13734 Add support for previewing tracks on spectator screen 2020-11-14 17:08:27 +01:00
8a78d408db Add more missed null checks 2020-11-14 15:52:12 +01:00
610ed99ae3 Add null checks to unguarded resolved-as-null fields 2020-11-14 14:52:58 +01:00
4d2bc790fd Fix crash on shift+right-click deleting objects 2020-11-14 13:20:16 +01:00
354e748e45 Merge branch 'master' into osu-hitobject-pooling-playfield 2020-11-14 15:44:00 +09:00
52ff7b6593 Merge branch 'master' into hitobject-pooling-in-playfield 2020-11-14 10:27:12 +09:00
d55eae55ad Merge branch 'master' into fix-combo-break-rewind-replay 2020-11-13 21:46:32 +01:00
405407ff9e Merge branch 'master' into fix-combo-break-sounds 2020-11-13 21:07:34 +01:00
e6300f25d4 Merge branch 'master' into add-always-play-combo-break-setting 2020-11-13 20:25:55 +01:00
403415147d Merge branch 'master' into fix-perform-from-menu-overlay-hiding 2020-11-13 19:11:53 +01:00
21b015d63a Remove explicit public 2020-11-14 01:06:38 +09:00
5cbf6252b7 Merge branch 'hitobject-pooling-in-playfield' into osu-hitobject-pooling-playfield 2020-11-14 01:03:11 +09:00
c71b237c4f Merge all pooling support into Playfield 2020-11-14 00:59:08 +09:00
36f1833f6e Move hitobject pooling to Playfield 2020-11-14 00:41:18 +09:00
d347493ba3 Merge branch 'master' into osu-hitobject-pooling 2020-11-13 23:13:09 +09:00
9792d1fc73 Fix slider tests 2020-11-13 23:08:39 +09:00
f093acc9d5 Merge pull request #10823 from smoogipoo/pooling-editor-support
Add pooling support to the editor
2020-11-13 19:58:46 +09:00
d83b479c81 Internalise lifetime extensions and events too 2020-11-13 19:21:45 +09:00
4a4219fd11 Add region 2020-11-13 19:21:45 +09:00
92189e35cc Make playfield KeepAlive methods internal 2020-11-13 19:21:45 +09:00
832d52a056 Fix hitobject sample tests 2020-11-13 18:19:07 +09:00
df7032bc6c Merge pull request #10803 from smoogipoo/nested-hitobject-pooling
Add nested hitobject pooling
2020-11-13 17:34:10 +09:00
3c91626132 Merge branch 'pooling-editor-support' into osu-editor-pooling 2020-11-13 17:27:00 +09:00
688a442fb3 Add missing dictionary 2020-11-13 17:26:46 +09:00