Dean Herbert
0d8a7246dd
Add basic implementation of clock
2022-03-26 18:13:13 +09:00
Dean Herbert
5725cc36ff
Add animation to countdown button when countdown is active
2022-03-26 14:29:53 +09:00
Dean Herbert
03f24c8b58
Merge branch 'master' into countdown-button-ux
2022-03-26 10:34:51 +09:00
Dean Herbert
a30d6256f4
Merge pull request #17447 from peppy/countdown-button-icon
...
Use more appropriate icon on countdown button (and give tooltip)
2022-03-26 10:20:07 +09:00
Dean Herbert
f92a31cd39
Merge pull request #17402 from smoogipoo/multiplayer-auto-countdown
...
Add multiplayer auto-start countdown timer
2022-03-25 20:31:14 +09:00
Dan Balasescu
6c172bac3c
Merge pull request #17448 from peppy/fix-skin-component-crash-on-instantiation-failure
...
Avoid crashing if a skin component cannot be instantiated correctly
2022-03-25 19:41:52 +09:00
Dan Balasescu
1ff5fc98f5
Merge pull request #17445 from peppy/fix-test-realm-failures
...
Fix visual test crashes due to local realm not having update thread
2022-03-25 19:41:13 +09:00
Dan Balasescu
11ee78b395
Merge branch 'master' into countdown-button-icon
2022-03-25 19:40:25 +09:00
Dan Balasescu
3986dfd160
Merge pull request #17444 from peppy/fix-countdown-counting
...
Update multiplayer countdown button text more often
2022-03-25 19:40:04 +09:00
Dean Herbert
ed239d7016
Merge pull request #17421 from peppy/skin-nullable
...
Apply `nullable` to skin classes
2022-03-25 19:39:04 +09:00
Dean Herbert
f989158a31
Add back playlist availability control (because it's hooked up half way?)
2022-03-25 19:20:16 +09:00
Dan Balasescu
9963efce51
Improve ready/countdown button UX
2022-03-25 18:40:32 +09:00
Dean Herbert
320110f179
Remove "room visibility" from playlists settings to match
2022-03-25 18:37:46 +09:00
Dean Herbert
b13408aed0
Add back "room visibility" control commented out for now
2022-03-25 18:37:20 +09:00
Dean Herbert
a0a3bba46e
Avoid crashing if a skin component cannot be instantiated correctly
2022-03-25 18:31:26 +09:00
Dan Balasescu
3ad092d808
Always show the countdown button when host
2022-03-25 18:29:00 +09:00
Dean Herbert
463091bde2
Use more appropriate icon on countdown button (and give tooltip)
2022-03-25 18:25:48 +09:00
Dean Herbert
1acfbf490b
Merge branch 'master' into mod-overlay/settings-area
2022-03-25 17:37:39 +09:00
Dan Balasescu
2553cfed75
Match new server ready/unready logic
2022-03-25 17:04:45 +09:00
Dean Herbert
aa9e642e40
Merge branch 'master' into pin-multiplayer-host
2022-03-25 16:49:35 +09:00
Dean Herbert
6b22e5774f
Remove conditional access on known non-null
2022-03-25 16:42:35 +09:00
Dean Herbert
5fcd3b07f1
Fix visual test crashes due to local realm not having update thread
2022-03-25 16:35:32 +09:00
Dean Herbert
4a30b6ef56
Update multiplayer countdown button text more often
...
At once a second, it regularly skips whole seconds (because scheduler
isn't guaranteed to run exactly as often as specified). 10 updates a
second seems amicable and less noticeable to my eye.
2022-03-25 16:25:20 +09:00
Dan Balasescu
8553adc401
Merge pull request #17443 from peppy/fix-unexpected-immediate-exit
...
Fix game unexpectedly exiting without outro sequence occasionally on macOS
2022-03-25 15:57:57 +09:00
Dan Balasescu
23c4f9910e
Apply notnull constraint
2022-03-25 15:54:01 +09:00
Dean Herbert
792e79265b
Add ignore rule for new helper property
2022-03-25 15:46:27 +09:00
Dean Herbert
b1f0f89fdd
Simplify AutoStart
and Host
checks
2022-03-25 15:41:01 +09:00
Dan Balasescu
2d8d177807
Merge branch 'master' into skin-nullable
2022-03-25 15:36:21 +09:00
Dan Balasescu
478174dd58
Merge pull request #17416 from peppy/skin-fuck
...
Refactor skin construction
2022-03-25 15:36:06 +09:00
Dean Herbert
de4c04ef80
Fix non-matching json propert for AutoStartDuration
2022-03-25 15:34:33 +09:00
Dean Herbert
416b57ea69
Fix main menu buttons handling keys when super (cmd) is held
2022-03-25 15:13:22 +09:00
Dean Herbert
816fcae3a1
Rename Button
to MainMenuButton
to differentiate better
2022-03-25 15:12:39 +09:00
Dan Balasescu
c6182c2b09
Merge pull request #17432 from peppy/realm-subscription-any-thread
...
Allow realm subscriptions to be initiated from any thread
2022-03-25 14:05:03 +09:00
Dean Herbert
09c5325b08
Update resources
2022-03-25 13:18:49 +09:00
Dean Herbert
b4c0155b3d
Update framework
2022-03-25 13:07:21 +09:00
Dan Balasescu
def2ce243f
Merge pull request #17431 from peppy/fix-participants-panel-null-ref
...
Guard against potential null `CurrentItem` in `ParticipantPanel`
2022-03-25 11:47:43 +09:00
Bartłomiej Dach
5f730c0cd4
Merge branch 'master' into fix-old-legacy-replays
2022-03-24 23:21:50 +01:00
Bartłomiej Dach
878e8d21a3
Remove assertion to fix "expression always true" inspection
2022-03-24 21:51:10 +01:00
Dean Herbert
b04ca111c6
Allow realm subscriptions to be initiated from a non-update thread
2022-03-24 23:41:07 +09:00
Dean Herbert
2938f44e6c
Update PresentExternally
usages in line with framework changes
2022-03-24 23:41:07 +09:00
Dan Balasescu
1abf3f7bf4
Fix cancel tooltip showing for autostart countdowns
2022-03-24 20:25:17 +09:00
Dan Balasescu
d3a957d64e
Fix test client not receiving initial value
2022-03-24 20:24:09 +09:00
Dan Balasescu
0d88af19ae
Fix local setting not being updated
2022-03-24 20:23:58 +09:00
Dan Balasescu
f80692f342
Add missing TestMultiplayerClient coverage
2022-03-24 20:19:05 +09:00
Dan Balasescu
5fe46a73cb
Update room state in more situations
2022-03-24 20:17:16 +09:00
Dan Balasescu
209de886ce
Add method to stop countdown
2022-03-24 20:17:16 +09:00
Dan Balasescu
ea9de0199d
Split countdown start into separate method
2022-03-24 20:09:32 +09:00
Dan Balasescu
40eca0fbe2
Merge branch 'master' into multiplayer-auto-countdown
2022-03-24 18:11:51 +09:00
Dean Herbert
2d58feebb1
Guard against potential null CurrentItem
in ParticipantPanel
2022-03-24 17:54:21 +09:00
Dean Herbert
e889d93441
Add asserts of playlist being non-empty after client operations
2022-03-24 17:52:20 +09:00
Dean Herbert
0275e974e5
Merge branch 'master' into multiplayer-countdown-timers-2
2022-03-24 17:24:00 +09:00
Dean Herbert
e3f8bc0588
Revert Availability
to private
2022-03-24 17:15:17 +09:00
Dan Balasescu
528ffea38d
Fix incorrect event binding
2022-03-24 17:11:08 +09:00
Dean Herbert
a7554dcdf7
Use a constant for the early version timing offset
2022-03-24 16:43:41 +09:00
Dan Balasescu
dfa076c169
Refactor cancellation logic
2022-03-24 16:29:59 +09:00
Dean Herbert
a7d5f2281c
Apply beatmap offsets to legacy replay frame handling
2022-03-24 16:16:40 +09:00
Dan Balasescu
4c0d76573c
Asserate code is running on update thread
2022-03-24 15:51:30 +09:00
Dan Balasescu
f0d132b16e
Rename FinishCountdown() -> SkipToEndOfCountdown()
2022-03-24 15:21:46 +09:00
Dan Balasescu
d2ecc100e5
Revert unnecessary async change
2022-03-24 15:07:24 +09:00
Dan Balasescu
8f3a4df70a
Add explanation for try-catch
2022-03-24 15:07:24 +09:00
Dan Balasescu
d36944ac95
Dispose token manually
...
Cover more branches with cancellation source disposal
2022-03-24 15:07:24 +09:00
Dean Herbert
8ca9cbc866
Set a more correct initial value for pauseFreqAdjust
...
As the `GameplayClock` now starts paused, this value needs to match to
ensure things work correctly.
For a better explanation of how we got here, see discussion at
https://github.com/ppy/osu/pull/17302#discussion_r830017735 .
2022-03-24 14:50:00 +09:00
Dan Balasescu
96a447f68b
Rename Multiplayer prefix to button classes
2022-03-24 14:28:38 +09:00
Dan Balasescu
90c7945bca
Re-remove PopoverButton class with better test fix
2022-03-24 14:26:31 +09:00
Dean Herbert
6f529cf7a4
Merge branch 'master' into fix-spectator-seeks
2022-03-24 14:24:20 +09:00
Dean Herbert
e243a7c55d
Reword storage
param xmldoc to use stronger and better defined langauge
2022-03-24 12:45:11 +09:00
Dean Herbert
0cd29a73b9
Fix typo in xmldocs
2022-03-24 12:39:47 +09:00
Dean Herbert
a4d17a915f
Fix incorrect HUD component fallback
...
Legacy skins should now always show the legacy hud components. The
conditional here is no longer valid as fallback lookups happen at a
*skin*-fallback level rather than internal *source*-fallback.
Put another way, `LegacyDefaultSkin` (with user customisations) should
still display the classic HUD components even if a font is not provided,
as that font will be available via the skin lookup hierarchy.
The TODO removed in this commit has been already resolved so this code
is no longer required.
2022-03-24 12:36:20 +09:00
Dan Balasescu
547418e47e
Revert "Remove PopoverButton class"
...
This reverts commit 6b712be97d
.
2022-03-24 11:15:51 +09:00
Dean Herbert
7296bad294
Convert LegacyBeatmapSkin
to use nullable
2022-03-24 00:24:06 +09:00
Dean Herbert
194bf4fb05
Convert LegacySkin
to use nullable
2022-03-24 00:23:55 +09:00
Dean Herbert
3e020073c5
Convert Skin
to use nullable
2022-03-24 00:23:55 +09:00
Dean Herbert
05c7e09d79
Make Textures
and Samples
read-only
2022-03-24 00:02:38 +09:00
Dean Herbert
c079a9cd32
Add comment regarding equality check importance in LegacyHitSampleInfo
2022-03-23 20:18:44 +09:00
Dean Herbert
997c091a8d
Revert "Remove IsLayered
from LegacyHitSampleInfo
comparison"
...
This reverts commit 4523393208
.
2022-03-23 20:15:17 +09:00
Dean Herbert
2ea9e5245c
Revert "Remove IsLayered
from GetHasCode
implementation"
...
This reverts commit 16ee6b5fc7
.
2022-03-23 20:15:13 +09:00
Dan Balasescu
34a367b369
Merge branch 'master' into multiplayer-countdown-timers-2
2022-03-23 15:40:50 +09:00
Dean Herbert
6542f974f2
Merge branch 'master' into skin-fuck
2022-03-23 15:30:22 +09:00
Dan Balasescu
a83a90e675
Rename countdown Delay -> Duration
2022-03-23 15:21:16 +09:00
Dan Balasescu
f7c0047206
Send time remaining in countdowns instead
2022-03-23 15:19:43 +09:00
Dean Herbert
078288a616
Make "skin.ini" the default skin filename and remove redundant parameters
2022-03-23 15:05:01 +09:00
Dean Herbert
7a1909bf97
Change parameter order of LegacySkin
to put IStorageResourceProvider
first
...
The optional resource store should not be before the (basically)
required resource provider.
2022-03-23 15:02:04 +09:00
Dean Herbert
d0ea1739b4
Remove skin configuration stream logic as it is no longer required
2022-03-23 14:57:42 +09:00
Dean Herbert
9d3c6ade62
Remove unnecessary skin reading hack in DefaultLegacySkin
2022-03-23 14:57:42 +09:00
Dean Herbert
6c405f1dee
Remove storage
override from LegacyBeatmapSkin
2022-03-23 14:57:42 +09:00
Dean Herbert
b48aa1d8fa
Ensure HitObjectSampleTest
's TestWorkingBeatmap
provides the marking resource store correctly
2022-03-23 14:57:42 +09:00
Dean Herbert
e56d13d8be
Fix realm backed store not being initialised for some tests
2022-03-23 14:57:42 +09:00
Dean Herbert
a5acd38fd5
Fix HitObjectSampleTest
adding null files to realm models
2022-03-23 14:57:42 +09:00
Dean Herbert
00aea9bef0
Only use legacy resources lookup for protected (aka default) skin
2022-03-23 14:57:42 +09:00
Dean Herbert
3c38b14228
Documentation improvements
2022-03-23 14:57:42 +09:00
Dean Herbert
32e2cfb8ee
Leave realm resource store construction to base class
2022-03-23 14:57:42 +09:00
Dean Herbert
e1236e07ad
Fix extensions not being specified in time for realm file caching
2022-03-23 14:57:42 +09:00
Dean Herbert
a7f63fb034
Make providing a custom ResourceStore
to LegacyBeatmapSkin
optional (for tests only)
2022-03-23 14:57:42 +09:00
Dean Herbert
35d2f973a3
Prefer provided resource store over realm backed to keep tests working
2022-03-23 14:57:42 +09:00
Dean Herbert
b4d89b4e31
Replace duplicate LegacySkinResourceStore
class with RealmBackedResourceStore
2022-03-23 14:57:42 +09:00
Dean Herbert
5c4a74378d
Remove Textures
and Samples
initialisation to Skin
2022-03-23 14:57:42 +09:00
Dean Herbert
657daf07d7
Update LocalisationAnalyser to support .net6
2022-03-23 11:03:24 +09:00
Dan Balasescu
d4ad4ac9db
Limit countdown updates to once per second
2022-03-23 10:50:05 +09:00
Dan Balasescu
6b712be97d
Remove PopoverButton class
2022-03-23 10:40:38 +09:00
Dan Balasescu
9138aaf780
Split MultiplayerReadyButton
2022-03-23 10:38:56 +09:00
Dan Balasescu
1ffa1e1219
Merge pull request #17400 from nagilson/screen-mod-retention
...
Fix mods from single player carrying over to multiplayer
2022-03-23 08:36:15 +09:00
Dan Balasescu
8591630e5c
Merge branch 'master' into editor-exit-harsh-blocking
2022-03-23 07:06:25 +09:00
Bartłomiej Dach
51a1721bc9
Fix unprotected access to potentially-null DI'd dialog overlay
2022-03-22 22:10:05 +01:00
Bartłomiej Dach
f3aad77239
Remove unused local variable
2022-03-22 22:00:24 +01:00
Bartłomiej Dach
a38bafab91
Remove unused using directive
2022-03-22 22:00:05 +01:00
Bartłomiej Dach
8647bebdca
Merge branch 'master' into hold-to-discard-changes
2022-03-22 20:37:43 +01:00
Bartłomiej Dach
8192fb47fe
Merge branch 'master' into skin-editor-eat-input
2022-03-22 19:22:48 +01:00
Dean Herbert
09ec49e6fa
Rename realm-backed resource store in preparation for non-legacy usage
2022-03-22 18:31:18 +09:00
Dean Herbert
ff8352b749
Merge branch 'master' into screen-mod-retention
2022-03-22 17:27:26 +09:00
Dean Herbert
483fb84b56
Fix typo in FinishCountdown
method
2022-03-22 16:50:13 +09:00
Dean Herbert
61ddf1e6cf
Disallow exiting the editor without saving (unless explicitly confirming)
2022-03-22 15:42:56 +09:00
Dean Herbert
f95bd89166
Revert editor exit behaviour to exit without changes for now
2022-03-22 14:46:57 +09:00
Dean Herbert
fb7f9a81db
Remove unnecessary equality check in skin editor construction path
2022-03-22 14:35:13 +09:00
Dan Balasescu
23be0f1be9
Remove availability picker for now
2022-03-22 14:34:06 +09:00
Dan Balasescu
d0fee53e1f
Implement auto countdown timers
...
Change to using TimeSpan
2022-03-22 14:34:06 +09:00
Dean Herbert
0fcb3bdba9
Fix beatmap date added not being updated on reimporting a soft deleted beatmap
...
Addresses concerns raised in https://github.com/ppy/osu/discussions/17399 .
2022-03-22 14:10:36 +09:00
Dan Balasescu
4630aa15cc
Apply refactorings according to reviews
2022-03-22 12:54:19 +09:00
NAGILSON
17b639b404
Implement suggested change to wipe mods on multiplayer screen
2022-03-21 22:42:17 -04:00
Dan Balasescu
36772ec652
Merge pull request #17356 from apollo-dw/strict-tracking
...
Implement "Strict Tracking" mod in osu!
2022-03-22 07:32:36 +09:00
Dan Balasescu
aea03ca21d
Merge pull request #17359 from frenzibyte/fix-score-panel-max-combo
...
Improve method of retrieving beatmap maximum combo for results score panels
2022-03-22 06:28:30 +09:00
Dean Herbert
9a2691c1bc
Remove unnecessary schedule
2022-03-21 23:54:47 +09:00
Salman Ahmed
33acc5d720
Remove no longer valid comments
2022-03-21 14:06:53 +03:00
Salman Ahmed
058fbbbe6c
Remove unused using directive
2022-03-21 14:06:36 +03:00
Dean Herbert
2a696783af
Remove unused const in SkinEditorOverlay
2022-03-21 17:33:56 +09:00
Dean Herbert
2f18c512cd
Convert SkinEditorOverlay
to an OverlayContainer
to allow it to block input
2022-03-21 17:33:56 +09:00
Dean Herbert
3643f879e4
Add test coverage of skin editor settings slider not working via keyboard adjustments
2022-03-21 17:33:56 +09:00
Dean Herbert
36868dbdb4
Add the ability to override the user setting for hold-to-confirm containers
...
Sometimes the user is not right.
2022-03-21 16:07:27 +09:00
Dean Herbert
d811a70f4b
Change button types on editor exit dialog to match purpose
...
Addresses https://github.com/ppy/osu/discussions/17363 .
2022-03-21 16:06:59 +09:00
Dean Herbert
b42081dd9b
Add DangerousButton
for use in popup dialogs
2022-03-21 16:06:45 +09:00
Dean Herbert
31570d3114
Merge pull request #17252 from jai-x/new-chat-channel-control
...
Implement `ChannelListItem` for new chat design
2022-03-21 15:41:00 +09:00
Dean Herbert
3bb01fd595
Fix close button animation not being applied correct on mouse down due to conflicting scales
2022-03-21 14:41:57 +09:00
Dean Herbert
7ca3beb7cc
Also add fade to ChannelItem
selected box
2022-03-21 14:41:42 +09:00
Dean Herbert
428e439f40
Remove space between '#' and channel name
...
This was in flyte's design (he was following discord) but doesn't feel
too correct when it's not aligned with anything else. We can revisit
this if/when we have better glyphs to represent channel types.
2022-03-21 14:36:56 +09:00
Dean Herbert
16caf2d30b
Add slight animation when highlighting an unread channel
2022-03-21 14:34:54 +09:00
Dean Herbert
692362131e
Add animation when mention pill appears (or a new message arrives)
2022-03-21 14:31:51 +09:00
Dean Herbert
11b050b66b
Add slight fade when hovering ChannelListItem
s
2022-03-21 14:28:14 +09:00
Dean Herbert
9eda2f2df1
Remove box surrounding close button
2022-03-21 14:25:29 +09:00
Dean Herbert
f922a6b556
Rename renaming button/pill classes
2022-03-21 14:15:22 +09:00
Dean Herbert
812343b410
Merge branch 'master' into new-chat-channel-control
2022-03-21 14:14:02 +09:00
Dean Herbert
355b0fa314
Fix loading player via skin editor still allowing changing current audio track
...
`PlayerLoader` is required in the sequence to get the game into the
correct state for gameplay right now. Applying ths simplest fix here.
Closes https://github.com/ppy/osu/issues/17351 .
2022-03-21 13:49:56 +09:00
Salman Ahmed
5c1e11c153
Merge branch 'master' into queue-list-counter
2022-03-21 05:01:09 +03:00
hwabis
06136b2247
Revert OsuTabItem Text to protected, update tab count test
2022-03-20 21:37:02 -04:00
hwabis
8fbdd06895
add queue tab count test
2022-03-20 16:24:41 -04:00
Salman Ahmed
b9859f9f21
Obsolete BeatmapInfo.MaxCombo
and suppress in usages
2022-03-20 16:30:29 +03:00
Salman Ahmed
c2063f415d
Remove unnecessary MaxCombo
migration between unmapped database fields
2022-03-20 16:27:54 +03:00
Salman Ahmed
aef40da8d4
Add note about null return value
2022-03-20 16:24:30 +03:00
Salman Ahmed
2a78042038
GetBeatmapMaximumComboAsync
-> GetMaximumAchievableComboAsync
2022-03-20 16:18:53 +03:00
Salman Ahmed
e1d22e58bf
Simplify queue count text logic
2022-03-20 06:25:14 +03:00
Salman Ahmed
7529d6fc00
Bind queue items during playlist initialization
...
Along with where the other bindables are bound together (only bind, not
listening).
2022-03-20 06:23:44 +03:00
Salman Ahmed
eca7975864
Compute the beatmap maximum achievable combo instead of Beatmap.MaxCombo
2022-03-20 05:38:14 +03:00
Salman Ahmed
d36f32a9c9
Introduce method for computing maximum achievable combo properly
2022-03-20 05:38:14 +03:00
Salman Ahmed
c5cc7eec79
Add explicit todo about removing BeatmapInfo.MaxCombo
...
Using that property is a trap basically.
2022-03-20 05:38:14 +03:00
Jai Sharma
f3702fbefb
Pass correct params to UpdateableAvatar
ctor in ChannelListItem
2022-03-19 22:20:17 +00:00
Jai Sharma
ba5a43b526
Rename ControlItem
-> ChannelListItem
and associated classes
2022-03-19 21:49:14 +00:00
Jai Sharma
653bb47dd5
Use UpdateableAvatar
and remove redundant ControlItemAvatar
class
2022-03-19 21:36:11 +00:00
Jai Sharma
5373c3066f
Use OsuAnimatedButton
as base for ControlItemClose
2022-03-19 21:23:32 +00:00
apollo-dw
149cfd338d
Use new mod-related object types for Strict Tracking
2022-03-19 18:29:44 +00:00
hwabis
ef823d58a7
address frenzibyte review (refactor bindable flow, clean up CI stuff)
2022-03-19 13:05:35 -04:00
Jai Sharma
a293e0c766
Remove redundant ControlItemText
class
2022-03-19 16:44:58 +00:00
Salman Ahmed
9afe82a0d5
Fix potentially null drawable call to SetLayoutPosition
2022-03-19 14:54:58 +03:00
Dean Herbert
d681643c38
Merge pull request #17299 from nekodex/arm64
...
Update download links for macOS builds (to add Apple Silicon)
2022-03-19 20:45:51 +09:00
Dean Herbert
9aa902785c
Merge pull request #17327 from frenzibyte/simplify-extension-methods
...
Simplify `IncreasesCombo`/`BreaksCombo` helper method implementation
2022-03-19 20:23:09 +09:00
Bartłomiej Dach
b7d5a628bc
Merge branch 'master' into fix-spectator-seeks-hot
2022-03-19 11:39:01 +01:00
Dean Herbert
a903aee17e
Use schedule to workaround seek issue instead
2022-03-19 18:00:14 +09:00
Dean Herbert
cf2212e794
Revert "Fix spectator not starting from correct seek point (hotfix)"
...
This reverts commit 2b59eff465
.
2022-03-19 17:20:54 +09:00
Dean Herbert
2b59eff465
Fix spectator not starting from correct seek point (hotfix)
2022-03-19 15:14:25 +09:00
Dean Herbert
63998ad9f1
Add test coverage of SpectatorPlayer
failing to seek on inopportune frame arrival time
2022-03-19 15:06:22 +09:00
Dean Herbert
dae5569e36
Use nullable
in PlayerLoader
2022-03-19 15:06:22 +09:00
Dean Herbert
da76358ee0
Expose the loading player in PlayerLoader
2022-03-19 15:06:22 +09:00
Salman Ahmed
b99541fb5e
Revert "Swap placements of "hold for menu" and key counter"
...
This reverts commit 5bcb7c167c
.
2022-03-19 08:08:07 +03:00
hwabis
5d16519a82
make code prettier
2022-03-18 23:41:55 -04:00
Salman Ahmed
ad9b119e3d
Reduce "hold for menu" radius of visibility
2022-03-19 05:04:54 +03:00
Salman Ahmed
486be83177
Calculate position adjustment distance in local parent space
2022-03-19 05:04:13 +03:00
Salman Ahmed
5bcb7c167c
Swap placements of "hold for menu" and key counter
2022-03-19 05:02:22 +03:00
Salman Ahmed
0adad3a599
Handle potential null room hosts
2022-03-19 04:01:35 +03:00
hwabis
5a5629eb5a
(works now) use BindValueChanged to set the Queue text
2022-03-18 20:47:45 -04:00
hwabis
5e5fbc496e
(still not working) try bindables instead of int
2022-03-18 20:32:37 -04:00
hwabis
d9b2a29c6d
(not working yet) add MultiplayerPlaylistTabControl, "Queue ({count})"
2022-03-18 20:02:26 -04:00
hwabis
faa36c78e5
put count and tabs into new fillflowcontainer
2022-03-18 12:55:00 -04:00
Salman Ahmed
8078a8c1f8
Simplify IncreasesCombo
/BreaksCombo
helper method implementation
2022-03-18 17:18:42 +03:00
Dean Herbert
fc75aa0807
Merge pull request #17324 from frenzibyte/score-panel-max-combo
...
Display beatmap maximum combo next to score combo in results panel
2022-03-18 22:59:38 +09:00
Dan Balasescu
4b23f02f03
Merge pull request #17320 from peppy/hit-error-meter-settings
...
Add new settings for adjusting the hit error display
2022-03-18 22:28:20 +09:00
Salman Ahmed
fa8eb1feec
Update score panel to check for all combo-breaking statistics
2022-03-18 15:23:14 +03:00
Salman Ahmed
5ec2d86c09
Update ScoreProcessor
to use new defined helper methods
2022-03-18 15:22:53 +03:00
Salman Ahmed
fc576b1369
Separate increase/break combo helper methods from AffectsCombo
2022-03-18 15:22:01 +03:00
Dan Balasescu
04f4e81852
Rename start countdown request
2022-03-18 21:05:19 +09:00
Dean Herbert
ed90dc6d6b
Fix centering of labels using Height
instead of location to better handle rotations
2022-03-18 20:17:04 +09:00
Dean Herbert
806a16d8f6
Fix SkinComponentToolbox
attempting to create instances of abstract classes
2022-03-18 20:13:15 +09:00
Dean Herbert
bd488d139d
Better centre text labels for hit error meter
2022-03-18 20:11:05 +09:00
Salman Ahmed
af22e67e15
Fix perfect combo check not accounting for LargeTickMiss
...
`LargeTickMiss` can affect combo, see
a352a140bc/osu.Game/Rulesets/Scoring/HitResult.cs (L124-L144)
.
2022-03-18 13:11:41 +03:00
Salman Ahmed
9215384229
Display beatmap maximum combo in score panel
2022-03-18 13:11:41 +03:00
Dean Herbert
7c9fe4036c
Add setting to change the style of the early/late markers
2022-03-18 17:50:37 +09:00
Dean Herbert
919583137e
Add line style for centre marker
2022-03-18 17:50:37 +09:00
Dean Herbert
cdeab1b14e
Add setting to change the style of the centre marker
2022-03-18 17:50:37 +09:00
Dean Herbert
331cb2aa80
Add setting to show or hide the moving average arrow
2022-03-18 17:50:37 +09:00
Dean Herbert
3f92bef9df
Add setting for judgement line thickness
2022-03-18 17:50:37 +09:00
Dean Herbert
611562c650
Add more comments around catch up logic
2022-03-18 16:21:14 +09:00
Dean Herbert
0988c2b0fa
Move DrawableRuleset
binding to LoadComplete
to avoid exceptions on InputManager
access
2022-03-18 15:28:48 +09:00
Dean Herbert
f09a946722
Start GameplayClockContainer
paused for better state control
2022-03-18 15:28:22 +09:00
Dean Herbert
59aef88504
Simplify clock reset/start flow in MultiSpectatorScreen
2022-03-18 15:07:57 +09:00
hwabis
c2e7ff7e3e
display count of listQueue
2022-03-18 01:37:53 -04:00
Dan Balasescu
72843a6797
Add support for starting/stopping countdowns
2022-03-18 14:33:09 +09:00
Dan Balasescu
3b938865a1
Add room structure for countdown timers
2022-03-18 14:31:57 +09:00
Dan Balasescu
efce471f0b
Add countdown button + popover
2022-03-18 14:31:57 +09:00
Dan Balasescu
b76a87e6f8
Split ready button visual logic into button itself
2022-03-18 14:31:57 +09:00
Salman Ahmed
1bd08b4a4b
Remove kick button fading as well to not look jarring
2022-03-18 08:09:15 +03:00
Dean Herbert
dfda093f4b
Rename icon creation method
2022-03-18 14:03:52 +09:00
Dean Herbert
5d940ded09
Fix incorrect usage of nullable in ControlItemMention
2022-03-18 13:59:03 +09:00
Dean Herbert
d1fd14e287
Add missing nullable
2022-03-18 13:57:36 +09:00
Salman Ahmed
98b420ee6f
Remove no longer correct crown fade animation
...
Since the host is pinned to the top without any animation, it would look
jarring for the crown to fade away from the old panel (and at a 50ms
duration).
2022-03-18 07:25:12 +03:00
Salman Ahmed
1c899d00b9
Pin multiplayer host panel to the top of the list
2022-03-18 07:25:03 +03:00
Dan Balasescu
af6d53ad64
Merge pull request #17279 from peppy/skin-editor-borrowed-dependencies
...
Only show components in skin editor which are usable on the current screen
2022-03-18 11:29:12 +09:00
Bartłomiej Dach
cf623a2889
Merge branch 'master' into multiplayer-button-refactor
2022-03-17 22:33:48 +01:00
Bartłomiej Dach
50d64e1b65
Merge branch 'master' into skin-editor-borrowed-dependencies
2022-03-17 21:27:43 +01:00
Dean Herbert
c6be26eb01
Rename start time calculation method and add more commenting to explain purpose better
2022-03-18 01:35:50 +09:00
Dean Herbert
e3ab5de8cd
Tidy up constructor logic overlap with gameplayStartTime
2022-03-18 01:35:50 +09:00
Dean Herbert
a4a0241800
Use a more explicit flow to set and reset GameplayClockContainer
start time
2022-03-17 20:57:30 +09:00
Dean Herbert
e3a8bb2d1c
Add test coverage of SpectatorPlayer
failing to seek on inopportune frame arrival time
2022-03-17 20:57:30 +09:00
Dean Herbert
5164b4d640
Use nullable
in PlayerLoader
2022-03-17 20:57:30 +09:00
Dean Herbert
21348e6620
Merge pull request #17290 from frenzibyte/fix-message-highlight-crash
...
Fix message highlighting crashing when chat overlay is never open
2022-03-17 19:54:39 +09:00
Dean Herbert
e3a5299b1a
Expose the loading player in PlayerLoader
2022-03-17 19:32:01 +09:00
Dean Herbert
4650c197a3
Make SongProgress.DrawableRuleset
nullable to allow test scene to work
2022-03-17 18:45:37 +09:00
Jamie Taylor
0d79dd5e62
Update SimpleUpdateManager to handle new macOS build naming scheme
2022-03-17 18:45:31 +09:00
Dan Balasescu
da0ffab14e
Integrate ready button implementation
2022-03-17 18:43:04 +09:00
Dean Herbert
e252f1a3cd
Add explanation about try-catch logic in SkinComponentToolbox
2022-03-17 18:40:26 +09:00
Dan Balasescu
461d41529b
Integrate spectate button implementation
2022-03-17 18:36:33 +09:00
Dan Balasescu
7b8fb341a5
Fix not handling IconButtons
2022-03-17 17:59:28 +09:00
Dean Herbert
1d83b36cfc
Merge branch 'master' into skin-editor-borrowed-dependencies
2022-03-17 15:09:04 +09:00
Dean Herbert
fd71aa4a4d
Change SongProgress
resolution requirements to be required
2022-03-17 15:05:54 +09:00
Dean Herbert
ac739c9dae
Change PerformancePointsCounter
resolution requirements to be required
...
All other similar UI components have required dependencies, so this is
mainly to bring things in line with expectations. I am using this fact
in the skin editor to only show components which can be used in the
current editor context (by `try-catch`ing their
`Activator.CreateInstance`).
2022-03-17 14:56:35 +09:00
Salman Ahmed
7aae9bbd1b
Improve channel bindable logic in ChatOverlay
to avoid potential nullrefs
2022-03-17 08:31:38 +03:00
Dan Balasescu
e3cbde5099
Merge pull request #17282 from peppy/skin-editor-reset-position
...
Add "Reset position" menu item in skin editor
2022-03-17 14:20:24 +09:00
Dan Balasescu
e8886e4c50
Merge pull request #17286 from frenzibyte/rewrite-mod-instantiation-method
...
Update mod instantiation utility method inline with `APIMod.ToMod` changes
2022-03-17 14:19:55 +09:00
Dan Balasescu
1eac0f41bf
Remove unused using
2022-03-17 13:44:54 +09:00
Dan Balasescu
07433d0540
Merge pull request #17278 from peppy/skin-editor-multiple-component-settings
...
Show settings for multiple skin components in a selection
2022-03-17 13:43:59 +09:00
Salman Ahmed
e0a06bf5d9
Update mod instantiation utility method inline with APIMod.ToMod
changes
2022-03-17 06:28:10 +03:00
Salman Ahmed
83189d1f07
Revert "Update mod instantiaton utility method to no longer check for validity"
...
This reverts commit 1a04260807
.
2022-03-17 06:24:55 +03:00
Salman Ahmed
1a04260807
Update mod instantiaton utility method to no longer check for validity
2022-03-17 05:51:12 +03:00
Bartłomiej Dach
624f9fc774
Implement mod settings area component
2022-03-16 23:13:11 +01:00
Bartłomiej Dach
b21fa78cbf
Move dependencies out of fields to BDL args where possible
2022-03-16 21:55:36 +01:00
Bartłomiej Dach
e577152d2a
Merge branch 'master' into skin-editor-borrowed-dependencies
2022-03-16 21:11:00 +01:00
Dean Herbert
38d15145ac
Merge branch 'master' into skin-editor-multiple-component-settings
2022-03-16 22:23:53 +09:00
Dean Herbert
6df36171b5
Merge branch 'master' into skin-editor-toolbox-ui
2022-03-16 22:21:10 +09:00
Dan Balasescu
7f65f6adcc
Merge branch 'master' into skin-editor-sidebars
2022-03-16 21:12:18 +09:00
Dan Balasescu
b9387c7ff1
Merge branch 'master' into skin-editor-scene-library
2022-03-16 20:42:30 +09:00
Dan Balasescu
7faa35950a
Merge pull request #17272 from peppy/skin-editor-hide-toolbar
...
Hide the game toolbar (and overlays) when entering the skin editor
2022-03-16 20:42:20 +09:00
Dean Herbert
7e52623645
Add "Reset position" menu item in skin editor
2022-03-16 20:02:52 +09:00
Dean Herbert
cc356bcfe4
Show components available for current screen only (using actual live dependencies)
2022-03-16 19:42:00 +09:00
Dean Herbert
b07ca87965
Merge branch 'skin-editor-toolbox-ui' into skin-editor-borrowed-dependencies
2022-03-16 19:38:28 +09:00
Dean Herbert
27122c17c9
Show settings for multiple components in a selection
2022-03-16 19:35:45 +09:00
Dean Herbert
54e351efe9
Convert top level skin editor layout to use grid container
...
Fix `SkinEditor`'s initial target not being a `Screen`
2022-03-16 19:30:51 +09:00
Dean Herbert
4525ed645c
Update skin editor to use EditorSidebar
2022-03-16 19:30:51 +09:00
Dean Herbert
59cb1ac126
Order components by name for now
2022-03-16 19:21:15 +09:00
Dean Herbert
e4a6b7ae91
Expand toolbox component items on hover
2022-03-16 19:21:15 +09:00
Dean Herbert
fdb411c0f3
Update skin editor toolbox design to suck less
2022-03-16 19:21:15 +09:00
Dean Herbert
b08d4bb8eb
Move SceneLibrary
implementation to its own file
2022-03-16 19:13:52 +09:00
Dean Herbert
ee3715f5cf
Use OverlayColourProvider
and adjust metrics to roughly match new designs
2022-03-16 19:13:52 +09:00
Dean Herbert
aff6a5a428
Better align scene selector with menu bar
2022-03-16 19:13:52 +09:00
Dean Herbert
c6aa32a003
Add basic song select setup for skinnability
2022-03-16 19:12:06 +09:00
Dean Herbert
8d85723a62
Split out SceneLibrary
into its own component
2022-03-16 19:12:06 +09:00
Dean Herbert
d062810ff2
Add basic scene selector
2022-03-16 19:12:06 +09:00
Dean Herbert
c807ad7e4e
Ensure toolbar is hidden even when the active screen is changed while the editor is open
2022-03-16 19:11:22 +09:00
Dean Herbert
86960c791f
Close overlays and toolbar on entering the skin editor
2022-03-16 19:00:23 +09:00
Dean Herbert
99e3161cf0
Fix SkinEditor
's initial target not being a Screen
2022-03-16 18:57:47 +09:00
Dean Herbert
603527d72d
Fix potential crash when highlighting chat messages
...
Test failed locally in `TestPublicChannelMention`. This test seems to
specify that the same message may arrive twice with the same ID, so
rather than overthinking this one I propose we just use `FirstOrDefault`.
```csharp
TearDown : System.AggregateException : One or more errors occurred.
(Sequence contains more than one matching element)
----> System.InvalidOperationException : Sequence contains more than
one matching element
--TearDown
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean
includeTaskCanceledExceptions)
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout,
CancellationToken cancellationToken)
at osu.Framework.Extensions.TaskExtensions.WaitSafely(Task task)
at osu.Framework.Testing.TestScene.checkForErrors()
--InvalidOperationException
at System.Linq.ThrowHelper.ThrowMoreThanOneMatchException()
at System.Linq.Enumerable.TryGetSingle[TSource](IEnumerable`1 source,
Func`2 predicate, Boolean& found)
at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1
source, Func`2 predicate)
at
osu.Game.Overlays.Chat.DrawableChannel.<processMessageHighlighting>b__14_0()
in
/Users/dean/Projects/osu/osu.Game/Overlays/Chat/DrawableChannel.cs:line
102
at osu.Framework.Threading.ScheduledDelegate.RunTaskInternal()
```
2022-03-16 18:38:06 +09:00
Dan Balasescu
7e8aa77b2b
Merge pull request #17260 from peppy/editor-sidebar
...
Add `EditorSidebar` component
2022-03-16 18:20:18 +09:00
Dean Herbert
ba1642a680
Allow section headers to wrap
2022-03-16 17:19:08 +09:00
Dan Balasescu
d80830b415
Merge pull request #17226 from peppy/skin-component-settings
...
Allow skin components to have settings
2022-03-16 17:12:11 +09:00
Jai Sharma
e38d9eafa0
Use BindTarget
instead of caching for ControlItem
unread flow
2022-03-15 22:37:15 +00:00
Jai Sharma
49b74d7867
Use BindTarget
instead of caching for ControlItem
mentions bindable flow
2022-03-15 22:33:36 +00:00
Jai Sharma
481b8fe80b
Use Orange1
for ControlItemMention
background colour
2022-03-15 22:22:32 +00:00
Jai Sharma
7621e779fa
Move ControlItem
Action assignments into BDL
2022-03-15 22:19:58 +00:00
Dean Herbert
a0a033520f
Rider no add licence headers
2022-03-15 16:48:14 +09:00
Dean Herbert
4ab5d6e3f0
Remove unnecessary FillFlowContainer
from section
2022-03-15 16:47:08 +09:00
Dean Herbert
9e476ced63
Add EditorSidebar
component
2022-03-15 16:38:00 +09:00
Dean Herbert
2b02a6555b
Remove current screen check from skin editor changes
2022-03-15 15:40:26 +09:00
Dean Herbert
1814a325d8
Move GetSettingUnderlyingValue
to a SettingSource
extension method
2022-03-15 14:54:00 +09:00
Dean Herbert
6d5692fcec
Fix typo in setting name
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-03-15 14:25:05 +09:00
Dean Herbert
6fb06d69cc
Merge branch 'master' into pp-counter-alloc-reduction
2022-03-15 13:31:57 +09:00
Dean Herbert
deb4aeb4b2
Merge pull request #17242 from smoogipoo/performance-calculator-cleanup
...
Restructure PerformanceCalculator to not require ScoreInfo argument
2022-03-15 13:31:34 +09:00
Dan Balasescu
4ff6879b85
Fix incorrect copied room end dates
2022-03-15 11:30:57 +09:00
Dan Balasescu
ca62560495
Resolve inspections
2022-03-15 09:20:32 +09:00
Dan Balasescu
3a6d254d1f
Add safeguards around incorrect ruleset sources
2022-03-15 09:20:32 +09:00
Jai Sharma
73a0373b4e
Code quality fixes
2022-03-14 21:56:56 +00:00
Jai Sharma
ec61b88ec2
Adjust ControlItem padding
2022-03-14 21:39:57 +00:00
Jai Sharma
75958bf270
Refactor ControlItemText to use bindable flow for unread state
2022-03-14 21:32:30 +00:00
Jai Sharma
b01a809d55
Refactor ControlItemMention to use bindable flow
2022-03-14 21:26:33 +00:00
Jai Sharma
1f0f6990f0
Use ColourProvider.Content1 for ControlItemText colour
2022-03-14 21:16:28 +00:00
Jai Sharma
3aa343b987
Use OsuColour.YellowLight for ControlItemMention background
2022-03-14 21:14:33 +00:00
Jai Sharma
9621ef9437
Use OsuColour.Red1 for ControlItemClose hover colour
2022-03-14 21:10:39 +00:00
Jai Sharma
e91af664ef
Adjust ControlItemAvatar placeholder animation and colour
2022-03-14 20:37:54 +00:00
Jai Sharma
12472593cc
Mark required dependencies as non-nullable
2022-03-14 20:14:04 +00:00
Jai Sharma
c0d82dfb41
Code quality fixes
2022-03-14 19:42:55 +00:00
Jai Sharma
39c30516d0
Implement ChannelControlItem
for new chat design
...
Adds new component `ChannelControlItem` and it's child components to be
used as the clickable control in the new chat sidebar for joined
channels.
Has public properties `HasUnread` and `MentionCount` to control the
display of the channel having unread messages or mentions of the user.
Channel select/join requests are exposed via `OnRequestSelect` and
`OnRequestLeave` events respectively which should be handled by a parent
component.
Requires a cached `Bindable<Channel>` instance to be managed by a parent
component.
Requires a cached `OveralayColourScheme` instance to be provided by a
parent component.
2022-03-14 18:55:27 +00:00
Dean Herbert
e047413329
Merge pull request #17196 from frenzibyte/skinnable-welcome-intro
...
Add skinning support for "Welcome" intro sequence
2022-03-14 22:54:19 +09:00
Dean Herbert
8fdf2b13ac
Update framework
2022-03-14 22:23:50 +09:00
Dean Herbert
8b3360d6d2
Merge branch 'master' into confine-host-cursor
2022-03-14 22:23:45 +09:00
Dean Herbert
163cd48bf6
Further metrics tweaking
2022-03-14 19:27:53 +09:00
Dean Herbert
e91b3ae5f1
Move constants closer to usages
2022-03-14 19:18:47 +09:00
Dean Herbert
6eed2c35a4
Adjust visual appearance of BarHitErrorMeter
for easier reading
2022-03-14 19:16:38 +09:00
Dan Balasescu
e79bed8fbe
Merge branch 'master' into skin-component-settings
2022-03-14 18:54:27 +09:00
Dan Balasescu
dc1e5a456a
Merge pull request #17244 from peppy/preload-sample-pools
...
Fix samples not being preloaded before gameplay starts
2022-03-14 18:53:42 +09:00
Dean Herbert
16ee6b5fc7
Remove IsLayered
from GetHasCode
implementation
2022-03-14 18:12:04 +09:00
Dan Balasescu
fd93b42630
Merge pull request #17217 from peppy/skin-editor-reload-on-scene-change
...
Refactor `SkinEditor` to support switching target screens without full reload
2022-03-14 18:02:01 +09:00
Dan Balasescu
75470730cc
Merge pull request #17218 from peppy/skin-editor-target-other-containers
...
Allow skin editor to target different target containers for placement purposes
2022-03-14 17:40:41 +09:00
Dean Herbert
3c5fda5f23
Add early exist if the target screen is no longer current
2022-03-14 17:24:31 +09:00
Dean Herbert
39d95aa8cf
Add automatic preloading of sample pools at a Playfield
level
2022-03-14 17:19:48 +09:00
Dean Herbert
4523393208
Remove IsLayered
from LegacyHitSampleInfo
comparison
...
The equality of samples is generally used to compare the sample
equality, not its full properties. For instance, we don't compare
`Volume` in the base implementation.
Having `IsLayered` here breaks actual usages of equality, ie. for
pooling purposes.
2022-03-14 17:19:48 +09:00
Dean Herbert
8676a2587c
Add the ability for HitObject
s to specify auxiliary samples
2022-03-14 17:19:48 +09:00
Dan Balasescu
028750936c
Apply review suggestions
2022-03-14 17:10:37 +09:00
Dan Balasescu
8f9b72c2ee
Merge pull request #17239 from frenzibyte/storyboard-negative-scale
...
Fix drawable storyboard sprites not flipping origin on negative scale
2022-03-14 15:59:06 +09:00
Dan Balasescu
3fff7f4b7e
Require ScoreProcessor to receive ruleset
2022-03-14 15:51:10 +09:00
Dan Balasescu
9cc7f70872
Nullable annotate classes
2022-03-14 15:38:00 +09:00
Dan Balasescu
926827207a
Reduce calculator allocations in counter
2022-03-14 14:44:06 +09:00
Dan Balasescu
4a3e3aba65
Restructure PerformanceCalculator to not require ScoreInfo argument
2022-03-14 14:25:28 +09:00
Dan Balasescu
21beb8774d
Change to lambda method
2022-03-14 13:54:54 +09:00
Dan Balasescu
4ae6cba080
Expose UseDevelopmentServer as virtual
2022-03-14 13:49:38 +09:00
Salman Ahmed
c1697c7621
Update DrawableStoryboardSprite
to use helper method
2022-03-14 06:30:54 +03:00
Salman Ahmed
740a72e16d
Share origin adjustment logic between storyboard sprite and animation
2022-03-14 05:44:34 +03:00
Salman Ahmed
9cf05080da
Simplify conditionals to one XOR operations with comments
2022-03-14 04:40:35 +03:00
Salman Ahmed
0b8c89bfa8
Fix drawable storyboard sprites not flipping origin on negative scale
2022-03-14 03:50:12 +03:00
Salman Ahmed
c9d54834be
Fix SkinnableSprite
s in storyboards not autosizing to their textures
2022-03-14 03:46:13 +03:00
Dean Herbert
7d2752185d
Add disclaimer and adjust metrics of BigBlackBox
2022-03-13 17:03:25 +09:00
Dean Herbert
e4211104b0
Add new settings to the big black box
2022-03-13 17:03:25 +09:00
Dean Herbert
458136dfe7
Add BigBlackBox
for skinning testing purposes
2022-03-13 17:03:25 +09:00
Dean Herbert
8d1ee28e67
Add settings modification UI to skin editor
2022-03-13 17:03:25 +09:00
Dean Herbert
c99397f75a
Add the ability to add settings to skinnable elements
2022-03-13 17:03:25 +09:00
Dean Herbert
7a2a3528ef
Merge branch 'skin-editor-reload-on-scene-change' into skin-component-settings
2022-03-13 17:03:23 +09:00
Dean Herbert
0a1e55e4eb
Merge branch 'skin-editor-target-other-containers' into skin-component-settings
2022-03-13 17:03:22 +09:00
Dean Herbert
f95e753adb
Rename double-container variable name
2022-03-13 16:10:06 +09:00
Dean Herbert
d1a9b88fe7
Fix typo in comment
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-03-13 16:05:45 +09:00
Salman Ahmed
53c57661c7
Move implementtaion detail to inline comment
2022-03-11 18:34:22 +03:00
Salman Ahmed
5b70139b33
Avoid running message highlight processing more than once
2022-03-11 18:32:49 +03:00
Salman Ahmed
cc87563d57
Merge branch 'master' into chat-mention-highlight
2022-03-11 17:51:22 +03:00
Dean Herbert
3db42dd772
Allow skin editor to target different target containers for placement purposes
2022-03-11 23:23:32 +09:00
Dean Herbert
9a1ade4f79
Refactor SkinEditor
to support switching target screens without full reload
2022-03-11 23:08:40 +09:00
Susko3
ac55fea3c9
Confine the host cursor to area of 'everything' scaling container
2022-03-11 14:04:12 +01:00
Dean Herbert
32c7a023f8
Make OsuGame.ScreenChanged
private
and non-virtual
...
Just reducing complexity scope here.
2022-03-11 19:54:15 +09:00
Bartłomiej Dach
398af246a5
Merge branch 'master' into blueprint-container-selected-items-bind
2022-03-11 00:37:45 +01:00
Salman Ahmed
d07e3101ea
Improve message highlight handling in DrawableChannel
2022-03-10 23:07:15 +03:00
Salman Ahmed
a31611bdec
Improve channel switching flow in HighlightMessage
2022-03-10 23:07:15 +03:00
Salman Ahmed
8086f73451
Revert "Add functionality to switch to successfully joined channel"
...
This reverts commit c72e8a8b5e
.
2022-03-10 23:07:15 +03:00
Salman Ahmed
5315ff794a
Handle non-existing channels on message highlighting gracefully
2022-03-10 21:29:32 +03:00
Salman Ahmed
c72e8a8b5e
Add functionality to switch to successfully joined channel
2022-03-10 21:28:38 +03:00
Salman Ahmed
8cbc8b944f
Rescope scheduling and improve comment
2022-03-10 17:25:13 +03:00
Dean Herbert
68aedd63a7
Move SelectionHandler
's SelectedItems
binding to the base implementation
...
Until now it was up to each implementation to connect
`BlueprintContainer` to its `SelectionHandler`, which didn't make much
sense at all.
2022-03-10 23:22:19 +09:00
Dean Herbert
e31b174cc2
Merge pull request #17198 from smoogipoo/fix-beatmap-wedge-async-mutation
...
Fix beatmap wedge possibly applying transforms incorrectly and crashing
2022-03-10 23:12:58 +09:00
Dean Herbert
cee6a12d0b
Merge pull request #17199 from smoogipoo/fix-multiplayer-test-failures
...
Fix potential multiplayer crash with async disposal
2022-03-10 23:07:05 +09:00
Salman Ahmed
717ddbba4e
Fix skin components toolbox not autosizing properly
2022-03-10 16:30:20 +03:00
Dan Balasescu
885cb3ce5b
Add current screen checks for added safety
2022-03-10 20:03:02 +09:00
Dan Balasescu
2de7795844
Fix always rolling up from zero
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
2022-03-10 19:59:05 +09:00
Dean Herbert
2d135e5be6
Explain purpose of Schedule
call in MultiplayerPlayer.onResultsReady
2022-03-10 19:56:13 +09:00
Dean Herbert
d1f8fd01df
Merge pull request #17180 from jai-x/new-chat-channel-listing
...
Implement `ChannelListing` for new chat design
2022-03-10 19:27:58 +09:00
Dan Balasescu
dfe98c6536
Merge pull request #17162 from peppy/realm-offset-feedback-fix-2
...
Fix feedback from realm writes causing offset slider to jump around
2022-03-10 18:53:08 +09:00
Dan Balasescu
45d537ef72
Fix potential multiplayer crash with async disposal
2022-03-10 18:50:53 +09:00
Dan Balasescu
671d614c92
Fix beatmap wedge mutating transforms incorrectly
2022-03-10 17:54:33 +09:00
Dean Herbert
db5c2c15dc
Merge pull request #17164 from smoogipoo/scoreprocessor-rework
...
Rework ScoreProcessor score calculation methods to fix various issues
2022-03-10 16:48:58 +09:00
Dan Balasescu
c61397cc22
Fix whitespace/inspection
2022-03-10 16:22:27 +09:00
Dan Balasescu
13a4058efd
Merge pull request #17191 from peppy/fix-mod-conversion-exceptions
...
Change `ToMod` to return an `UnknownMod` rather than throw if a mod isn't available
2022-03-10 16:20:50 +09:00
Dan Balasescu
cf91353009
Merge branch 'master' into scoreprocessor-rework
2022-03-10 16:14:28 +09:00
Dean Herbert
46f2db1712
Move ChannelListingItem
spacing into item so input is always handled by an item in the list
...
Without this change, there would be a couple of pixels between each list
item where nothing would be hovered. This is a pretty annoying UX which
we should be avoiding we possible.
2022-03-10 15:58:57 +09:00
Dean Herbert
1a187d4dec
Add animation to checkbox when joning/leaving a channel
2022-03-10 15:54:42 +09:00
Dean Herbert
0155519343
Merge branch 'master' into new-chat-channel-listing
2022-03-10 15:49:06 +09:00
Dean Herbert
eaef27595c
Also mark UnknownMod
as not user-playable
2022-03-10 15:33:50 +09:00
Dean Herbert
03d7d1e6ca
Merge pull request #17195 from smoogipoo/classic-score-multiplier
...
Tune classic mod scaling per-ruleset
2022-03-10 14:32:52 +09:00
Dean Herbert
022dd88aef
Merge branch 'master' into chat-mention-highlight
2022-03-10 14:23:23 +09:00
Dan Balasescu
c17dba4948
Merge pull request #17193 from peppy/update-dependencies
...
Update dependencies
2022-03-10 12:26:13 +09:00
Salman Ahmed
2c1589e068
Add skinning support for "seeya" sample
2022-03-10 05:52:45 +03:00
Salman Ahmed
b8ee786d77
Add skinning support for "welcome" sample
2022-03-10 05:52:45 +03:00
Salman Ahmed
b38de6e580
Add skinning support for welcome sprite text
2022-03-10 05:52:43 +03:00
Dan Balasescu
c36badab4b
Add per-ruleset score multipliers for classic scoring
2022-03-10 10:26:09 +09:00
Salman Ahmed
b25c37ce62
Instantiate highlight background container on animation
...
Also removes the necessity of scheduling as it actually never worked as
intended, `Scheduler` will still update even when the chat line is
masked away, and the animation will never be held anyways.
The new duration of the animation should be enough for long scrolls
either way.
2022-03-10 03:49:42 +03:00
Salman Ahmed
cf9671cafb
Increase highlight delay to 1500ms
2022-03-10 02:50:15 +03:00
Salman Ahmed
80c0df6af5
Scroll chat line to channel center
...
We may eventually want that encapsulated within `ScrollIntoView`, as it
would also come in handy for `GameplayLeaderboard`.
2022-03-10 02:50:15 +03:00
Salman Ahmed
93cf93943f
Schedule chat line highlight after children to handle non-loaded lines
2022-03-10 02:48:33 +03:00
Salman Ahmed
2d8983383a
Revert newMessagesArrived
changes and always schedule highlight
...
In the case a message arrives and the chat overlay is hidden, clicking
on the mention notification will not work as the `HighlightedMessage`
bindable callback will execute before the scheduled `newMessagesArrived`
logic (which was hanging since the message arrived until the chat
overlay became open because of the notification).
Simplify things by always scheduling the `HighlightedMessage` bindable
callback.
2022-03-10 01:11:27 +03:00
Jai Sharma
b67f9269f9
Remove NewChat
namespace
2022-03-09 18:13:56 +00:00
Dean Herbert
94ff6a338f
Merge branch 'master' into scoreprocessor-rework
2022-03-09 23:04:18 +09:00
Dean Herbert
df500dec04
Merge pull request #17187 from smoogipoo/fix-playlist-copy
...
Fix unable to copy playlist rooms without first opening
2022-03-09 23:03:43 +09:00
Dean Herbert
5fb51b578f
Update dependencies
...
Mainly for a `Clowd.Squirrel` bump to fix https://github.com/ppy/osu/discussions/17190 .
2022-03-09 19:09:51 +09:00
Dean Herbert
02f44d7061
Merge branch 'master' into fix-mod-conversion-exceptions
2022-03-09 18:07:42 +09:00
Dean Herbert
2eb3365f46
Fix regressing issues when attempting to exit Player
after an unsuccessful beatmap load
2022-03-09 17:57:58 +09:00
Dean Herbert
1ee0be5e39
Ensure gameplay can't start when an UnknownMod
is present
2022-03-09 17:57:58 +09:00
Dean Herbert
0267aed846
Change ToMod
to return an UnknownMod
rather than throw if a mod isn't available
...
As seen by this kind of crash, having the `.ToMod` method throw can be
very problematic and also hidden (as it is used inside of models in
places where exceptions are not expected to occur).
Given there are tens of usages of this method, returning a placeholder
mod seems like a better idea than outright throwing.
```
An unhandled has occurred.
System.InvalidOperationException:
There is no mod in the ruleset (osu) matching the acronym AS.
at osu.Game.Online.API.APIMod.ToMod(Ruleset ruleset) in /Users/dean/Projects/osu/osu.Game/Online/API/APIMod.cs:line 54
at osu.Game.Scoring.ScoreInfo.<get_Mods>b__117_0(APIMod m) in /Users/dean/Projects/osu/osu.Game/Scoring/ScoreInfo.cs:line 193
at System.Linq.Enumerable.SelectArrayIterator`2.ToArray()
at osu.Game.Scoring.ScoreInfo.get_Mods() in /Users/dean/Projects/osu/osu.Game/Scoring/ScoreInfo.cs:line 193
at osu.Game.Screens.Select.Leaderboards.BeatmapLeaderboard.<>c.<subscribeToLocalScores>b__40_2(ScoreInfo s) in /Users/dean/Projects/osu/osu.Game/Screens/Select/Leaderboards/BeatmapLeaderboard.cs:line 199
at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
at osu.Game.Database.RealmObjectExtensions.Detach[T](IEnumerable`1 items) in /Users/dean/Projects/osu/osu.Game/Database/RealmObjectExtensions.cs:line 180
at osu.Game.Screens.Select.Leaderboards.BeatmapLeaderboard.<>c__DisplayClass40_0.<subscribeToLocalScores>g__localScoresChanged|1(IRealmCollection`1 sender, ChangeSet changes, Exception exception) in /Users/dean/Projects/osu/osu.Game/Screens/Select/Leaderboards/BeatmapLeaderboard.cs:line
209
at Realms.RealmCollectionBase`1.Realms.INotifiable<Realms.NotifiableObjectHandleBase.CollectionChangeSet>.NotifyCallbacks(Nullable`1 changes, Nullable`1 exception)
at Realms.NotifiableObjectHandleBase.NotifyObjectChanged(IntPtr managedHandle, IntPtr changes, IntPtr exception)
```
2022-03-09 17:57:55 +09:00
Dean Herbert
8bb07f83cd
Merge pull request #17054 from hlysine/mod-adaptive-speed
...
Implement Adaptive Speed mod
2022-03-09 17:56:34 +09:00
Dan Balasescu
4839bd8044
Notify if copying room fails
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
2022-03-09 16:47:47 +09:00
Dean Herbert
520d2d6cfa
Fix beatmap carousel panels accepting input while marked as not-visible
...
This is an issue as carousel panels manage their own animated state. If
they are marked as not-visible (done at a higher level, from filtering
or update pathways) but clicked while fading out, they will animate back
to a visible state but not be marked as visible.
No tests for this one as it's probably not worthwhile to test (and hard
to do so). Manual testing can be done with the following patch:
```diff
diff --git a/osu.Game/Screens/Select/BeatmapCarousel.cs
b/osu.Game/Screens/Select/BeatmapCarousel.cs
index c3d340ac61..3372242acc 100644
--- a/osu.Game/Screens/Select/BeatmapCarousel.cs
+++ b/osu.Game/Screens/Select/BeatmapCarousel.cs
@@ -255,7 +255,7 @@ private void
beatmapSetsChanged(IRealmCollection<BeatmapSetInfo> sender, ChangeS
}
foreach (int i in changes.NewModifiedIndices)
- UpdateBeatmapSet(sender[i].Detach());
+ Scheduler.AddDelayed(() =>
UpdateBeatmapSet(sender[i].Detach()), 100, true);
foreach (int i in changes.InsertedIndices)
UpdateBeatmapSet(sender[i].Detach());
```
- Enter gameplay and adjust beatmap offset then return to song select
and click the flashing panel.
OR
- Enter editor and save then return to song select and click the
flashing panel.
Closes https://github.com/ppy/osu/discussions/17171 .
2022-03-09 16:08:52 +09:00
Dan Balasescu
b07a1e8d09
Fix unable to copy playlist rooms without first opening
2022-03-09 15:38:00 +09:00
Dan Balasescu
ad0ca5673a
Fix avatar not clickable after watching replay
2022-03-09 14:39:02 +09:00
Dean Herbert
6bf436cd62
Only null the realm write task if it actually completed
2022-03-09 13:52:58 +09:00
Dean Herbert
affcf5180b
Merge pull request #17161 from smoogipoo/fix-listing-score-conversion
...
Fix scores not being recalculated in beatmap overlay
2022-03-09 13:32:45 +09:00
Dean Herbert
58aef25ad5
Merge pull request #17152 from bdach/mod-overlay/difficulty-multiplier
...
Implement difficulty multiplier display for new mod select design
2022-03-09 12:11:16 +09:00
Dan Balasescu
b3fd156f10
Merge pull request #17158 from peppy/realm-recover-from-newer-database-version
...
Add flow to allow recovery after running an older release (with a different realm database version)
2022-03-09 11:30:58 +09:00
Jai Sharma
7daa2d0ea4
Use correct fonts and colours in ChannelListingItem
2022-03-09 00:36:19 +00:00
Jai Sharma
7dd51a9c4a
Reorder class attributes
2022-03-09 00:12:44 +00:00
Jai Sharma
a3477c3841
Implement ChannelListing
for new chat design
...
Adds components `ChannelListing` and `ChannelListing` item with visual
test. Essentially a more simplified version of the existing
`ChannelSelectionOverlay` component.
Correctly implements `IFilterable` behaviour to filter child channel
items. Channel joined state is based on the underlying `Joined` bindable
of the `Channel` class.
Channel join/leave events are exposed via `OnRequestJoin` and
`OnRequestLeave` events which should be handled by parent component.
Requires a cached `OverlayColourScheme` instance to be provided by the
parent overlay component when added.
2022-03-08 22:30:58 +00:00
Dean Herbert
a2ef086c1f
Fix potential crash on rare incorrect firing of skin dropdown update methods
...
As brought to light by https://gist.github.com/smoogipoo/56eda7ab56b9d1966556f2ca7a80a847 .
There's a chance that the dropdown is not populated by the time
`updateSelectedSkinFromConfig` is fired via an external means (config
changes).
2022-03-09 01:08:13 +09:00
Dean Herbert
512536f5fe
Fix unconditional null in Equals
implementation
2022-03-08 23:25:51 +09:00
Dan Balasescu
6fd8b4d891
Safeguard method against invalid invocation
2022-03-08 22:30:44 +09:00
Dan Balasescu
f1c40bd9ed
Rework GetScore() method signatures + implementations
...
Rename legacy-facing overload to mention as much
2022-03-08 22:30:44 +09:00
Dan Balasescu
a8e99f1a95
Calculate classic score using total basic hitobject count
2022-03-08 21:49:41 +09:00
Dan Balasescu
5b6b8d1fa9
Remove GetStandardisedScore() proxy method
2022-03-08 21:49:41 +09:00
Dan Balasescu
6654977a7b
Add GetScore() overload with total hitobject count
2022-03-08 21:49:41 +09:00
Dan Balasescu
2c382bd1d9
Rename GetImmediateScore() as overload of GetScore()
2022-03-08 21:49:40 +09:00
Dean Herbert
c867068cae
Update framework
2022-03-08 21:15:14 +09:00
Dean Herbert
da7c6f1772
Merge branch 'master' into chat-mention-highlight
2022-03-08 21:15:12 +09:00
Dan Balasescu
a352a140bc
Merge pull request #17157 from peppy/fix-statistics-json-serialisation
...
Fix incorrect serialisation of submitted scores
2022-03-08 20:20:31 +09:00
Dean Herbert
960b6528ca
Ensure the value used during realm async write is the same as whe compared for equality
2022-03-08 19:36:23 +09:00
Dean Herbert
daa42584f4
Fix feedback from realm writes causing offset slider to jump around
2022-03-08 19:36:08 +09:00
Dan Balasescu
4603e082f5
Merge pull request #17160 from peppy/remove-unnecessary-user-submittable-score
...
Remove `user` from `SubmittableScore`
2022-03-08 19:34:47 +09:00
Dan Balasescu
f5cd967635
Fix scores not being recalculated in beatmap listing
2022-03-08 19:07:39 +09:00
Dean Herbert
b0f40d9e45
Remove user
from SubmittableScore
...
This wasn't being used by osu-web, and included far too much unnecessary
data. Of note, `pp` and `ruleset_id` are also not strictly required, but
there's no harm in sending them so I've left them be for now.
2022-03-08 18:38:24 +09:00
Dean Herbert
6565c95b17
Remove unused variable
2022-03-08 18:19:54 +09:00
Dan Balasescu
a172fc6cb8
Add IsBasic() and IsTick() extensions on HitResult
2022-03-08 18:19:12 +09:00
Dean Herbert
0718a55ad0
Add flow to allow recovery after running an older release (with a different realm database version)
...
As brought up in https://github.com/ppy/osu/discussions/17148
2022-03-08 18:15:28 +09:00
Dean Herbert
589a40ca2d
Add EnumMember
naming to HitResult
to allow for correct json serialisation
2022-03-08 17:58:37 +09:00
Dean Herbert
622ec53130
Fix BeatmapLeaderboard
refreshing on unrelated changes to a beatmap
2022-03-08 14:50:47 +09:00
Dean Herbert
2a55c5e02e
Add extension method to detect and isolate realm collection-level changes
2022-03-08 14:50:47 +09:00
Salman Ahmed
5e0882df8d
Simplify message highlighting transforms
2022-03-08 04:00:11 +03:00
Salman Ahmed
d74064b94b
Use Equals
instead of reference equality operator
2022-03-08 03:56:27 +03:00
Salman Ahmed
f645869958
Update ChannelManager.CurrentChannel
directly to handle non-loaded chat scenario
...
`currentChannel` gets instantiated once the chat overlay is open, while
`HighlightMessage` could be called while the chat overlay has never been
open.
This will all be rewritten with the new chat overlay design anyways, so
should be fine for now.
2022-03-08 03:42:18 +03:00
Salman Ahmed
f8e5570e41
Fix Message
equality not passing on equal references
2022-03-08 03:20:20 +03:00
Salman Ahmed
7f47be4680
Refactor message highlighting logic to rely on a Channel
data bindable
2022-03-08 03:19:37 +03:00
Salman Ahmed
5764c53c17
OpenChannelNotification -> HighlightMessageNotification
2022-03-08 03:16:07 +03:00
Salman Ahmed
22a2ef42c5
Check channel ID on message highlight using currentDrawableChannel
2022-03-08 01:22:47 +03:00
Bartłomiej Dach
643f68e844
Better annotate initial rolling counter value set
2022-03-07 23:11:20 +01:00
Bartłomiej Dach
019f4d965d
Show two decimal digits on mod multiplier rather than one
2022-03-07 22:55:55 +01:00
Bartłomiej Dach
c25d7a1c75
Use rolling counter for multiplier display
2022-03-07 22:50:51 +01:00
Bartłomiej Dach
78a3b5961e
Implement basic difficulty multiplier display
2022-03-07 22:50:51 +01:00
Dean Herbert
31d6c75f40
Merge branch 'master' into realm-property-watching
2022-03-07 13:53:17 +09:00
Dan Balasescu
b90a5864b1
Merge pull request #17138 from peppy/disallow-icon-interaction
...
Disallow interaction with carousel set difficulty icons unless selected
2022-03-07 13:00:18 +09:00
Dean Herbert
da29947ecd
Disallow interaction with carousel set difficulty icons unless selected
...
I kinda liked this flow, but from multiple reports from users it
definitely seems in the way. We can revisit after the new design is
applied to song select.
Note that this means the tooltips also don't display. If it is preferred
that they should (arguable from a UX perspective, since I'd expect to be
able to click at that point) then the issue can be addressed using a
slightly different path (a few more lines - nothing too complex).
2022-03-07 11:34:08 +09:00
Dean Herbert
bd1adaf245
Merge pull request #17115 from frenzibyte/manual-channel-scroll
...
Refactor channel scrolling container to handle non-user scrolls
2022-03-07 11:26:23 +09:00
Salman Ahmed
32d242dd62
Hook up message notifications to chat message highlighting logic
2022-03-07 05:10:49 +03:00
Salman Ahmed
f4fa80c1e3
Add support to highlight messages in chat overlay
2022-03-07 05:10:49 +03:00
Salman Ahmed
30b38345aa
Add ability to highlight chat lines
2022-03-07 05:08:36 +03:00
Dan Balasescu
ba83db0229
Merge pull request #17134 from bdach/mod-overlay/popup-screen-title
...
Implement popup screen title component
2022-03-07 11:03:38 +09:00
Salman Ahmed
e5a6564034
Merge branch 'master' into fix-storyboard-sample-rate
2022-03-07 03:12:40 +03:00
Salman Ahmed
d9be65ea39
Remove no longer necessary CancelUserScroll
method
2022-03-06 23:58:06 +03:00
Salman Ahmed
60334046e4
Revert UserTrackingScrollContainer
changes
2022-03-06 23:57:51 +03:00
Salman Ahmed
a13a087f5d
Add xmldoc to trackNewContent
to explain its purpose
2022-03-06 23:51:27 +03:00
Salman Ahmed
9ec0e74813
Move scrolling to UpdateAfterChildren
to avoid scheduling
...
At least that's what I believe "let FillFlow update to new size" means.
2022-03-06 23:50:58 +03:00
Salman Ahmed
9bc1f3f014
Further refactor and simplify ChannelScrollContainer
2022-03-06 23:34:12 +03:00
Bartłomiej Dach
54275813b5
Use text flow container in popup screen title
2022-03-06 20:41:31 +01:00
Bartłomiej Dach
df0617f34c
Implement popup screen title component
2022-03-06 16:09:18 +01:00
Bartłomiej Dach
e1eeb9c6bb
Allow tabbing between textboxes in sample point popover
2022-03-06 01:43:56 +01:00
Salman Ahmed
634821e49f
Use the term "programmatically" instead
2022-03-06 00:01:45 +03:00
Salman Ahmed
5b3ffb12b7
Refactor channel scrolling container to handle manual scrolls resiliently
2022-03-05 23:27:07 +03:00
Dean Herbert
06512e8bd9
Use const
for minimum height specification in final usage location
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-03-06 01:01:22 +09:00
Dean Herbert
f8ef352306
Don't consider judgements beneath the minimum height as being applicable
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-03-06 01:00:47 +09:00
Bartłomiej Dach
08b3bc222d
Revert "Fix potential crash in tests when attempting to lookup key bindings in cases the lookup is not available"
...
This reverts commit 8115a4bb8f
.
Commit was cherrypicked out to a separate pull on a different merge
base, then reverted in that pull, so it should be reverted here too.
2022-03-05 16:42:51 +01:00
Bartłomiej Dach
e4b4c3c5c4
Merge branch 'master' into offset-ui-improvements
2022-03-05 16:10:18 +01:00
Dean Herbert
6264dd266d
Merge pull request #17087 from peppy/combine-time-slider-implementation
...
Centralise implementation of slider bars which display millisecond time values
2022-03-05 23:48:26 +09:00
Dean Herbert
faddc20dca
Merge pull request #17073 from peppy/add-offset-adjust-tooltip-text
...
Add tooltip text for offset adjustment slider
2022-03-05 23:28:24 +09:00
Bartłomiej Dach
346cec3577
Merge branch 'add-offset-adjust-tooltip-text' into combine-time-slider-implementation
2022-03-05 14:58:56 +01:00
Henry Lin
8b8b54b58f
Scale rate adjustments based on hit timing consistency and tweak some related numbers
2022-03-05 21:48:57 +08:00
Dean Herbert
ce51ce49cf
Revert changes to GetTooltipText
and use TooltipText
override directly
2022-03-05 22:46:13 +09:00
Bartłomiej Dach
38abfbf4d1
Merge branch 'master' into add-display-choice-dropdown
2022-03-05 14:39:59 +01:00
Bartłomiej Dach
1e34aca984
Rename method to better fit purpose
2022-03-05 14:38:15 +01:00
Dean Herbert
524b8e02ef
Revert "Update all usages of OsuSlider.TooltipText
overrides to instead implement GetTooltipText
"
...
This reverts commit abba49fd8f
.
2022-03-05 22:37:36 +09:00
Dean Herbert
bbc2b36117
Merge branch 'master' into add-offset-adjust-tooltip-text
2022-03-05 22:37:04 +09:00
Dean Herbert
c132fc19e7
Update resources
2022-03-04 22:59:33 +09:00
Dean Herbert
19a940482f
Merge pull request #17100 from nekodex/cursor-tap-volume
...
Reduce 'cursor-tap' sample playback volume on MouseUp
2022-03-04 22:17:59 +09:00
Dean Herbert
d6e78e7d95
Merge pull request #17068 from peppy/fix-hit-distribution-rounding
...
Fix hit distribution graph midpoint rounding not looking great around zero
2022-03-04 22:16:30 +09:00
Jamie Taylor
1e246bf560
Reduce 'cursor-tap' sample playback volume on MouseUp
2022-03-04 20:14:14 +09:00
Dean Herbert
6673e456c5
Merge pull request #17090 from miniriley2012/wiki-locale-fix
...
Fix wiki links containing locale not loading when opened from chat.
2022-03-04 19:36:14 +09:00
Salman Ahmed
70219f511c
Merge branch 'master' into fix-apply-offset-from-non-zero
2022-03-04 12:14:01 +03:00
Dean Herbert
1c40fcb79e
Reorder math to be easier to pass
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-03-04 17:54:04 +09:00
Henry Lin
76d257fbe4
Merge branch 'master' into mod-adaptive-speed
2022-03-04 15:16:37 +08:00
Salman Ahmed
3fdc7ed9d2
Remove brackets surrounding one-line statements
2022-03-04 10:14:19 +03:00
Salman Ahmed
5d337e41cf
Merge branch 'master' into fix-profile-badge-cancellation
2022-03-04 10:07:09 +03:00
Salman Ahmed
129c290ca0
Dispose cancellation token source on disposal
2022-03-04 10:01:07 +03:00
Salman Ahmed
76c293b9e9
Fix cancellation token source recreated on every medal
2022-03-04 10:00:56 +03:00
Riley Quinn
8491bab77c
Replace string locale with Language
2022-03-04 00:57:13 -06:00
Dean Herbert
5a164e4520
Hide adjustment when no adjustment is applied
2022-03-04 15:19:55 +09:00
Dean Herbert
e9e92b991e
Fix calibrating offset from previous non-zero offset not applying adjustment correctly
2022-03-04 15:09:44 +09:00
Dean Herbert
8c7b1e0aa8
Only construct the adjustment portion of bars when required
2022-03-04 15:01:54 +09:00
Dean Herbert
2785218b79
Only apply animation if the bar is going to be larger than the minimum height
2022-03-04 14:59:53 +09:00
Riley Quinn
81a49057ec
Fix wiki links containing locale not loading when opened from chat.
2022-03-03 23:38:51 -06:00
Dean Herbert
540d7d0e2c
Add the ability to set and show an offset value on timing distribution graph
2022-03-04 14:36:15 +09:00
Salman Ahmed
95044bbbac
Merge branch 'master' into fix-storyboard-sample-rate
2022-03-04 08:17:40 +03:00
Dean Herbert
d3e04fe594
Colour centre bin in distribution graph differently
2022-03-04 14:09:27 +09:00
Dean Herbert
c063a73742
Fix autosize weirdness by specifying a constant size for the x axis
2022-03-04 14:05:42 +09:00
Dean Herbert
010fa7ed01
Allow an offset to be shown on the timing distribution graph
2022-03-04 14:05:42 +09:00
Dean Herbert
e09dd7d8fe
Fix calibrating offset from previous non-zero offset not applying adjustment correctly
2022-03-04 13:25:14 +09:00
Salman Ahmed
06b46d2b5e
Merge branch 'master' into fix-test-null-ref-key-bind-lookup
2022-03-04 07:12:49 +03:00
Henry Lin
f72c9a1f41
Cap speed change per hit and apply a speed decrease on miss
2022-03-04 11:48:48 +08:00
Dean Herbert
c1c9482077
Add note about how global audio offset is currently applied
2022-03-04 12:44:02 +09:00
Dean Herbert
5dca0e3377
Revert back to private set
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-03-04 12:44:02 +09:00
Dean Herbert
cc4f89eef4
Add tooltip text for offset adjustment slider
2022-03-04 12:44:02 +09:00
Dean Herbert
657f2ebb9d
Restructure OsuSliderBar
to allow for custom tooltips
2022-03-04 12:44:02 +09:00
Dean Herbert
8115a4bb8f
Fix potential crash in tests when attempting to lookup key bindings in cases the lookup is not available
2022-03-04 12:44:02 +09:00
Dean Herbert
835cb09537
Merge branch 'master' into fix-hit-distribution-rounding
2022-03-04 12:43:57 +09:00
Dean Herbert
8b504bb5ac
Ensure rounding is still applied in non-midpoint cases
2022-03-04 12:42:07 +09:00
Dean Herbert
ac914878b8
Move default function specifications to OsuConfigManager
...
This ensures that running tests in release configuration will not fail
due to the same issue being fixed in this PR.
2022-03-04 12:31:58 +09:00
Dean Herbert
33862fc0db
Centralise implementation of slider bars which display millisecond time values
2022-03-04 12:25:19 +09:00
Dean Herbert
7854a0a913
Use double
instead of float
for UIHoldActivationDelay
configuration value
...
All times use double, so let's also use double here.
2022-03-04 12:22:56 +09:00
Dean Herbert
abba49fd8f
Update all usages of OsuSlider.TooltipText
overrides to instead implement GetTooltipText
2022-03-04 12:16:05 +09:00
Dean Herbert
c38126ba9d
Make mods argument optional for storyboard construction
2022-03-04 12:05:02 +09:00
Dean Herbert
b0688cc6dd
Merge branch 'master' into fix-storyboard-sample-rate
2022-03-04 12:04:49 +09:00
Henry Lin
b66af7edf4
Rename approximatedRates
to ratesForRewinding
and update xmldoc
2022-03-04 11:03:57 +08:00
Dean Herbert
3a37e6e8b1
Fix profile badges potentially showing on incorrect profile when switching users
...
Closes https://github.com/ppy/osu/issues/17081 .
2022-03-04 12:01:00 +09:00
Dean Herbert
eeb7d359ec
Merge pull request #17069 from hlysine/fix-IUpdatableByPlayfield
...
Change `IUpdatableByPlayfield.Update` to be called by the main playfield only
2022-03-04 11:58:00 +09:00
Dean Herbert
1d7d6a1b65
Merge pull request #17042 from peppy/ruleset-leaderboard-unavailable
...
Improve leaderboard messaging when using a custom ruleset (and add localisation support)
2022-03-04 11:56:04 +09:00
Dean Herbert
18b207400d
Update framework
2022-03-04 11:34:25 +09:00
Bartłomiej Dach
36263b4dbf
Replace remaining manual online ID check with extension method
2022-03-03 23:09:56 +01:00
Bartłomiej Dach
e1610b5d32
Merge branch 'master' into ruleset-leaderboard-unavailable
2022-03-03 22:52:20 +01:00
Bartłomiej Dach
2354737abe
Merge branch 'master' into scaling-container-better-custom-override
2022-03-03 22:32:23 +01:00
Bartłomiej Dach
9dbb0bd85c
Merge branch 'master' into player-loader-settings-scroll
2022-03-03 21:17:53 +01:00
Bartłomiej Dach
15f65c7897
Rename lambda param to avoid name shadowing
2022-03-03 20:28:19 +01:00
Bartłomiej Dach
2e24e7ef56
Use property expression rather than block
2022-03-03 20:28:00 +01:00
Bartłomiej Dach
edd361d256
Trim unused using directives
2022-03-03 20:21:48 +01:00
Bartłomiej Dach
0fbc018a42
Remove redundant string interpolation prefixes
2022-03-03 20:21:09 +01:00
Bartłomiej Dach
fcefd3c725
Fix slightly wrong references in xmldocs
2022-03-03 17:39:55 +01:00
Bartłomiej Dach
3797871aa0
Add extended documentation of adaptive speed mod machinations
2022-03-03 17:25:49 +01:00
Bartłomiej Dach
ffaf5b729f
Move and reword docs of allowable rate range constants
2022-03-03 17:07:43 +01:00
Dean Herbert
5cfa8b8821
Revert back to private set
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-03-03 21:31:56 +09:00
Dean Herbert
cecc746f9e
Update existing usages to use SubscribeToPropertyChanged
2022-03-03 17:42:50 +09:00
Dean Herbert
35f532fefa
Add ability to watch properties via a RealmAccess
helper method
2022-03-03 17:42:40 +09:00
Dean Herbert
3848964faa
Add tooltip text for offset adjustment slider
2022-03-03 17:07:46 +09:00
Dean Herbert
7ee30024e8
Restructure OsuSliderBar
to allow for custom tooltips
2022-03-03 17:07:26 +09:00
Dean Herbert
f09a4e9c5b
Fix potential crash in tests when attempting to lookup key bindings in cases the lookup is not available
2022-03-03 16:29:37 +09:00
Dean Herbert
9c43500ad3
Add ability for player loading screen settings to scroll
...
As we add more items here this is going to become necessary. Until the design no doubt gets changed.
2022-03-03 16:23:31 +09:00
Dean Herbert
a06d806fb9
Fix hit distribution graph midpoint rounding not looking great around zero
...
Not sure this will be accepted and it's likely only ever going to show
in tests, but seems to be a better approach to midpoint rounding for
this case?
2022-03-03 15:43:02 +09:00
Henry Lin
464be6e64c
Only call IUpdatableByPlayfield.Update
if the playfield isn't nested
2022-03-03 14:37:39 +08:00
Dean Herbert
ab0ee26540
Remove padding from distribution graph bars to fix some bars becoming invisible at low sizes
2022-03-03 15:13:42 +09:00
Dean Herbert
cb0d643f70
Add parameter xmldoc to explain what a null rect does
2022-03-03 14:38:20 +09:00
Dean Herbert
29bf7d0bde
Fix shocking grammar and typos in block comment
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-03-03 14:35:52 +09:00
Dean Herbert
a38eb426ef
Merge pull request #17026 from peppy/beatmap-offset-control
...
Add basic beatmap offset adjustment
2022-03-03 14:23:19 +09:00
Dean Herbert
42e07b7308
Convert to extension method to avoid recursive calls
2022-03-03 14:15:37 +09:00
Henry Lin
4ce2044e4c
Reorder members
2022-03-03 13:09:41 +08:00
Dean Herbert
fab9323707
Replace all legacy ruleset checks with a helper property call
2022-03-03 14:08:48 +09:00
Henry Lin
9c2aa51194
Rename applyPitchAdjustment
to adjustPitchChanged
2022-03-03 13:07:30 +08:00
Henry Lin
ae71dcceeb
Convert comments to xmldoc
2022-03-03 13:03:53 +08:00
Henry Lin
09254407fe
Interpolate speed change using IUpdatableByPlayfield
2022-03-03 12:09:36 +08:00
Henry Lin
51258dbab4
Use binary search in ApplyToBeatmap
2022-03-03 11:21:20 +08:00
Henry Lin
95a40c5dc5
Remove pointless comment
2022-03-03 10:43:30 +08:00
Henry Lin
ff7f65de27
Extract duplicated conditionals
2022-03-03 10:43:04 +08:00
Henry Lin
55737226a3
Use Enumerable.Repeat
2022-03-03 10:18:36 +08:00
Salman Ahmed
2f485a29d5
Merge branch 'master' into mod-overlay/columns
2022-03-03 00:11:33 +03:00
Salman Ahmed
3630ab2db2
Remove unnecessary nullability of storyboard mods list
2022-03-03 00:09:12 +03:00
Bartłomiej Dach
7e90b4456d
Merge branch 'master' into skin-editor-ui
2022-03-02 21:01:03 +01:00
Bartłomiej Dach
f627a8af30
Merge branch 'master' into legacy-score-encoder-no-beatmap-required
2022-03-02 20:27:38 +01:00
Salman Ahmed
cbb8dc2891
Fix storyboard samples rate not adjusted from actual gameplay mods
2022-03-02 20:56:18 +03:00
Salman Ahmed
e14a35b469
Add failing test case
2022-03-02 20:32:41 +03:00
Henry Lin
d335a2229f
Tweak average_count
2022-03-02 21:07:57 +08:00
Henry Lin
17bc714297
Allow the mod to properly react to nested hit objects
2022-03-02 20:48:57 +08:00
Henry Lin
6caecf79a0
Use smooth speed change
2022-03-02 20:08:05 +08:00
Dean Herbert
b5684aaa76
Scale -> Rect to read better
2022-03-02 20:33:28 +09:00
Dean Herbert
8d7cdbd883
Add note about nested masking case
2022-03-02 20:25:34 +09:00