1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-17 01:32:55 +08:00
Commit Graph

9539 Commits

Author SHA1 Message Date
Bartłomiej Dach
285284eb34
Merge branch 'master' into more-import-lenience 2023-12-15 16:02:44 +01:00
Bartłomiej Dach
91f4123aa7
Fix first run locator stable locator directory desyncing between display & popover 2023-12-15 16:00:34 +01:00
Bartłomiej Dach
b384c9f938
Extract common method for determining stable import usability of directory 2023-12-15 15:42:19 +01:00
Dan Balasescu
9e3b1dbb59
Fix CI inspection 2023-12-15 17:41:22 +09:00
Dean Herbert
6e7e243e70
Allow new common cases when a user is locating a stable osu! install directory for import 2023-12-15 16:05:29 +09:00
Dean Herbert
4357bb1040
Change LeftContent autosize duration to match main content to reduce visual awkwards 2023-12-15 16:01:07 +09:00
Dean Herbert
b86f387fd3
Fix the width of vertical attribute display numbers
Not necessarily required to fix the issue at hand, but probably good
practice here.
2023-12-15 15:04:22 +09:00
Bartłomiej Dach
9e5b6b97ff
Fix AdjustedAttributesTooltip being broken by design
Fixes issue described in the following comment:
https://github.com/ppy/osu/pull/25759#issuecomment-1855954637

That is just not how the tooltip system is supposed to be used.

To name the individual sins:

- Caching and returning a tooltip instance like the classes that used
  tooltips is incorrect. The lifetime of tooltip instances is managed by
  the tooltip container. `GetCustomTooltip()` is called by it
  exclusively. It should return a fresh instance every time.

- Not putting actual data in `IHasCustomTooltip.TooltipContent` is
  wrong.

- Having `Tooltip.SetContent()` be a no-op is *grossly and flagrantly*
  wrong.

I'm not even sure which particular combination of the above
transgressions caused the issue as it presented itself, but at this time
I frankly do not care.
2023-12-14 16:15:56 +01:00
Bartłomiej Dach
73c0a0ecb4
Merge pull request #25759 from Givikap120/arod_rate_adjust
Fix adjusted attributes tooltip not updating without mods
2023-12-14 16:09:34 +01:00
Givikap120
23c427cd3e Update AdjustedAttributesTooltip.cs 2023-12-14 14:38:01 +02:00
Givikap120
c2373bb37b change the order of attributes
+ simplifying the bug fix
2023-12-14 14:31:19 +02:00
Dean Herbert
c3d881caee
Merge branch 'master' into more-dropdown-search 2023-12-14 18:44:57 +09:00
Dean Herbert
d77972a39b
Show search bar by default in language and collection dropdowns 2023-12-14 18:26:13 +09:00
Bartłomiej Dach
b3a7c7a7c9
Add control to adjust mod select search text box behaviour 2023-12-14 10:04:37 +01:00
Bartłomiej Dach
0ab6e18792
Automatically focus search text box on open depending on setting 2023-12-14 09:52:55 +01:00
Dean Herbert
e296730b37
Merge pull request #24642 from Givikap120/arod_rate_adjust
Show adjusted AR/OD when using DT/HT
2023-12-13 22:17:10 +09:00
Dean Herbert
c6b1a5f1ee
Merge pull request #25691 from bdach/fix-skin-editor-crash-again
Fix skin editor crashing in some circumstances when opened in main menu
2023-12-13 22:15:42 +09:00
Bartłomiej Dach
7a4ea90bda
Fix test failures due to dependency becoming required 2023-12-13 11:01:07 +01:00
Dean Herbert
5062c53e36
Refactor everything for sanity 2023-12-13 17:33:39 +09:00
Dean Herbert
9433180ffe
Fix various code quality and visual issues with AdjustedAttributesTooltip 2023-12-13 16:57:31 +09:00
Bartłomiej Dach
d0fccb30ec
Merge branch 'master' into export-log-archive 2023-12-13 08:36:13 +01:00
Dean Herbert
0259ab761b
Merge branch 'master' into arod_rate_adjust 2023-12-13 16:35:18 +09:00
Salman Ahmed
10e8edff67 Merge branch 'master' into dropdown-search 2023-12-12 21:14:01 +03:00
Givikap120
faf54bca43
Merge branch 'master' into arod_rate_adjust 2023-12-10 01:49:18 +02:00
Givikap120
f5b93121f1 Update AdjustedAttributesTooltip.cs 2023-12-10 00:51:50 +02:00
Givikap120
78cdedf34d Update BeatmapAttributesDisplay.cs 2023-12-10 00:42:02 +02:00
Givikap120
1d0c37e138 fixed test errors 2023-12-10 00:40:05 +02:00
Dean Herbert
07dc44ccd7
Make log export async and show notification on completion 2023-12-07 16:19:17 +09:00
Bartłomiej Dach
54f3a622be
Retrofit user presence watching into dashboard overlay 2023-12-06 19:37:35 +01:00
Bartłomiej Dach
d66fa09320
Simplify UserStatus to be an enumeration type
There were absolutely no gains from having it be a reference type /
class, only complications, especially when coming from the serialisation
angle.
2023-12-06 18:52:27 +01:00
Bartłomiej Dach
f239d03d75
Forcibly change ruleset to correct one before entering gameplay from main menu
Closes #25663 (again).

As it turns out, in some scenarios it can be the case that the current
game-global `Beatmap` is not valid for the current game-global
`Ruleset`. The validity of one and the other in conjunction is only
really validated by the song select screen; elsewhere there is no
guarantee that the global beatmap is playable using the global ruleset.

However, this only comes up in very specific circumstances, namely one:
when trying to autoplay a catch beatmap with osu! ruleset globally
active via the skin editor flow.

`Player` is responsible for retrieving the beatmap to be played. It does
so by invoking the appropriate beatmap converter and asking it if the
beatmap can be converted:

	6d64538d7a/osu.Game/Beatmaps/WorkingBeatmap.cs (L262-L266)

If the code above throws, `Player` actually silently covers for this, by
trying the beatmap's default ruleset instead:

	6d64538d7a/osu.Game/Screens/Play/Player.cs (L529-L536)

However, for the pairing of osu! ruleset and catch beatmap, this fails,
as `OsuBeatmapConverter`'s condition necessary for permitting conversion
is that the objects have a defined position:

	6d64538d7a/osu.Game.Rulesets.Osu/Beatmaps/OsuBeatmapConverter.cs (L25)

which they will do, due to the fact that all catch beatmaps are really
just osu! beatmaps but with conversion steps applied, and thus `Player`
succeeds to load the catch beatmap in osu! ruleset.

In the skin editor scenario, this would lead to the secondary failure
of the skin editor trying to apply `CatchModAutoplay` on top of all
of that, which would fail at the hard-cast of the beatmap
to `CatchBeatmap`.
2023-12-06 10:35:41 +01:00
Dean Herbert
ca991f1f54
Move flags local to EndlessPlayer 2023-12-06 17:18:35 +09:00
Salman Ahmed
f45336a4f6 Make skin dropdown searching non-contiguous 2023-12-05 22:53:48 +03:00
Salman Ahmed
d4aedaf22d Always show search bar in skin dropdown for visibility 2023-12-05 22:53:48 +03:00
Salman Ahmed
d92db8059e Add new dropdown properties to SettingsDropdown 2023-12-05 22:53:48 +03:00
Dean Herbert
5a2240838b
Merge branch 'master' into multiplayer-abort 2023-12-05 17:01:54 +09:00
Dean Herbert
f317e06da1
Use DangerousActionDialog 2023-12-05 16:54:44 +09:00
Susko3
0e47492858 Uncomment net6.0 code and remove old code 2023-12-04 20:17:22 +01:00
Dean Herbert
c5a08a0711
Remove unused using statement 2023-12-04 23:06:08 +09:00
Bartłomiej Dach
5512298d60
Trim unused resolved bindable 2023-12-04 15:01:23 +01:00
Bartłomiej Dach
8754fa40f4
Source autoplay mod from beatmap about to be presented rather than ambient global 2023-12-04 14:42:51 +01:00
Bartłomiej Dach
063694f544
Do not attempt to load gameplay scene if current beatmap is dummy 2023-12-04 14:42:51 +01:00
Bartłomiej Dach
9d39b70e38
Fix endless player not handling load failure 2023-12-04 14:42:51 +01:00
Bartłomiej Dach
055fb5bd8f
Do not set initial activity in skin editor endless player
Seems like an overreach to say that the user is "watching a replay"
there.
2023-12-04 14:42:51 +01:00
Joseph Madamba
d2324cd8f9 Fix chat overlay top bar icon being incorrect 2023-11-30 10:20:01 -08:00
Dean Herbert
51de98f341
Use Logger.Storage rather than locally querying 2023-11-28 17:59:21 +09:00
Dean Herbert
4c2819dbc2
Update button text and make localisable 2023-11-28 17:59:05 +09:00
Dean Herbert
11f1f44237
Add button to compress log files for bug submission 2023-11-27 17:13:11 +09:00
Dean Herbert
ff18f80559
Apply NRT to UpdateSettings 2023-11-27 16:56:11 +09:00
Bartłomiej Dach
e8730fae84
Merge branch 'master' into skin-editor-load-gameplay 2023-11-27 12:14:25 +09:00
Bartłomiej Dach
7e3bb5f8db
Make skin editor overlay dependency nullable to fix tests 2023-11-27 12:09:13 +09:00
Bartłomiej Dach
3f48f4acdf
Remove blank line 2023-11-27 12:06:08 +09:00
Bartłomiej Dach
19639de299
Merge branch 'master' into fix-spectator-quit-2 2023-11-27 11:36:10 +09:00
Bartłomiej Dach
6f66819e51
Privatise setter 2023-11-27 10:44:50 +09:00
Dean Herbert
3015135178
Merge branch 'master' into chat-drag-improvements 2023-11-24 18:13:18 +09:00
Dean Herbert
7153c823e8
Choose a better beatmap if the intro is still playing
Also skip intro time.
2023-11-24 17:47:20 +09:00
Dean Herbert
95229cb336
Show gameplay when loading the skin editor from the main menu 2023-11-24 17:47:20 +09:00
Dean Herbert
290c3d6349
Clean up left-overs 2023-11-24 17:46:23 +09:00
Dean Herbert
3b41480bef
Always show drag bar on mobile 2023-11-24 17:46:02 +09:00
Dean Herbert
7600595e5d
Add drag bar on chat overlay to better signal resizability 2023-11-24 16:39:54 +09:00
Dean Herbert
36b45d34f7
Check drag location on mouse down instead of drag start to avoid lenience issues 2023-11-24 16:39:29 +09:00
Dean Herbert
dabbdf674b
Rename SoloSpectator to SoloSpectatorScreen 2023-11-24 14:26:08 +09:00
Dean Herbert
340227a06d
Replace all hexacon lookups with strongly typed properties 2023-11-24 13:17:39 +09:00
Givikap120
93e3156868 slight format changes 2023-11-24 01:07:37 +02:00
Givikap120
c2a44cf118 Made custom tooltip 2023-11-23 23:30:18 +02:00
Dean Herbert
9a6857bfad
Merge pull request #25530 from yesseruser/FlagHUD
Fix skin element "PlayerFlag" responding to clicks/hovers
2023-11-23 16:51:09 +09:00
Dean Herbert
191e8c5487
Add note about skin editor reload jank 2023-11-23 16:39:05 +09:00
Bartłomiej Dach
abbcdaa7f7
Fix skin editor crashing when pasting with nothing in clipboard 2023-11-23 09:55:27 +09:00
yesseruser
08e0279d72 Revert "Renamed UpdateableFlag to ClickableUpdateableFlag."
This reverts commit 671177e871.
2023-11-22 15:25:43 +01:00
yesseruser
33de27499a
Merge branch 'master' into FlagHUD 2023-11-22 14:36:20 +01:00
Bartłomiej Dach
f1f820bec3
Merge pull request #25523 from peppy/save-skin-on-screen-change
Save any unsaved changes in the skin editor when game changes screens
2023-11-22 14:19:57 +09:00
Dean Herbert
d86e743745
Merge branch 'master' into login-state-changes-user-profile-overlay 2023-11-22 12:13:49 +09:00
Dean Herbert
ad6af1d9b7
Ensure only run once 2023-11-22 12:03:42 +09:00
Dean Herbert
fe15b26bd2
Refactor to use API state instead of logged in user state 2023-11-22 12:02:37 +09:00
yesseruser
671177e871 Renamed UpdateableFlag to ClickableUpdateableFlag. 2023-11-21 19:02:23 +01:00
Dean Herbert
aa749aeb73
Save any unsaved changes in the skin editor when game changes screens
Closes https://github.com/ppy/osu/issues/25494.
2023-11-21 17:49:57 +09:00
Dean Herbert
405ab499e9
Allow context menus to have visible spacers 2023-11-21 14:24:10 +09:00
Stedoss
ec7b82f5e8 Change early return to check for online State instead of IsLoggedIn 2023-11-21 01:55:08 +00:00
Stedoss
5514a53df1 Pass ruleset to callback to prevent ruleset desync 2023-11-21 01:04:46 +00:00
Stedoss
bfcca38200 Handle login API state changes in UserProfileOverlay 2023-11-20 02:00:57 +00:00
Dean Herbert
9172632b0b
Rename method and adjust xmldoc to be very explicit about how wrong this is 2023-11-17 17:04:20 +09:00
Joseph Madamba
dc2d574965 Fix comment markdown image not showing tooltips 2023-11-15 19:50:32 -08:00
Joseph Madamba
2b19cf6ce4 Fix comment markdown style regression 2023-11-15 19:50:32 -08:00
Dean Herbert
189fca2eb6
Merge pull request #25339 from joshika39/change-clickable-avatars-tooltip-for-usergrid
Add `UserGridPanel` as the `ClickableAvatar` tooltip
2023-11-15 18:01:24 +09:00
Joseph Madamba
7b987266d5
Change behavior of some clickable avatars in line with web 2023-11-15 17:22:36 +09:00
Givikap120
26d493986c Fixed precision and updated AdvancedStats 2023-11-12 18:05:18 +02:00
Dean Herbert
4df1eb1b37
Refactor logic and tooltip formatting 2023-11-12 16:19:55 +09:00
Dean Herbert
6bd5eda2a0
Merge branch 'master' into arod_rate_adjust 2023-11-12 15:49:07 +09:00
Bartłomiej Dach
ccfdf1ffd6
Merge pull request #25402 from peppy/skin-size-editing
Add support for adjusting size of skin elements
2023-11-12 07:31:51 +09:00
Dean Herbert
b0aa4a4257
Add "export" item to skin editor menu 2023-11-11 20:34:35 +09:00
Bartłomiej Dach
8d7539ab70
Merge branch 'master' into skin-size-editing 2023-11-11 19:56:09 +09:00
Bartłomiej Dach
2428a97d44
Fix editor not clearing undo history on skin change 2023-11-11 18:49:44 +09:00
Givikap120
60c3e7250b fixed naming incconvinence 2023-11-10 15:13:40 +02:00
Bartłomiej Dach
c522a703eb
Merge branch 'master' into skin-size-editing 2023-11-10 18:19:27 +09:00
Dean Herbert
1c63f1f89d
Merge pull request #25348 from bdach/less-basic-touchscreen-detection
Implement basic touchscreen detection
2023-11-10 18:01:40 +09:00
Dean Herbert
35e11c7c63
Rename diagonal scale variable and update xmldoc 2023-11-10 17:55:02 +09:00
Dean Herbert
f25489cc7b
Check X/Y sizing available separately to fix weird edge cases 2023-11-10 17:54:43 +09:00
Dean Herbert
175dae49c6
Reset scale per axis 2023-11-10 14:43:51 +09:00
Dean Herbert
fb361a4e0a
Reset size along with scale for relative items 2023-11-10 14:25:55 +09:00
Dean Herbert
ec3b6e47fb
Change selection handling to adjust Size instead of Scale for edge nodes 2023-11-10 14:22:28 +09:00
Susko3
51cf85a9ab Add touch input settings to android
Also updates touch settings so the touch handler can't be disabled on mobile.
2023-11-09 14:52:15 +01:00
Dean Herbert
67dc3aa5b7
Merge pull request #25366 from Susko3/better-touch-settings
Add "disable taps during gameplay" to touch input settings and related UI
2023-11-09 18:19:02 +09:00
Bartłomiej Dach
13b599b9b6
Merge branch 'master' into less-basic-touchscreen-detection 2023-11-09 17:36:48 +09:00
Joseph Madamba
387de7ec24 Add ability to view kudosu rankings 2023-11-07 15:58:17 -08:00
Dean Herbert
c00a1d948a
Merge branch 'master' into better-touch-settings 2023-11-07 23:21:59 +09:00
Dean Herbert
3e257f1e6c
Remove unused using statements 2023-11-07 23:21:51 +09:00
Susko3
fcd73e62d2 Remove mobile specific changes
Will be added back in a separate PR
2023-11-07 13:06:14 +01:00
Susko3
05d9418718 Rename setting to TouchDisableGameplayTaps for better visibility when searching 2023-11-07 00:13:46 +01:00
Susko3
f8b5ecc92a Update UI to use the new setting 2023-11-06 21:07:15 +01:00
Bartłomiej Dach
682668ccf0
Remove touch device toasts entirely 2023-11-06 10:54:32 +01:00
Dean Herbert
1f0b914251
Add skin editor dropdown items to reset rotation and scale 2023-11-06 16:18:33 +09:00
Bartłomiej Dach
7ba07ab530
Add protections against handling system mods in mod presets 2023-11-06 08:05:42 +01:00
Susko3
fa1d1df594 Rename mouse button string to Disable clicks during gameplay 2023-11-05 12:43:14 +01:00
Susko3
86fb33cb90 Add disable taps checkbox to touch input settings 2023-11-05 12:40:06 +01:00
Givikap120
820519c37d improved tooltip 2023-11-04 21:55:46 +02:00
Givikap120
440d57fb48 Basic rate-adjust tooltip 2023-11-04 17:47:02 +02:00
Givikap120
57170501cd Improve code quality 2023-11-04 17:25:09 +02:00
Bartłomiej Dach
a78fab0e7d
Do not hardcode ruleset name in touch device detection toast 2023-11-03 00:17:29 +01:00
Bartłomiej Dach
ef555ed0cf
Fix test failures 2023-11-02 21:24:58 +01:00
Bartłomiej Dach
f2df02b60f
Automatically activate touch device mod in player 2023-11-02 21:24:58 +01:00
Bartłomiej Dach
9f5a280bc2
Fix key binding row fire-and-forgetting writes
Intends to fix test failures as seen in https://github.com/ppy/osu/actions/runs/6692350567/job/18181352642#step:5:129

This is what happens if you carelessly fire and forget.

The working theory (that I'm not sure I have the tools to conclusively
confirm) is that the async write from the key binding changing could
fire _after_ the section is reset.

I briefly considered having the test wait for the change, but given that
the entirety of the surrounding flow is using sync operations, this just
looks like a bug to me. And there's no real sane way to inject async
into that flow due to dependence on `OsuButton.Action`.
2023-10-31 12:25:09 +01:00
Dean Herbert
3060cf1438
Merge pull request #25286 from frenzibyte/search-text-box-select-all
Automatically select existing search text when opening settings
2023-10-31 12:14:00 +09:00
Salman Ahmed
39abb8e408 Only run "select all on focus" behaviour on desktop platforms 2023-10-30 11:54:19 +03:00
Salman Ahmed
c7bc8e6865 Move behaviour to settings search text box only 2023-10-30 06:41:01 +03:00
Salman Ahmed
984c30ded6 Load each tournament banner as soon as it is loaded 2023-10-30 06:20:15 +03:00
Salman Ahmed
922ad80cfc Update user profile overlay to show more than one tournament banner 2023-10-29 01:50:07 +03:00
Andrei Zavatski
b18a5e63b7 Remove nullable disable 2023-10-23 13:29:46 +03:00
Andrei Zavatski
ac1783fa94 Fix comment 2023-10-23 13:26:59 +03:00
Andrei Zavatski
1dbdbd6de6 Merge branch 'master' into comments-image-size 2023-10-23 13:22:31 +03:00
Andrei Zavatski
e1e9c3d7b3 Fix incorrect height limit 2023-10-22 00:33:26 +03:00
Andrei Zavatski
71718bd761 Limit comment sprite height 2023-10-22 00:11:59 +03:00
Jamie Taylor
fbf8f52f7d
Add audio feedback for when keys are pressed during key binding 2023-10-20 21:01:37 +09:00
Jamie Taylor
6b28f85615
Change RevertToDefaultButton and BackButton to use Default sampleset instead 2023-10-20 21:01:36 +09:00
Jamie Taylor
6dc4dbde13
Reduce LoginOverlay pop-in/pop-out sample panning to match NowPlayingOverlay 2023-10-20 21:01:36 +09:00
Jamie Taylor
e17c94d09d
Change ruleset button hover samples to Default instead of Button to match other toolbar buttons 2023-10-20 21:01:36 +09:00
Jamie Taylor
bf608a6b08
Use Button sample set for NewsCard 2023-10-20 21:01:36 +09:00
Jamie Taylor
ba6e36bd67
Remove NowPlayingOverlay custom pop-in/pop-out samples in favour of the generic overlay ones 2023-10-20 21:01:36 +09:00
Jamie Taylor
6e8a4c2eff
Fix toolbar ruleset buttons not having hover sounds 2023-10-20 21:01:36 +09:00
Dean Herbert
e081fa48a2
Fix various other inspections 2023-10-17 17:48:51 +09:00
Dean Herbert
5341a335a6
Bypass Parent nullability checks for now 2023-10-17 17:48:45 +09:00
Dean Herbert
67a8a51ec7
Merge branch 'master' into generic-error-sfx 2023-10-14 03:56:41 +09:00
Jamie Taylor
d97b618d02
Use new generic-error sample in appropriate places 2023-10-13 21:06:50 +09:00
Dean Herbert
3d5736188e
Merge pull request #25112 from bdach/dangerous-button-shades
Fix dangerous buttons using different shades of pink
2023-10-13 20:43:24 +09:00
Bartłomiej Dach
af89d69fc4
Fix dangerous buttons using different shades of pink 2023-10-13 13:16:24 +02:00
Bartłomiej Dach
a88779e588
Use dimmed placeholder text instead of empty box on cleared bindings 2023-10-13 13:10:04 +02:00
Dean Herbert
6358a5e210
Merge pull request #25105 from bdach/multiple-keys-one-binding
Disallow binding multiple bindings in a single section to one key
2023-10-13 20:01:33 +09:00
Bartłomiej Dach
a1c68b66f2
Rename KeyBindingRow parts to appease CodeFileSanity 2023-10-13 12:06:25 +02:00
Dean Herbert
17b6ebbfbf
Avoid using a bindable in KeyBindingConflictPopover where data is never mutated 2023-10-13 18:40:21 +09:00
Dean Herbert
9b0c4acdef
Split KeyBindingRow out into partial pieces 2023-10-13 18:29:06 +09:00
Dean Herbert
8e609b6f1d
Switch records to classes for sanity
I don't have anything against records except for the capitalisation when
including the paramter names in a constructor.

ie. `new Record(This: 1);`
2023-10-13 18:19:12 +09:00