Commit Graph

2630 Commits

Author SHA1 Message Date
c15f909d83 Remove local bindable at song select, along with misplaced reset logic 2019-11-14 13:29:06 +09:00
d8a5750e5d Fix typo
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2019-11-14 08:38:01 +09:00
a580b9079a Reword comment 2019-11-14 08:28:41 +09:00
87d40cf8d0 Resolve equals usages. 2019-11-13 22:35:50 +08:00
110c155fa0 Fix background loading twice when entering song select 2019-11-13 19:42:05 +09:00
280c1a0eb4 Fix carousel filtering twice on startup due to unpopulated ruleset 2019-11-13 19:04:52 +09:00
bca1be0bfa Add failing test 2019-11-13 18:54:33 +09:00
42a98c5d87 Use constants. 2019-11-12 20:07:01 +08:00
d60493a961 Use discards. 2019-11-12 20:03:21 +08:00
e9b8cbb516 Apply other styles. 2019-11-11 20:27:04 +08:00
ccc8aa6fa4 Apply brace style. 2019-11-11 20:13:13 +08:00
8da15f6897 Fix all score are highlighted on local scope 2019-11-01 23:19:15 +07:00
ce3b34a768 Fix UserTopScoreContainer is also tinted 2019-11-01 23:00:55 +07:00
c181edaedf Replace manual comparer implementation
Replace manually-implemented CriteriaComparer with a call to
Comparer<T>.Create() to decrease verbosity.
2019-10-28 15:07:36 +01:00
c8d3dd0e5a Make carousel item sorting stable
Migrate beatmap carousel item sorting from List<T>.Sort()
to IEnumerable<T>.OrderBy(), as the second variant is documented to be
a stable sorting algorithm. This allows for eliminating unnecessary
movement of carousel items occurring whenever any set of items is tied
when changing sorting criteria.
2019-10-27 23:14:14 +01:00
f7924d3bad Rename "FixedSearchTextBox" to "SeekLimitedSearchTextBox" 2019-10-21 16:00:09 -07:00
e5b50b5e1f Fix slider bar regression when using arrows 2019-10-17 13:54:36 -07:00
649951198e Make most textbox carets movable 2019-10-15 14:47:48 -07:00
ccc753a315 Make OverlayContainers with no blocking input VisibilityContainers 2019-10-14 16:27:59 -07:00
26a33bfa4e Merge branch 'master' into fix-resume-from-player-audio 2019-10-11 19:21:14 +09:00
d4282473c6 Merge branch 'master' into fix-background-disposal 2019-10-11 17:15:30 +09:00
5eba33e876 Simplify logic and add test coverage for remaining case 2019-10-10 20:12:47 +09:00
e66f9adb86 Fix user pause not being cancelled when playing audio 2019-10-10 16:53:03 +09:00
f74c79c2b8 Fix audio playback position being reset after resuming to song select 2019-10-10 11:58:43 +09:00
69b9e359bf Merge branch 'master' into fix-ss-track-playback 2019-10-09 12:26:07 +09:00
4e026b163c Don't resume playback when user has paused and track hasn't changed 2019-10-08 15:04:38 +09:00
e7fc5e556c Fix song select not correctly playing tracks in some cases 2019-10-08 11:06:07 +09:00
bb161222ef Merge branch 'master' into fix-tab-controls-overflowing 2019-10-08 10:12:03 +09:00
9fdbe58326 Fix dropdown header padding when selected mod filter is hidden 2019-10-07 16:17:58 -07:00
8e6e90eaec Use fixed numbers for padding instead 2019-10-07 16:11:40 -07:00
f15953d65c Fix carousel including filtered difficulties in sort comparisons 2019-10-07 15:17:03 +09:00
11d937beab Fix beatmap detail area tab dropdown being blocked by content 2019-10-06 10:24:33 -07:00
38c1cee5fd Fix tab controls overflowing 2019-10-06 10:22:55 -07:00
e257f4ca04 Resume music to same position when exiting gameplay 2019-10-05 10:31:44 -07:00
a71db11ea5 Remove depth parameter description 2019-10-04 18:38:44 -07:00
5d460eaf6b Remove depth specification and button order regression 2019-10-04 17:14:19 -07:00
e7ba6ef5c4 Fix keybinding order of beatmap options 2019-10-04 14:32:43 -07:00
d2c9a29c0d Remove unnecessary local assign 2019-10-04 10:45:18 +08:00
a5e1cb8feb Merge remote-tracking branch 'Game4all/master' into truncate-metadata-on-wedge 2019-10-04 11:21:33 +09:00
5f700f2ae9 Simplify exit logic of screens with textboxes using back button receptor 2019-10-01 08:26:34 -07:00
fb9f21237e Reset track adjustments on resuming from another screen 2019-09-28 04:18:16 +03:00
102dbd85bd Fix CI errors 2019-09-24 16:48:22 -07:00
9861b21440 Remove unnecessary padding/margin 2019-09-24 16:28:40 -07:00
7fab1a4337 Truncate long metadata on beatmap info wedge 2019-09-24 16:06:33 -07:00
4a59e3351e Update beatmap carousel tests code style
Also fixes one issue I spotted in BeatmapCarousel related to incorrectly holding a selection after new sets are loaded.
2019-09-25 02:42:12 +09:00
96c0c80dc5 Factor out methods in FilterQueryParser
Factor FilterQueryParser.ApplyQueries into shorter methods to reduce
method complexity.
2019-09-22 21:20:50 +02:00
70842f71f4 Fix floating point handling in filter intervals
Due to floating-point rounding and representation errors, filters could
wrongly display results incongruous with the wedge display text (ie.
a beatmap with the BPM of 139.99999 would be displayed as having 140
BPM and also pass the bpm<140 filter).

Apply tolerance when parsing floating-point constraints. The tolerance
chosen is half of what the UI displays for the particular values (so
for example half of 0.1 for AR/DR/CS, 0.01 for stars, etc.)

Tests updated accordingly.
2019-09-22 00:20:55 +02:00
b262ba13cd Add creator= and artist= filters
To match stable, add creator= and artist= filters to the beatmap
carousel on song select screen. Contrary to stable, this implementation
supports phrase queries with spaces within using double quotes.

The quote handling is not entirely correct (can't nest), but quotes
should rarely happen within names, and it is an edge case of an edge
case - leaving best-effort as is. Test coverage also included.
2019-09-22 00:20:55 +02:00
f5f5094611 Take culture into account when parsing filters
Culture was not taken into account when parsing filters, which meant
that in cultures that use the comma (,) as a decimal delimiter, it would
conflict with the comma used to delimit search criteria. To remove
any ambiguity, introduce local helper functions that allow the decimal
point to be utilised, using the invariant culture. This also matches
stable behaviour.

The decision to not reuse osu.Game.Beatmaps.Formats.Parsing was
deliberate due to differing semantics (it's not really sane to throw
exceptions on receiving user-facing input).
2019-09-22 00:18:53 +02:00
dddd94684b Split out lower and upper interval inclusivity
A single IsInclusive field causes unexpected issues when trying to
formulate a half-open interval query. Split out IsInclusive into two
fields, Is{Lower,Upper}Inclusive and update usages accordingly.
2019-09-22 00:18:28 +02:00