Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade 3.104.0 #9

Merged
merged 219 commits into from
Aug 1, 2024
Merged
Changes from 1 commit
Commits
Show all changes
219 commits
Select commit Hold shift + click to select a range
9673df6
Update dependency @testing-library/jest-dom to v6.4.6 (#12596)
renovate[bot] Jun 11, 2024
5a1751f
Update typescript-eslint monorepo to v7.13.0 (#12598)
renovate[bot] Jun 11, 2024
c513f72
Update dependency @vector-im/compound-design-tokens to v1.3.0 (#12564)
renovate[bot] Jun 11, 2024
2282c6c
Update matrix-org (#12533)
renovate[bot] Jun 11, 2024
05ea965
Update dependency uuid to v10 (#12599)
renovate[bot] Jun 11, 2024
9c84c3e
Update dependency fake-indexeddb to v6 (#12568)
renovate[bot] Jun 11, 2024
81cd53a
Update all non-major dependencies (#12601)
renovate[bot] Jun 11, 2024
6fedf89
Update dependency @sentry/browser to v8 (#12567)
renovate[bot] Jun 11, 2024
6198ce5
[create-pull-request] automated change (#12603)
RiotRobot Jun 12, 2024
25e4515
Fix image upload preview size (#12607)
dbkr Jun 12, 2024
7802346
Remove stale `#start` route as it hasn't been used in a long time (#1…
t3chguy Jun 13, 2024
7ae50db
[create-pull-request] automated change (#12611)
RiotRobot Jun 13, 2024
2ed9b2e
Don't show 'saved' on display name save error (#12600)
dbkr Jun 13, 2024
ccf751d
Update end-to-end-tests.yaml
t3chguy Jun 13, 2024
21ae29c
Support s tags for strikethrough for Matrix v1.10 (#12604)
t3chguy Jun 13, 2024
8b4e3e6
Replace setImmediate with setTimeout (#12614)
t3chguy Jun 13, 2024
2547777
Tweak copy for user verification toast (#12605)
t3chguy Jun 13, 2024
347229b
Avoid flakiness from hover styling in screenshot tests (#12615)
t3chguy Jun 13, 2024
24e3e08
Cache e2eStatus to avoid concerning unencrypted flicker when changing…
t3chguy Jun 13, 2024
8c49f3f
Update gfm.css to github-markdown-css (#12613)
t3chguy Jun 13, 2024
6a44f5e
Use stable endpoints for MSC3916 (#12602)
turt2live Jun 13, 2024
6e13e6d
[create-pull-request] automated change (#12619)
RiotRobot Jun 14, 2024
bd196ae
[create-pull-request] automated change (#12620)
RiotRobot Jun 14, 2024
8e200dc
Add login page option for SSO redirects (#12622)
bartvdbraak Jun 14, 2024
d6b9e2a
Fix config override of other settings levels (#12593)
langleyd Jun 14, 2024
6fc9d76
Remove room key history sharing (#12618)
uhoreg Jun 14, 2024
650b9cb
Add in-progress view to display name EditInPlace (#12609)
dbkr Jun 14, 2024
72a8f8f
Show tooltips on narrow tabbed views (#12624)
dbkr Jun 14, 2024
5212ae8
[create-pull-request] automated change (#12627)
RiotRobot Jun 17, 2024
5a1b98d
Improve accessibility of the room summary card (#12586)
t3chguy Jun 17, 2024
28bcbd4
Playwright Docker image updates (#12626)
RiotRobot Jun 17, 2024
5c26d58
Fix widgets not being cleaned up correctly. (#12616)
toger5 Jun 17, 2024
1cf3045
Fix stray background colour on markdown body (#12628)
t3chguy Jun 17, 2024
042aa17
[create-pull-request] automated change (#12631)
RiotRobot Jun 18, 2024
085fa1c
Merge branch 'master' into develop
RiotRobot Jun 18, 2024
4b76fcc
Resetting package fields for development
RiotRobot Jun 18, 2024
1c59fb5
Reset matrix-js-sdk back to develop branch
RiotRobot Jun 18, 2024
28dc655
Update dependency @sentry/browser to v8.9.1 (#12597)
renovate[bot] Jun 18, 2024
f9e2425
Remove stray setState which caused encryption state shields to flicke…
t3chguy Jun 18, 2024
9aa34ce
[create-pull-request] automated change (#12640)
RiotRobot Jun 19, 2024
2b4b415
[create-pull-request] automated change (#12641)
RiotRobot Jun 19, 2024
d6f35a5
Replace deprecated babel proposal plugins (#12635)
t3chguy Jun 19, 2024
a4af287
Remove unused state fields in qr oidc (#12588)
t3chguy Jun 19, 2024
d097935
Update dependency emojibase-regex to v15.3.2 (#12644)
renovate[bot] Jun 19, 2024
c209edc
Update all non-major dependencies (#12642)
renovate[bot] Jun 19, 2024
3d8c890
Update dependency js-xxhash to v4 (#12646)
renovate[bot] Jun 19, 2024
36998f1
Update typescript-eslint monorepo to v7.13.1 (#12645)
renovate[bot] Jun 19, 2024
8ace191
Update definitelyTyped (#12647)
renovate[bot] Jun 19, 2024
b2e9de1
Update for js-sdk interface change (#12638)
dbkr Jun 19, 2024
04e1d7f
Update `@vector-im/compound-web` & fix jest snapshot updates (#12637)
florianduros Jun 19, 2024
76844f5
Hide voice call button when redundant (#12639)
t3chguy Jun 19, 2024
e49f8e0
Update to compound-web 4.8.0 (#12650)
dbkr Jun 20, 2024
7e7b55e
Playwright tests to replace old `loading-test.tsx` (#12654)
richvdh Jun 20, 2024
6c99b91
Minor tweaks to UserSettings dialog (#12651)
florianduros Jun 20, 2024
ead7303
Remove outdated iframe sandbox attribute (#12633)
t3chguy Jun 20, 2024
d5e06c9
[create-pull-request] automated change (#12655)
RiotRobot Jun 20, 2024
1bf430b
Fix background on live location sharing footer (#12629)
t3chguy Jun 20, 2024
e9abc55
Work around rust crypto bug which causes flakiness (#12656)
t3chguy Jun 20, 2024
0317755
Add a github action to check the base branch (#12665)
dbkr Jun 20, 2024
5bcf76c
Playwright test: ensure that links are preserved over login (#12657)
richvdh Jun 20, 2024
2d8c23e
Hide voip buttons in group rooms in environments with widgets disable…
t3chguy Jun 21, 2024
132669f
Remove redundant sleep from playwright test (#12667)
richvdh Jun 21, 2024
87bdc78
Playwright: check the welcome page is loaded and works (#12660)
richvdh Jun 21, 2024
4a4c172
Fix high contrast theme in settings (#12649)
florianduros Jun 21, 2024
5eb5ea8
Remove redundant copy in deactive uia modal (#12668)
t3chguy Jun 21, 2024
736b083
Deflake verification playwright tests (#12669)
richvdh Jun 21, 2024
ce7b538
[create-pull-request] automated change (#12671)
RiotRobot Jun 22, 2024
2843545
[create-pull-request] automated change (#12673)
RiotRobot Jun 24, 2024
9c86290
Switch to Rust crypto stack for all logins (#12630)
richvdh Jun 24, 2024
efd309f
Disable playwright tests for legacy crypto (#12662)
richvdh Jun 24, 2024
f59bd6d
Update `@vector-im/compound-web` (#12675)
florianduros Jun 24, 2024
cea0b7c
[create-pull-request] automated change (#12678)
RiotRobot Jun 25, 2024
15de001
Remove legacy crypto parameter (#12679)
florianduros Jun 25, 2024
1906af2
Upgrade dependency to [email protected]
RiotRobot Jun 25, 2024
6781465
v3.102.0-rc.0
RiotRobot Jun 25, 2024
4e6674b
Update dependency @sentry/browser to v8.11.0 (#12686)
renovate[bot] Jun 25, 2024
7da394b
Update dependency @playwright/test to v1.45.0 (#12685)
renovate[bot] Jun 25, 2024
91779e0
Update stylelint (#12684)
renovate[bot] Jun 25, 2024
3aba3f6
Update dependency @types/node to v18.19.39 (#12682)
renovate[bot] Jun 25, 2024
8977a05
Update matrix-org (#12683)
renovate[bot] Jun 25, 2024
8c3cc61
Update dependency @vector-im/compound-web to v4.10.0 (#12687)
renovate[bot] Jun 25, 2024
4fbfc94
Update actions/checkout action to v4 (#12690)
renovate[bot] Jun 25, 2024
894b4e7
Update dependency @types/uuid to v10 (#12692)
renovate[bot] Jun 25, 2024
eb28898
Reduce number of parallel runners for Playwright (#12695)
t3chguy Jun 25, 2024
32a8384
Update peter-evans/create-pull-request digest to 4e1beaa (#12680)
renovate[bot] Jun 25, 2024
59512f9
Update dependency eslint-plugin-unicorn to v54 (#12693)
renovate[bot] Jun 25, 2024
070c476
Update actions/github-script action to v7 (#12691)
renovate[bot] Jun 25, 2024
4bf8766
Update dependency typescript to v5.5.2 (#12688)
renovate[bot] Jun 25, 2024
5c50605
Update typescript-eslint monorepo to v7.14.1 (#12689)
renovate[bot] Jun 25, 2024
7d9ff8b
Update peter-evans/create-pull-request action to v6 (#12694)
renovate[bot] Jun 25, 2024
ffbb903
Update all non-major dependencies (#12681)
renovate[bot] Jun 25, 2024
d8a671d
Update dependency posthog-js to v1.141.3 (#12700)
renovate[bot] Jun 25, 2024
b78e6f0
[create-pull-request] automated change (#12701)
RiotRobot Jun 26, 2024
95c8aa3
[create-pull-request] automated change (#12702)
RiotRobot Jun 26, 2024
86a95cf
Switch from graphemer to Intl.Segmenter (#12697)
t3chguy Jun 26, 2024
7a81470
Pass through BASE_URL env on playwright screenshot docker wrapper (#1…
t3chguy Jun 26, 2024
7247524
Extract SearchScope and SearchInfo into Searching (#12698)
t3chguy Jun 26, 2024
ea0baee
Split out email & phone number settings to separate components & move…
dbkr Jun 26, 2024
8ede891
Adjust room header hover transition from 300ms to 200ms (#12703)
t3chguy Jun 26, 2024
33a017b
New theme ui in user settings (#12576)
florianduros Jun 26, 2024
b449dc8
[create-pull-request] automated change (#12707)
RiotRobot Jun 27, 2024
8feaae6
Playwright: use rust crypto for the bot user (#12708)
richvdh Jun 27, 2024
f475e1a
[create-pull-request] automated change (#12711)
RiotRobot Jun 28, 2024
9b00af6
[create-pull-request] automated change (#12712)
RiotRobot Jun 28, 2024
ba7ffd6
[create-pull-request] automated change (#12715)
RiotRobot Jul 1, 2024
6ebaf3b
[create-pull-request] automated change (#12717)
RiotRobot Jul 2, 2024
7d8623d
Fix `Match system theme` toggle (#12719)
florianduros Jul 2, 2024
922676a
Clear autocomplete input on selection accept (#12709)
dbkr Jul 2, 2024
510fb1b
Disable profile controls if the HS doesn't allow them to be set (#12652)
dbkr Jul 2, 2024
53ea045
Update @vector-im/compound-web (#12718)
florianduros Jul 2, 2024
2702f8b
[create-pull-request] automated change (#12722)
RiotRobot Jul 3, 2024
353b6c0
Disable xvfb as it is not necessary for headless mode (#12720)
t3chguy Jul 3, 2024
b0d2010
Update new room header facepile tooltip (#12699)
t3chguy Jul 3, 2024
6b90fe2
Extract `focus_search` dispatch action into enum (#12721)
t3chguy Jul 3, 2024
0434929
Replace deprecated temporal proposal polyfill (#12636)
t3chguy Jul 3, 2024
e75dc4e
[create-pull-request] automated change (#12724)
RiotRobot Jul 4, 2024
1fbc972
Use LTS nodejs in github workflows (#12726)
richvdh Jul 4, 2024
e48110d
Move the account management button (#12663)
dbkr Jul 4, 2024
de12d69
Flaky-test bot: reopen existing issues (#12727)
richvdh Jul 4, 2024
8febc65
Upgrade dependency to [email protected]
RiotRobot Jul 4, 2024
55fba07
v3.102.0-rc.1
RiotRobot Jul 4, 2024
489bc32
Remove references to some deprecated js-sdk identifiers (#12729)
richvdh Jul 4, 2024
c61eca8
Don't consider textual characters to be emoji (#12582)
robintown Jul 4, 2024
e288f61
Prevent Element appearing in system media controls (#10995)
SuperKenVery Jul 4, 2024
72b97ea
[create-pull-request] automated change (#12730)
RiotRobot Jul 5, 2024
6f5d21f
[create-pull-request] automated change (#12731)
RiotRobot Jul 5, 2024
2f953f1
New layout selector ui in user settings (#12676)
florianduros Jul 5, 2024
0611769
Fix close button on forgot password flow (#12732)
dbkr Jul 5, 2024
a7542dc
Remove dependency on libolm (#12704)
richvdh Jul 5, 2024
dcf7643
Fix closing all modals (#12728)
dbkr Jul 5, 2024
81f29d1
Move language settings to 'preferences' (#12723)
dbkr Jul 5, 2024
5bda8d0
[create-pull-request] automated change (#12734)
RiotRobot Jul 6, 2024
596ad38
[create-pull-request] automated change (#12735)
RiotRobot Jul 8, 2024
2a26afe
Redesign room search interface (#12677)
t3chguy Jul 8, 2024
b2a8915
Remove redundant call to `setCrypto` (#12738)
richvdh Jul 8, 2024
466f37a
Improve new room header accessibility (#12725)
t3chguy Jul 8, 2024
1e060de
Upgrade dependency to [email protected]
RiotRobot Jul 8, 2024
2bf3335
v3.102.0
RiotRobot Jul 8, 2024
8679ace
Fix incoming call toast crash due to audio refactor (#12737)
t3chguy Jul 8, 2024
7487b27
[create-pull-request] automated change (#12740)
RiotRobot Jul 9, 2024
cd39d91
Promote new room header from labs to Beta (#12739)
t3chguy Jul 9, 2024
cf8b87f
Add tabs to the right panel (#12672)
MidhunSureshR Jul 9, 2024
8580b13
Merge remote-tracking branch 'origin/develop' into staging
RiotRobot Jul 9, 2024
4d6cea0
Upgrade dependency to [email protected]
RiotRobot Jul 9, 2024
a4f82bb
Specify node version
t3chguy Jul 9, 2024
ef0a2fb
Update package.json
t3chguy Jul 9, 2024
c50c32b
v3.103.0-rc.0
RiotRobot Jul 9, 2024
6e5b6b4
Upgrade dependency to [email protected]
RiotRobot Jul 9, 2024
81f766f
v3.103.0-rc.1
RiotRobot Jul 9, 2024
2891679
Update dependency typescript to v5.5.3 (#12748)
renovate[bot] Jul 9, 2024
9be495a
Update all non-major dependencies (#12744)
renovate[bot] Jul 9, 2024
f4aec6a
Update dependency @vector-im/compound-design-tokens to v1.4.0 (#12750)
renovate[bot] Jul 9, 2024
d053cd2
Update dependency @playwright/test to v1.45.1 (#12746)
renovate[bot] Jul 9, 2024
7ceb151
Update dependency @sentry/browser to v8.15.0 (#12749)
renovate[bot] Jul 9, 2024
feb5a49
Update dependency rimraf to v6 (#12754)
renovate[bot] Jul 9, 2024
07f7832
Update typescript-eslint monorepo to v7.15.0 (#12752)
renovate[bot] Jul 9, 2024
93d5d2b
Update dependency @vector-im/compound-design-tokens to v1.5.0 (#12758)
renovate[bot] Jul 9, 2024
454e934
Update all non-major dependencies (#12756)
renovate[bot] Jul 9, 2024
fff0985
Update dependency @sentry/browser to v8.16.0 (#12757)
renovate[bot] Jul 9, 2024
2712803
[create-pull-request] automated change (#12759)
RiotRobot Jul 10, 2024
c894beb
Split up slow Playwright tests (#12741)
t3chguy Jul 10, 2024
19f9f98
Element-R: Report events with withheld keys separately to Posthog. (#…
richvdh Jul 10, 2024
44b9889
Move integrations switch (#12733)
dbkr Jul 10, 2024
2772a9b
[create-pull-request] automated change (#12763)
RiotRobot Jul 11, 2024
72e0d10
Update wording shown when keys are withheld (#12761)
richvdh Jul 11, 2024
b53baea
[create-pull-request] automated change (#12766)
RiotRobot Jul 12, 2024
0a622f1
[create-pull-request] automated change (#12767)
RiotRobot Jul 12, 2024
08ee1b8
Use multiple workers in Playwright CI to make use of multiple cores (…
t3chguy Jul 12, 2024
1082d76
Hide tooltips for certain playwright screenshots to avoid flakiness (…
t3chguy Jul 12, 2024
ba7cf60
Update dependency @vector-im/compound-web to v5.4.0 (#12773)
renovate[bot] Jul 12, 2024
db95f26
remove "Manually verify all remote sessions" setting (#12706)
uhoreg Jul 12, 2024
3480001
Cleanup tasks in SecurityManager/SetupEncryptionStore (#12764)
richvdh Jul 13, 2024
52c32f3
Add logging to encryption setup (#12765)
richvdh Jul 13, 2024
4445461
[create-pull-request] automated change (#12776)
RiotRobot Jul 15, 2024
3221f7c
Align `widget_build_url_ignore_dm` with call behaviour switch between…
t3chguy Jul 15, 2024
2e0b5bb
Fix edge case of landing on 3pid email link with registration disable…
t3chguy Jul 15, 2024
38e1da5
Fix inability to change accent colour consistently in custom theming …
t3chguy Jul 15, 2024
b4ef5d3
Fix HTML export missing a bunch of Compound variables (#12774)
t3chguy Jul 15, 2024
7f95903
Fix HTML export test (#12778)
dbkr Jul 15, 2024
7863de6
Enable Playwright forbidOnly in CI to catch accidental `test.only` (#…
t3chguy Jul 15, 2024
e6d9ecc
Add test reporter to prevent stale screenshots (#12743)
t3chguy Jul 15, 2024
13e1065
[create-pull-request] automated change (#12779)
RiotRobot Jul 16, 2024
5f10ccb
Update dependency @types/lodash to v4.17.7 (#12747)
renovate[bot] Jul 16, 2024
f7a078d
Update right panel base card styling to match Compound (#12768)
t3chguy Jul 16, 2024
d0a8365
Upgrade dependency to [email protected]
RiotRobot Jul 16, 2024
831c56d
v3.103.0
RiotRobot Jul 16, 2024
c843a41
Let Element Call widget set session memberships (#12713)
AndrewFerr Jul 16, 2024
59d08d8
Let Element Call widget receive m.room.create (#12710)
AndrewFerr Jul 16, 2024
e097cc0
Update playwright monorepo to v1.45.2 (#12783)
renovate[bot] Jul 16, 2024
cf96a6d
[create-pull-request] automated change (#12784)
RiotRobot Jul 17, 2024
c57d846
Clear settings store cache on logout (#12786)
dbkr Jul 17, 2024
4edf4e4
Remove SpaceScopeHeader (#12785)
t3chguy Jul 17, 2024
3c9bd69
Accessibility: Add Landmark navigation (#12190)
akirk Jul 17, 2024
39d453a
Stop using the js-sdk's compare function (#12782)
dbkr Jul 17, 2024
72d32bd
[create-pull-request] automated change (#12789)
RiotRobot Jul 18, 2024
924f5a0
Add test for the unsupported browser screen (#12787)
dbkr Jul 18, 2024
564ea53
Fix stray 'account' heading (#12791)
dbkr Jul 18, 2024
2920e76
Test for lack of WebAssembly support (#12792)
dbkr Jul 18, 2024
f706ac4
Update styling of UserInfo right panel card (#12788)
t3chguy Jul 18, 2024
db41121
[create-pull-request] automated change (#12794)
RiotRobot Jul 19, 2024
d202295
[create-pull-request] automated change (#12795)
RiotRobot Jul 19, 2024
0fc1c53
Iterate design of right panel empty state (#12796)
t3chguy Jul 19, 2024
1839895
[create-pull-request] automated change (#12799)
RiotRobot Jul 20, 2024
62c5625
[create-pull-request] automated change (#12800)
RiotRobot Jul 22, 2024
2fd291c
[create-pull-request] automated change (#12804)
RiotRobot Jul 23, 2024
5308c91
Close any open modals on logout (#12777)
dbkr Jul 23, 2024
25fcd6a
Update Thread Panel to match latest designs (#12797)
t3chguy Jul 23, 2024
bb1b7f1
Default the room header to on (#12803)
MidhunSureshR Jul 23, 2024
dafc97f
Add release announcement for the new room header (#12802)
MidhunSureshR Jul 23, 2024
be846e6
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into…
t3chguy Jul 23, 2024
4eff82f
Upgrade dependency to [email protected]
t3chguy Jul 23, 2024
2944632
v3.104.0-rc.0
RiotRobot Jul 23, 2024
63848da
[Backport staging] Fix broken jest tests on develop (#12821)
RiotRobot Jul 24, 2024
0e2ba42
[Backport staging] Update compound-design-tokens to satisfy compound-…
RiotRobot Jul 24, 2024
94017ab
v3.104.0-rc.1
RiotRobot Jul 24, 2024
3e903da
Upgrade dependency to [email protected]
RiotRobot Jul 30, 2024
5dda51f
v3.104.0
RiotRobot Jul 30, 2024
19b59a2
Merge tag 'v3.104.0' into upgrade-3.104.0
MarcWadai Jul 31, 2024
5de23c0
Fix merge conflict v3.104.0
MarcWadai Jul 31, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Default the room header to on (matrix-org#12803)
* Default the room header to on

* Refactor code into helper method

Add a method to open/close the room info panel and use it everywhere.

* Fix broken tests, update snapshots and screenshots

* Update room header tests to make sense with the new header
MidhunSureshR authored Jul 23, 2024

Verified

This commit was signed with the committer’s verified signature.
barakb Barak Bar Orion
commit bb1b7f1fd0127c6f35b62fae3f61c629112c557e
2 changes: 1 addition & 1 deletion playwright/e2e/app-loading/stored-credentials.spec.ts
Original file line number Diff line number Diff line change
@@ -48,7 +48,7 @@ test("Shows the last known page on reload", async ({ pageWithCredentials: page }

// Check that the room reloaded
await expect(page).toHaveURL(/\/#\/room\//);
await expect(page.locator(".mx_LegacyRoomHeader")).toContainText("Test Room");
await expect(page.locator(".mx_RoomHeader")).toContainText("Test Room");
});

test("Room link correctly loads a room view", async ({ pageWithCredentials: page }) => {
2 changes: 1 addition & 1 deletion playwright/e2e/chat-export/html-export.spec.ts
Original file line number Diff line number Diff line change
@@ -108,7 +108,7 @@ test.describe("HTML Export", () => {
page.locator(".mx_EventTile_last .mx_MTextBody .mx_EventTile_body").getByText("Testing 9"),
).toBeVisible();

await page.getByRole("button", { name: "Room info" }).click();
await app.toggleRoomInfoPanel();
await page.getByRole("menuitem", { name: "Export Chat" }).click();

const downloadPromise = page.waitForEvent("download");
2 changes: 1 addition & 1 deletion playwright/e2e/create-room/create-room.spec.ts
Original file line number Diff line number Diff line change
@@ -36,7 +36,7 @@ test.describe("Create Room", () => {
await dialog.getByRole("button", { name: "Create room" }).click();

await expect(page).toHaveURL(/\/#\/room\/#test-room-1:localhost/);
const header = page.locator(".mx_LegacyRoomHeader");
const header = page.locator(".mx_RoomHeader");
await expect(header).toContainText(name);
await expect(header).toContainText(topic);
});
4 changes: 2 additions & 2 deletions playwright/e2e/crypto/crypto.spec.ts
Original file line number Diff line number Diff line change
@@ -224,7 +224,7 @@ test.describe("Cryptography", function () {
await checkDMRoom(page);
const bobRoomId = await bobJoin(page, bob);
await testMessages(page, bob, bobRoomId);
await verify(page, bob);
await verify(app, bob);

// Assert that verified icon is rendered
await page.getByTestId("base-card-back-button").click();
@@ -246,6 +246,6 @@ test.describe("Cryptography", function () {

// we need to have a room with the other user present, so we can open the verification panel
await createSharedRoomWithUser(app, bob.credentials.userId);
await verify(page, bob);
await verify(app, bob);
});
});
4 changes: 2 additions & 2 deletions playwright/e2e/crypto/event-shields.spec.ts
Original file line number Diff line number Diff line change
@@ -104,7 +104,7 @@ test.describe("Cryptography", function () {
await expect(lastTileE2eIcon).not.toBeVisible();

/* Now verify Bob */
await verify(page, bob);
await verify(app, bob);

/* Existing message should be updated when user is verified. */
await expect(last).toContainText("test encrypted 1");
@@ -222,7 +222,7 @@ test.describe("Cryptography", function () {
await bobSecondDevice.prepareClient();

// verify Bob
await verify(page, bob);
await verify(app, bob);

// bob sends a valid event
const testEvent = await bob.sendMessage(testRoomId, "Hoo!");
14 changes: 3 additions & 11 deletions playwright/e2e/crypto/utils.ts
Original file line number Diff line number Diff line change
@@ -329,15 +329,6 @@ export async function createRoom(page: Page, roomName: string, isEncrypted: bool
}
}

/**
* Open the room info panel and return the panel element
* @param page - the page to use
*/
export const openRoomInfo = async (page: Page) => {
await page.getByRole("button", { name: "Room info" }).click();
return page.locator(".mx_RightPanel");
};

/**
* Configure the given MatrixClient to auto-accept any invites
* @param client - the client to configure
@@ -357,10 +348,11 @@ export async function autoJoin(client: Client) {
* @param page - the page to use
* @param bob - the user to verify
*/
export const verify = async (page: Page, bob: Bot) => {
export const verify = async (app: ElementAppPage, bob: Bot) => {
const page = app.page;
const bobsVerificationRequestPromise = waitForVerificationRequest(bob);

const roomInfo = await openRoomInfo(page);
const roomInfo = await app.toggleRoomInfoPanel();
await page.locator(".mx_RightPanelTabs").getByText("People").click();
await roomInfo.getByText("Bob").click();
await roomInfo.getByRole("button", { name: "Verify" }).click();
6 changes: 3 additions & 3 deletions playwright/e2e/file-upload/image-upload.spec.ts
Original file line number Diff line number Diff line change
@@ -38,8 +38,8 @@ test.describe("Image Upload", () => {
.locator(".mx_MessageComposer_actions input[type='file']")
.setInputFiles("playwright/sample-files/riot.png");

expect(page.getByRole("button", { name: "Upload" })).toBeEnabled();
expect(page.getByRole("button", { name: "Close dialog" })).toBeEnabled();
expect(page).toMatchScreenshot("image-upload-preview.png");
await expect(page.getByRole("button", { name: "Upload" })).toBeEnabled();
await expect(page.getByRole("button", { name: "Close dialog" })).toBeEnabled();
await expect(page).toMatchScreenshot("image-upload-preview.png");
});
});
4 changes: 2 additions & 2 deletions playwright/e2e/integration-manager/get-openid-token.spec.ts
Original file line number Diff line number Diff line change
@@ -118,8 +118,8 @@ test.describe("Integration Manager: Get OpenID Token", () => {
await app.viewRoomByName(ROOM_NAME);
});

test("should successfully obtain an openID token", async ({ page }) => {
await openIntegrationManager(page);
test("should successfully obtain an openID token", async ({ page, app }) => {
await openIntegrationManager(app);
await sendActionFromIntegrationManager(page, integrationManagerUrl);

const iframe = page.frameLocator(`iframe[src*="${integrationManagerUrl}"]`);
10 changes: 5 additions & 5 deletions playwright/e2e/integration-manager/kick.spec.ts
Original file line number Diff line number Diff line change
@@ -167,7 +167,7 @@ test.describe("Integration Manager: Kick", () => {
await app.client.inviteUser(room.roomId, targetUser.credentials.userId);
await expect(page.getByText(`${BOT_DISPLAY_NAME} joined the room`)).toBeVisible();

await openIntegrationManager(page);
await openIntegrationManager(app);
await sendActionFromIntegrationManager(page, integrationManagerUrl, room.roomId, targetUser.credentials.userId);
await closeIntegrationManager(page, integrationManagerUrl);
await expectKickedMessage(page, true);
@@ -185,7 +185,7 @@ test.describe("Integration Manager: Kick", () => {
},
});

await openIntegrationManager(page);
await openIntegrationManager(app);
await sendActionFromIntegrationManager(page, integrationManagerUrl, room.roomId, targetUser.credentials.userId);
await closeIntegrationManager(page, integrationManagerUrl);
await expectKickedMessage(page, false);
@@ -197,7 +197,7 @@ test.describe("Integration Manager: Kick", () => {
await expect(page.getByText(`${BOT_DISPLAY_NAME} joined the room`)).toBeVisible();
await targetUser.leave(room.roomId);

await openIntegrationManager(page);
await openIntegrationManager(app);
await sendActionFromIntegrationManager(page, integrationManagerUrl, room.roomId, targetUser.credentials.userId);
await closeIntegrationManager(page, integrationManagerUrl);
await expectKickedMessage(page, false);
@@ -209,7 +209,7 @@ test.describe("Integration Manager: Kick", () => {
await expect(page.getByText(`${BOT_DISPLAY_NAME} joined the room`)).toBeVisible();
await app.client.ban(room.roomId, targetUser.credentials.userId);

await openIntegrationManager(page);
await openIntegrationManager(app);
await sendActionFromIntegrationManager(page, integrationManagerUrl, room.roomId, targetUser.credentials.userId);
await closeIntegrationManager(page, integrationManagerUrl);
await expectKickedMessage(page, false);
@@ -218,7 +218,7 @@ test.describe("Integration Manager: Kick", () => {
test("should no-op if the target was never a room member", async ({ page, app, bot: targetUser, room }) => {
await app.viewRoomByName(ROOM_NAME);

await openIntegrationManager(page);
await openIntegrationManager(app);
await sendActionFromIntegrationManager(page, integrationManagerUrl, room.roomId, targetUser.credentials.userId);
await closeIntegrationManager(page, integrationManagerUrl);
await expectKickedMessage(page, false);
10 changes: 5 additions & 5 deletions playwright/e2e/integration-manager/read_events.spec.ts
Original file line number Diff line number Diff line change
@@ -142,7 +142,7 @@ test.describe("Integration Manager: Read Events", () => {

// Send a state event
const sendEventResponse = await app.client.sendStateEvent(room.roomId, eventType, eventContent, stateKey);
await openIntegrationManager(page);
await openIntegrationManager(app);

// Read state events
await sendActionFromIntegrationManager(page, integrationManagerUrl, room.roomId, eventType, stateKey);
@@ -162,7 +162,7 @@ test.describe("Integration Manager: Read Events", () => {

// Send a state event
const sendEventResponse = await app.client.sendStateEvent(room.roomId, eventType, eventContent, stateKey);
await openIntegrationManager(page);
await openIntegrationManager(app);

// Read state events
await sendActionFromIntegrationManager(page, integrationManagerUrl, room.roomId, eventType, stateKey);
@@ -196,7 +196,7 @@ test.describe("Integration Manager: Read Events", () => {
app.client.sendStateEvent(room.roomId, eventType, eventContent3, stateKey3),
]);

await openIntegrationManager(page);
await openIntegrationManager(app);

// Read state events
await sendActionFromIntegrationManager(
@@ -217,11 +217,11 @@ test.describe("Integration Manager: Read Events", () => {
await expect(iframe.locator("#message-response")).toContainText(`"content":${JSON.stringify(eventContent3)}`);
});

test("should fail to read an event type which is not allowed", async ({ page, room }) => {
test("should fail to read an event type which is not allowed", async ({ page, app, room }) => {
const eventType = "com.example.event";
const stateKey = "";

await openIntegrationManager(page);
await openIntegrationManager(app);

// Read state events
await sendActionFromIntegrationManager(page, integrationManagerUrl, room.roomId, eventType, stateKey);
2 changes: 1 addition & 1 deletion playwright/e2e/integration-manager/send_event.spec.ts
Original file line number Diff line number Diff line change
@@ -137,7 +137,7 @@ test.describe("Integration Manager: Send Event", () => {
);

await app.viewRoomByName(ROOM_NAME);
await openIntegrationManager(page);
await openIntegrationManager(app);
});

test("should send a state event", async ({ page, app, room }) => {
7 changes: 4 additions & 3 deletions playwright/e2e/integration-manager/utils.ts
Original file line number Diff line number Diff line change
@@ -14,10 +14,11 @@ See the License for the specific language governing permissions and
limitations under the License.
*/

import type { Page } from "@playwright/test";
import type { ElementAppPage } from "../../pages/ElementAppPage";

export async function openIntegrationManager(page: Page) {
await page.getByRole("button", { name: "Room info" }).click();
export async function openIntegrationManager(app: ElementAppPage) {
const { page } = app;
await app.toggleRoomInfoPanel();
await page
.locator(".mx_RoomSummaryCard_appsGroup")
.getByRole("button", { name: "Add widgets, bridges & bots" })
11 changes: 4 additions & 7 deletions playwright/e2e/invite/invite-dialog.spec.ts
Original file line number Diff line number Diff line change
@@ -36,7 +36,7 @@ test.describe("Invite dialog", function () {
await expect(page.getByText("Hanako created and configured the room.")).toBeVisible();

// Open the room info panel
await page.getByRole("button", { name: "Room info" }).click();
await app.toggleRoomInfoPanel();

await page.locator(".mx_BaseCard").getByRole("menuitem", { name: "Invite" }).click();

@@ -114,12 +114,9 @@ test.describe("Invite dialog", function () {

// Assert that the hovered user name on invitation UI does not have background color
// TODO: implement the test on room-header.spec.ts
const roomHeader = page.locator(".mx_LegacyRoomHeader");
await roomHeader.locator(".mx_LegacyRoomHeader_name--textonly").hover();
await expect(roomHeader.locator(".mx_LegacyRoomHeader_name--textonly")).toHaveCSS(
"background-color",
"rgba(0, 0, 0, 0)",
);
const roomHeader = page.locator(".mx_RoomHeader");
await roomHeader.locator(".mx_RoomHeader_heading").hover();
await expect(roomHeader.locator(".mx_RoomHeader_heading")).toHaveCSS("background-color", "rgba(0, 0, 0, 0)");

// Send a message to invite the bots
const composer = app.getComposer().locator("[contenteditable]");
6 changes: 3 additions & 3 deletions playwright/e2e/knock/create-knock-room.spec.ts
Original file line number Diff line number Diff line change
@@ -31,7 +31,7 @@ test.describe("Create Knock Room", () => {
await dialog.getByRole("option", { name: "Ask to join" }).click();
await dialog.getByRole("button", { name: "Create room" }).click();

await expect(page.locator(".mx_LegacyRoomHeader").getByText("Cybersecurity")).toBeVisible();
await expect(page.locator(".mx_RoomHeader").getByText("Cybersecurity")).toBeVisible();

const urlHash = await page.evaluate(() => window.location.hash);
const roomId = urlHash.replace("#/room/", "");
@@ -48,7 +48,7 @@ test.describe("Create Knock Room", () => {
await dialog.getByRole("textbox", { name: "Name" }).fill("Cybersecurity");
await dialog.getByRole("button", { name: "Create room" }).click();

await expect(page.locator(".mx_LegacyRoomHeader").getByText("Cybersecurity")).toBeVisible();
await expect(page.locator(".mx_RoomHeader").getByText("Cybersecurity")).toBeVisible();

const urlHash = await page.evaluate(() => window.location.hash);
const roomId = urlHash.replace("#/room/", "");
@@ -74,7 +74,7 @@ test.describe("Create Knock Room", () => {
await dialog.getByText("Make this room visible in the public room directory.").click();
await dialog.getByRole("button", { name: "Create room" }).click();

await expect(page.locator(".mx_LegacyRoomHeader").getByText("Cybersecurity")).toBeVisible();
await expect(page.locator(".mx_RoomHeader").getByText("Cybersecurity")).toBeVisible();

const urlHash = await page.evaluate(() => window.location.hash);
const roomId = urlHash.replace("#/room/", "");
7 changes: 4 additions & 3 deletions playwright/e2e/lazy-loading/lazy-loading.spec.ts
Original file line number Diff line number Diff line change
@@ -78,8 +78,9 @@ test.describe("Lazy Loading", () => {
}
}

async function openMemberlist(page: Page): Promise<void> {
await page.locator(".mx_LegacyRoomHeader").getByRole("button", { name: "Room info" }).click();
async function openMemberlist(app: ElementAppPage): Promise<void> {
await app.toggleRoomInfoPanel();
const { page } = app;
await page.locator(".mx_RightPanelTabs").getByText("People").click();
}

@@ -123,7 +124,7 @@ test.describe("Lazy Loading", () => {
// Alice should see 2 messages from every charly with the correct display name
await checkPaginatedDisplayNames(app, charly1to5);

await openMemberlist(page);
await openMemberlist(app);
await checkMemberList(page, charly1to5);
await joinCharliesWhileAliceIsOffline(page, app, charly6to10);
await checkMemberList(page, charly6to10);
8 changes: 4 additions & 4 deletions playwright/e2e/one-to-one-chat/one-to-one-chat.spec.ts
Original file line number Diff line number Diff line change
@@ -35,10 +35,10 @@ test.describe("1:1 chat room", () => {
await page.goto(`/#/user/${user2.userId}?action=chat`);
});

test("should open new 1:1 chat room after leaving the old one", async ({ page, user2 }) => {
test("should open new 1:1 chat room after leaving the old one", async ({ page, app, user2 }) => {
// leave 1:1 chat room
await page.locator(".mx_LegacyRoomHeader_nametext").getByText(user2.displayName).click();
await page.getByRole("menuitem", { name: "Leave" }).click();
await app.toggleRoomInfoPanel();
await page.getByRole("menuitem", { name: "Leave room" }).click();
await page.getByRole("button", { name: "Leave" }).click();

// wait till the room was left
@@ -49,6 +49,6 @@ test.describe("1:1 chat room", () => {

// open new 1:1 chat room
await page.goto(`/#/user/${user2.userId}?action=chat`);
await expect(page.locator(".mx_LegacyRoomHeader_nametext").getByText(user2.displayName)).toBeVisible();
await expect(page.locator(".mx_RoomHeader_heading").getByText(user2.displayName)).toBeVisible();
});
});
9 changes: 5 additions & 4 deletions playwright/e2e/polls/pollHistory.spec.ts
Original file line number Diff line number Diff line change
@@ -14,9 +14,9 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
import { test, expect } from "../../element-web-test";
import type { Page } from "@playwright/test";
import type { Bot } from "../../pages/bot";
import type { Client } from "../../pages/client";
import { ElementAppPage } from "../../pages/ElementAppPage";

test.describe("Poll history", () => {
type CreatePollOptions = {
@@ -66,8 +66,9 @@ test.describe("Poll history", () => {
});
};

async function openPollHistory(page: Page): Promise<void> {
await page.getByRole("button", { name: "Room info" }).click();
async function openPollHistory(app: ElementAppPage): Promise<void> {
const { page } = app;
await app.toggleRoomInfoPanel();
await page.locator(".mx_RoomSummaryCard").getByRole("menuitem", { name: "Poll history" }).click();
}

@@ -116,7 +117,7 @@ test.describe("Poll history", () => {
await botVoteForOption(bot, roomId, pollId2, pollParams1.options[1].id);
await endPoll(bot, roomId, pollId2);

await openPollHistory(page);
await openPollHistory(app);

// these polls are also in the timeline
// focus on the poll history dialog
2 changes: 1 addition & 1 deletion playwright/e2e/presence/presence.spec.ts
Original file line number Diff line number Diff line change
@@ -59,7 +59,7 @@ test.describe("Presence tests", () => {
);
await app.client.createRoom({}); // trigger sync

await page.getByRole("button", { name: "Room info" }).click();
await app.toggleRoomInfoPanel();
await page.locator(".mx_RightPanel").getByText("People").click();
await expect(page.locator(".mx_EntityTile_unreachable")).toContainText("Bob");
await expect(page.locator(".mx_EntityTile_unreachable")).toContainText("User's server unreachable");
13 changes: 6 additions & 7 deletions playwright/e2e/read-receipts/index.ts
Original file line number Diff line number Diff line change
@@ -402,15 +402,15 @@ class Helpers {
* Close the threads panel.
*/
async closeThreadsPanel() {
await this.page.locator(".mx_LegacyRoomHeader").getByLabel("Threads").click();
await this.page.locator(".mx_RoomHeader").getByLabel("Threads").click();
await expect(this.page.locator(".mx_RightPanel")).not.toBeVisible();
}

/**
* Return to the list of threads, given we are viewing a single thread.
*/
async backToThreadsList() {
await this.page.locator(".mx_LegacyRoomHeader").getByLabel("Threads").click();
await this.page.locator(".mx_RoomHeader").getByLabel("Threads").click();
}

/**
@@ -530,12 +530,11 @@ class Helpers {
// whether it's open or not - wait here to give it a chance to settle.
await this.page.waitForTimeout(200);

const ariaCurrent = await this.page.getByTestId("threadsButton").getAttribute("aria-current");
if (ariaCurrent !== "true") {
await this.page.getByTestId("threadsButton").click();
}

const threadPanel = this.page.locator(".mx_ThreadPanel");
const isThreadPanelOpen = (await threadPanel.count()) !== 0;
if (!isThreadPanelOpen) {
await this.page.locator(".mx_RoomHeader").getByLabel("Threads").click();
}
await expect(threadPanel).toBeVisible();
await threadPanel.evaluate(($panel) => {
const $button = $panel.querySelector<HTMLElement>('[data-testid="base-card-back-button"]');
Loading