Commit Graph

456 Commits

Author SHA1 Message Date
9e678101cf Merge pull request #18442 from jai-x/new-chat-announce-channel
Display Announce type channels separately in new chat overlay
2022-05-30 16:53:15 +09:00
8f596520f3 Remove old chat overlay components 2022-05-29 20:08:43 +01:00
e329c160b3 Simplify channel retrieval expression 2022-05-29 18:58:27 +02:00
e69f8716cd Fix incorrect indent size 2022-05-29 18:56:37 +02:00
c5845f307a Code quality 2022-05-27 20:12:00 +01:00
e950c8c1d0 Refactor ChannelList to use new ChannelGroup class for each type of channel 2022-05-27 19:46:53 +01:00
320b6ca631 Display Announce type channels separately in new chat overlay 2022-05-27 16:18:22 +01:00
105d581f24 Use existing web localisation for chat strings 2022-05-26 22:23:03 -07:00
997fc716e8 Split out the channel list labels from the channel list item flow 2022-05-25 15:15:46 +01:00
cd90d29315 Ensure channel traversal shortcut scrolls channel list item into view 2022-05-25 12:37:28 +01:00
4a36f3aa4c Ensure channel traversal shortcut is using visual order 2022-05-25 12:29:04 +01:00
fb06b7658b Merge branch 'master' into new-chat-remove-selector-item 2022-05-21 17:30:06 +01:00
c37d1e4fae Ensure current channel is set to the ChannelListingChannel when it becomes null 2022-05-19 11:45:39 +01:00
136ecb45e2 Rename dummy channel and move to a nested class inside the ChannelListing itself 2022-05-19 19:26:14 +09:00
4015042e36 Ensure close button component is not stored as a Drawable 2022-05-18 01:35:39 +01:00
932442e242 Use null for empty grid cells in ChannelListItem 2022-05-17 18:52:19 +01:00
a633501687 Change FilterTerms to use LocalisableString 2022-05-16 14:09:37 +09:00
ae5b6c3e10 Use dummy channel to show selector and remove ChannelListSelector
Add dummy channel `DummySelectorChannel` which should be set as the
current channel in the channel manager when the selector in the chat
overlay should be shown.

Refactors the `ChannelListItem` to not show mention pill and close
button when the channel is the dummy selector channel.

Ensure that the `ChannelList` selects the dummy channel on clicking the
selector item.

Removes `ChannelListSelector` as it is no longer needed.

Removes the `setCurrent` parameter from `ChannelManager.JoinChannel`
method as it is no longer needed.
2022-05-15 20:24:49 +01:00
8760e5d884 Merge branch 'master' into new-chat-drawable-channel 2022-05-12 22:36:19 +09:00
1d38e5bd33 Add notes about weird local handling in ChannelListSelector 2022-05-12 13:58:10 +09:00
db371ab068 Use CurrentChannel == null to show the channel selector 2022-05-11 22:52:15 +01:00
623e2c94ae Adjust padding 2022-05-09 00:32:22 +01:00
aeb2984989 Move ChatOverlayDrawableChannel to it's own file 2022-05-09 00:31:22 +01:00
f4acfbd0df Change return type of CreateDaySeparator to Drawable 2022-05-07 22:23:46 +01:00
bec28c5b28 Remove virtual ColourInfo properties from DaySeparator 2022-05-07 22:16:11 +01:00
9d62206176 Update new chat overlay day separator colours and spacing
Updates the `DaySeparator` component to have separately settable colours
for the text and the lines.

Updates existing overrides of the `DaySeparator` to use the new colour
setter.

Create new `ChatOverlayDrawableChannel` with adjusted spacing and new
`DaySeparator` colours.
2022-05-06 23:06:18 +01:00
25ea660b0b Replace HandlePositionalInput override with simple hover effect 2022-05-05 19:13:48 +09:00
4efaa41670 Merge branch 'master' into new-chat-overlay 2022-05-05 18:57:00 +09:00
ddab3c6d80 Tidy up state variables 2022-05-04 21:00:11 +09:00
60999e83e0 Ensure ChatTextBox takes/leaves focus on chat overlay pop in/out 2022-05-03 22:33:36 +01:00
c17edb2848 Add padding to text in ChatTextBar to separate it from the textbox 2022-05-03 22:32:51 +01:00
50aee8b665 Ensure ChannelListSelector text also turns white when selected 2022-05-03 22:32:01 +01:00
81be69e72e Update search textbox implementation to use BasicSearchTextBox instead 2022-05-03 06:18:42 +07:00
a931b1ecc3 Show selected channel text as white in ChannelListItem 2022-05-02 22:32:25 +01:00
7f8e00c1e3 Change "Add more channels" to sentence case in "ChannelList" 2022-05-02 21:22:47 +01:00
1473762e25 Don't wrap "chatting in.." text in ChatTextBar 2022-05-02 20:57:39 +01:00
e6f1ac6bec Ensure "chatting in..." text is aligned with chat message 2022-05-02 20:45:38 +01:00
de393f735f Implement basic layout and behaviour of new chat overlay
Provides initial implementation of new chat overlay in component
`ChatOverlayV2`. Contains only the basic functionality required for
a functioning chat overlay according to the new design with the intent
of added the rest of the functionality in subsequent PRs.

Backports existing tests for the current chat overlay except for ones
testing keyboard shortcuts (since they haven't been added) and tab
closing behaviour (since no tabs).
2022-04-30 23:59:47 +01:00
5319bce772 Revert DI usage of ChannelSelectorState in favour of directly binding BindableBool SelectorActive 2022-04-20 21:05:33 +01:00
e596c9d171 Use Bindable<ChannelSelectorState> to control selector active visibility 2022-04-20 19:12:43 +01:00
44c822f34d Use normal OsuScrollContainer for ChannelList 2022-04-19 16:56:55 +01:00
47c8b8010f Use semibold font weight for ChannelListItemFlow label 2022-04-16 23:03:03 +01:00
2f41cddb00 Remove redundant Expire call 2022-04-16 23:03:03 +01:00
36aea9009e Move ChannelList scrollbar to the right 2022-04-16 23:03:03 +01:00
4a0c5a0781 Remove hover override for ChannelListScrollContainer 2022-04-16 23:02:54 +01:00
b6631fb9f9 Add newline for base class call 2022-04-15 22:22:20 +01:00
a0a2f8118e Code quality fixes 2022-04-15 22:05:20 +01:00
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
970b1951ac Rewrite logic slightly to better convey meaning of textbox clear 2022-04-03 14:26:08 +02:00
94fa5e2ef2 Use Action<string> for event OnChatMessageCommitted & clear textbox internally 2022-04-02 21:58:54 +01:00