Salman Ahmed
9bc1f3f014
Further refactor and simplify ChannelScrollContainer
2022-03-06 23:34:12 +03:00
Salman Ahmed
5b3ffb12b7
Refactor channel scrolling container to handle manual scrolls resiliently
2022-03-05 23:27:07 +03:00
Dean Herbert
52ca2f4797
Merge branch 'master' into chat-mention
2021-05-26 16:00:26 +09:00
Dean Herbert
699a317b44
Fix chat scroll sticking visually when scrolling beyond bottom extent
2021-03-29 18:07:47 +09:00
Dean Herbert
a76314a876
Use Update instead of UpdateAfterChildren (no need for the latter)
2021-02-02 15:57:17 +09:00
Dean Herbert
bb0753f68d
Use a better method of cancelling user scroll
2021-02-02 15:44:03 +09:00
Dean Herbert
398ab9c2c2
Use UserTrackingScrollContainer instead
2021-02-02 15:29:38 +09:00
Salman Ahmed
5c28c030c8
Unconditionally set "autoscroll" state
2021-02-01 22:08:57 +03:00
Salman Ahmed
15fcabb128
Add documentation to auto-scroll leniency
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-02-01 22:04:44 +03:00
Salman Ahmed
49e62c3a4b
Apply documentation changes
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
2021-02-01 11:02:08 +03:00
Salman Ahmed
e806e5bcd1
Improve robustness of chat auto-scrolling logic
...
Fix auto-scrolling state changing by old messages removal logic
2021-01-31 23:45:49 +03:00
Dean Herbert
d096f2f8f6
Fix potential cross-thread operation during chat channel load
...
The callbacks are scheduled to the API thread, but hooked up in BDL
load. This causes a potential case of cross-thread collection
enumeration.
I've tested and it seems like the schedule logic should be fine for
short term. Longer term, we probably want to re-think how this works so
background operations aren't performed on the `DrawableChannel` in the
first place (chat shouldn't have an overhead like this when not
visible).
Closes #11231 .
2020-12-21 16:39:50 +09:00
Dean Herbert
c73d45bc01
Reduce initial channel load overhead by only loading history on active channel
2020-04-29 15:23:28 +09:00
Dean Herbert
1b6342438f
Hide scrollbars in tournament chat display
2020-03-23 12:05:16 +09:00
Craftplacer
5f96940b7d
Remove unused injection
2020-01-19 17:56:01 +01:00
Craftplacer
32c2023517
Remove refactor in DrawableChannel
2020-01-19 17:20:54 +01:00
Craftplacer
8a9c90c5e6
Resolve CA errors #2
2020-01-18 16:18:17 +01:00
Craftplacer
8ddd36596e
Revert useless changes varying from properties, naming changes etc.
2020-01-18 15:40:55 +01:00
Craftplacer
1b53c0ff74
Remove populated property, and other changes
2020-01-16 23:15:30 +01:00
Craftplacer
0d812bce9f
WIP changes for code review
2019-12-26 03:32:40 +01:00
Craftplacer
b6c31e7764
Remove ignore list, move code to MessageNotifier and add it to DI
...
This also adds countable private message notifications.
2019-12-17 06:59:27 +01:00
Craftplacer
1a1253a4aa
Add null check to ScrollToAndHighlightMessage
2019-12-16 03:27:19 +01:00
Craftplacer
997b51b1f8
Make messageRemoved use helper method
2019-12-16 03:26:30 +01:00
Craftplacer
0225372e83
Rename method to ScrollToAndHighlightMessage
2019-12-16 03:24:07 +01:00
Craftplacer
eb3f851ce2
Split Notification class into three separate ones
2019-12-16 03:22:55 +01:00
Craftplacer
8b14090c95
Remove unused field
2019-12-16 02:13:26 +01:00
Craftplacer
20670730b9
Resolve code formatting
2019-12-16 01:57:07 +01:00
Craftplacer
15c25c571d
Merge remote-tracking branch 'upstream/master' into chat-mention
2019-12-16 00:59:06 +01:00
Craftplacer
8dfc8929f1
Add chat and notification logic to DrawableChannel
...
with alongside multiple helper methods
2019-12-16 00:48:22 +01:00
Dean Herbert
45514ff660
Apply fixes
2019-11-25 11:30:55 +09:00
Dean Herbert
54befb6f8f
Remove adjacent day separators
2019-10-29 15:45:41 +09:00
Dean Herbert
b06e70e546
Add failing test showing issue with day separator logic
2019-10-29 15:27:08 +09:00
Dean Herbert
09a6d1184a
Tidy up order of scroll changes
2019-10-29 14:33:05 +09:00
Dean Herbert
d1c6e3f620
Add test for scroll to end when max history is exceeded
2019-10-29 14:32:52 +09:00
Dean Herbert
e9aa7f3218
Subclass and use yellow for stand-alone chat display
2019-10-23 00:24:19 +09:00
Dean Herbert
3b4823abe7
Use foreach
2019-10-23 00:17:37 +09:00
Dean Herbert
0ba287a7fd
Rename variable
2019-10-23 00:14:22 +09:00
Andrei Zavatski
09b2f11bd5
Remove unused variable
2019-10-22 03:14:20 +03:00
Andrei Zavatski
b1eac6b400
Apply suggested changes
2019-10-22 03:11:19 +03:00
Andrei Zavatski
e9ae838f46
CI fixes
2019-10-22 02:16:52 +03:00
Andrei Zavatski
2896ed90e2
Fix incorrect date comparison
2019-10-22 01:55:26 +03:00
Andrei Zavatski
bb7af1e39c
Fix some margin/padding issues
2019-10-22 01:45:04 +03:00
Andrei Zavatski
d19041fa53
Implement DaySeparator class
2019-10-22 01:30:37 +03:00
Andrei Zavatski
75f444e431
Basic implementation
2019-10-22 00:44:58 +03:00
Dean Herbert
52f42ddade
Use child instead of children
2019-08-14 10:53:47 +09:00
Dean Herbert
b6bc84af2c
Fix chat context menus displaying out-of-bounds
2019-08-14 10:52:26 +09:00
Dean Herbert
4a25a84975
Fix DrawableChannel async flow
2019-06-20 23:01:39 +09:00
Dean Herbert
bc574520bf
Update ScrollContainer usages in line with framework changes
2019-06-14 15:55:32 +09:00
Dean Herbert
612db31c38
Apply newline additions
2019-04-01 12:16:32 +09:00
Dean Herbert
8617aaa2a7
Update licence header (and remove year)
2019-01-24 17:43:03 +09:00