1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-23 00:07:24 +08:00
Commit Graph

2168 Commits

Author SHA1 Message Date
Bartłomiej Dach
3090b6ccb5 Resolve CA2249 inspections
"Use `string.Contains` instead of `string.IndexOf` to improve
readability"
2020-11-01 18:54:44 +01:00
cadon0
a1fa6588f6 Fix "bounce" when metadata container text is empty 2020-10-31 01:06:19 +13:00
Dean Herbert
8b04cd2cb0 Fix a potential null reference when loading carousel difficulties 2020-10-25 20:28:24 +09:00
Dean Herbert
8232bf1957
Merge pull request #10576 from Game4all/song-select-wedge-dynamic-star-rating 2020-10-23 15:39:02 +09:00
Dean Herbert
9753dab93b Remove IOnlineComponent and change existing components to use bindable flow 2020-10-22 14:19:12 +09:00
Lucas A
cf69eacae9 Make StarRatingDisplay dynamic. 2020-10-21 19:05:14 +02:00
Lucas A
670775cecb Make beatmap wedge difficulty indicator color update dynamically. 2020-10-21 18:57:48 +02:00
Dan Balasescu
1fe987d4b3
Merge pull request #10497 from peppy/beatmap-carousel-less-diffcalc-stutter
Disable difficulty calculation for set-level difficulty icons
2020-10-20 14:57:34 +09:00
Dan Balasescu
976f96b51d
Merge branch 'master' into beatmap-carousel-refactor-less-alloc-overhead 2020-10-20 14:26:23 +09:00
Dan Balasescu
13060b8575
Merge branch 'master' into beatmap-carousel-less-diffcalc-stutter 2020-10-20 14:26:16 +09:00
Dean Herbert
d5940193a2 Ensure visible items is greater than zero before trying to display a range 2020-10-19 19:55:20 +09:00
Dean Herbert
9106e97c37 Ensure max value in clamp is at least zero 2020-10-19 19:10:01 +09:00
Dean Herbert
1c2185e969 Replace comment with link to issue 2020-10-19 18:41:28 +09:00
Dean Herbert
044622a7a6 Fix out of bounds issues 2020-10-19 18:41:17 +09:00
Dean Herbert
467bb9b96f
Merge branch 'master' into beatmap-carousel-refactor 2020-10-19 13:17:11 +09:00
Dean Herbert
bff3856c83 Account for panel height when removing as off-screen 2020-10-19 13:13:32 +09:00
Dean Herbert
ee0efa0b4c Fix off-by-one in display range retrieval logic 2020-10-19 13:05:42 +09:00
Dean Herbert
4590d9b93b Remove outdated comment logic 2020-10-19 13:04:12 +09:00
Berkan Diler
cc11283143 Use string.Starts-/EndsWith char overloads 2020-10-16 11:27:02 +02:00
Dean Herbert
88ffcb9234 Update EndsWith usages 2020-10-16 12:58:34 +09:00
Dean Herbert
30e1fce7a4 Reduce alloc overhead of DrawableCarouselBeatmapSet using new function-based ctor 2020-10-14 15:10:50 +09:00
Dean Herbert
07e6609e6d Disable difficulty calculation for set-level difficulty icons 2020-10-14 14:16:22 +09:00
Dean Herbert
e662dc5342 Add missing licence headers 2020-10-13 20:57:26 +09:00
Dean Herbert
8057ea1097 Fix formatting issues 2020-10-13 20:50:36 +09:00
Dean Herbert
3d416f4d64 Clean up beatmapSet resolution in DrawableCarouselBeatmapSet 2020-10-13 19:31:29 +09:00
Dean Herbert
75b6a5e17e Remove unnecessary hack (fixed via framework update) 2020-10-13 19:31:29 +09:00
Dean Herbert
5d11db7753 Locallise ChildItems to DrawableCarouselBeatmapSet for clarity 2020-10-13 19:31:29 +09:00
Dean Herbert
37daefc2b5 Remove outdated comment 2020-10-13 19:12:33 +09:00
Dean Herbert
8eca28e8bc Add comment about off-screen loading 2020-10-13 19:10:35 +09:00
Dean Herbert
834b0186f4 Adjust fade duration to be slightly shorter 2020-10-13 18:50:10 +09:00
Dean Herbert
2346644c04 Switch DelayedLoadUnloadWrappers to DelayedLoadWrappers
Due to pooling usage, there is no time we need to unload. Switching to
DelayedLoadWrapper cleans up the code and reduces overhead
substantially.
2020-10-13 18:47:40 +09:00
Dean Herbert
a1801f8ae4 Unmark todo for now 2020-10-13 18:47:36 +09:00
Dean Herbert
40a0ab7aaa Avoid allocating CarouselItems for bounds checks 2020-10-13 18:33:31 +09:00
Dean Herbert
4f4f222514 Remove unnecessary fade (already applied by base DrawableCarouselItem) 2020-10-13 18:28:28 +09:00
Dean Herbert
83358d487f Remove logging 2020-10-13 18:18:22 +09:00
Dean Herbert
3d9ea852ec Remove masking override (no longer needed as our size is now correct) 2020-10-13 18:14:23 +09:00
Dean Herbert
69650c16fc Simplify vertical position calculations by including spacing in height definition 2020-10-13 18:13:36 +09:00
Dean Herbert
b1ddb08a4e Fix right click context menus appearing in incorrect locations 2020-10-13 18:01:12 +09:00
Dean Herbert
d9a6a6b245 Split content out into own class 2020-10-13 18:01:12 +09:00
Dean Herbert
9b2ebb8f0f Fix main content DelayedLoadUnloadWrapper not getting a valid size before load 2020-10-13 17:45:41 +09:00
Dean Herbert
f3b937e358 Fix masking issues with certain aspect ratio displays 2020-10-13 17:37:33 +09:00
Dean Herbert
fdd4d95cdc Fix difficulties being at incorrect vertical positions after filter is applied 2020-10-13 17:37:33 +09:00
Dean Herbert
1f0aa974dd Fix failing tests 2020-10-13 17:37:33 +09:00
Dean Herbert
b536f571fd Move header height propagation to update for safety 2020-10-13 17:37:33 +09:00
Dean Herbert
ded09b78cb Avoid usage of AutoSize for DrawableCarouselItems in general 2020-10-13 17:37:33 +09:00
Dean Herbert
cecdf14f53 Avoid reconstructing beatmap difficulties that were recently displayed 2020-10-13 17:37:33 +09:00
Dean Herbert
1da49073ab Calculate content height automatically 2020-10-13 17:37:33 +09:00
Dean Herbert
c08b5e8d03 Align beatmap difficulties correctly 2020-10-13 17:37:33 +09:00
Dean Herbert
cfec4f4fc1 Extract header element from base DrawableCarouselItem class 2020-10-13 17:37:33 +09:00
Dean Herbert
2aad482545 Fix x offsets of difficulties not being updated 2020-10-13 17:37:33 +09:00
Dean Herbert
1b7e3397c6 Use expiry to avoid ToArray 2020-10-13 17:37:33 +09:00
Dean Herbert
075bf23714 Better track off-screen drawables (and return to pool less often) 2020-10-13 17:37:33 +09:00
Dean Herbert
29983afcef Replace pool/cleanup logic with simplest form possible
This will temporarily break panels that go off-screen, as they will
disappear immediately
2020-10-13 17:37:33 +09:00
Dean Herbert
06e84c8eb3 Add comments and split out update steps into a more logical flow 2020-10-13 17:37:33 +09:00
Dean Herbert
20b54fb904 Move transform clean-up to pooling free call 2020-10-13 17:37:33 +09:00
Dean Herbert
f6aa448523 Store y positions inside items rather than in a separate array 2020-10-13 17:37:33 +09:00
Dean Herbert
b92c22ad42 Add logging 2020-10-13 17:37:33 +09:00
Dean Herbert
9814e9ba7f Split classes out to reduce loc burder on DrawableCarouselBeatmapSet 2020-10-13 17:37:33 +09:00
Dean Herbert
975cd5a840 Add back beatmap difficulty appear/disappear movement 2020-10-13 17:37:33 +09:00
Dean Herbert
fd8654cff3 Add back difficulty panel spacing 2020-10-13 17:37:33 +09:00
Dean Herbert
ce67f65084 Fix single results not showing up 2020-10-13 17:37:33 +09:00
Dean Herbert
220c8ba2c4 Fix incorrect vertical offsets when difficulties are filtered away 2020-10-13 17:37:33 +09:00
Dean Herbert
82f9ca3de9 Bind to filter event changes in base drawable item 2020-10-13 17:37:33 +09:00
Dean Herbert
813ee19728 Use existing event flow for rendering beatmap difficulties 2020-10-13 17:37:33 +09:00
Dean Herbert
8847cedf29 Add initial pass of vertical transforms 2020-10-13 17:37:33 +09:00
Dean Herbert
15325f5f51 Base bounds checks on +1 (to avoid worrying about current item heights) 2020-10-13 17:37:33 +09:00
Dean Herbert
bb03c5d77c Temporarily disable masking temporarily to fix panels disappearing at extents 2020-10-13 17:37:33 +09:00
Dean Herbert
524419d5e4 Fix filtered items being considered for height calculation 2020-10-13 17:37:33 +09:00
Dean Herbert
0a144a1388 Correctly free panels after use to avoid finalizer disposal of subtree 2020-10-13 17:37:33 +09:00
Dean Herbert
c5a6f4b453 Fix scroll to selected beatmap 2020-10-13 17:37:33 +09:00
Dean Herbert
5c29aa8cce Fix multiple difficulties being expanded at once 2020-10-13 17:37:33 +09:00
Dean Herbert
5c2f134665 Add back left offset for selected set 2020-10-13 17:37:33 +09:00
Dean Herbert
3cfc0dc82d Add safeties to beatmap panel loading code 2020-10-13 17:37:33 +09:00
Dean Herbert
954d43ef56 Debounce state application events 2020-10-13 17:37:33 +09:00
Dean Herbert
ca1f5dcada Add back panel padding 2020-10-13 17:37:33 +09:00
Dean Herbert
0400b34349 Load more components asynchronously after pool resolution 2020-10-13 17:37:33 +09:00
Dean Herbert
f3b24b9bb5 Avoid performing eager selection constantly on adding ranges of new children 2020-10-13 17:37:33 +09:00
Dean Herbert
0a978c6131 Add basic pooling setup 2020-10-13 17:37:33 +09:00
Dean Herbert
f17d661c1a Add basic range-based invalidation 2020-10-13 17:37:33 +09:00
Dean Herbert
3143224e5b Refactor how drawable carousel items are constructed 2020-10-13 17:37:33 +09:00
Dean Herbert
9193f5b0ba Expose panel height from non-drawable models 2020-10-13 17:37:33 +09:00
Dean Herbert
a393bbe8f7 Remove direct drawable storage from carousel models 2020-10-13 17:37:33 +09:00
Dean Herbert
73c238fae3 Add the ability to search for local beatmaps via online IDs
Closes #10470.
2020-10-10 21:34:11 +09:00
Joehu
c6386ea605 Remember leaderboard mods filter selection in song select 2020-09-15 21:53:35 -07:00
Dean Herbert
3c70b3127c Fix potential nullref in FilterControl during asynchronous load 2020-09-15 23:19:31 +09:00
Dan Balasescu
6cbff98295
Merge branch 'master' into add-collections-to-beatmap-options 2020-09-15 15:23:33 +09:00
Dean Herbert
2c7492d717 Add null check in SongSelect disposal for safety 2020-09-15 14:34:58 +09:00
Joehu
43daabc982 Remove unused using and move dialog to BDL 2020-09-14 12:10:00 -07:00
Joehu
c833f5fcc4 Reorder buttons to match stable 2020-09-14 11:23:41 -07:00
Joehu
57610ddad5 Fix beatmap options absorbing input from toolbar ruleset selector 2020-09-14 11:22:16 -07:00
Joehu
c30174cea3 Add manage collections button to beatmap options 2020-09-14 11:21:23 -07:00
Joehu
1a8a7ae7f8 Remove hardcoded key param from AddButton 2020-09-14 11:19:18 -07:00
Joehu
368aca015a Move override methods to bottom 2020-09-14 11:18:00 -07:00
Bartłomiej Dach
a377cccb4d Unsubscribe from track changed event on disposal 2020-09-14 17:10:35 +02:00
Bartłomiej Dach
f17b2f1359 Ensure track is looping in song select immediately 2020-09-12 20:43:17 +02:00
smoogipoo
5b80a7db5f Re-namespace collections dropdown 2020-09-11 16:01:01 +09:00
Dean Herbert
033bd82953
Merge branch 'master' into fix-filtercontrol-order 2020-09-11 13:07:41 +09:00
Dean Herbert
b594a2a507 Import collections on initial import-from-stable step 2020-09-11 11:16:00 +09:00
smoogipoo
314cd13b74 Fix song select filter ordering 2020-09-10 23:36:22 +09:00
Dean Herbert
18d96738a1 Fix hard crash on deleting a collection with no collection selected 2020-09-10 19:52:34 +09:00
smoogipoo
6b56c6e83f Rename to CollectionMenuItem 2020-09-09 23:11:19 +09:00
smoogipoo
43525614ad Store raw BeatmapCollection in filter control 2020-09-09 23:10:21 +09:00
smoogipoo
1a023d2c88 Fix a few more tests 2020-09-09 16:33:48 +09:00
smoogipoo
0360f7d845 Move CollectionManager to OsuGame 2020-09-09 15:39:15 +09:00
smoogipoo
4ddf5f054b Rename BeatmapCollectionManager -> CollectionManager 2020-09-09 15:31:08 +09:00
smoogipoo
a5e1e8d043 Rename More... to Manage... 2020-09-08 18:57:18 +09:00
smoogipoo
ae022d7559 Show all items in dropdown, set global max height 2020-09-08 18:55:53 +09:00
smoogipoo
4962213cc4 Rename manage collections filter/text 2020-09-08 18:42:55 +09:00
smoogipoo
f581df47c8 Add "New collection..." item to dropdown 2020-09-08 18:25:09 +09:00
smoogipoo
c2da3d9c84 Fix button input and tests 2020-09-08 14:36:38 +09:00
smoogipoo
8a3c8a6185 Show button when selected or preselected 2020-09-08 14:03:49 +09:00
smoogipoo
32e3f5d091 Adjust button styling 2020-09-08 13:45:26 +09:00
Dean Herbert
8b770626fa Add missing '...' from some popup menu items 2020-09-08 12:18:08 +09:00
Dean Herbert
b15bbc882a Move items up in menu 2020-09-08 12:04:35 +09:00
Dean Herbert
3e5ea6c42f Change "Add to" to "Collections"
Doesn't make send to be 'add to' when it can also remove
2020-09-08 12:00:00 +09:00
smoogipoo
ca4423af74 Fix tests 2020-09-08 00:07:12 +09:00
smoogipoo
e37c04cb6d Change back to solid icon 2020-09-08 00:04:03 +09:00
smoogipoo
a1214512bc Add filter control tests 2020-09-07 23:57:49 +09:00
smoogipoo
98e9c4dc25 General refactorings 2020-09-07 21:08:48 +09:00
smoogipoo
c1d255a04c Split filter control into separate class 2020-09-07 20:44:39 +09:00
smoogipoo
120dfd50a6 Fix collection names not updating in dropdown 2020-09-07 20:29:28 +09:00
smoogipoo
b91a376f0a Split dropdown into separate file 2020-09-07 20:06:38 +09:00
smoogipoo
6cc4517600 Merge branch 'master' into collection-database 2020-09-07 20:03:11 +09:00
smoogipoo
4b4dd02942 Make collection name a bindable 2020-09-05 04:43:59 +09:00
smoogipoo
345fb9d8e0 Rename classes 2020-09-05 03:55:43 +09:00
smoogipoo
ebd11ae0b7 Add a collection management dialog 2020-09-05 03:52:07 +09:00
Dan Balasescu
743c888986
Merge branch 'master' into expose-wedge-icons 2020-09-04 16:22:14 +09:00
Dan Balasescu
b631430a5b
Merge pull request #10045 from peppy/add-info-wedge-icons
Update and add missing beatmap statistic icons to info wedge
2020-09-04 16:22:01 +09:00
smoogipoo
4399f5976c Fix global mods being retained by rooms 2020-09-04 15:20:55 +09:00
Dean Herbert
25e142965d Strongly type and expose default beatmap information icon implementations for other rulesets 2020-09-04 15:01:32 +09:00
Dean Herbert
cd253ab055 Further tweaks to get closer to design originals 2020-09-04 13:05:39 +09:00
Dean Herbert
d6b46936a0 Adjust sizing to match updated textures with less padding 2020-09-04 12:55:28 +09:00
Dean Herbert
a99e7a1dc2 Merge branch 'master' into add-info-wedge-icons 2020-09-03 21:57:58 +09:00
Dean Herbert
7a0c1411b6
Merge branch 'master' into timeshift-leaderboard-topscore 2020-09-03 18:11:04 +09:00
Dean Herbert
72cb65c22f Update and add missing beatmap statistic icons to info wedge 2020-09-03 17:52:22 +09:00
smoogipoo
fca0324264 Disallow being able to add dummy beatmap 2020-09-02 23:34:38 +09:00
smoogipoo
d83264f538 Add max height 2020-09-02 22:56:13 +09:00
smoogipoo
7fcbc3a814 Respond to changes in beatmap 2020-09-02 22:06:17 +09:00
smoogipoo
661eac8f1d Add add/remove button to dropdown items 2020-09-02 22:03:38 +09:00
smoogipoo
02a908752f Fix stackoverflow 2020-09-02 21:52:56 +09:00
smoogipoo
5ebead2bfd Prevent ValueChanged binds to external bindable 2020-09-02 21:44:07 +09:00
smoogipoo
d363a5d164 Add basic ordering 2020-09-02 21:19:15 +09:00
smoogipoo
094ddecc95 Add dropdowns to carousel items 2020-09-02 21:08:31 +09:00
smoogipoo
6d5e155106 Change to BindableList to notify of changes 2020-09-02 20:44:26 +09:00
smoogipoo
9dde37fe40 Hook up collection filter 2020-09-02 20:25:42 +09:00
smoogipoo
bb090a55e0 Add dropdown to filter control 2020-09-02 20:25:25 +09:00
Dan Balasescu
f08e7828da
Merge branch 'master' into beatmap-track-rework 2020-09-01 16:06:38 +09:00
Bartłomiej Dach
876fd21230 Apply shear to right-anchored items 2020-08-31 19:31:47 +02:00
Bartłomiej Dach
2e2f26449d Change anchoring to TopRight 2020-08-31 19:23:19 +02:00
smoogipoo
8cf26979fb Allow null user score 2020-08-31 20:16:28 +09:00
smoogipoo
ed74c39b55 Move UserTopScoreContainer into base leaderboard 2020-08-31 19:54:22 +09:00
Bartłomiej Dach
7d273d631b Do not show star difficulty on wedge if zero 2020-08-31 11:05:42 +02:00
Bartłomiej Dach
4736845318 Add spacing between star rating and beatmap status 2020-08-31 10:56:06 +02:00
smoogipoo
c3bfce6ccf Add star rating to beatmap wedge 2020-08-31 15:03:41 +09:00
Dean Herbert
b51db90147 Merge branch 'master' into beatmap-track-rework 2020-08-26 23:20:56 +09:00
Bartłomiej Dach
29b4d98aac Show retry/fail graph when either list is present 2020-08-24 20:41:50 +02:00
Bartłomiej Dach
cc6ae8e3bd Fix crash if only one count list is received from API 2020-08-24 20:41:31 +02:00
Keijia
b5b2e523ad change switch cases 2020-08-22 12:10:31 +03:00
Keijia
0b6185cd14 add "hp" filter keyword 2020-08-22 01:09:35 +03:00
Dean Herbert
e465afa280 Merge branch 'master' into beatmap-track-rework 2020-08-14 20:02:43 +09:00
smoogipoo
0500d82b5b Fix playlist items sharing mod instances 2020-08-13 19:48:41 +09:00
smoogipoo
7d35893ecd Make MusicController non-nullable 2020-08-11 12:40:58 +09:00
smoogipoo
f058f5e977 Fix incorrect value being set 2020-08-06 16:24:14 +09:00
smoogipoo
5c05fe3988 Expose track from MusicController 2020-08-06 16:24:14 +09:00
smoogipoo
6e42b8219c Move track to MusicController, compiles 2020-08-06 16:24:14 +09:00
smoogipoo
877b985e90 Remove local cancellation token 2020-07-24 16:11:28 +09:00
smoogipoo
b10b99a670 Change method signatures to remove tracked/untracked 2020-07-24 13:52:43 +09:00
smoogipoo
76284a0f01 Move cancellation out of condition 2020-07-23 23:18:51 +09:00
smoogipoo
107b5ca4f2 Add support for bindable retrieval 2020-07-21 23:13:04 +09:00
smoogipoo
9a52058a7a Update carousel beatmap SR on mod/ruleset changes 2020-07-16 21:08:24 +09:00
smoogipoo
24f14751ce Update beatmap details SR on ruleset/mod changes 2020-07-16 21:08:08 +09:00
Joehu
73e1bf0d89 Check sub screen's OnBackButton instead 2020-07-14 13:19:48 -07:00
Joehu
36041fc245 Fix back button not working correctly with multi song select's mod select 2020-07-14 00:29:57 -07:00
Joehu
4caf4d31d4 Fix mod select blocking home and alt f4 in song select 2020-07-14 00:00:10 -07:00
Dean Herbert
0718e9e4b6 Update outdated comment 2020-07-13 13:08:41 +09:00
Dean Herbert
ab11a112b7 Fix correct filter criteria not being applied to beatmap carousel if beatmaps take too long to load 2020-07-12 22:33:41 +09:00
Dean Herbert
f231b5925f Add "show converted" checkbox to song select for convenience 2020-07-09 13:47:23 +09:00
Dean Herbert
bbbe8d6f68 Remove group selector for now, tidy up code somewhat 2020-07-09 13:47:11 +09:00
smoogipoo
af7494b232 Improve quality of song select beatmap wedge 2020-06-29 13:58:35 +09:00
smoogipoo
099416b4c3 Move check inside next difficulty selection 2020-06-26 21:03:34 +09:00
smoogipoo
8f6d52550f Fix potential exception if button is pressed before selection 2020-06-26 20:32:13 +09:00
smoogipoo
1b4c31a84f Remove double schedule 2020-06-26 20:14:08 +09:00
smoogipoo
e3d654d33f Cleanup 2020-06-26 20:14:02 +09:00
Dean Herbert
d704a4597d Use existing helper function for key repeat 2020-06-25 21:33:02 +09:00
Dean Herbert
d7742766d0 Add key/press repeat support to carousel 2020-06-25 19:47:23 +09:00
Viktor Rosvall
9e1bf71233 Added text explaining a second copy will be made 2020-06-24 11:29:38 +02:00
Jack Boswell
eb3eb70a65
Merge branch 'master' into rebind-song-select 2020-06-10 22:03:26 +12:00
Jack Boswell (boswelja)
9dc1eab6ae Improve code readability of FooterButtonRandom OnPressed 2020-06-10 13:05:11 +12:00
Jack Boswell (boswelja)
ea9207e0ad Clean up FooterButtonRandom
Removed unnecessary using statements
Removed unnecessary constructor
2020-06-08 17:31:31 +12:00
Jack Boswell (boswelja)
bddd2b72ba Remove secondaryText and related code from FooterButtonRandom 2020-06-08 15:05:53 +12:00
Jack Boswell (boswelja)
8b7718116d Add missing blank lines 2020-06-07 16:06:18 +12:00
Jack Boswell (boswelja)
0e155c8eb9 Don't switch FooterButtonRandon Action on pressed.
Instead, create a new Action that invokes either NextRandom or PreviousRandom, depending on rewindSearch
2020-06-07 15:34:19 +12:00
Jack Boswell (boswelja)
a40475e6aa Remove triggerNextRandom from SongSelect 2020-06-04 21:09:47 +12:00
Jack Boswell (boswelja)
cb6e473910 Remove triggerPreviousRandom from SongSelect 2020-06-04 21:08:07 +12:00
Jack Boswell (boswelja)
cab132673a Break FooterButtonRandom creation into multiple lines 2020-06-04 21:03:10 +12:00
Jack Boswell (boswelja)
8533d7573d Rename FooterButtonRandom actions to better describe what they are used for 2020-06-04 21:00:29 +12:00
Jack Boswell (boswelja)
62984cb7f5 Remove unused Hotkey assignment 2020-06-04 20:58:53 +12:00
Jack Boswell (boswelja)
df148cf9d1 Rename secondaryAction to rewindSearch 2020-06-04 20:58:19 +12:00
Jack Boswell (boswelja)
bd3e40a8cf Move default return out of switch/case 2020-06-04 20:57:24 +12:00
Jack Boswell (boswelja)
a78a8c0d0d Add missing blank lines 2020-06-04 16:59:04 +12:00