Bartłomiej Dach
9dfd6cf9ef
Remove EditorTable
...
Begone, foul beast.
2024-06-26 10:40:02 +02:00
Bartłomiej Dach
b12db8fbe2
Rewrite IssueTable
to use virtualised list
2024-06-26 10:40:02 +02:00
Bartłomiej Dach
5c2d446767
Rewrite ControlPointTable
to use virtualised list
2024-06-26 10:40:02 +02:00
Dan Balasescu
276d8fe158
Truncate break times for legacy beatmap export
2024-06-26 16:20:56 +09:00
Bartłomiej Dach
006184ed2f
Implement carousel container for daily challenge screen
2024-06-26 08:49:00 +02:00
Dan Balasescu
173c4f430a
Merge pull request #28601 from peppy/adjust-carousel-panel-spacing
...
Adjust beatmap carousel's spacing to remove dead-space
2024-06-26 15:35:52 +09:00
Dan Balasescu
2e03afb2ed
Always log missing official build attribute
2024-06-26 14:49:04 +09:00
Dan Balasescu
0379abd714
Prevent multiple invocations of failure procedure
2024-06-26 13:57:18 +09:00
Dean Herbert
e84daedbea
Reduce length of fade-out when hiding beatmap panels
2024-06-26 12:01:38 +09:00
Dean Herbert
5d4509150b
Adjust beatmap carousel's spacing to remove dead-space
...
As discussed in https://github.com/ppy/osu/discussions/28599 .
I think this feels better overall, and would like to apply the change
before other design changes to the carousel.
2024-06-26 11:56:58 +09:00
Dean Herbert
aadb104851
Merge pull request #28589 from bdach/scale-handling-crash
...
Fix crashes when opening scale/rotation popovers during selection box operations
2024-06-26 00:11:03 +09:00
Dean Herbert
d722be16e3
Add missing base
calls for safety
2024-06-25 23:41:43 +09:00
Dean Herbert
3d22f700a7
Merge pull request #28561 from bdach/daily-challenge/score-breakdown
...
Implement score breakdown display for daily challenge screen
2024-06-25 23:34:47 +09:00
Dean Herbert
0a44022697
Update framework
2024-06-25 23:03:37 +09:00
Bartłomiej Dach
2fda45cad4
Fix crashes when opening scale/rotation popovers during selection box operations
2024-06-25 15:20:59 +02:00
Dean Herbert
6cd1367329
Merge pull request #28580 from bdach/fix-breaks
...
Fix crash when attempting to adjust duration of break that has no preceding/succeeding objects
2024-06-25 20:24:27 +09:00
Dean Herbert
a12f32519d
Merge pull request #28572 from bdach/fix-playlist-duration-death
...
Fix crash on calculating playlist duration when rate-changing mods are present
2024-06-25 20:15:26 +09:00
Bartłomiej Dach
fae6dcfffa
Remove manual breaks at the start/end of beatmap
...
This is the secondary cause of https://github.com/ppy/osu/issues/28577 ,
because you could do the following:
- Have a break autogenerate itself
- Adjust either end of it to make it mark itself as manually-adjusted
- Remove all objects before or after said break
to end up in a state wherein there are no objects before or after a
break.
The direct fix is still correct because it is still technically possible
to end up in a state wherein a break is before or after all objects
(obvious one is manual `.osu` editing), but this behaviour is also
undesirable for the autogeneration logic.
2024-06-25 12:49:17 +02:00
Bartłomiej Dach
03cdfd0660
Fix timeline break piece crashing on drag if there are no objects before start or after end
...
This fixes the direct cause of https://github.com/ppy/osu/issues/28577 .
2024-06-25 12:25:37 +02:00
PercyDan54
2de0852551
Fix transient rank value applied to bindable
2024-06-25 18:06:50 +08:00
Bartłomiej Dach
0d2a47167c
Fix crash on calculating playlist duration when rate-changing mods are present
...
Regressed in https://github.com/ppy/osu/pull/28399 .
To reproduce, enter a playlist that has an item with a rate-changing mod
(rather than create it yourself).
This is happening because `APIRuleset` has `CreateInstance()`
unimplemented:
b4cefe0cc2/osu.Game/Online/API/Requests/Responses/APIBeatmap.cs (L159)
and only triggers when the playlist items in question originate from
web.
This is why it is bad to have interface implementations throw outside of
maybe mock implementations for tests. `CreateInstance()` is a scourge
elsewhere in general, we need way less of it in the codebase (because
while convenient, it's also problematic to implement in online contexts,
and also expensive because reflection).
2024-06-25 11:28:10 +02:00
Dean Herbert
2de42854c3
Fix corner radius looking bad when graph bars are too short
2024-06-25 15:43:52 +09:00
Salman Ahmed
a277d9df13
Kill focus from components when clicking on an empty space in the panel
2024-06-25 07:13:36 +03:00
Salman Ahmed
7ddb6cb7e7
Scroll mod setting dropdown into view when open
2024-06-25 06:56:48 +03:00
Salman Ahmed
3f06a0ef9e
Block certain operations when customisation panel is open
...
Normally I would just block keyboard input from going past `ModCustomisationPanel`, but it's a little complicated here since I'm dealing with global action key binding presses, and I also still want actions like `GlobalAction.Back` to get past the customisation panel even if it's expanded.
2024-06-25 06:16:46 +03:00
Salman Ahmed
57ee794398
Add extra margin to avoid 1px artifacts
2024-06-25 06:08:13 +03:00
Salman Ahmed
0a72394c8a
Fix customisation panel conflicting with beatmap attributes when collapsed
2024-06-25 06:04:39 +03:00
Bartłomiej Dach
66b093b17e
Implement score breakdown display for daily challenge screen
2024-06-24 10:09:10 +02:00
Salman Ahmed
7cbd04db9c
Merge branch 'master' into fix-key-binding-corruption
2024-06-24 05:30:21 +03:00
Dean Herbert
1dc9f10235
Fix scale control key binding breaking previous defaults
...
Oops from ppy/osu#28309 .
2024-06-24 09:46:23 +08:00
Salman Ahmed
e23da93c09
Use new display on mod select overlay and remove old display
2024-06-23 08:22:50 +03:00
Salman Ahmed
04efa61156
Add different display for mod customisation
2024-06-23 08:22:13 +03:00
Dean Herbert
c58bb62408
Merge branch 'master' into hit-animations
2024-06-23 04:32:47 +09:00
Jamie Taylor
2ffeb1b361
Add fallback behaviour for custom rulesets
2024-06-23 02:20:51 +09:00
Dean Herbert
80907acaa6
Update resources
2024-06-22 22:01:05 +08:00
Jamie Taylor
0d11b2b91c
Replace manual usages of AudioFilter
with new ducking methods
2024-06-22 01:57:14 +09:00
Jamie Taylor
a56751511e
Apply a ducking effect to the currently playing track when switching ruleset
2024-06-22 01:36:30 +09:00
sometimes
89d3f67eb3
fix accuracyProcess typo
2024-06-20 22:06:00 -04:00
Olivier Schipper
74399542d2
Use math instead of hardcoded constant values
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-06-20 17:27:15 +02:00
Bartłomiej Dach
ad2cd0ba8f
Adjust behaviour of hit animations toggle to match user expectations
2024-06-20 13:42:32 +02:00
Dean Herbert
57774ae767
Merge branch 'master' into slider-anchor-type-switching
2024-06-20 19:01:22 +09:00
Dean Herbert
14104e57d4
Merge branch 'master' into timeline-drag-selection-crash
2024-06-20 15:16:10 +09:00
Dean Herbert
0eb533f2fd
Merge pull request #28444 from bdach/scrolling-ruleset-editor-reloads
...
Reload scrolling hitobject composer on control point changes
2024-06-20 15:15:26 +09:00
OliBomby
d5397a2139
fix alpha value in disabled state
2024-06-19 20:59:14 +02:00
Dean Herbert
a718af8af5
Adjust break colours to match closer to stable
2024-06-19 22:02:10 +08:00
Bartłomiej Dach
617c1341d7
Make (Manual)BreakPeriod
a class again
...
CodeFileSanity doesn't like records and it being a record wasn't doing
much anymore anyway.
2024-06-19 14:53:09 +02:00
Dean Herbert
00443403b6
Merge branch 'master' into break-autogeneration
2024-06-19 21:49:17 +09:00
Dean Herbert
32a7885f10
Merge pull request #28523 from bdach/break-display-and-adjustment
...
Display breaks on editor timeline & allow manually adjusting their duration
2024-06-19 21:48:54 +09:00
Dean Herbert
00a866b699
Change colour to match bottom timeline (and adjust tween sligthly)
2024-06-19 20:30:43 +08:00
Bartłomiej Dach
8757e08c2c
Fix test failures due to automatic break generation kicking in
2024-06-19 11:32:08 +02:00
Bartłomiej Dach
2d9c3fbed2
Remove no-longer-necessary null propagation
2024-06-19 11:21:57 +02:00
Bartłomiej Dach
7311a7ffd7
Purge manual breaks if they intersect with an actual hitobject
2024-06-19 10:51:37 +02:00
Bartłomiej Dach
7ed587b783
Fix summary timeline not reloading properly on break addition/removal
2024-06-19 10:26:01 +02:00
Bartłomiej Dach
58701b17f8
Add patcher support for breaks
2024-06-19 10:22:14 +02:00
Bartłomiej Dach
4022a8b06c
Implement automatic break period generation
2024-06-19 10:22:06 +02:00
Bartłomiej Dach
1f692f5fc7
Make BreakPeriod
a struct
2024-06-19 09:01:33 +02:00
Bartłomiej Dach
6a6ccbc09f
Make list of breaks bindable
2024-06-19 07:44:03 +02:00
Bartłomiej Dach
8836b98070
Fix new inspection after framework bump
2024-06-18 18:32:58 +02:00
Bartłomiej Dach
5551bae7ce
Merge branch 'master' into navigate-to-timestamp
2024-06-18 18:32:33 +02:00
Bartłomiej Dach
f764ec24cd
Correct xmldoc
2024-06-18 18:32:24 +02:00
Bartłomiej Dach
7ee29667db
Parse plain numbers as millisecond count when parsing timestamp
2024-06-18 16:48:04 +02:00
Bartłomiej Dach
f88f05717a
Fix bottom timeline break visualisations not updating
2024-06-18 15:54:34 +02:00
Bartłomiej Dach
814f1e552f
Implement ability to manually adjust breaks
2024-06-18 15:51:29 +02:00
Bartłomiej Dach
a9e662a2b6
Add break display to editor timeline
2024-06-18 14:55:59 +02:00
Givikap120
1ddfc8f011
Updated the tests according to new logic
...
and fixed one minor CI code quality thing
2024-06-18 15:48:21 +03:00
Givikap120
ec2b8f3bc3
Changed timed difficulty attributes to be "per-HitObject" instead of "per-DifficultyHitObject"
2024-06-18 15:41:41 +03:00
Bartłomiej Dach
44b9a06639
Allow more lenient parsing of incoming timestamps
2024-06-18 13:13:50 +02:00
Bartłomiej Dach
e1827ac28d
Address review feedback
2024-06-18 13:07:18 +02:00
Bartłomiej Dach
1b4a3b0e2e
Change editor speed adjustment back to adjusting tempo
...
- Partially reverts https://github.com/ppy/osu/pull/12080
- Addresses https://github.com/ppy/osu/discussions/27830 ,
https://github.com/ppy/osu/discussions/23789 ,
https://github.com/ppy/osu/discussions/15368 , et al.
The important distinction here is that to prevent misuse when timing,
the control will revert to 1.0x speed and disable when moving to timing
screen, with a tooltip explaining why.
2024-06-18 09:46:00 +02:00
Bartłomiej Dach
2421751419
Fix code quality inspections
2024-06-18 08:33:02 +02:00
Bartłomiej Dach
310265c43f
Add slider placement binding description in tooltip
2024-06-18 08:16:25 +02:00
Bartłomiej Dach
659505f711
Adjust calls to GetContainingInputManager()
2024-06-18 07:41:19 +02:00
Bartłomiej Dach
8a4ae5d23d
Null-propagate all calls to GetContainingFocusManager()
2024-06-18 07:30:46 +02:00
Bartłomiej Dach
7f08008059
Adjust AudioFilter
to framework-side changes
...
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2024-06-18 07:30:46 +02:00
Bartłomiej Dach
da4160439e
Update framework
2024-06-18 07:26:20 +02:00
Dean Herbert
316125d47a
Merge pull request #23443 from OliBomby/edit-nodesample
...
Make NodeSamples editable
2024-06-18 11:12:02 +09:00
Bartłomiej Dach
5652a558f9
Allow to jump to a specific timestamp via bottom bar in editor
...
Apparently this is a stable feature and is helpful for modding.
2024-06-17 17:07:55 +02:00
Dean Herbert
b535f7c519
Merge pull request #28507 from bdach/editor-opacity
...
Reduce editor opacity of several editor components when hovering over composer
2024-06-17 22:16:08 +09:00
Dean Herbert
a6f09bc626
Merge pull request #28468 from bdach/daily-challenge/event-feed
...
Implement event feed view for daily challenge screen
2024-06-17 20:16:48 +09:00
Dean Herbert
d3d325c46c
Record on single line
2024-06-17 19:16:23 +08:00
Bartłomiej Dach
7cfe8d8df2
Reduce editor opacity of several editor components when hovering over composer
...
Addresses https://github.com/ppy/osu/discussions/24384 .
2024-06-17 12:14:28 +02:00
Dean Herbert
cc0ef20afd
Merge pull request #28505 from bdach/move-timeline-toggles-elsewhere
...
Move timeline toggle controls to "view" menu
2024-06-17 18:59:38 +09:00
Bartłomiej Dach
07f1994a13
Align beat snap control width with right toolbox
2024-06-17 11:47:37 +02:00
Bartłomiej Dach
3884bce239
Remove unused delegate for now
...
To silence inspections.
2024-06-17 11:09:07 +02:00
Bartłomiej Dach
f7910f774d
Remove redundant type spec
2024-06-17 10:54:52 +02:00
Bartłomiej Dach
03049d45bb
Remove stuff that looks bad after moving timeline toggle controls
2024-06-17 10:23:00 +02:00
Bartłomiej Dach
b42752c9f0
Move timeline toggle controls to "view" menu
2024-06-17 10:16:40 +02:00
Dan Balasescu
f86e9c9a4a
Also annotate ControlPointInfo
...
Same deal with this class. Fully qualifying the type names because this
has `#nullable disable` and makes use of `NotNull` which is also present
in the `System.Diagnostics.CodeAnalysis` namespace and AAAAAAARGH
NAMESPACE CONFLICTS.
2024-06-17 17:13:44 +09:00
Dan Balasescu
41446a08b6
Annotate ControlPoint and Mod for AOT trimming support
2024-06-17 16:19:33 +09:00
Dean Herbert
15fbad0097
Merge pull request #28480 from bdach/storyboard-pass-fail-show
...
Implement toggling visibility of pass and fail storyboard layers
2024-06-16 11:08:00 +09:00
Dean Herbert
ff2d721029
Inline enabled setting
2024-06-15 17:34:04 +08:00
Shiumano
6c82f1de9b
Set to enable or disable at load time
2024-06-14 21:43:17 +09:00
Bartłomiej Dach
67ca7e4135
Implement toggling visibility of pass and fail storyboard layers
...
Closes https://github.com/ppy/osu/issues/6842 .
This is a rather barebones implementation, just to get this in place
somehow at least. The logic is simple - 50% health or above shows pass
layer, anything below shows fail layer.
This does not match stable logic all across the board because I have
no idea how to package that. Stable defines "passing" in like fifty
ways:
- in mania it's >80% HP
(bb57924c15/osu
!/GameModes/Play/Rulesets/Mania/RulesetMania.cs#L333-L336)
- in taiko it's >80% *accuracy*
(bb57924c15/osu
!/GameModes/Play/Rulesets/Taiko/RulesetTaiko.cs#L486-L492)
- there's also the part where "geki additions" will unconditionally set
passing state
(bb57924c15/osu
!/GameModes/Play/Player.cs#L3561-L3564)
- and also the part where at the end of the map, the final passing state
is determined by checking whether the user passed more sections than
failed
(bb57924c15/osu
!/GameModes/Play/Player.cs#L3320)
The biggest issues of these are probably the first two, and they can
*probably* be fixed, but would require a new member on `Ruleset` and I'm
not sure how to make one look, so I'm not doing that at this time
pending collection of ideas on how to do that.
2024-06-14 13:59:02 +02:00
Bartłomiej Dach
bdeea37a44
Commit active placement when starting drag selection via timeline
...
This was reported in https://github.com/ppy/osu/pull/28474 , albeit the
code changes proposed there did not fix the issue at all.
See 8b6385f7d0
for demonstration of the
crash scenario. Basically what is happening there is:
- The starting premise is that there is a spinner placement active.
- At this time, a drag selection is started via the timeline.
- Once the drag selection finds at least one suitable object to select,
it mutates `SelectedItems`.
- When selection changes for any reason, the `HitObjectComposer`
decides to switch to the "select" tool, regardless of why
the selection changed.
- Changing the active tool causes the current placement - if any -
to be committed, which mutates the beatmap.
- Back at the drag box selection code, this causes a "collection
modified when enumerating" exception.
The proposed fix here is to eagerly commit active placement - if any -
when drag selection is initiated via the timeline, which avoids this
issue. This also appears to vaguely match stable behaviour and is sort
of consistent with the logic of committing any outstanding changes upon
switching to the selection tool.
2024-06-14 09:32:40 +02:00
Joppe27
47f89b8969
Clamp X value to avoid excessive balance shift
2024-06-13 18:06:19 +02:00
Bartłomiej Dach
8c4aa84037
Implement event feed view for daily challenge screen
2024-06-13 09:05:45 +02:00
Dan Balasescu
91f2cf8cc3
Use more descriptive HitObject names for debugger displays
2024-06-13 15:18:39 +09:00
Bartłomiej Dach
ae6dd9d053
Use extracted headings on daily challenge screen
2024-06-12 11:44:19 +02:00
Bartłomiej Dach
51c598627a
Move out section header component from editor
...
This sort of thing has been showing up on flyte designs more and more
so I want to start using it more over that rather ugly "overlined" text
that's there on multiplayer screens right now.
2024-06-12 11:43:40 +02:00
Bartłomiej Dach
2be6b29f21
Implement time remaining display for daily challenge screen
2024-06-12 11:43:24 +02:00
Bartłomiej Dach
6fb0cabf36
Add start date to Room
2024-06-12 11:43:18 +02:00
Dean Herbert
94b7148a9e
Merge pull request #28440 from bdach/daily-challenge/new-screen
...
Add minimal viable new screen for daily challenge feature
2024-06-12 17:49:02 +09:00
Bartłomiej Dach
5e002fbf9b
Fix user mod select button being inserted in incorrect place
2024-06-12 08:59:50 +02:00
Dean Herbert
90481223dd
Merge pull request #28445 from bdach/mania-key-count-change-force-reload
...
Attempt full editor reload on key count change
2024-06-12 14:42:59 +09:00
Dan Balasescu
39b219bacc
Merge pull request #28441 from bdach/fix-editor-stacking-not-applying-immediately
...
Fix stack leniency not applying immediately after change
2024-06-12 12:24:28 +09:00
OliBomby
869cd40195
Fixed samples without additions contributing to common addition bank while not having an editable addition bank
2024-06-11 21:31:18 +02:00
OliBomby
12dd60736a
remove code already covered by updatePrimaryBankState
2024-06-11 21:20:42 +02:00
Bartłomiej Dach
922837dd3a
Reload scrolling composer on control point changes
2024-06-11 12:01:35 +02:00
Bartłomiej Dach
da53a11d3c
Attempt full editor reload on key count change
2024-06-11 11:31:49 +02:00
Bartłomiej Dach
3afe98612c
Add RestoreState()
to IEditorChangeHandler
2024-06-11 11:31:30 +02:00
Bartłomiej Dach
10af642342
Split mania difficulty section implementation off completely from base
...
- "Circle size" / key count needs completely different handling.
- Approach rate does not exist in mania.
2024-06-11 11:30:20 +02:00
Dean Herbert
c640fbbaf0
Merge branch 'master' into daily-challenge/new-screen
2024-06-11 18:24:31 +09:00
ColdVolcano
4048a4bdfb
fix accuracy counter separating whole and fraction parts with wireframes off
2024-06-11 02:20:14 -06:00
Bartłomiej Dach
694cfd0e25
Expose singular coarse-grained change event on ControlPointInfo
2024-06-11 09:16:45 +02:00
Bartłomiej Dach
b8e0704554
Implement singular change events for ControlPoint
2024-06-11 09:15:45 +02:00
Bartłomiej Dach
25b2dfa601
Fix stack leniency not applying immediately after change
2024-06-10 14:34:22 +02:00
Bartłomiej Dach
073ddcebe4
Hide daily challenge from playlists listing
2024-06-10 13:12:21 +02:00
Bartłomiej Dach
e6da17d248
Add minimal viable variant of new daily challenge screen
2024-06-10 13:09:12 +02:00
Bartłomiej Dach
ffd788c65c
Use room mod select overlay rely on explicit binding rather than DI resolution
2024-06-10 12:45:51 +02:00
Bartłomiej Dach
dd6e9308b3
Extract user mod select button for reuse
2024-06-10 12:45:27 +02:00
Bartłomiej Dach
f135a9a923
Make SelectedItem
externally mutable
...
Not being able to externally mutate this was making reuse in new daily
challenge screen unnecessarily arduous.
2024-06-10 12:44:38 +02:00
Bartłomiej Dach
d80f09e0c0
Adjust online play header to be reusable for new daily challenge screen
2024-06-10 12:43:58 +02:00
Bartłomiej Dach
19f39ca1b6
Extract OnlinePlayScreenWaveContainer
from OnlinePlayScreen
2024-06-10 12:42:37 +02:00
Bartłomiej Dach
7d5dc750e5
Use slightly lighter shade of pink for alternative colour
2024-06-10 12:04:52 +02:00
Bartłomiej Dach
0efa028e0a
Restructure popover updates to be more centralised
2024-06-10 11:55:51 +02:00
Bartłomiej Dach
acf4dbb62c
Merge branch 'master' into mutually-exclusive-save-related-actions
2024-06-10 10:30:35 +02:00
Bartłomiej Dach
1d6b7e9c9b
Refactor further to address code quality complaints
2024-06-10 10:30:30 +02:00
Salman Ahmed
6201220994
Merge branch 'master' into footer-v2-become-global
2024-06-08 14:13:05 +03:00
Dean Herbert
daf85c320a
Merge pull request #22237 from mk56-spn/LeaderBoardScore_clean
...
New leaderboard score card design implementation
2024-06-08 20:06:17 +09:00
Dean Herbert
7fc6ad5340
Merge pull request #28184 from frenzibyte/footer-v2-transitions
...
Add basic animation to new footer and buttons
2024-06-08 19:43:23 +09:00
Salman Ahmed
5f8f6caedd
Use OsuGame.SHEAR
2024-06-07 22:45:22 +03:00
Salman Ahmed
6f729be573
Merge branch 'master' into LeaderBoardScore_clean
2024-06-07 22:42:49 +03:00
Salman Ahmed
f59d94bba4
Move transitions inside ScreenFooterButton
and re-use Content
from base implementation instead
...
The point is to apply the transitions against a container that's inside of `ScreenFooterButton`, because the `ScreenFooterButton` drawable's position is being controlled by the flow container it's contained within, and we cannot apply the transitions on it directly.
2024-06-07 22:07:39 +03:00
Dean Herbert
9c6e707f00
Adjust transitions
2024-06-07 17:04:16 +08:00
Dean Herbert
366ef64a2c
Apply NRT to UpdateableRank
2024-06-07 16:54:12 +08:00
Bartłomiej Dach
72890bb9ac
Add stable-like animation legacy rank display
...
Just substituting the sprite felt pretty terrible.
2024-06-07 09:56:10 +02:00
Bartłomiej Dach
4cd1ccc4d4
Merge branch 'master' into add-rank-display
2024-06-07 09:33:03 +02:00
Bartłomiej Dach
e13e9abda9
Disallow running save-related operations concurrently
...
Closes https://github.com/ppy/osu/issues/25426 .
Different approach to prior ones, this just disables the relevant
actions when something related to save/export is going on. Still ends up
being convoluted because many things you wouldn't expect to touch save
do touch save, so it's not just a concern between export and save
specifically.
2024-06-07 08:13:51 +02:00
Dean Herbert
7cbe93efc3
Refactor latest changes to avoid unnecessary call when mods not present
2024-06-07 10:37:27 +08:00
Xesquim
6e3bea938e
Instancing a Ruleset only when it's necessary to
2024-06-06 13:26:52 -03:00
Dean Herbert
dd3f4bcdab
Fix code quality and null handling
2024-06-07 00:01:50 +08:00
Xesquim
860afb8123
Creating method in ModUtils to calculate the rate for the song
2024-06-06 10:06:07 -03:00
OliBomby
e873698221
Add some in-depth xmldoc to GetSamples
2024-06-06 14:57:25 +02:00
OliBomby
fcc8671cbd
undo useless change
2024-06-06 14:50:24 +02:00
OliBomby
71ce400359
Fix wasteful recreating of container
2024-06-06 14:48:17 +02:00
Bartłomiej Dach
7a8a37dae6
Use established constants
2024-06-06 13:42:31 +02:00
Bartłomiej Dach
86b13074a0
Merge branch 'master' into edit-nodesample
2024-06-06 13:42:25 +02:00
OliBomby
4f8c167cf9
clean up to match logic in CircularDistanceSnapGrid
2024-06-05 18:56:18 +02:00
Xesquim
7dd18a84f6
Fixing the GetTotalDuration in PlaylistExtesions
2024-06-05 12:25:33 -03:00
OliBomby
d8994786f6
Merge remote-tracking branch 'upstream/master' into grids-2
2024-06-05 17:18:48 +02:00
Dean Herbert
212be6b9a7
Merge branch 'master' into grids-1
2024-06-05 15:20:04 +09:00
Bartłomiej Dach
ecfcf7a2c0
Add xmldoc mention about performance overhead of PerformOnSelection()
2024-06-04 10:36:30 +02:00
Bartłomiej Dach
f13ca28d5e
Fix performance overhead from ternary state bindable callbacks when selection is changing
...
Closes https://github.com/ppy/osu/issues/28369 .
The reporter of the issue was incorrect; it's not the beat snap grid
that is causing the problem, it's something far stupider than that.
When the current selection changes,
`EditorSelectionHandler.UpdateTernaryStates()` is supposed to update the
state of ternary bindables to reflect the reality of the current
selection. This in turn will fire bindable change callbacks for said
ternary toggles, which heavily use `EditorBeatmap.PerformOnSelection()`.
The thing about that method is that it will attempt to check whether any
changes were actually made to avoid producing empty undo states, *but*
to do this, it must *serialise out the entire beatmap to a stream* and
then *binary equality check that* to determine whether any changes were
actually made:
7b14c77e43/osu.Game/Screens/Edit/EditorChangeHandler.cs (L65-L69)
As goes without saying, this is very expensive and unnecessary, which
leads to stuff like keeping a selection box active while a taiko beatmap
is playing under it dog slow. So to attempt to mitigate that, add
precondition checks to every single ternary callback of this sort to
avoid this serialisation overhead.
And yes, those precondition checks use linq, and that is *still* faster
than not having them.
2024-06-04 10:32:12 +02:00
Bartłomiej Dach
4fcb902341
Merge branch 'master' into grids-1
2024-06-03 12:33:51 +02:00
Dean Herbert
96514132c1
Fix occasional test failures on new menu content tests
...
Scheduled data transfer could still overwrite test data.
2024-06-03 12:24:56 +09:00
Dean Herbert
091104764e
Fix AssemblyRulesetStore
not marking rulesets as available
2024-06-02 17:33:06 +09:00
Dan Balasescu
e3205fce47
Fix unable to drag-scroll on collections right-click menu
2024-06-01 14:29:23 +09:00
Dean Herbert
4162d0babe
Merge pull request #28297 from Hecatia-Lapislazuli/near-straight-slider-crash-fix
...
Fix for nearly straight sliders causing a crash
2024-05-31 20:00:47 +09:00
Bartłomiej Dach
69990c35cb
Add commentary on presence of IsPresent
override
2024-05-31 08:47:19 +02:00
Dean Herbert
c6a7082034
Fix incorrect prefix check
2024-05-31 15:38:26 +09:00
Aurelian
9111da81d2
Updated comments
2024-05-31 08:20:19 +02:00
Bartłomiej Dach
1a26a5dbda
Fix mismatching localisation key prefix
...
The `Strings` suffix is not supposed to be in here, judging by other
localisation classes.
2024-05-31 08:09:25 +02:00
Bartłomiej Dach
cb72630ce1
Fix compile failures
2024-05-31 08:09:06 +02:00
Dean Herbert
5dfeaa3c4a
Move dialog strings to more common class name
2024-05-31 11:46:32 +09:00
Dean Herbert
e52f524ea2
Use common header text
2024-05-31 11:44:53 +09:00
Dean Herbert
474ff5b99d
Use question mark for more grammatical correctness
...
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2024-05-31 10:46:30 +09:00
Dean Herbert
53b7c29488
Add test coverage of menu banner link opening
2024-05-31 03:15:26 +09:00
Dean Herbert
ed64bfff8d
Bypass external link dialog for links on the trusted osu! domain
2024-05-31 02:44:51 +09:00
Dean Herbert
87a331fdde
Improve text on external link warning dialog
2024-05-31 02:44:45 +09:00
Dan Balasescu
3c2599c50f
Merge pull request #27977 from DavidBeh/magnetised-judgements
...
Make judgements follow hitcircles and enable them in magnetised, repel and depth
2024-05-30 19:21:20 +09:00
Dan Balasescu
981b69de2f
Merge pull request #28357 from peppy/dont-fail-acks
...
Avoid `ChatAckRequest` failures flooding console in `OsuGameTestScene`s
2024-05-30 18:15:25 +09:00
Dean Herbert
f3bc944ac8
Remove using statement
2024-05-30 17:45:32 +09:00
Bartłomiej Dach
50bd0897f6
Fix main menu button backgrounds not covering their entire width sometimes
...
I thought I had fixed this already once but it still looks broken.
Basically when hovering over main menu buttons every now and then it
will look like their backgrounds are not covering their entire width
when they expand.
The removed X position set looks wrong to me when inspecting the draw
visualiser with the element because the element looks to be off centre
horizontally, and removing it fixes that.
2024-05-30 10:38:22 +02:00
Dean Herbert
36d7775032
Fix typo in IAPIProvider
xmldoc
2024-05-30 17:38:05 +09:00
Dean Herbert
2f2bc8e52e
Avoid ChatAckRequest
failures flooding console in OsuGameTestScene
s
2024-05-30 17:37:55 +09:00
Dean Herbert
fdb47f8dfa
Fix incorrect handling of nested objects when inside parent object's duration
2024-05-29 23:30:47 +09:00
Dean Herbert
126837fadd
Apply results rather than fake a replay frame
2024-05-29 23:28:37 +09:00
Dean Herbert
3b5b7b2f88
Fix the majority of cases where gameplay stil doesn't end due to judgement count mismatch
2024-05-29 22:57:17 +09:00
Dean Herbert
d2c86b0813
Avoid passing beatmap in from editor when it's already present
2024-05-29 21:32:55 +09:00
Bartłomiej Dach
ab01fa6d45
Add xmldoc to APIAccess.APIVersion
2024-05-29 14:10:07 +02:00
Bartłomiej Dach
cc13655617
Derive API response version from game version
...
(Or local date, in the case of non-deployed builds).
Came up when I was looking at https://github.com/ppy/osu-web/pull/11240
and found that we were still hardcoding this.
Thankfully, this *should not* cause issues, since there don't seem to be
any (documented or undocumented) API response version checks for
versions newer than 20220705 in osu-web master.
For clarity and possible debugging needs, the API response version is
also logged.
2024-05-29 14:10:01 +02:00
Dean Herbert
16e2fa2c6a
Merge branch 'master' into fix/editor-test-exit
2024-05-29 21:08:36 +09:00
Bartłomiej Dach
a6c776dac8
Use hopefully safer implementation of anchoring judgements to objects
2024-05-29 11:11:43 +02:00
Bartłomiej Dach
7b7e439d03
Merge branch 'master' into scale-tool
2024-05-29 10:15:48 +02:00
Bartłomiej Dach
9477e3b67d
Change editor scale hotkey to Ctrl-E
...
Forgot that Ctrl-T was taken by the game-global toolbar already, so it
wasn't working.
2024-05-29 10:14:47 +02:00
Bartłomiej Dach
4c881b5633
Use better name if we're renaming
2024-05-29 09:40:29 +02:00
Aurelian
542809a748
Reduced subpoints limit to be a more practical value
2024-05-29 09:39:46 +02:00
Dan Balasescu
655b0f5343
Merge branch 'master' into negative-frame-handling
2024-05-29 13:14:59 +09:00
OliBomby
d143a697d2
refactor CanScaleFromPlayfieldOrigin and GetClampedScale to derived class
2024-05-28 17:12:16 +02:00
OliBomby
8eb23f8a60
remove redundant CanScaleFromSelectionOrigin
2024-05-28 16:19:57 +02:00
OliBomby
a89ba33b47
rename CanScaleSelectionOrigin/PlayfieldOrigin to make clear its not the origin being scaled
2024-05-28 16:14:16 +02:00
OliBomby
36453f6215
Change scale hotkey to Ctrl+T
2024-05-28 15:56:59 +02:00
Dean Herbert
c2e7cdfdcc
Update framework
2024-05-28 21:29:29 +09:00
Dean Herbert
8c4931eeec
Merge branch 'master' into footer-v2-transitions
2024-05-28 18:49:39 +09:00
Dean Herbert
4408039b3e
Merge branch 'master' into footer-v2-back-button
2024-05-28 15:50:34 +09:00
Dan Balasescu
e2b4e25ffa
Merge pull request #28277 from bdach/total-score-without-mods-once-more
...
Compute total score without mods during standardised score conversion
2024-05-28 07:49:27 +09:00
Aurelian
6c4def1c09
Added check for infinite subpoints for PerfectCurve
2024-05-27 20:32:18 +02:00
Bartłomiej Dach
daee363743
Merge branch 'master' into total-score-without-mods-once-more
2024-05-27 15:16:58 +02:00
Bartłomiej Dach
405c72c0d6
Fix mod display not being aligned with mapper text
2024-05-27 13:36:44 +02:00
Dean Herbert
aad0982e26
Adjust size of play button / progress to match BeatmapCardThumbnail
usage
2024-05-27 20:33:24 +09:00
Dean Herbert
75d961e6f2
Pass the same thing in twice for better maybe
2024-05-27 20:30:01 +09:00
Dean Herbert
d976224912
Standardise padding on both sides of difficulty icon
2024-05-27 19:59:25 +09:00
Bartłomiej Dach
1e2cac3e92
Remove unused using directive
2024-05-27 11:44:55 +02:00
Dean Herbert
740a3377fa
Merge branch 'master' into LeaderBoardScore_clean
2024-05-27 17:18:41 +09:00
Dean Herbert
b6471f0b9c
Allow previewing audio of playlist items
2024-05-27 17:09:37 +09:00
Bartłomiej Dach
bdfce4b9da
Fix xmldoc reference
2024-05-27 08:26:00 +02:00
Dean Herbert
11c3d11db9
Fix cinema mod not hiding playfield skin layer
2024-05-27 14:52:28 +09:00
Joseph Madamba
8e14c24ee3
Follow slanted flow logic precedent in test
...
See `ModSelectOverlay` components.
2024-05-26 00:24:03 -07:00
OliBomby
37530eebcc
Enable scale buttons at the correct times
2024-05-25 20:35:06 +02:00
OliBomby
4eeebdf60c
calculate max scale bounds for scale slider
2024-05-25 20:17:27 +02:00
OliBomby
88314dc584
select all input text on popup for an easy typing experience
2024-05-25 18:41:31 +02:00
OliBomby
6aa92bcc45
Add simple scale tool
2024-05-25 18:31:19 +02:00
Salman Ahmed
2c18c10ac8
Move to SelectV2
namespace
2024-05-25 17:20:10 +03:00
Salman Ahmed
d395c85418
Adjust right content width based on scoring mode
2024-05-25 17:16:41 +03:00
Salman Ahmed
5955378004
Replace "X mods" text with a pill indicator
2024-05-25 16:11:24 +03:00
Andrei Zavatski
1e90e5e38e
Use sb element path as a name
2024-05-25 13:24:25 +03:00
Salman Ahmed
35af518fdb
Remove expanded/contracted states and limit to 5 mods
...
Also adjusts right content width to contain those 5 mods. Not sure how to handle the extra space in the score though...to be dealt with later.
2024-05-25 12:52:48 +03:00
OliBomby
497701950d
fix nitpick
2024-05-24 18:11:28 +02:00
Dean Herbert
2134ff7a1b
Merge pull request #28071 from Fabiano1337/lazer-speedkeys
...
Make ctrl-up/down change speed modifier of mods
2024-05-24 23:20:04 +09:00
Bartłomiej Dach
9f19ab092d
Merge branch 'master' into grids-1
2024-05-24 14:39:55 +02:00
Aurelian
b2c4e0e951
Reworked linear line check, and optimized scaled flat slider test
2024-05-24 14:05:56 +02:00
Bartłomiej Dach
c800bb5339
Merge branch 'master' into lazer-speedkeys
2024-05-24 13:19:26 +02:00
Bartłomiej Dach
cab8cf7410
Move mod speed hotkey handler to user mod select overlay
...
The very base class is the wrong place for it because
`FreeModSelectOverlay` inherits from it, and that one has different
assumptions and rules than "user" selection. In particular, in non-user
selection, more than one rate adjust mod may be active, which breaks the
mod speed hotkey's basic assumptions.
2024-05-24 13:14:06 +02:00
Bartłomiej Dach
b1b207960a
Actually use return value
2024-05-24 13:09:44 +02:00
Bartłomiej Dach
8cac87e496
Fix speed controls in mod select overlay not handling repeat
2024-05-24 13:09:07 +02:00
Bartłomiej Dach
345fb60679
Fix toast strings
2024-05-24 13:08:17 +02:00
Bartłomiej Dach
63406b6feb
Rewrite implementation
2024-05-24 13:03:42 +02:00
Bartłomiej Dach
7255cc3344
Fix tests dying on a nullref
2024-05-24 11:25:29 +02:00
Bartłomiej Dach
807d982a72
Move workaround to subscreen
2024-05-24 10:35:33 +02:00
Bartłomiej Dach
a80dbba9d0
Update to not use obsoleted method
2024-05-24 10:35:31 +02:00
Bartłomiej Dach
4089071299
Merge branch 'master' into fix-editor-didnt-save
2024-05-24 10:16:46 +02:00
Aurelian
fff52be59a
Addressed code quality issues
2024-05-24 09:30:24 +02:00
Aurelian
d948e0fc5c
Nearly straight sliders are treated as linear
2024-05-24 08:26:17 +02:00
Bartłomiej Dach
8a2dd4d816
Merge branch 'master' into scaling
2024-05-23 15:10:40 +02:00
Bartłomiej Dach
128029e2af
Fix aspect ratio lock applying when shift pressed on a non-corner anchor
...
It doesn't make sense and it wasn't doing the right thing.
2024-05-23 15:08:43 +02:00
Bartłomiej Dach
ac5c031a3a
Simplify original state management in skin selection scale handler
2024-05-23 15:01:28 +02:00
Bartłomiej Dach
9e86a08405
Simplify scale origin computation
2024-05-23 14:07:43 +02:00
Bartłomiej Dach
070668c96f
Use ShiftPressed
instead of explicitly checking both physical keys
...
Not only is this simpler, but it also is more correct (for explanation
why, try holding both shift keys while dragging, and just releasing one
of them - the previous code would briefly turn aspect ratio off).
2024-05-23 13:57:34 +02:00
Bartłomiej Dach
bfa23ec7a4
Fix main menu button animation not playing on initial show
2024-05-23 11:46:48 +02:00
Dean Herbert
357e55ae1f
Make gradient layer a bit more dynamic
2024-05-23 17:39:59 +08:00
Dean Herbert
a3639e0ce3
Remove unused field
2024-05-23 17:19:11 +08:00
Dean Herbert
88a2f74326
Adjust animation
2024-05-23 16:00:23 +08:00
Dean Herbert
f85a1339d9
Unload daily challenge background less aggressively
2024-05-23 14:23:02 +08:00
Dean Herbert
6c37560842
Merge branch 'master' into daily-challenge-mvp
2024-05-23 10:57:05 +08:00
Dean Herbert
ae27fc6944
Merge pull request #28200 from Hecatia-Lapislazuli/max-cs-scaling
...
Enforce difficulty setting limits during decode
2024-05-23 09:30:15 +08:00
Dean Herbert
fd9f8bd3e0
Update framework
2024-05-23 01:21:12 +08:00
Dean Herbert
73cb363eba
Make some more methods static
2024-05-22 23:26:23 +08:00
Bartłomiej Dach
f7ca18b52e
Menial cleanups
2024-05-22 15:52:57 +02:00
Dean Herbert
66ceda1d67
Update focus specifications in line with framework changes
2024-05-22 21:32:49 +08:00
Dean Herbert
8d02ac5e21
Update framework
2024-05-22 21:20:34 +08:00
Fabian van Oeffelt
0df634574f
Improve readability
2024-05-22 13:59:33 +02:00
Fabian van Oeffelt
57da4229ff
Add speed value to Toast
2024-05-22 13:58:59 +02:00
Aurelian
b25987ffe7
Changed allowed mania keys, and reverted 0af32c5
2024-05-22 11:37:55 +02:00
Dean Herbert
d0b1ebff5a
Revert "Temporary rollback of framework / SDL3"
...
This reverts commit d7d569cf4e
.
2024-05-22 16:29:39 +08:00
Dean Herbert
3a608aa815
Merge pull request #28194 from bdach/daily-challenge-models
...
Add client/server models & operations for "daily challenge" feature
2024-05-22 15:48:23 +08:00
Dean Herbert
f979200712
Use null conditional rather than implicit not-null
2024-05-22 12:06:51 +08:00
Dean Herbert
1fdebe94ac
Merge branch 'master' into lazer-speedkeys
2024-05-22 12:05:04 +08:00
Dean Herbert
02a388cba6
Fix enum not being at end (and adjust naming)
2024-05-22 12:03:48 +08:00
Dean Herbert
99d99cede0
Basic cleanup
...
Before I gave up on attempting to fix the method.
2024-05-22 11:59:34 +08:00
Fabian van Oeffelt
3403789c6f
Toast now only shows when speed is actually changed
2024-05-21 16:11:20 +02:00
Fabian van Oeffelt
148afd1201
Change Speedchange behaviour to keep changing while holding key, Add Toast to nofity user what just happend
2024-05-21 14:47:34 +02:00
Bartłomiej Dach
45fcbea182
Compute total score without mods during standardised score conversion
...
This is going to be used by server-side flows. Note that the server-side
overload of `UpdateFromLegacy()` was not calling
`LegacyScoreDecoder.PopulateTotalScoreWithoutMods()`.
Computing the score without mods inline reduces reflection overheads
from constructing mod instances, which feels pretty important for
server-side flows.
There is one weird kink in the treatment of stable scores with score V2
active - they get the *legacy* multipliers unapplied for them because
that made the most sense. For all intents and purposes this matters
mostly for client-side replays with score V2. I'm not sure whether
scores with SV2 ever make it to submission in stable.
There may be minute differences in converted score due to rounding
shenanigans but I don't think it's worth doing a reverify for this.
2024-05-21 13:11:08 +02:00
Aurelian
1127a69359
Moved DIfficulty Clamping to occur after the file has been parsed
...
This is to handle potential issues with the ruleset being parsed after circle size has been parsed.
2024-05-21 10:15:53 +02:00
Dean Herbert
20a539bc4b
Merge pull request #28262 from bdach/fix-present-confusion-on-empty-hash
...
Do not attempt to match score by equality of empty hash when presenting it
2024-05-21 14:44:10 +08:00
Dean Herbert
d7d569cf4e
Temporary rollback of framework / SDL3
2024-05-21 14:36:16 +08:00
Dean Herbert
e740b8bcc3
Fix single frame glitching in skin editor
...
https://github.com/ppy/osu/pull/28257#discussion_r1606999574
2024-05-21 14:36:11 +08:00
Dean Herbert
3b86da443b
Merge pull request #28257 from bdach/fix-skin-editor-spaz
...
Fix closest anchor selection spazzing out in multiple scenarios
2024-05-21 14:35:29 +08:00
Aurelian
db8b72eb37
Clamped Difficulty Ranges to [0,10]
2024-05-20 16:23:16 +02:00
Bartłomiej Dach
ed498f6eed
Do not attempt to match score by equality of hash if it's empty
...
Closes https://github.com/ppy/osu/issues/28216 .
The affected user's database contained six sentakki scores with an empty
hash. When an online score is being imported, an online model (which
does not have a hash) will be transmogrified into a `ScoreInfo` with
an empty hash, which would end up accidentally matching those scores
and basically breaking everything at that point.
To fix, avoid attempting to match anything on empty hash. This does not
break online score matching because for those cases the actual online ID
of the score will be used.
2024-05-20 15:05:41 +02:00
Bartłomiej Dach
3da3b91be5
Improve closest origin selection to include effects of rotation/flip
...
Closes https://github.com/ppy/osu/issues/28237 .
Solution as proposed here:
https://github.com/ppy/osu/pull/28089#issuecomment-2095372157
For flips and rotations by 90 degrees this does what you would expect it
to. For arbitrary rotations it *sort of kind of* attempts to do this but
the results are a bit wonky - probably still better than what was there
before, though?
2024-05-20 10:23:12 +02:00
Bartłomiej Dach
c03f68413a
Fix skin editor closest origin selection spazzing out on scaled sprites
...
Closes https://github.com/ppy/osu/issues/28215 .
`drawable.Position` is a location in the parent's coordinate space, and
`drawable.OriginPosition` is in the drawable's local space and
additionally does not take scale into account.
2024-05-20 10:23:07 +02:00
Susko3
04acc58b74
Don't show warning on android
...
Unsure about iOS.
2024-05-19 14:12:21 +02:00
Susko3
e4858a975d
Show mouse and joystick settings on mobile
2024-05-19 14:07:40 +02:00
Bartłomiej Dach
be642c8c42
Fix total score without mods migration failing on custom ruleset scores when custom ruleset cannot be loaded
...
Closes https://github.com/ppy/osu/issues/28209 .
Yes this means that such scores will have a zero total score without
mods in DB and thus might up getting their total recalculated to zero
when we try a mod multiplier rebalance (unless we skip scores with zero
completely I suppose). I also don't really care about that right now.
2024-05-19 09:43:33 +02:00
Dean Herbert
9fcd3b562a
Merge pull request #28201 from frenzibyte/fix-settings-padding
...
Fix checkboxes looking misaligned when placed next to a slider bar
2024-05-19 10:36:54 +08:00
Fabian van Oeffelt
3fdbd735ce
change to single Function,
...
Nightcore now switches into Daycore, keep Adjustpitch after change
2024-05-18 18:40:51 +02:00
Fabian van Oeffelt
80064c4b98
Speedchange now also works in Modselect
2024-05-18 18:38:23 +02:00
Fabian van Oeffelt
a12a20e8b5
Change Inputkeys to Ctrl+Up/Ctrl+Down
2024-05-18 18:37:44 +02:00
Dean Herbert
37fdfbfaa0
Merge branch 'master' into footer-v2-back-button
2024-05-18 22:15:32 +08:00
Dean Herbert
7b847ad815
Merge pull request #28182 from frenzibyte/footer-v2-renamings
...
Rename and move new footer classes to appropriate places
2024-05-18 22:14:45 +08:00
Salman Ahmed
a912e56ca9
Fix checkboxes applying extra padding
2024-05-18 11:06:29 +03:00
Aurelian
0af32c5d4b
Added a minimum value for the scale calculated by the CS value.
2024-05-18 07:45:01 +02:00
Salman Ahmed
0a391d5c4e
Remove duplicate back button class
2024-05-18 08:39:45 +03:00
Bartłomiej Dach
a4142937e7
Update resources
2024-05-17 12:53:25 +02:00
Bartłomiej Dach
c9b7aaf442
Fix formatting
2024-05-17 11:50:23 +02:00
Bartłomiej Dach
a4f8ed2a0e
Add button to access daily challenge playlist from main menu
2024-05-17 11:15:52 +02:00
Bartłomiej Dach
61a415fed2
Add client/server models & operations for "daily challenge" feature
2024-05-17 10:58:08 +02:00
Bartłomiej Dach
e604a99053
Merge branch 'master' into fix-mismatching-localisation-xmldoc
2024-05-17 08:47:14 +02:00
Dan Balasescu
2f9d74286d
Bump once more
2024-05-17 11:15:17 +09:00
Bartłomiej Dach
f2f03f08cb
Fix xmldoc mismatches in localisation files
...
This is enforced by the localisation analyser after
https://github.com/ppy/osu-localisation-analyser/pull/62 , but it appears
the analyser was never actually bumped game-side after that change and
I'm not super sure why, as there does not appear to be a reason to _not_
do that. So this commit does it.
2024-05-16 17:39:27 +02:00
Bartłomiej Dach
5dd64a7c86
Fix duplicated localisation key in DeleteConfiormationContentStrings
...
Noticed via `osu-resources` build warnings.
There are also a few other warnings about
https://github.com/ppy/osu/pull/27472 . Seems something in crowdin
innards may still be exporting those strings even though they have been
fixed already. Not sure how to address that.
Probably need these to be detected via static analysis at this point
since it's happened again. Might look into the feasibility of making
that happen.
2024-05-16 14:49:56 +02:00
Salman Ahmed
8b285f5b1e
Add dummy SongSelectV2
screen to house new footer buttons (and new components going forward)
2024-05-16 07:48:58 +03:00
Salman Ahmed
2b5818a4d7
Fix DI crash in beatmap options popover
2024-05-16 07:48:58 +03:00
Salman Ahmed
03220598b8
Move screen footer to OsuGame
2024-05-16 07:48:58 +03:00
Salman Ahmed
921be3ca01
Add back receptor, logo tracking, and own colour provider to screen footer
2024-05-16 07:48:58 +03:00
Salman Ahmed
d0e8632fbf
Refactor ScreenFooter
to prepare for global usage and add transitions
2024-05-16 07:48:10 +03:00
Salman Ahmed
a2794922d5
Add TopLevelContent
layer for applying external transforms on footer buttons
2024-05-16 07:48:10 +03:00
Salman Ahmed
820cfbcb00
Remove unused using directives
2024-05-16 07:47:57 +03:00
Salman Ahmed
310b4d90cc
Move SHEAR
constant to OsuGame
and revert back to 0.2x (i.e. master)
...
Discussed in [discord](https://discord.com/channels/188630481301012481/188630652340404224/1240490608934653984 ).
2024-05-16 07:28:02 +03:00
Salman Ahmed
9265290acf
Change shear factor everywhere to 0.15x
2024-05-16 05:33:01 +03:00
Salman Ahmed
7fce4cc494
Make ScreenFooterButtonMods
share shear factor with base class
2024-05-16 05:30:28 +03:00
Salman Ahmed
9446f45acf
Fix shear factor of ScreenFooterButton
s not matching anything else
...
When shear factors differ between components that are close to each other (`BackButtonV2` and `ScreenFooterButton` in this case), they look completely ugly.
2024-05-16 05:30:28 +03:00
Salman Ahmed
7e8d5a5b0a
Add new footer back button
2024-05-16 05:30:28 +03:00
Salman Ahmed
266f080362
Allow customising content of ShearedButton
s
2024-05-16 05:02:56 +03:00
Salman Ahmed
e3afd89dc8
Allow specifying height of ShearedButton
s
...
Also includes a test case in `TestSceneShearedButton`s to ensure the buttons' shear factors don't change on different heights (I've encountered issues with that previously).
2024-05-16 05:02:56 +03:00
Salman Ahmed
21f5d891bb
Rename and move footer classes to appropriate places
2024-05-16 04:41:16 +03:00
OliBomby
c4ac6d20a0
fix code quality
2024-05-15 23:40:51 +02:00
OliBomby
8df5f22b4e
Merge remote-tracking branch 'upstream/master' into scaling
2024-05-15 23:05:19 +02:00
Dean Herbert
a3960bf715
Add inline comment explaining LifetimeEnd
set for future visitors
2024-05-15 14:17:28 +08:00
Bartłomiej Dach
7c1640e124
Merge pull request #28170 from peppy/fix-catch-dho-performance
...
Set a rudimentary lifetime end to improve seek performance in scrolling rulesets
2024-05-14 19:27:40 +02:00
Dean Herbert
cff865b556
Continue loading even when osu! logo is being dragged at loading screen
...
Closes https://github.com/ppy/osu/issues/28130 .
2024-05-14 23:54:07 +08:00
Dean Herbert
c31b503f2a
Merge pull request #28171 from bdach/present-score-different-hashes
...
Use hash rather than online ID as primary lookup key when presenting score
2024-05-14 23:39:54 +08:00
Bartłomiej Dach
ee9144c3bd
Apply NRT to results statistics displays
2024-05-14 15:21:12 +02:00
Bartłomiej Dach
414f023817
Apply NRT to RankText
2024-05-14 15:21:05 +02:00
Bartłomiej Dach
b937b94bd2
Apply NRT to RankBadge
2024-05-14 15:20:56 +02:00
Bartłomiej Dach
ced1c79490
Apply NRT to AccuracyCircle
2024-05-14 15:20:47 +02:00
Bartłomiej Dach
e7721b073c
Apply NRT to ContractedPanelTopContent
2024-05-14 15:20:36 +02:00
Bartłomiej Dach
8e16b57d09
Apply NRT to SimpleStatisticTable
2024-05-14 15:20:26 +02:00
Bartłomiej Dach
237ae8b46a
Apply NRT to SimpleStatisticsItem
2024-05-14 15:20:17 +02:00
Bartłomiej Dach
2f2257f6ce
Apply NRT to PerformanceBreakdownChart
2024-05-14 15:20:07 +02:00
Bartłomiej Dach
77a7f475ee
Apply NRT to ScorePanel
2024-05-14 15:19:58 +02:00
Bartłomiej Dach
10a8e84046
Apply NRT to StatisticsPanel
2024-05-14 15:19:46 +02:00
Bartłomiej Dach
cb49147d1e
Apply NRT to ScorePanelList
2024-05-14 15:19:43 +02:00
Bartłomiej Dach
03a279a48d
Use hash rather than online ID as primary lookup key when presenting score
...
Something I ran into when investigating
https://github.com/ppy/osu/issues/28169 .
If there are two scores with the same online ID available in the
database - for instance, one being recorded locally, and one recorded by
spectator server, of one single play - the lookup code would use online
ID first to find the score and pick any first one that matched. This
could lead to the wrong replay being refetched and presented / exported.
(In the case of the aforementioned issue, I was confused as to whether
after restarting spectator server midway through a play and importing
the replay saved by spectator server after the restart, I was seeing a
complete replay with no dropped frames, even though there was nothing in
the code that prevented the frame drop. It turns out that I was getting
presented the locally recorded replay instead all along.)
Instead, jiggle the fallback preference to use hash first.
2024-05-14 11:16:50 +02:00
Dean Herbert
cfb2c8272b
Set a rudimentary lifetime end to improve seek performance in scrolling rulesets
2024-05-14 05:02:08 +08:00
Bartłomiej Dach
87f2a23263
Merge pull request #28144 from peppy/hide-country-flags
...
Add setting to allow hiding all country flags
2024-05-13 10:10:38 +02:00
Joseph Madamba
9b84d8ac2f
Apply missed changes from old leaderboard score
...
See:
- d11e56b8bb
- 7d74d84e6c
- 07f9f5c6d8
2024-05-12 22:39:22 -07:00
Joseph Madamba
736e15ab26
Improve fluidity states
2024-05-12 22:21:50 -07:00
Dean Herbert
5a362be190
Merge branch 'master' into glow
2024-05-12 12:58:57 +08:00
Dean Herbert
147ebb6bc7
Merge pull request #28142 from frenzibyte/footer-v2-button-animation
...
Improve animation of new song select footer buttons
2024-05-12 11:07:30 +08:00
Salman Ahmed
fa6ccc854d
Revert behavioural changes on options button
2024-05-12 05:24:45 +03:00
Thomas Mok
5e8f6df799
Add glow to footerV2 buttons
2024-05-12 01:55:18 +01:00
Salman Ahmed
4cf6ab40f6
Use MustDisposeResource
annotation to appease ReSharper inspections
2024-05-11 22:33:18 +03:00
Dean Herbert
69d699a218
Merge branch 'master' into footer-v2-button-animation
2024-05-11 21:41:50 +08:00
Dean Herbert
6cfe1356cd
Merge pull request #28141 from frenzibyte/footer-v2-mods-display
...
Add mod display and unranked indicator to new song select footer
2024-05-11 21:41:25 +08:00
Dean Herbert
a988bbd3cb
Tidy up UnrankedBadge
implementation
2024-05-11 20:58:51 +08:00
Dean Herbert
ac7598cb68
Move localisation to existing file to avoid silly new class
2024-05-11 20:25:47 +08:00
Salman Ahmed
da096376af
Fix DI error in mod tooltip
2024-05-11 09:31:36 +03:00
Salman Ahmed
f64cf5c037
Fix button extending beyond unranked indicator width
2024-05-11 09:29:09 +03:00
Joseph Madamba
e8967ff3c5
Lower username font size a bit
2024-05-10 22:14:41 -07:00
Joseph Madamba
8a474f7d22
Fix broken avatar masking when hiding
2024-05-10 22:14:41 -07:00
Joseph Madamba
d0c8b55a0a
Fix fluidity desync by not autosizing right (total score) content
2024-05-10 22:14:41 -07:00
Dean Herbert
ea35ad4689
Fix nullability inspection
2024-05-10 23:26:43 +08:00
Dean Herbert
a780abb0b4
Merge pull request #27912 from bdach/pre-mod-multiplier-score
...
Store total score without mod multipliers to local database and to replays, and send it on score submission
2024-05-10 22:46:34 +08:00
Dean Herbert
e887f93eca
Always show placeholder on unknown / missing country
2024-05-10 22:45:59 +08:00
Dean Herbert
b026309e36
Add setting to allow hiding all country flags
...
There have been enough requests for this at this point to implement it.
2024-05-10 20:32:21 +08:00
Dean Herbert
ca608a8443
Update resources
2024-05-10 18:36:44 +08:00
Salman Ahmed
09c52f03d8
Fix "options" button behaving weirdly when clicking on it while open
2024-05-10 08:25:16 +03:00
Salman Ahmed
b6d6a8940b
Improve animation of new song select footer buttons
2024-05-10 08:24:39 +03:00
Salman Ahmed
0392f7b04c
Add tooltip to unranked indicator
2024-05-10 07:37:08 +03:00
Salman Ahmed
f5ab9a7ff8
Make unranked indicator orange to match mod select overlay
2024-05-10 07:12:28 +03:00
Salman Ahmed
e5b2023155
Remove unappealing fade transition between mod display and count text
...
Fading out the mod display looks quite ugly, since alpha is applied per mod sprite, introducing bad visual on the intersection between mods.
2024-05-10 07:05:36 +03:00
Salman Ahmed
6ddf8f8498
Few cleanups
2024-05-10 06:55:02 +03:00
Salman Ahmed
c1ea9d2c9f
Adjust unranked badge height
2024-05-10 06:48:18 +03:00
Salman Ahmed
bff34a1c04
Add localisation and tooltip for mods count text
2024-05-10 06:48:18 +03:00
Salman Ahmed
49692e168e
Fix ModDisplay
expanding on load with "always contracted/expanded" modes
...
This is especially visible when reloading `SongSelectFooterV2` while multiple mods are already selected. The mods will appear expanded then contract.
2024-05-10 06:48:18 +03:00
Salman Ahmed
6b91b4abf4
Add simple implementation for extended mods display in new footer design
2024-05-10 02:20:48 +03:00
Dean Herbert
c4d6318c0d
Update framework
2024-05-09 22:12:09 +08:00
Dan Balasescu
13692d8e7a
Merge branch 'masking-changes' into framework-bump
2024-05-09 21:11:54 +09:00
Dan Balasescu
3b8b56cbcb
Apply required changes after framework masking updates
2024-05-09 20:18:53 +09:00
Dean Herbert
58636d4bfb
Merge branch 'master' into Make-deletion-confirmation-less-confusing
2024-05-09 14:40:11 +08:00
Dean Herbert
88b20b357a
Increase padding around text in dialogs
2024-05-09 14:38:10 +08:00
Bartłomiej Dach
c9414da5d4
Merge branch 'master' into pre-mod-multiplier-score
2024-05-08 13:39:44 +02:00
Bartłomiej Dach
5a9a786199
Merge branch 'master' into user-id-in-replays
2024-05-08 10:43:25 +02:00
Ekischleki
e4bfa6f46b
Merge branch 'master' into Make-deletion-confirmation-less-confusing
2024-05-07 18:45:02 +02:00
Erik Wolfschläger
ab2677d913
Changed default delete confirmation content strings for better translatability
2024-05-07 17:15:49 +02:00
Dean Herbert
069841b2b3
Merge pull request #28128 from peppy/update-bundled-beatmaps
...
Update bundled beatmaps
2024-05-07 22:48:48 +08:00
Dean Herbert
0ddd3cbdc5
Randomise which menu content is shown on arriving at the menu
2024-05-07 17:02:25 +08:00
Dean Herbert
1d6915478f
Add message letting users know that beatmaps are donwloading in the background
2024-05-07 14:26:49 +08:00
Dean Herbert
91c684151a
Update bundled beatmaps
2024-05-07 14:18:50 +08:00
Susko3
f824bd1441
Fix userTriggered
not being passed to private helper
2024-05-06 21:52:03 +02:00
Erik Wolfschläger
12522d9ae5
Fix formatting issues
2024-05-06 18:29:46 +02:00
Erik Wolfschläger
32444e0e30
Make deletion confirmation content less confusing
2024-05-06 18:11:40 +02:00
Erik Wolfschläger
a694f46253
Add new localisable strings
2024-05-06 18:10:58 +02:00
Bartłomiej Dach
9c6968c13a
Use score.User.OnlineID
instead of score.UserID
...
You'd hope that they'd be the same thing, but
post-https://github.com/ppy/osu-server-spectator/pull/230 it turns out
that cannot be guaranteed, so just attempt to use `User` in the encoder
consistently everywhere...
2024-05-06 16:29:03 +02:00
Bartłomiej Dach
d7a0fdce07
Merge pull request #28089 from peppy/use-closest-origin
...
Automatically choose origin (along with anchor) to make skin editor placement easier for users
2024-05-06 14:57:34 +02:00
Bartłomiej Dach
abfb2c00bc
Look up users by ID if available when importing scores
2024-05-06 13:24:34 +02:00
Dean Herbert
29eef26a69
Merge pull request #28118 from bdach/scaling-mode-does-not-affect-skin-editor
...
Fix sizing of gameplay preview in skin editor not updating on scaling mode change
2024-05-06 18:46:48 +08:00
Bartłomiej Dach
554ead0d9d
Decode user ID from score if available
2024-05-06 12:28:13 +02:00
Bartłomiej Dach
4d9ccdc3b2
Encode user ID to replays
2024-05-06 12:28:13 +02:00
Bartłomiej Dach
353a07f7a5
Fix code quality inspection
2024-05-06 12:23:11 +02:00
Bartłomiej Dach
f066026503
Fix sizing of gameplay preview in skin editor not updating on scaling mode change
...
Closes https://github.com/ppy/osu/issues/28115 .
2024-05-06 11:55:51 +02:00
Bartłomiej Dach
cf87e9cd40
Do not show integration settings on mobile
...
Closes https://github.com/ppy/osu/issues/28097 .
The settings weren't actually doing anything at all there anyway.
2024-05-06 11:24:42 +02:00
Bartłomiej Dach
761d713593
Merge pull request #28086 from 424ever/ctrl-keeps-menu-open
...
Activate stateful menu items with right-click without closing the menu
2024-05-06 09:30:22 +02:00
Bartłomiej Dach
71776a583c
Merge branch 'master' into preset-td-autoplay
2024-05-06 09:02:08 +02:00
Bartłomiej Dach
4c7e6b125c
Add clarification comment
2024-05-06 08:49:30 +02:00
Bartłomiej Dach
cf22fc143f
Merge pull request #27539 from frenzibyte/storyboard-loops-v2
...
Refactor storyboard commands structure and add framework-based transform loop support
2024-05-06 08:39:07 +02:00
Dean Herbert
12cd3bbe1c
Fix incorrect scale handling due to selection point changes
2024-05-06 11:34:37 +08:00
Dean Herbert
6f0fc6f78f
Merge pull request #28111 from Joehuu/fix-broken-scrolling-unicode
...
Fix now playing overlay text scroll breaking when toggling metadata language setting
2024-05-06 11:15:51 +08:00
Joseph Madamba
359238395f
Fix now playing overlay text scroll breaking when toggling metadata language setting
2024-05-05 15:43:46 -07:00
Joseph Madamba
1665c5e0e1
Use existing AutomaticallyDownloadMissingBeatmaps
localisation on solo spectator screen
2024-05-05 14:41:48 -07:00
Dean Herbert
9e7712740b
Refactor for legibility
2024-05-05 23:33:37 +08:00
Jonas Brandstötter
b1696db9c8
Reorder imports with dotnet format
2024-05-04 16:32:18 +02:00
Jonas Brandstötter
c62952ea3a
Invoke the registered Action when a stateful item is right clicked
2024-05-04 16:27:06 +02:00
Jonas Brandstötter
21917218ce
No longer keep menu open when CTRL is held
2024-05-04 16:27:06 +02:00
cdwcgt
1f92f1d19b
remove blank line
...
nt
2024-05-04 20:41:36 +08:00
cdwcgt
fe30ca3d39
fix linq logic
2024-05-04 20:18:31 +08:00
cdwcgt
f9be9ed479
remove incompatible system mods before enable preset
2024-05-04 19:58:32 +08:00
Dean Herbert
002efca422
Merge pull request #28082 from bdach/do-not-lookup-usernames-for-offline-scores
...
Do not lookup usernames for scores without an online ID
2024-05-04 15:08:33 +08:00
Dean Herbert
2cb367fdce
Disable "origin" menu when in "Closest" placement mode
2024-05-04 13:29:05 +08:00