Dean Herbert
d08b66a5ff
Also add logging to OnlinePlayScreen
2021-12-21 15:07:06 +09:00
Dean Herbert
ddadf3c4b5
Add logging of MultiplayerMatchSubScreen
exiting from room loss
2021-12-21 14:53:24 +09:00
Dean Herbert
9aff646ff4
Centralise all multiplayer button clicking test logic
...
This adds the "wait for enabled" check in a way that can be easily
reused, as it keeps getting missed in test implementations.
This particular commit hopefully fixes
https://github.com/ppy/osu/runs/4583845033?check_suite_focus=true .
2021-12-21 13:49:51 +09:00
Dean Herbert
edcbd4de6d
Fix incorrect event unbind logic
2021-12-21 13:05:26 +09:00
Dean Herbert
52db7b36fc
Move Schedule
call to base implementation of error meter for extra safety
2021-12-21 12:55:21 +09:00
Dean Herbert
28d6ff5d9c
Fix potential wrong thread mutation in ColourHitErrorMeter
2021-12-21 12:36:04 +09:00
dekrain
9344897542
Split session statics reset method to prevent unloading seasonal backgrounds while idle
2021-12-20 16:51:51 +01:00
Bartłomiej Dach
f1a03aced5
Merge branch 'master' into beatmap-card/extra
2021-12-20 15:49:00 +01:00
Bartłomiej Dach
0975f570ba
Return last playlist item if all expired
2021-12-20 13:49:05 +01:00
Bartłomiej Dach
a5a9922f81
Fix lounge screen content not matching current room playlist item
2021-12-20 13:32:42 +01:00
Bartłomiej Dach
a59583ee09
Add extension method for returning next playlist item
2021-12-20 13:18:02 +01:00
Dean Herbert
6907a9a3cc
Name some screen stacks for better logging context
2021-12-20 18:24:14 +09:00
Dean Herbert
1533aefce5
Update framework
2021-12-20 18:22:19 +09:00
Dan Balasescu
9316abc278
Better fix for intermittent multiplayer tests
2021-12-20 13:10:13 +09:00
Bartłomiej Dach
a6ccbafc77
Fix rank graph showing for unranked users
2021-12-19 13:40:22 +01:00
Bartłomiej Dach
097402677d
Add test for ranked/unranked user display
2021-12-19 13:40:22 +01:00
Dean Herbert
04cfae9bde
Fix "Random Skin" text not showing up correctly
2021-12-18 16:26:15 +09:00
StanR
2f2006715e
Slightly refactor difficulty and pp calculators
2021-12-17 23:40:23 +03:00
Bartłomiej Dach
33e930f477
Move scale-on-expand logic to BeatmapCardContent
2021-12-17 13:29:20 +01:00
Bartłomiej Dach
d6f6039934
Extract base class for beatmap cards
2021-12-17 13:27:11 +01:00
Bartłomiej Dach
f052b47d87
Extract collapsible button container for card usage
2021-12-17 12:58:05 +01:00
Bartłomiej Dach
7aab12d4b0
Share extra row dropdown show/cancel show logic
2021-12-17 11:45:05 +01:00
Bartłomiej Dach
3fa45479b0
Share hype/nomination statistic show logic
2021-12-17 11:45:05 +01:00
Dean Herbert
81603a0645
Update framework
2021-12-17 19:32:58 +09:00
Bartłomiej Dach
c6d0b5d200
Merge branch 'master' into beatmap-card/extra-wip
2021-12-17 11:11:36 +01:00
Dean Herbert
1067e2dc00
Merge branch 'master' into update-framework
2021-12-17 16:41:47 +09:00
Dean Herbert
6bfe973fe5
Update framework
2021-12-17 13:44:52 +09:00
Bartłomiej Dach
54790bb758
Merge branch 'master' into fix-realm-post-storage-migration-failure
2021-12-17 00:19:46 +01:00
Salman Ahmed
9a22a082ca
Merge branch 'master' into master
2021-12-16 16:58:24 +03:00
Dean Herbert
eecb1ce9f5
Avoid applying mouse down effects to menu cursor when it isn't visible
...
Closes #16114 .
2021-12-16 20:20:06 +09:00
Dean Herbert
434aa0367f
Add back .ToLocalTime()
call to DrawableDate
...
This is required because the class is used in many other places that
don't locally call it.
2021-12-16 18:25:29 +09:00
Dean Herbert
0eac655cff
Remove local screen change logging
2021-12-16 18:21:48 +09:00
Dean Herbert
aa0813ff05
Merge pull request #16109 from smoogipoo/chat-overlay-multiplayer-removal
...
Don't show multiplayer channels in chat overlay
2021-12-16 17:39:45 +09:00
Dan Balasescu
3f1d747b7a
Merge pull request #16090 from peppy/fix-scroll-speed-toast-sample-spam
...
Fix toast popups spamming samples when adjusting osu!mania scroll speed during gameplay
2021-12-16 17:31:36 +09:00
Dan Balasescu
488374b4a2
Don't show multiplayer channels in chat overlay
2021-12-16 16:41:47 +09:00
Dean Herbert
a9dbcd92a1
Split out unmanaged implementation of RealmLive
into its own class
2021-12-16 15:23:55 +09:00
Imad Dodin
b3e83a47a4
Convert to Local Time in Date Tooltip
2021-12-15 21:36:35 -08:00
Dean Herbert
e6e1366c28
Merge pull request #16094 from peppy/beatmap-card-expanded-state-fix
...
Fix beatmap card potentially collapsing when it shouldn't
2021-12-16 14:13:47 +09:00
Dean Herbert
0ec1e1e2d5
Merge pull request #16091 from MyDogsEd/fix-issue-#15869
...
Fix the taiko scroller bar appearing during cinema mod
2021-12-16 12:05:00 +09:00
Bartłomiej Dach
cbb65e1e07
Merge branch 'master' into beatmap-card-expanded-state-fix
2021-12-15 22:20:30 +01:00
Dean Herbert
cd8dfac625
Merge pull request #16097 from smoogipoo/forego-resetting-spectate-state
...
Don't reset spectating state if spectator exited after gameplay finishes
2021-12-15 22:30:41 +09:00
Dean Herbert
33cf4ba7f6
Merge pull request #16075 from smoogipoo/prevent-idle-transition-during-load
...
Add AbortGameplay() to fix state transition race conditions during multiplayer load
2021-12-15 19:59:19 +09:00
Dan Balasescu
4c53ec12e9
Merge branch 'master' into forego-resetting-spectate-state
2021-12-15 18:47:47 +09:00
Dean Herbert
2025183f5a
Merge pull request #15990 from Susko3/number-textbox-only-numbers
...
Fix `SettingsNumberBox` accepting non-number characters
2021-12-15 18:39:54 +09:00
Dean Herbert
9e82a3e79a
Merge branch 'master' into forego-resetting-spectate-state
2021-12-15 18:05:06 +09:00
Dan Balasescu
18d7b79207
Don't reset spectating state if gameplay is finished
2021-12-15 17:40:30 +09:00
Susko3
643cee4f83
Merge branch 'master' into number-textbox-only-numbers
2021-12-15 09:13:19 +01:00
Dean Herbert
694ee68725
Update resources
2021-12-15 16:59:33 +09:00
Dan Balasescu
740a6f16c7
Fix exception when updating the room's visual playlist
2021-12-15 16:53:25 +09:00
Dean Herbert
42f14667a3
Update framework
2021-12-15 16:50:55 +09:00
Dean Herbert
ad430a6277
Centralise hover state handling (and fix back-to-front conditionals)
2021-12-15 16:44:58 +09:00
Dean Herbert
6a1f535257
Refactor cancellation of expand to be more explicit
2021-12-15 16:38:19 +09:00
Dean Herbert
94d1a2aaca
Remove unnecessary collapse call from BeatmapCard
...
This is already handled at the `BeatmapCardContent` level. This call
actually causes the buggy behaviour reported in
https://github.com/ppy/osu/discussions/16085 .
2021-12-15 16:37:47 +09:00
Dean Herbert
7a9db22c52
Tidy up method naming and structure for expanded state changes
2021-12-15 16:29:12 +09:00
Dean Herbert
ef4ab74565
Also only expose Expanded
state of BeatmapCard
as read-only
2021-12-15 16:26:19 +09:00
Dean Herbert
41e6c24dad
Expose Expanded
state of BeatmapCardContent
as read-only bindable
...
This is just to reduce complexity of these interactions by ensuring that
the expanded state can only be changed by the class itself.
2021-12-15 16:26:19 +09:00
Susko3
b326ccc196
Move logic to framework and update all usages
2021-12-15 07:13:24 +01:00
JamesTheGeek
828072bcea
Fix issue #15869
...
The taiko-slider is not included in `Playfield`, so it doesn't get hidden when calling `drawableRuleSet.Playfield.Hide()`. Calling `drawableRuleSet.Hide()` hides the taiko-slider, in addition to the rest of the `Playfield`.
2021-12-14 23:23:11 -05:00
Dean Herbert
0c11fe7413
Fix toast popups spamming samples when adjusting osu!mania scroll speed during gameplay
...
Not the most robust of fixes, but as per the reasoning described in the
issue thread, a proper fix will take considerably more effort. This
intends to fix the issue first and foremost, as it sounds so bad I'd
want to mute my sound before adjusting currently.
Closes #15718 .
2021-12-15 12:45:23 +09:00
Dean Herbert
9d85beddbe
Fix null reference in some tests due to missing realm context factory
2021-12-15 11:16:37 +09:00
Dan Balasescu
2cea39a92a
Merge pull request #16083 from peppy/fix-online-availability-after-reimport
...
Fix `OnlinePlayBeatmapAvailabilityTracker` failng after modified reimport of existing beatmap
2021-12-15 08:31:02 +09:00
Dan Balasescu
ee6f125948
Merge pull request #15967 from tbrose/chat-mention-fix
...
Check word boundaries during username mention matching
2021-12-15 08:04:39 +09:00
Dan Balasescu
9ade8069a1
Rename to AbortGameplay() and handle additional states
2021-12-15 06:40:28 +09:00
Dan Balasescu
4c81fd8b7c
Merge pull request #16068 from peppy/fix-fail-animation-background-dim
...
Improve appearance of player-wide background after failing with low background dim
2021-12-15 06:32:02 +09:00
Bartłomiej Dach
00154fe86d
Merge branch 'master' into fix-menu-background-desync
2021-12-14 21:31:10 +01:00
tbrose
a831744f05
Merge remote-tracking branch 'origin/chat-mention-fix' into chat-mention-fix
2021-12-14 16:24:05 +01:00
tbrose
8e79fac389
Fixes code quality check failed
2021-12-14 16:23:51 +01:00
Dean Herbert
453ecd21b3
Fix OnlinePlayBeatmapAvailabilityTracker
potentially in incorrect state
...
Adter an import of a modified version of a beatmap (that was already
present in the local database), it's feasible that one of these trackers
would not see the state change due to the nuances of the import process.
2021-12-14 19:16:11 +09:00
Dean Herbert
04551ea61e
Merge pull request #16080 from smoogipoo/fix-storyboard-start-time
...
Fix incorrect storyboard life time start with looping commands
2021-12-14 18:33:56 +09:00
Dean Herbert
cebfeb5220
Merge pull request #16045 from smoogipoo/multiplayer-local-beatmap-query
...
Rework multiplayer's current item tracking
2021-12-14 18:33:30 +09:00
Dean Herbert
79dd9674fc
Use longer form to read better
...
Using `l.StartTime` reads like a coding issue, even though if you go
down the call chain looks to be correct.
2021-12-14 17:41:09 +09:00
Dean Herbert
8c6f50ddb1
Fix BackgroundScreenDefault
incorrectly updating current background after being inactive
...
If the beatmap was changed but then reverted to the previously displayed
map, the background may have displayed incorrectly on resuming.
Closes #15804 .
2021-12-14 16:40:50 +09:00
Dean Herbert
b6a272e31a
Add failing test coverage of BackgroundScreeNDefault
's beatmap background tracking when active/non-active
2021-12-14 16:40:34 +09:00
Dean Herbert
441b7baa93
Provide a realm factory to usages of ToLive
/RealmLive
2021-12-14 14:26:34 +09:00
Dean Herbert
f9a2db5ec6
Add accessibility to realm factory via IStorageResourceProvider
...
We might need to rename this class..
2021-12-14 14:19:49 +09:00
Dean Herbert
7e576ae9d3
Add note about how the background colour is restored
2021-12-14 13:25:19 +09:00
Dan Balasescu
357a661379
Fix storyboard sprites sometimes starting too early
2021-12-14 13:13:12 +09:00
Dan Balasescu
51b6b9d857
Merge branch 'master' into chat-mention-fix
2021-12-14 11:49:57 +09:00
Dan Balasescu
750bfae909
Fix TestMultiplayerClient not handling all users bailing from gameplay
2021-12-14 11:35:56 +09:00
Dan Balasescu
2f1dc91211
Add AbortLoad() method to abort gameplay loads
2021-12-14 11:30:42 +09:00
Dean Herbert
a076eda834
Merge pull request #16062 from smoogipoo/retry-score-submission-timeout
...
Increase score submission timeout
2021-12-14 11:03:20 +09:00
Dan Balasescu
419a34e7b4
Merge branch 'master' into test-score-refactoring
2021-12-14 07:30:06 +09:00
Dan Balasescu
7564658b5e
Reduce to 30s
2021-12-14 06:40:45 +09:00
Dean Herbert
b0d14526ea
Move test ScoreInfo
creation to TestResources
...
The main goal here is to remove the inheritance, since realm doesn't
like that. Unfortunate that we can't use object initialisers in a few of
these places, but no real way around that.
2021-12-13 16:34:50 +09:00
Dan Balasescu
70045494ba
Re-simplify code by removing BeatmapManager event instead
2021-12-13 16:09:54 +09:00
Dean Herbert
7318ff3f98
Refactor KeyBindingStore
to clean up any excess bindings for individual actions
...
While this isn't strictly required (outside of rulesets, potentially),
I think it's best that we keep these counts in a sane state.
Right now, it will remove any excess. Arguably, in the case an entry is
found with too many, we should wipe all entries and re-populate the
defaults. Interested in opinions on that before merging. See
https://github.com/ppy/osu/discussions/15925 for an example where wiping
may be the more appropriate behaviour.
2021-12-13 15:26:51 +09:00
Dean Herbert
cac684c044
Improve appearance of player-wide background after failing with low background dim
2021-12-13 14:53:11 +09:00
Dean Herbert
c097dc8048
Add note about reasoning behind MultiplayerClient.GetAPIBeatmap
call
2021-12-13 13:39:32 +09:00
Dean Herbert
3ea07b426b
Merge branch 'master' into multiplayer-local-beatmap-query
2021-12-13 13:27:34 +09:00
Dean Herbert
c375c87094
Merge pull request #16065 from frenzibyte/reorder-version-overlay
...
Display game version overlay behind the overlays layer
2021-12-13 13:25:30 +09:00
Salman Ahmed
d0fbbf110b
Expose ScreenContainer
for access in OsuGameDesktop
2021-12-13 06:52:36 +03:00
Dan Balasescu
fd979a52fe
Increase score submission request timeout to 60s
2021-12-13 07:15:21 +09:00
Dan Balasescu
2cd2b10ce1
Fix results sometimes showing incorrect score position
2021-12-13 06:54:57 +09:00
Dan Balasescu
bf3abb2455
Merge branch 'master' into multiplayer-local-beatmap-query
2021-12-12 16:37:41 +09:00
Dan Balasescu
a6e77f172d
Add some comments
2021-12-12 16:30:37 +09:00
Dan Balasescu
d6c08fae48
Fix incorrect global beatmap with availability changes
2021-12-11 23:08:21 +09:00
Dan Balasescu
ece2cddb7f
Fix DrawableRoomPlaylistItem lookup interfering with tests
2021-12-11 22:51:20 +09:00
Dan Balasescu
25b274c323
Fix starting gameplay too early after import
2021-12-11 22:47:50 +09:00
Dan Balasescu
1aac978a7b
Merge pull request #16029 from peppy/editor-mod-reset
...
Fix editor not resetting mods when entering
2021-12-11 20:20:11 +09:00
Dan Balasescu
63a017bc8e
Use Array.Empty instead
2021-12-11 19:33:37 +09:00
Dan Balasescu
cdb8237a4b
Merge branch 'master' into pre-realm-score-tidy
2021-12-11 19:25:39 +09:00
Salman Ahmed
3a4266bd5e
Merge branch 'master' into update-framework
2021-12-10 17:50:33 +03:00
Dan Balasescu
6057037e35
Move playlist item beatmap population to MatchSubScreen
2021-12-10 20:08:59 +09:00
Dean Herbert
c1b3ee6bb2
Fix editor not resetting mods when entering
...
Would leave the user potentially in a test mode that is in a weird
state (ie. if cinema mod was enabled). Eventually we'll add the ability
to choose mods for test play, but that will be done in a saner way.
Closes #15870 .
2021-12-10 18:57:45 +09:00
Dean Herbert
3b899af061
Update libraries
2021-12-10 18:46:47 +09:00
Dean Herbert
f7c5a3f506
Use similar method of consuming OnlineID
as done in beatmap classes
2021-12-10 18:34:31 +09:00
Dean Herbert
c9f6c5c673
Add MatchesOnlineID
implementation for IScoreInfo
2021-12-10 18:34:31 +09:00
Dean Herbert
5f6e887be7
Remove OnlineID
comparison from ScoreInfo.Equals
...
This matches the implementation we have for `BeatmapInfo` and
`BeatmapSetInfo`. All comparisons of `OnlineID` should be done directly
using them (ie. how it's done in `ScoreModelDownloader`).
2021-12-10 18:17:43 +09:00
Dan Balasescu
e98060ac37
Remove unused using
2021-12-10 17:55:18 +09:00
Dean Herbert
73227c084e
Update framework
2021-12-10 17:42:40 +09:00
Dean Herbert
970a9ae074
Add update thread asserts to RoomManager
methods
2021-12-10 17:22:24 +09:00
Dean Herbert
3633494509
Merge pull request #16020 from smoogipoo/host-enqueue-2
...
Add support for enqueueing items in host-only mode, and changing arbitrary playlist items
2021-12-10 16:23:48 +09:00
Dean Herbert
c6d0d6451d
Change IScoreInfo.User
to an interface type
2021-12-10 16:11:49 +09:00
Dean Herbert
bff02bedbf
Rename APIScoreInfo
to APIScore
2021-12-10 16:11:49 +09:00
Dean Herbert
dbb08f7d46
Use OnlineID
for set operations
2021-12-10 16:11:48 +09:00
Dean Herbert
7ac63485ef
Add setter for ScoreInfo.OnlineID
2021-12-10 16:11:48 +09:00
Dean Herbert
bf1418bafc
Use OnlineID
instead of legacy IDs for equality and lookups
2021-12-10 16:11:48 +09:00
Dan Balasescu
4e6286920c
Merge pull request #16017 from peppy/fix-child-set-after-disposal
...
Fix potential crash due to children being mutated after disposal
2021-12-10 15:38:34 +09:00
Dan Balasescu
de0f37b08d
Separate editing and adding playlist items
2021-12-10 15:26:48 +09:00
Dean Herbert
88670c3b01
Document OpenSongSelection
and mark null param
2021-12-10 14:14:22 +09:00
Dean Herbert
50bf2f368d
Merge branch 'master' into host-enqueue-2
2021-12-10 14:09:19 +09:00
Dean Herbert
9ac8e6c81c
Add missing null check before attempting to populate bpm info
2021-12-10 13:53:48 +09:00
Dean Herbert
612f47bb9f
Add the ability to create playlists of 2 weeks ~ 3 months in duration
2021-12-10 13:45:29 +09:00
Dean Herbert
1952819db2
Merge pull request #16019 from smoogipoo/cleanup-playlist-item-buttons
...
Cleanup duplicated classes in DrawableRoomPlaylistItem
2021-12-10 12:01:26 +09:00
Dan Balasescu
35a208a478
Merge pull request #15999 from peppy/restore-user-volume-muted-notification
...
Fix the unmute notification potentially overwriting user's volume levels unnecessarily
2021-12-10 02:58:59 +09:00
Dan Balasescu
671582a925
Allow host to enqeue items and items to be edited
2021-12-10 01:15:19 +09:00
Dan Balasescu
048a495115
Add edit button to DrawableRoomPlaylistItem
2021-12-10 01:08:54 +09:00
Dan Balasescu
4d1c06c061
Add support for host enqueueing in TestMultiplayerClient
2021-12-10 01:03:36 +09:00
Dan Balasescu
05aa9635a8
Privatise button again
2021-12-10 00:38:18 +09:00
Dan Balasescu
f9af239ed9
Cleanup duplicated classes in DrawableRoomPlaylistItem
2021-12-09 23:56:49 +09:00
Dean Herbert
538a822760
Merge branch 'master' into multiplayer-playlist-deletion
2021-12-09 19:04:06 +09:00
Dean Herbert
a3b53ac2f6
Change comparison to match in all locations
2021-12-09 18:58:47 +09:00
Dean Herbert
b393f83028
Merge pull request #16009 from smoogipoo/cleanup-drawable-playlist
...
Cleanup DrawableRoomPlaylist and DrawableRoomPlaylistItem
2021-12-09 18:54:16 +09:00
Dean Herbert
e7e61cd9ab
Fix potential crash due to children being mutated after disposal
...
This is a bit of an unfortunate edge case where the unbind-on-disposal
doesn't help, since the binding is happening in BDL, and the usage is in
a nested `LoadComponentAsync` call. Combine those and you have a recipe
for disaster.
2021-12-09 18:52:00 +09:00
Dean Herbert
dfe19f3509
Minor code reformatting
2021-12-09 17:53:40 +09:00
Dan Balasescu
0963b00453
Disallow item selection in playlists song select
2021-12-09 17:33:59 +09:00
Dan Balasescu
17d676200b
Xmldoc fixes from code review
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-12-09 17:33:36 +09:00
Dan Balasescu
1a0945daba
Siplify condition, allow host to always remove items
2021-12-09 14:33:50 +09:00
Bartłomiej Dach
083ee92dee
Adjust button vertical padding
2021-12-08 22:56:28 +01:00
Bartłomiej Dach
2d739c95ea
Lay out extra card statistics in grid as per design
2021-12-08 22:56:28 +01:00
Bartłomiej Dach
3ecfaa532c
Add source field to extra beatmap card
2021-12-08 22:56:28 +01:00
Bartłomiej Dach
419fee1380
Move mapper link to bottom content
2021-12-08 22:54:11 +01:00
Bartłomiej Dach
61e04f75cc
Resize extra card to design size
2021-12-08 22:54:10 +01:00
Bartłomiej Dach
a32492cdd5
Duplicate BeatmapCard{-> Extra}
as blueprint for extra card size
2021-12-08 22:53:51 +01:00
Dan Balasescu
80b2768a5f
Mirror recent server-side changes
2021-12-09 04:18:54 +09:00
Dan Balasescu
4df2047a58
Prevent removal of expired items in TestMultiplayerClient
2021-12-09 04:12:24 +09:00
Dan Balasescu
8398f86440
Don't consider expired items in visibility check
2021-12-09 04:02:16 +09:00
Dan Balasescu
c34c580ad4
Add client-side + interface implementation
2021-12-09 03:08:59 +09:00
Dan Balasescu
ce081c4acc
Fix missing propagation of OwnerId in tests
2021-12-09 02:01:17 +09:00
Dan Balasescu
23332995d1
Invert naming of exposed actions
2021-12-09 01:52:59 +09:00