mirror of https://github.com/vector-im/riot-web
				
				
				
			Fix icon on empty notification panel (#10817)
* Use custom properties for the empty panel icons on FilePanel and NotificationPanel * Create E2E test for the notification panelpull/28788/head^2
							parent
							
								
									d103d2e3dd
								
							
						
					
					
						commit
						1cfe126e14
					
				| 
						 | 
				
			
			@ -0,0 +1,52 @@
 | 
			
		|||
/*
 | 
			
		||||
Copyright 2023 Suguru Hirahara
 | 
			
		||||
 | 
			
		||||
Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
you may not use this file except in compliance with the License.
 | 
			
		||||
You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
    http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
See the License for the specific language governing permissions and
 | 
			
		||||
limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/// <reference types="cypress" />
 | 
			
		||||
 | 
			
		||||
import { HomeserverInstance } from "../../plugins/utils/homeserver";
 | 
			
		||||
 | 
			
		||||
const ROOM_NAME = "Test room";
 | 
			
		||||
const NAME = "Alice";
 | 
			
		||||
 | 
			
		||||
describe("NotificationPanel", () => {
 | 
			
		||||
    let homeserver: HomeserverInstance;
 | 
			
		||||
 | 
			
		||||
    beforeEach(() => {
 | 
			
		||||
        cy.startHomeserver("default").then((data) => {
 | 
			
		||||
            homeserver = data;
 | 
			
		||||
            cy.initTestUser(homeserver, NAME).then(() => {
 | 
			
		||||
                cy.createRoom({ name: ROOM_NAME });
 | 
			
		||||
            });
 | 
			
		||||
        });
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    afterEach(() => {
 | 
			
		||||
        cy.stopHomeserver(homeserver);
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    it("should render empty state", () => {
 | 
			
		||||
        cy.viewRoomByName(ROOM_NAME);
 | 
			
		||||
        cy.findByRole("button", { name: "Notifications" }).click();
 | 
			
		||||
 | 
			
		||||
        // Wait until the information about the empty state is rendered
 | 
			
		||||
        cy.get(".mx_NotificationPanel_empty").should("exist");
 | 
			
		||||
 | 
			
		||||
        // Take a snapshot of RightPanel
 | 
			
		||||
        cy.get(".mx_RightPanel").percySnapshotElement("Notification Panel - empty", {
 | 
			
		||||
            widths: [264], // Emulate the UI. The value is based on minWidth specified on MainSplit.tsx
 | 
			
		||||
        });
 | 
			
		||||
    });
 | 
			
		||||
});
 | 
			
		||||
| 
						 | 
				
			
			@ -69,6 +69,7 @@
 | 
			
		|||
@import "./structures/_MainSplit.pcss";
 | 
			
		||||
@import "./structures/_MatrixChat.pcss";
 | 
			
		||||
@import "./structures/_NonUrgentToastContainer.pcss";
 | 
			
		||||
@import "./structures/_NotificationPanel.pcss";
 | 
			
		||||
@import "./structures/_QuickSettingsButton.pcss";
 | 
			
		||||
@import "./structures/_RightPanel.pcss";
 | 
			
		||||
@import "./structures/_RoomSearch.pcss";
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -113,5 +113,5 @@ limitations under the License.
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
.mx_FilePanel_empty::before {
 | 
			
		||||
    mask-image: url("$(res)/img/element-icons/room/files.svg");
 | 
			
		||||
    --maskImage: url("$(res)/img/element-icons/room/files.svg"); /* See: _RightPanel.pcss */
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,19 @@
 | 
			
		|||
/*
 | 
			
		||||
Copyright 2015, 2016 OpenMarket Ltd
 | 
			
		||||
 | 
			
		||||
Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
you may not use this file except in compliance with the License.
 | 
			
		||||
You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
    http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
See the License for the specific language governing permissions and
 | 
			
		||||
limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
.mx_NotificationPanel_empty::before {
 | 
			
		||||
    --maskImage: url("$(res)/img/element-icons/notifications.svg"); /* See: _RightPanel.pcss */
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -179,6 +179,7 @@ $pulse-color: $alert;
 | 
			
		|||
        height: 42px;
 | 
			
		||||
        width: 42px;
 | 
			
		||||
        background-color: $header-panel-text-primary-color;
 | 
			
		||||
        mask-image: var(--maskImage);
 | 
			
		||||
        mask-repeat: no-repeat;
 | 
			
		||||
        mask-size: contain;
 | 
			
		||||
        mask-position: center;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue