Dean Herbert
56c4283764
Only exit dialog from click if outside the dialog content
2022-04-19 14:53:01 +09:00
Dean Herbert
288f759bb4
Add test coverage of navigation
2022-04-19 14:53:01 +09:00
Dean Herbert
07da1cd731
Move buttons to top level and add backwards navigation
2022-04-19 14:53:01 +09:00
Dean Herbert
3b94e01fe6
Improve layout of ui scale step
2022-04-19 14:53:01 +09:00
Dean Herbert
e064f2f23e
Improve general layout and allow overlay to be displayed without dependencies for now
2022-04-19 14:53:01 +09:00
Dean Herbert
c2df3465b2
Add ui scaling setup screen, kind of
2022-04-19 14:53:01 +09:00
Dean Herbert
ae07b2b512
Initial setup
2022-04-19 14:53:01 +09:00
Dean Herbert
83e89b3e80
Add unread count to INotificationOverlay
and fix toolbar button DI logic
2022-04-19 11:16:45 +09:00
Salman Ahmed
c858ec2483
Pagination
-> `PaginationParameters
2022-04-19 02:48:34 +03:00
Salman Ahmed
96d4369cc8
Introduce Pagination
and simplify paginated API requests
2022-04-19 02:04:23 +03:00
Dan Balasescu
bb8b94f8ad
Merge branch 'master' into i-notification-overlay
2022-04-19 06:03:56 +09:00
Dan Balasescu
94e892df1c
Merge pull request #17862 from peppy/i-dialog-overlay
...
Split out `IDialogOverlay` to allow for easier testing
2022-04-19 05:24:05 +09:00
Salman Ahmed
f08449e432
Update paginated profile subsections to display items inline with web
2022-04-18 23:04:21 +03:00
Salman Ahmed
1fc28552b5
Minor reword inline comment
2022-04-18 21:07:20 +03:00
Salman Ahmed
16a0efc562
Cache IDialogOverlay
as its type in interface
2022-04-18 21:06:27 +03:00
Dean Herbert
5d5e46ede7
Fix rider incompetency
2022-04-18 23:10:07 +09:00
Dean Herbert
aaf5577e6a
Remove unnecessary canBeNull
specification
2022-04-18 21:48:46 +09:00
Dean Herbert
d29312e070
Fix rider incompetency
2022-04-18 21:47:47 +09:00
Dean Herbert
043599081b
Split out INotificationOverlay
to allow for easier testing
2022-04-18 20:14:01 +09:00
Dean Herbert
e315313266
Split out IDialogOverlay
to allow for easier testing
2022-04-18 18:36:26 +09:00
Dean Herbert
2202863e1a
Split out IPerformFromScreenRunner
to allow for easier testing
2022-04-18 17:49:28 +09:00
Bartłomiej Dach
0d5ce336f4
Hide mod customisation toggle if customisation not permitted
2022-04-17 23:28:53 +02:00
Bartłomiej Dach
881df7663d
Fix filter not taking effect if applied before panel load completion
2022-04-17 23:28:53 +02:00
Bartłomiej Dach
8af865a1c5
Fix incompatibility panel using reference equality
2022-04-17 23:28:53 +02:00
Bartłomiej Dach
ffb5c1e86c
Tweak colours on incompatibility displaying mod panel
2022-04-17 23:28:52 +02:00
Bartłomiej Dach
20c17b8c98
Make base mod select screen abstract
2022-04-17 23:28:51 +02:00
Bartłomiej Dach
7eebc20124
Add replacements for mod overlays used by game
2022-04-17 23:28:51 +02:00
Bartłomiej Dach
67c44db8d5
Add extension points required for replacing old mod overlay
2022-04-17 23:28:51 +02:00
Jai Sharma
47c8b8010f
Use semibold font weight for ChannelListItemFlow
label
2022-04-16 23:03:03 +01:00
Jai Sharma
2f41cddb00
Remove redundant Expire
call
2022-04-16 23:03:03 +01:00
Jai Sharma
36aea9009e
Move ChannelList
scrollbar to the right
2022-04-16 23:03:03 +01:00
Jai Sharma
4a0c5a0781
Remove hover override for ChannelListScrollContainer
2022-04-16 23:02:54 +01:00
Bartłomiej Dach
15c54b38c1
Merge branch 'master' into fix-popup-dialog-handling-exit-sequence
2022-04-16 19:01:18 +02:00
Jai Sharma
b6631fb9f9
Add newline for base class call
2022-04-15 22:22:20 +01:00
Jai Sharma
a0a2f8118e
Code quality fixes
2022-04-15 22:05:20 +01:00
Jai Sharma
f1dd319fd9
Implement ChannelList
for new chat design
...
Reference design: https://www.figma.com/file/f8b2dHp9LJCMOqYP4mdrPZ/Client%2FChat?node-id=1%3A297
Adds new component `ChannelList` which makes up the sidebar channel
selector of the new chat design. Contains two separate fill flows for
public and private `ChannelItem` child components.
Exposed bindable `SelectorActive` to indicate current state of the "Add
more channels" button. Requires `Bindable<Channel>` from parent
component.
Renames and updates the `TestSceneChannelListItem` to
`TestSceneChannelList` to make use of new component and having both
tests seemed redundant.
2022-04-15 15:44:38 +01:00
Dean Herbert
423fae52f7
Add back base.IsPresent
call
2022-04-15 10:19:36 +09:00
Dean Herbert
c57a918bbb
Mark settings elements as matching filter by default to handle cases where no filtering is provided
2022-04-14 23:02:00 +09:00
Salman Ahmed
da098d071f
Merge branch 'master' into settings-inactive-dim
2022-04-14 15:52:51 +03:00
Dean Herbert
b088959045
Reduce settings fade in duration to higher alpha/colour cross-talk
2022-04-14 21:17:06 +09:00
Dean Herbert
9240148c8e
Avoid initial fade of dim layer
2022-04-14 21:16:54 +09:00
Dean Herbert
f19208a245
Move dim layer to top and only apply dimming at one location
2022-04-14 21:04:52 +09:00
Dean Herbert
316c0845ec
Fix current section not being correct after early search
2022-04-14 20:36:49 +09:00
Dean Herbert
9c7af98982
Fix alpha cross-talk causing settings to potentially not filter when they should
2022-04-14 20:35:00 +09:00
Dean Herbert
296420ae08
Fix settings textbox focus operation running too late
2022-04-14 20:14:02 +09:00
Salman Ahmed
59bb6b8f7c
Add background dim effect to inactive settings sections
2022-04-14 13:43:12 +03:00
Salman Ahmed
566a20a623
Add keyword "delay" to hold-to-confirm activation time setting
2022-04-14 13:27:12 +03:00
Dean Herbert
1fdf742d38
Fix potentially incorrect button being pressed during PopupDialog
hide due to flag set too late
2022-04-14 17:51:50 +09:00
Dean Herbert
f9d9e6aa61
Ensure popup dialogs are hidden before running any associated actions
2022-04-14 16:19:34 +09:00
Dan Balasescu
494955aff1
Resolve inspection issues
2022-04-14 13:11:11 +09:00
Salman Ahmed
bad30d9e60
Fix dialog dangerous button being clickable at edges
2022-04-11 21:05:37 +03:00
Salman Ahmed
134d9b5ddf
Perform Show()
at the bottom of the method
...
Probably not affecting behaviour, but makes more sense.
2022-04-08 19:28:04 +03:00
Dean Herbert
57fb8616b8
Fix potential null reference when attempting to highlight a message before overlay has been displayed
2022-04-09 00:31:00 +09:00
Dean Herbert
ae1e126837
Make HighlightMessage
implicitly show chat overlay
2022-04-09 00:30:28 +09:00
Bartłomiej Dach
e658b63dbc
Merge branch 'master' into clock
2022-04-07 20:27:23 +02:00
Salman Ahmed
a616f5bc2a
Fix regressed digital clock width conditional
2022-04-07 19:24:15 +03:00
Salman Ahmed
c323020fcf
Fix Use24HourDisplay
conditional flipped
2022-04-07 15:56:28 +03:00
Dean Herbert
b2c0eaeab4
Make string read better
2022-04-07 18:20:15 +09:00
Dean Herbert
555aee7b6a
Remove incorrect and pointless complexity to width changes
2022-04-07 18:16:14 +09:00
Dean Herbert
7530fe5adf
Move default specification to configuration initial value
2022-04-07 18:13:23 +09:00
Dean Herbert
37509e04a9
Rename variable and fix inspections
2022-04-07 18:11:30 +09:00
Perry MacMurray
2525ec0d18
Switch 24H toggle from UI settings to language settings
2022-04-05 17:07:58 -04:00
Perry MacMurray
9d475f7b33
Add config in settings for forcing 24H time, determines default off CurrentCulture
2022-04-05 16:21:28 -04:00
Bartłomiej Dach
9c91e6d8f5
Merge branch 'master' into mod-overlay/full-screen
2022-04-05 21:29:40 +02:00
Perry MacMurray
74706f72e6
Add 12-hour display setting (TODO add toggle)
2022-04-05 15:10:55 -04:00
Dean Herbert
ac799aaf7a
Add missing newline
2022-04-05 19:25:47 +09:00
Dean Herbert
32daf64a31
Use newly exposed framework helper function to find closest parent
2022-04-05 19:24:34 +09:00
Dean Herbert
631aa2a6ec
Remove left padding to allow left-most column to exist further to the.. left
2022-04-05 18:44:25 +09:00
Dean Herbert
54715885af
Adjust animation metrics slightly
2022-04-05 18:41:01 +09:00
Dean Herbert
7a1820e6bb
Fix multiplier display resetting transformations
2022-04-05 18:40:48 +09:00
Dean Herbert
9fdeb20537
Animate individual ModColumn
s during togle of oerlay
2022-04-05 18:27:34 +09:00
Dean Herbert
901032bfa2
Animate multiplier display
2022-04-05 18:25:27 +09:00
Dan Balasescu
2b59f76b2d
Merge pull request #17596 from peppy/skin-editor-sprites
...
Allow importing sprites into a skin via drag-and-drop
2022-04-05 17:38:58 +09:00
Dean Herbert
497e5e3a36
Slightly adjust scroll handling and also apply to ModSettingsContainer
2022-04-05 17:19:33 +09:00
Dean Herbert
a408776734
Limit FillFlow
of columns to applicable direction
2022-04-05 17:15:05 +09:00
Dean Herbert
388322cd61
Speed up customisation panel toggle a bit
2022-04-05 16:56:24 +09:00
Dean Herbert
58e9147b12
Simplify and better comment nested scroll conditionals
2022-04-05 16:48:25 +09:00
Dean Herbert
f156cb797d
Improve nested scroll behaviour
2022-04-05 16:46:09 +09:00
Dean Herbert
23dad7bdc4
Move scroll view padding to content level
...
Without doing this, there is a non-masked but also non-interactive area
to the left or right of the view.
2022-04-05 16:43:00 +09:00
Bartłomiej Dach
9b367d645d
Always play pop in sequence
2022-04-04 20:02:47 +02:00
CenTdemeern1
9a07a95d39
Make several delete confirmation buttons dangerous buttons
...
Includes:
- Mass deletion
- Beatmap deletion
- Local score deletion
2022-04-04 19:22:53 +02:00
Dean Herbert
57b8c32f25
Remove unused fields
2022-04-04 20:42:14 +09:00
Dean Herbert
bc53adb72a
Adjust customisation transition slightly
2022-04-04 15:50:40 +09:00
Dean Herbert
b5df350007
Adjust pop in/out transitions
2022-04-04 15:45:44 +09:00
Dean Herbert
d6625413fa
Merge pull request #17617 from ajiiisai/proper-toggable-shortcuts-for-overlays
...
Make overlay shortcuts able to be toggled instead of repeatable
2022-04-04 13:46:42 +09:00
Bartłomiej Dach
cd776d21a6
Fix propagation of selected mods to columns
2022-04-03 20:12:34 +02:00
Bartłomiej Dach
e46c2df409
Add testing for customisation panel show/hide logic
2022-04-03 20:12:33 +02:00
Bartłomiej Dach
293ef44836
Implement new mod select screen
2022-04-03 20:12:33 +02:00
Bartłomiej Dach
1393e3628b
Invert operands for better readability
2022-04-03 15:24:00 +02:00
Dean Herbert
969f7e121a
Merge pull request #17545 from jai-x/new-chat-textbox
...
Implement `ChatTextBox` for new chat design
2022-04-03 22:12:12 +09:00
Bartłomiej Dach
970b1951ac
Rewrite logic slightly to better convey meaning of textbox clear
2022-04-03 14:26:08 +02:00
Jai Sharma
94fa5e2ef2
Use Action<string>
for event OnChatMessageCommitted
& clear textbox internally
2022-04-02 21:58:54 +01:00
Ame
35629e9be8
General fix for ToolbarButton toggle repetition
2022-04-02 20:45:00 +02:00
Bartłomiej Dach
28ba437d24
Merge branch 'master' into sucess-rate-tooltip
2022-04-02 19:31:45 +02:00
Jai Sharma
9e152cd3fd
Fix code quality issues
2022-04-02 17:27:44 +01:00
Jai Sharma
2297073b7e
Use OnChatMessageCommit
& OnSearchTermsChanged
events in ChatTextBar
2022-04-02 17:15:19 +01:00
Jai Sharma
b9421d1415
Simplify text clear and placeholder change in ChatTextBox
2022-04-02 17:14:27 +01:00
Salman Ahmed
beb8426d3b
Save beatmap listing card size to game config
2022-04-02 18:36:49 +03:00
Salman Ahmed
ced5be33e6
Display pass/play count in success rate percentage tooltip
2022-04-02 18:08:57 +03:00
Dean Herbert
6afed5e865
Fix new SettingsItem
attribute not playing well with non-Drawable
s
2022-04-01 16:01:33 +09:00
Dean Herbert
66f5eae530
Hook up a dropdown to show all available sprites for the current skin
2022-04-01 15:01:43 +09:00
Joseph Madamba
d0873d67e1
Move difficulty graph toggle to individual skin settings
2022-03-31 18:56:57 -07:00
CenTdemeern1
86d262a355
Merge branch 'ppy:master' into clock-button
2022-03-31 23:08:30 +02:00
CenTdemeern1
bdb21b17f7
Fix my code according to the changes @bdach requested
2022-03-31 20:39:26 +02:00
CenTdemeern1
c64a90b39e
Remove a newline to comply with codefactor
2022-03-31 17:21:50 +02:00
CenTdemeern1
f1aa60c0f1
Make the clock feel more like a button
2022-03-31 16:26:53 +02:00
Dean Herbert
0a34ce2509
Increase font weight for runtime clock
...
Fonts this small are required to be `SemiBold` by design guidelines.
Somehow missed this.
2022-03-31 19:07:30 +09:00
Dean Herbert
e8a295a61b
Add test coverage of textbox focus in settings panels when switching between nested panels
2022-03-31 15:24:21 +09:00
Jai Sharma
fff30e8a6e
Simplify show/hide of text and search in ChatTextBar
2022-03-30 21:02:12 +01:00
Bartłomiej Dach
9621a7f9cb
Merge branch 'master' into fix-autoplay-mod-user-id
2022-03-30 21:41:45 +02:00
Jai Sharma
eec3fef7a6
Remove the enter box in ChatTextBar
2022-03-30 20:25:23 +01:00
Dean Herbert
975883da5c
Move all usages of client.realm
filename to a single const
2022-03-30 13:34:48 +09:00
Jai Sharma
e7d2d94eee
Fix code quality issues in ChatTextBar
2022-03-30 02:16:50 +01:00
Jai Sharma
f049d7cb67
Implement ChatTextBox
for new chat design
...
Reference design: https://www.figma.com/file/f8b2dHp9LJCMOqYP4mdrPZ/Client%2FChat?node-id=1%3A297
Adds new component `ChatTextBox`.
Exposes `BindableBool` `ShowSearch` to change text input behaviour
between normal and search behaviour.
Adds new component `ChatTextBar`.
Exposes `BindableBool` `ShowSearch` which toggles between showing current
chat channel or search icon.
Additionally binds to child `ChatTextBox` components.
Requires a cached `Bindable<Channel>` instance to be managed by a parent
component.
2022-03-29 22:33:38 +01:00
Dean Herbert
4741679a94
Change confirmation message to be more clear about intentions
...
Co-authored-by: Henry Lin <henry.ys.lin@gmail.com>
2022-03-29 19:03:50 +09:00
Dean Herbert
1fb3d11591
Add ability to "migrate" data to another folder which has an existing install
...
Until now, migrating would always attempt to move files.
There's a chance that a user is reinstalling osu! but has their data at
a custom location. We want to allow the chance for them to continue
using the external data. This seems like the easiest way to make it
work.
Would be nice if we had a `Game.Restart()` method, but maybe this is
enough for now?
Note that further down the road we will probably prompt the user to
potentially select a custom install path (including one with existing
data) before osu! gets to writing anything.
2022-03-29 18:04:31 +09:00
Dean Herbert
dc7dc7f65a
Update UserProfileOverlay
and ClickableAvatar
to treat system users more correctly
2022-03-28 22:57:16 +09:00
Salman Ahmed
b6822f8190
Remove redundant/outdated Origin
line
2022-03-26 14:55:19 +03:00
Dean Herbert
9b7b897b3c
Adjust padding to fit better
2022-03-26 20:34:50 +09:00
Dean Herbert
ab8db3b7dc
Move nested classes to own files
2022-03-26 20:34:17 +09:00
Dean Herbert
4ddf3cb1d9
Add ability to cycle between clock display modes
2022-03-26 19:18:41 +09:00
Dean Herbert
97e9049a2c
Adjust metrics and colours to better match the actual toolbar
2022-03-26 18:56:40 +09:00
Dean Herbert
252d1924e7
Adjust metrics for better legibility at small sizes
2022-03-26 18:13:33 +09:00
Dean Herbert
999ae88af2
Show game time display in clock
2022-03-26 18:13:20 +09:00
Dean Herbert
e8f5a8e3d6
Refactor hands for legibility (visual and code)
2022-03-26 18:13:13 +09:00
Dean Herbert
0d8a7246dd
Add basic implementation of clock
2022-03-26 18:13:13 +09:00
Dean Herbert
1acfbf490b
Merge branch 'master' into mod-overlay/settings-area
2022-03-25 17:37:39 +09:00
Dean Herbert
2938f44e6c
Update PresentExternally
usages in line with framework changes
2022-03-24 23:41:07 +09:00
Bartłomiej Dach
8647bebdca
Merge branch 'master' into hold-to-discard-changes
2022-03-22 20:37:43 +01:00
Bartłomiej Dach
8192fb47fe
Merge branch 'master' into skin-editor-eat-input
2022-03-22 19:22:48 +01:00
Dean Herbert
f95bd89166
Revert editor exit behaviour to exit without changes for now
2022-03-22 14:46:57 +09:00
Dan Balasescu
aea03ca21d
Merge pull request #17359 from frenzibyte/fix-score-panel-max-combo
...
Improve method of retrieving beatmap maximum combo for results score panels
2022-03-22 06:28:30 +09:00
Dean Herbert
2f18c512cd
Convert SkinEditorOverlay
to an OverlayContainer
to allow it to block input
2022-03-21 17:33:56 +09:00
Dean Herbert
b42081dd9b
Add DangerousButton
for use in popup dialogs
2022-03-21 16:06:45 +09:00
Dean Herbert
3bb01fd595
Fix close button animation not being applied correct on mouse down due to conflicting scales
2022-03-21 14:41:57 +09:00
Dean Herbert
7ca3beb7cc
Also add fade to ChannelItem
selected box
2022-03-21 14:41:42 +09:00
Dean Herbert
428e439f40
Remove space between '#' and channel name
...
This was in flyte's design (he was following discord) but doesn't feel
too correct when it's not aligned with anything else. We can revisit
this if/when we have better glyphs to represent channel types.
2022-03-21 14:36:56 +09:00
Dean Herbert
16caf2d30b
Add slight animation when highlighting an unread channel
2022-03-21 14:34:54 +09:00
Dean Herbert
692362131e
Add animation when mention pill appears (or a new message arrives)
2022-03-21 14:31:51 +09:00
Dean Herbert
11b050b66b
Add slight fade when hovering ChannelListItem
s
2022-03-21 14:28:14 +09:00
Dean Herbert
9eda2f2df1
Remove box surrounding close button
2022-03-21 14:25:29 +09:00
Dean Herbert
f922a6b556
Rename renaming button/pill classes
2022-03-21 14:15:22 +09:00
Dean Herbert
812343b410
Merge branch 'master' into new-chat-channel-control
2022-03-21 14:14:02 +09:00
Salman Ahmed
b9859f9f21
Obsolete BeatmapInfo.MaxCombo
and suppress in usages
2022-03-20 16:30:29 +03:00
Jai Sharma
f3702fbefb
Pass correct params to UpdateableAvatar
ctor in ChannelListItem
2022-03-19 22:20:17 +00:00
Jai Sharma
ba5a43b526
Rename ControlItem
-> ChannelListItem
and associated classes
2022-03-19 21:49:14 +00:00
Jai Sharma
653bb47dd5
Use UpdateableAvatar
and remove redundant ControlItemAvatar
class
2022-03-19 21:36:11 +00:00
Jai Sharma
5373c3066f
Use OsuAnimatedButton
as base for ControlItemClose
2022-03-19 21:23:32 +00:00
Jai Sharma
a293e0c766
Remove redundant ControlItemText
class
2022-03-19 16:44:58 +00:00
Dean Herbert
dfda093f4b
Rename icon creation method
2022-03-18 14:03:52 +09:00
Dean Herbert
5d940ded09
Fix incorrect usage of nullable in ControlItemMention
2022-03-18 13:59:03 +09:00
Dean Herbert
d1fd14e287
Add missing nullable
2022-03-18 13:57:36 +09:00
Salman Ahmed
7aae9bbd1b
Improve channel bindable logic in ChatOverlay
to avoid potential nullrefs
2022-03-17 08:31:38 +03:00
Bartłomiej Dach
624f9fc774
Implement mod settings area component
2022-03-16 23:13:11 +01:00
Bartłomiej Dach
b21fa78cbf
Move dependencies out of fields to BDL args where possible
2022-03-16 21:55:36 +01:00
Dean Herbert
603527d72d
Fix potential crash when highlighting chat messages
...
Test failed locally in `TestPublicChannelMention`. This test seems to
specify that the same message may arrive twice with the same ID, so
rather than overthinking this one I propose we just use `FirstOrDefault`.
```csharp
TearDown : System.AggregateException : One or more errors occurred.
(Sequence contains more than one matching element)
----> System.InvalidOperationException : Sequence contains more than
one matching element
--TearDown
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean
includeTaskCanceledExceptions)
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout,
CancellationToken cancellationToken)
at osu.Framework.Extensions.TaskExtensions.WaitSafely(Task task)
at osu.Framework.Testing.TestScene.checkForErrors()
--InvalidOperationException
at System.Linq.ThrowHelper.ThrowMoreThanOneMatchException()
at System.Linq.Enumerable.TryGetSingle[TSource](IEnumerable`1 source,
Func`2 predicate, Boolean& found)
at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1
source, Func`2 predicate)
at
osu.Game.Overlays.Chat.DrawableChannel.<processMessageHighlighting>b__14_0()
in
/Users/dean/Projects/osu/osu.Game/Overlays/Chat/DrawableChannel.cs:line
102
at osu.Framework.Threading.ScheduledDelegate.RunTaskInternal()
```
2022-03-16 18:38:06 +09:00
Jai Sharma
e38d9eafa0
Use BindTarget
instead of caching for ControlItem
unread flow
2022-03-15 22:37:15 +00:00
Jai Sharma
49b74d7867
Use BindTarget
instead of caching for ControlItem
mentions bindable flow
2022-03-15 22:33:36 +00:00
Jai Sharma
481b8fe80b
Use Orange1
for ControlItemMention
background colour
2022-03-15 22:22:32 +00:00
Jai Sharma
7621e779fa
Move ControlItem
Action assignments into BDL
2022-03-15 22:19:58 +00:00
Jai Sharma
73a0373b4e
Code quality fixes
2022-03-14 21:56:56 +00:00
Jai Sharma
ec61b88ec2
Adjust ControlItem padding
2022-03-14 21:39:57 +00:00
Jai Sharma
75958bf270
Refactor ControlItemText to use bindable flow for unread state
2022-03-14 21:32:30 +00:00
Jai Sharma
b01a809d55
Refactor ControlItemMention to use bindable flow
2022-03-14 21:26:33 +00:00
Jai Sharma
1f0f6990f0
Use ColourProvider.Content1 for ControlItemText colour
2022-03-14 21:16:28 +00:00
Jai Sharma
3aa343b987
Use OsuColour.YellowLight for ControlItemMention background
2022-03-14 21:14:33 +00:00
Jai Sharma
9621ef9437
Use OsuColour.Red1 for ControlItemClose hover colour
2022-03-14 21:10:39 +00:00
Jai Sharma
e91af664ef
Adjust ControlItemAvatar placeholder animation and colour
2022-03-14 20:37:54 +00:00
Jai Sharma
12472593cc
Mark required dependencies as non-nullable
2022-03-14 20:14:04 +00:00
Jai Sharma
c0d82dfb41
Code quality fixes
2022-03-14 19:42:55 +00:00
Jai Sharma
39c30516d0
Implement ChannelControlItem
for new chat design
...
Adds new component `ChannelControlItem` and it's child components to be
used as the clickable control in the new chat sidebar for joined
channels.
Has public properties `HasUnread` and `MentionCount` to control the
display of the channel having unread messages or mentions of the user.
Channel select/join requests are exposed via `OnRequestSelect` and
`OnRequestLeave` events respectively which should be handled by a parent
component.
Requires a cached `Bindable<Channel>` instance to be managed by a parent
component.
Requires a cached `OveralayColourScheme` instance to be provided by a
parent component.
2022-03-14 18:55:27 +00:00
Salman Ahmed
53c57661c7
Move implementtaion detail to inline comment
2022-03-11 18:34:22 +03:00
Salman Ahmed
5b70139b33
Avoid running message highlight processing more than once
2022-03-11 18:32:49 +03:00
Salman Ahmed
cc87563d57
Merge branch 'master' into chat-mention-highlight
2022-03-11 17:51:22 +03:00
Salman Ahmed
d07e3101ea
Improve message highlight handling in DrawableChannel
2022-03-10 23:07:15 +03:00
Salman Ahmed
a31611bdec
Improve channel switching flow in HighlightMessage
2022-03-10 23:07:15 +03:00
Salman Ahmed
5315ff794a
Handle non-existing channels on message highlighting gracefully
2022-03-10 21:29:32 +03:00
Salman Ahmed
717ddbba4e
Fix skin components toolbox not autosizing properly
2022-03-10 16:30:20 +03:00
Dean Herbert
46f2db1712
Move ChannelListingItem
spacing into item so input is always handled by an item in the list
...
Without this change, there would be a couple of pixels between each list
item where nothing would be hovered. This is a pretty annoying UX which
we should be avoiding we possible.
2022-03-10 15:58:57 +09:00
Dean Herbert
1a187d4dec
Add animation to checkbox when joning/leaving a channel
2022-03-10 15:54:42 +09:00
Dean Herbert
0155519343
Merge branch 'master' into new-chat-channel-listing
2022-03-10 15:49:06 +09:00
Dean Herbert
022dd88aef
Merge branch 'master' into chat-mention-highlight
2022-03-10 14:23:23 +09:00
Salman Ahmed
b25c37ce62
Instantiate highlight background container on animation
...
Also removes the necessity of scheduling as it actually never worked as
intended, `Scheduler` will still update even when the chat line is
masked away, and the animation will never be held anyways.
The new duration of the animation should be enough for long scrolls
either way.
2022-03-10 03:49:42 +03:00
Salman Ahmed
cf9671cafb
Increase highlight delay to 1500ms
2022-03-10 02:50:15 +03:00
Salman Ahmed
80c0df6af5
Scroll chat line to channel center
...
We may eventually want that encapsulated within `ScrollIntoView`, as it
would also come in handy for `GameplayLeaderboard`.
2022-03-10 02:50:15 +03:00
Salman Ahmed
93cf93943f
Schedule chat line highlight after children to handle non-loaded lines
2022-03-10 02:48:33 +03:00
Salman Ahmed
2d8983383a
Revert newMessagesArrived
changes and always schedule highlight
...
In the case a message arrives and the chat overlay is hidden, clicking
on the mention notification will not work as the `HighlightedMessage`
bindable callback will execute before the scheduled `newMessagesArrived`
logic (which was hanging since the message arrived until the chat
overlay became open because of the notification).
Simplify things by always scheduling the `HighlightedMessage` bindable
callback.
2022-03-10 01:11:27 +03:00
Jai Sharma
b67f9269f9
Remove NewChat
namespace
2022-03-09 18:13:56 +00:00
Dean Herbert
affcf5180b
Merge pull request #17161 from smoogipoo/fix-listing-score-conversion
...
Fix scores not being recalculated in beatmap overlay
2022-03-09 13:32:45 +09:00
Dean Herbert
58aef25ad5
Merge pull request #17152 from bdach/mod-overlay/difficulty-multiplier
...
Implement difficulty multiplier display for new mod select design
2022-03-09 12:11:16 +09:00
Jai Sharma
7daa2d0ea4
Use correct fonts and colours in ChannelListingItem
2022-03-09 00:36:19 +00:00
Jai Sharma
7dd51a9c4a
Reorder class attributes
2022-03-09 00:12:44 +00:00
Jai Sharma
a3477c3841
Implement ChannelListing
for new chat design
...
Adds components `ChannelListing` and `ChannelListing` item with visual
test. Essentially a more simplified version of the existing
`ChannelSelectionOverlay` component.
Correctly implements `IFilterable` behaviour to filter child channel
items. Channel joined state is based on the underlying `Joined` bindable
of the `Channel` class.
Channel join/leave events are exposed via `OnRequestJoin` and
`OnRequestLeave` events which should be handled by parent component.
Requires a cached `OverlayColourScheme` instance to be provided by the
parent overlay component when added.
2022-03-08 22:30:58 +00:00
Dean Herbert
a2ef086c1f
Fix potential crash on rare incorrect firing of skin dropdown update methods
...
As brought to light by https://gist.github.com/smoogipoo/56eda7ab56b9d1966556f2ca7a80a847 .
There's a chance that the dropdown is not populated by the time
`updateSelectedSkinFromConfig` is fired via an external means (config
changes).
2022-03-09 01:08:13 +09:00
Dan Balasescu
f5cd967635
Fix scores not being recalculated in beatmap listing
2022-03-08 19:07:39 +09:00
Salman Ahmed
5e0882df8d
Simplify message highlighting transforms
2022-03-08 04:00:11 +03:00
Salman Ahmed
d74064b94b
Use Equals
instead of reference equality operator
2022-03-08 03:56:27 +03:00
Salman Ahmed
f645869958
Update ChannelManager.CurrentChannel
directly to handle non-loaded chat scenario
...
`currentChannel` gets instantiated once the chat overlay is open, while
`HighlightMessage` could be called while the chat overlay has never been
open.
This will all be rewritten with the new chat overlay design anyways, so
should be fine for now.
2022-03-08 03:42:18 +03:00
Salman Ahmed
7f47be4680
Refactor message highlighting logic to rely on a Channel
data bindable
2022-03-08 03:19:37 +03:00
Salman Ahmed
22a2ef42c5
Check channel ID on message highlight using currentDrawableChannel
2022-03-08 01:22:47 +03:00