95d15b7863
The js-sdk's placement of the notification change was unreliable and could cause stuck notifications. The new location (piggybacking the Notifier) is a lot more reliable. The tinting has been changed fairly invasively in order to support the changing of the `fill` attribute. What was happening before was the `fill` property would happily get set to the forced color value, but when it came time to reset it it wouldn't be part of the colors array and fail the check, therefore never being changed back. By using a second field we can ensure we are checking the not-forced value where possible, falling back to the potentially forced value if needed. In addition to fixing which color the Tinter was checking against, something noticed during development is that `this.colors` might not always be a set of hex color codes. This is problematic when the attribute we're looking to replace is a rgb color code but we're only looking at `keyHex` - the value won't be reset. It appears as though this happens when people use custom tinting in places as `this.colors` often gets set to the rgb values throughout the file. To fix it, we just check against `keyHex` and `keyRgb`. |
||
---|---|---|
.. | ||
login | ||
BottomLeftMenu.js | ||
CompatibilityPage.js | ||
ContextualMenu.js | ||
CreateRoom.js | ||
FilePanel.js | ||
GroupView.js | ||
HomePage.js | ||
InteractiveAuth.js | ||
LeftPanel.js | ||
LoggedInView.js | ||
LoginBox.js | ||
MatrixChat.js | ||
MessagePanel.js | ||
MyGroups.js | ||
NotificationPanel.js | ||
RightPanel.js | ||
RoomDirectory.js | ||
RoomStatusBar.js | ||
RoomSubList.js | ||
RoomView.js | ||
ScrollPanel.js | ||
SearchBox.js | ||
TagPanel.js | ||
TimelinePanel.js | ||
UploadBar.js | ||
UserSettings.js | ||
ViewSource.js |