{
	"issue": {
		"url": "https://api.github.com/repos/laurent22/joplin/issues/14831",
		"repository_url": "https://api.github.com/repos/laurent22/joplin",
		"labels_url": "https://api.github.com/repos/laurent22/joplin/issues/14831/labels{/name}",
		"comments_url": "https://api.github.com/repos/laurent22/joplin/issues/14831/comments",
		"events_url": "https://api.github.com/repos/laurent22/joplin/issues/14831/events",
		"html_url": "https://github.com/laurent22/joplin/pull/14831",
		"id": 4101081284,
		"node_id": "PR_kwDOBLftOs7L0sfd",
		"number": 14831,
		"title": "Desktop: Add search functionality to settings dialog",
		"user": {
			"login": "rachit23tech",
			"id": 179147574,
			"node_id": "U_kgDOCq2TNg",
			"avatar_url": "https://avatars.githubusercontent.com/u/179147574?v=4",
			"gravatar_id": "",
			"url": "https://api.github.com/users/rachit23tech",
			"html_url": "https://github.com/rachit23tech",
			"followers_url": "https://api.github.com/users/rachit23tech/followers",
			"following_url": "https://api.github.com/users/rachit23tech/following{/other_user}",
			"gists_url": "https://api.github.com/users/rachit23tech/gists{/gist_id}",
			"starred_url": "https://api.github.com/users/rachit23tech/starred{/owner}{/repo}",
			"subscriptions_url": "https://api.github.com/users/rachit23tech/subscriptions",
			"organizations_url": "https://api.github.com/users/rachit23tech/orgs",
			"repos_url": "https://api.github.com/users/rachit23tech/repos",
			"events_url": "https://api.github.com/users/rachit23tech/events{/privacy}",
			"received_events_url": "https://api.github.com/users/rachit23tech/received_events",
			"type": "User",
			"user_view_type": "public",
			"site_admin": false
		},
		"labels": [
			{
				"id": 519700743,
				"node_id": "MDU6TGFiZWw1MTk3MDA3NDM=",
				"url": "https://api.github.com/repos/laurent22/joplin/labels/enhancement",
				"name": "enhancement",
				"color": "5ebeff",
				"default": true,
				"description": "Feature requests and code enhancements"
			},
			{
				"id": 1079605111,
				"node_id": "MDU6TGFiZWwxMDc5NjA1MTEx",
				"url": "https://api.github.com/repos/laurent22/joplin/labels/mobile",
				"name": "mobile",
				"color": "ffc274",
				"default": false,
				"description": "All mobile platforms"
			},
			{
				"id": 1080341216,
				"node_id": "MDU6TGFiZWwxMDgwMzQxMjE2",
				"url": "https://api.github.com/repos/laurent22/joplin/labels/desktop",
				"name": "desktop",
				"color": "ffc274",
				"default": false,
				"description": "All desktop platforms"
			}
		],
		"state": "closed",
		"locked": false,
		"assignees": [],
		"milestone": null,
		"comments": 7,
		"created_at": "2026-03-19T11:33:20Z",
		"updated_at": "2026-04-02T16:51:41Z",
		"closed_at": "2026-04-02T15:22:15Z",
		"assignee": null,
		"author_association": "NONE",
		"active_lock_reason": null,
		"draft": false,
		"pull_request": {
			"url": "https://api.github.com/repos/laurent22/joplin/pulls/14831",
			"html_url": "https://github.com/laurent22/joplin/pull/14831",
			"diff_url": "https://github.com/laurent22/joplin/pull/14831.diff",
			"patch_url": "https://github.com/laurent22/joplin/pull/14831.patch",
			"merged_at": null
		},
		"body": "## Problem\r\n\r\nThe current settings dialog in Joplin does not provide a way to quickly locate specific options. Users have to manually browse through multiple sections, which becomes inefficient as the number of settings grows.\r\n\r\n---\r\n\r\n## Solution\r\n\r\nThis PR adds a search functionality to the settings dialog (`ConfigScreen.tsx`).\r\nIt allows users to filter and locate settings based on their input.\r\n\r\nKey features:\r\n\r\n* Real-time filtering of settings\r\n* Matches based on setting titles and descriptions\r\n* Improves accessibility and navigation within settings\r\n\r\n---\r\n\r\n## Test Plan\r\n\r\n1. Open the Joplin desktop app\r\n2. Navigate to the Settings dialog\r\n3. Enter text in the search bar\r\n4. Verify that:\r\n\r\n   * Relevant settings are filtered correctly\r\n   * Non-matching settings are hidden\r\n   * Clearing the search restores all settings\r\n",
		"closed_by": {
			"login": "laurent22",
			"id": 1285584,
			"node_id": "MDQ6VXNlcjEyODU1ODQ=",
			"avatar_url": "https://avatars.githubusercontent.com/u/1285584?v=4",
			"gravatar_id": "",
			"url": "https://api.github.com/users/laurent22",
			"html_url": "https://github.com/laurent22",
			"followers_url": "https://api.github.com/users/laurent22/followers",
			"following_url": "https://api.github.com/users/laurent22/following{/other_user}",
			"gists_url": "https://api.github.com/users/laurent22/gists{/gist_id}",
			"starred_url": "https://api.github.com/users/laurent22/starred{/owner}{/repo}",
			"subscriptions_url": "https://api.github.com/users/laurent22/subscriptions",
			"organizations_url": "https://api.github.com/users/laurent22/orgs",
			"repos_url": "https://api.github.com/users/laurent22/repos",
			"events_url": "https://api.github.com/users/laurent22/events{/privacy}",
			"received_events_url": "https://api.github.com/users/laurent22/received_events",
			"type": "User",
			"user_view_type": "public",
			"site_admin": false
		},
		"reactions": {
			"url": "https://api.github.com/repos/laurent22/joplin/issues/14831/reactions",
			"total_count": 0,
			"+1": 0,
			"-1": 0,
			"laugh": 0,
			"hooray": 0,
			"confused": 0,
			"heart": 0,
			"rocket": 0,
			"eyes": 0
		},
		"timeline_url": "https://api.github.com/repos/laurent22/joplin/issues/14831/timeline",
		"performed_via_github_app": null,
		"state_reason": null
	},
	"comments": [
		{
			"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4089504660",
			"html_url": "https://github.com/laurent22/joplin/pull/14831#issuecomment-4089504660",
			"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/14831",
			"id": 4089504660,
			"node_id": "IC_kwDOBLftOs7zwOOU",
			"user": {
				"login": "github-actions[bot]",
				"id": 41898282,
				"node_id": "MDM6Qm90NDE4OTgyODI=",
				"avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4",
				"gravatar_id": "",
				"url": "https://api.github.com/users/github-actions%5Bbot%5D",
				"html_url": "https://github.com/apps/github-actions",
				"followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers",
				"following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}",
				"gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}",
				"starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}",
				"subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions",
				"organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs",
				"repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos",
				"events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}",
				"received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events",
				"type": "Bot",
				"user_view_type": "public",
				"site_admin": false
			},
			"created_at": "2026-03-19T11:33:30Z",
			"updated_at": "2026-04-02T16:51:41Z",
			"body": "****CLA Assistant Lite bot**** All contributors have signed the CLA  ✍️ ✅",
			"author_association": "CONTRIBUTOR",
			"reactions": {
				"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4089504660/reactions",
				"total_count": 0,
				"+1": 0,
				"-1": 0,
				"laugh": 0,
				"hooray": 0,
				"confused": 0,
				"heart": 0,
				"rocket": 0,
				"eyes": 0
			},
			"performed_via_github_app": {
				"id": 15368,
				"client_id": "Iv1.05c79e9ad1f6bdfa",
				"slug": "github-actions",
				"node_id": "MDM6QXBwMTUzNjg=",
				"owner": {
					"login": "github",
					"id": 9919,
					"node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=",
					"avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4",
					"gravatar_id": "",
					"url": "https://api.github.com/users/github",
					"html_url": "https://github.com/github",
					"followers_url": "https://api.github.com/users/github/followers",
					"following_url": "https://api.github.com/users/github/following{/other_user}",
					"gists_url": "https://api.github.com/users/github/gists{/gist_id}",
					"starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}",
					"subscriptions_url": "https://api.github.com/users/github/subscriptions",
					"organizations_url": "https://api.github.com/users/github/orgs",
					"repos_url": "https://api.github.com/users/github/repos",
					"events_url": "https://api.github.com/users/github/events{/privacy}",
					"received_events_url": "https://api.github.com/users/github/received_events",
					"type": "Organization",
					"user_view_type": "public",
					"site_admin": false
				},
				"name": "GitHub Actions",
				"description": "Automate your workflow from idea to production",
				"external_url": "https://help.github.com/en/actions",
				"html_url": "https://github.com/apps/github-actions",
				"created_at": "2018-07-30T09:30:17Z",
				"updated_at": "2026-05-05T14:51:38Z",
				"permissions": {
					"actions": "write",
					"administration": "read",
					"artifact_metadata": "write",
					"attestations": "write",
					"checks": "write",
					"code_quality": "write",
					"contents": "write",
					"copilot_requests": "write",
					"deployments": "write",
					"discussions": "write",
					"issues": "write",
					"merge_queues": "write",
					"metadata": "read",
					"models": "read",
					"packages": "write",
					"pages": "write",
					"pull_requests": "write",
					"repository_hooks": "write",
					"repository_projects": "write",
					"security_events": "write",
					"statuses": "write",
					"vulnerability_alerts": "read"
				},
				"events": [
					"branch_protection_rule",
					"check_run",
					"check_suite",
					"create",
					"delete",
					"deployment",
					"deployment_status",
					"discussion",
					"discussion_comment",
					"fork",
					"gollum",
					"issues",
					"issue_comment",
					"label",
					"merge_group",
					"milestone",
					"page_build",
					"public",
					"pull_request",
					"pull_request_review",
					"pull_request_review_comment",
					"push",
					"registry_package",
					"release",
					"repository",
					"repository_dispatch",
					"status",
					"watch",
					"workflow_dispatch",
					"workflow_run"
				]
			}
		},
		{
			"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4089506278",
			"html_url": "https://github.com/laurent22/joplin/pull/14831#issuecomment-4089506278",
			"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/14831",
			"id": 4089506278,
			"node_id": "IC_kwDOBLftOs7zwOnm",
			"user": {
				"login": "coderabbitai[bot]",
				"id": 136622811,
				"node_id": "BOT_kgDOCCSy2w",
				"avatar_url": "https://avatars.githubusercontent.com/in/347564?v=4",
				"gravatar_id": "",
				"url": "https://api.github.com/users/coderabbitai%5Bbot%5D",
				"html_url": "https://github.com/apps/coderabbitai",
				"followers_url": "https://api.github.com/users/coderabbitai%5Bbot%5D/followers",
				"following_url": "https://api.github.com/users/coderabbitai%5Bbot%5D/following{/other_user}",
				"gists_url": "https://api.github.com/users/coderabbitai%5Bbot%5D/gists{/gist_id}",
				"starred_url": "https://api.github.com/users/coderabbitai%5Bbot%5D/starred{/owner}{/repo}",
				"subscriptions_url": "https://api.github.com/users/coderabbitai%5Bbot%5D/subscriptions",
				"organizations_url": "https://api.github.com/users/coderabbitai%5Bbot%5D/orgs",
				"repos_url": "https://api.github.com/users/coderabbitai%5Bbot%5D/repos",
				"events_url": "https://api.github.com/users/coderabbitai%5Bbot%5D/events{/privacy}",
				"received_events_url": "https://api.github.com/users/coderabbitai%5Bbot%5D/received_events",
				"type": "Bot",
				"user_view_type": "public",
				"site_admin": false
			},
			"created_at": "2026-03-19T11:33:46Z",
			"updated_at": "2026-03-23T09:15:06Z",
			"body": "<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\n<!-- This is an auto-generated comment: review paused by coderabbit.ai -->\n\n> [!NOTE]\n> ## Reviews paused\n> \n> It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the `reviews.auto_review.auto_pause_after_reviewed_commits` setting.\n> \n> Use the following commands to manage reviews:\n> - `@coderabbitai resume` to resume automatic reviews.\n> - `@coderabbitai review` to trigger a single review.\n> \n> Use the checkboxes below for quick actions:\n> - [ ] <!-- {\"checkboxId\": \"7f6cc2e2-2e4e-497a-8c31-c9e4573e93d1\"} --> ▶️ Resume reviews\n> - [ ] <!-- {\"checkboxId\": \"e9bb8d72-00e8-4f67-9cb2-caf3b22574fe\"} --> 🔍 Trigger review\n\n<!-- end of auto-generated comment: review paused by coderabbit.ai -->\n<!-- walkthrough_start -->\n\n<details>\n<summary>📝 Walkthrough</summary>\n\n## Walkthrough\n\nAdds a case-insensitive search input (regular settings view only) and filtering to the desktop ConfigScreen, restructures its layout, updates mobile plugin renderer to set missing SVG viewBox from width/height, and refreshes mobile plugin asset manifest hashes and ordering.\n\n## Changes\n\n|Cohort / File(s)|Summary|\n|---|---|\n|**Desktop Settings Search** <br> `packages/app-desktop/gui/ConfigScreen/ConfigScreen.tsx`|Added `searchTerm` state (initialised and reset on section switch), inserted a search input bound to `searchTerm` with `aria-label` and `tabIndex={-1}` (renders only for regular settings view), applied case-insensitive filtering when creating setting components, and changed outer layout to a column that contains an inner row for Sidebar + right pane.|\n|**Mobile Plugin Renderer** <br> `packages/app-mobile/pluginAssets/abc/abc_render.js.base64.js`|Renderer now iterates all `svg` elements, parses `width`/`height` as numbers and sets `viewBox=\"0 0 {w} {h}\"` when both dimensions are finite and no `viewBox` exists.|\n|**Mobile Asset Manifests** <br> `packages/app-mobile/pluginAssets/index.js`, `packages/app-mobile/pluginAssets/index.web.js`|Updated exported manifest `hash` to `569e6ae326fd1f3b30ee88e9b4f525b2` and reordered the assets so `abc/abc_render.js` is moved within the listing; the file entry content remains unchanged.|\n\n## Possibly related PRs\n\n- laurent22/joplin#14677 — Also touches `packages/app-desktop/gui/ConfigScreen/ConfigScreen.tsx`; related to section-switch behaviour and unsaved-changes handling.\n\n## Suggested labels\n\n`desktop`, `enhancement`, `mobile`\n\n</details>\n\n<!-- walkthrough_end -->\n\n<!-- pre_merge_checks_walkthrough_start -->\n\n<details>\n<summary>🚥 Pre-merge checks | ✅ 4</summary>\n\n<details>\n<summary>✅ Passed checks (4 passed)</summary>\n\n|               Check name              | Status   | Explanation                                                                                                                                                                                                   |\n| :-----------------------------------: | :------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n|              Title check              | ✅ Passed | The title accurately summarises the main change: adding search functionality to the settings dialog, which aligns with the primary modification in ConfigScreen.tsx.                                          |\n|           Description check           | ✅ Passed | The description is directly related to the changeset, detailing the problem, solution, and features of the search functionality added to the settings dialog.                                                 |\n|           Docstring Coverage          | ✅ Passed | No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.                                                                                                    |\n| Pr Description Must Follow Guidelines | ✅ Passed | The PR description comprehensively includes all three mandatory sections: problem statement describing user-impact, high-level solution explanation, and detailed test plan with concrete verification steps. |\n\n</details>\n\n<sub>✏️ Tip: You can configure your own custom pre-merge checks in the settings.</sub>\n\n</details>\n\n<!-- pre_merge_checks_walkthrough_end -->\n\n<!-- finishing_touch_checkbox_start -->\n\n<details>\n<summary>✨ Finishing Touches</summary>\n\n<details>\n<summary>🧪 Generate unit tests (beta)</summary>\n\n- [ ] <!-- {\"checkboxId\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\", \"radioGroupId\": \"utg-output-choice-group-unknown_comment_id\"} -->   Create PR with unit tests\n\n</details>\n\n</details>\n\n<!-- finishing_touch_checkbox_end -->\n\n<!-- tips_start -->\n\n---\n\nThanks for using [CodeRabbit](https://coderabbit.ai?utm_source=oss&utm_medium=github&utm_campaign=laurent22/joplin&utm_content=14831)! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.\n\n<details>\n<summary>❤️ Share</summary>\n\n- [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai)\n- [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai)\n- [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai)\n- [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)\n\n</details>\n\n<sub>Comment `@coderabbitai help` to get the list of available commands and usage tips.</sub>\n\n<!-- tips_end -->\n\n<!-- internal state start -->\n\n\n<!-- [encoded data, 7692 characters] -->\n\n<!-- internal state end -->",
			"author_association": "CONTRIBUTOR",
			"reactions": {
				"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4089506278/reactions",
				"total_count": 0,
				"+1": 0,
				"-1": 0,
				"laugh": 0,
				"hooray": 0,
				"confused": 0,
				"heart": 0,
				"rocket": 0,
				"eyes": 0
			},
			"performed_via_github_app": {
				"id": 347564,
				"client_id": "Iv1.6aaafe4fe882736b",
				"slug": "coderabbitai",
				"node_id": "A_kwHOB96YWc4ABU2s",
				"owner": {
					"login": "coderabbitai",
					"id": 132028505,
					"node_id": "O_kgDOB96YWQ",
					"avatar_url": "https://avatars.githubusercontent.com/u/132028505?v=4",
					"gravatar_id": "",
					"url": "https://api.github.com/users/coderabbitai",
					"html_url": "https://github.com/coderabbitai",
					"followers_url": "https://api.github.com/users/coderabbitai/followers",
					"following_url": "https://api.github.com/users/coderabbitai/following{/other_user}",
					"gists_url": "https://api.github.com/users/coderabbitai/gists{/gist_id}",
					"starred_url": "https://api.github.com/users/coderabbitai/starred{/owner}{/repo}",
					"subscriptions_url": "https://api.github.com/users/coderabbitai/subscriptions",
					"organizations_url": "https://api.github.com/users/coderabbitai/orgs",
					"repos_url": "https://api.github.com/users/coderabbitai/repos",
					"events_url": "https://api.github.com/users/coderabbitai/events{/privacy}",
					"received_events_url": "https://api.github.com/users/coderabbitai/received_events",
					"type": "Organization",
					"user_view_type": "public",
					"site_admin": false
				},
				"name": "coderabbitai",
				"description": "# Transforming Code Reviews with AI\r\n\r\n## Features\r\n\r\n**Automated Reviews**: Continuous reviews of the pull requests including incremental commits. \r\n\r\n**Summarization**: Generates high-level summary and a technical walkthrough of the PR changes. \r\n\r\n**Line-by-line review**: Provides line-by-line suggestions committable with one click.\r\n\r\n**Codebase verification**:  Verifies the impact on the overall codebase and identifies missing changes.\r\n\r\n**Insights into your code**:  Ask any questions on your codebase within the pull request \r\n\r\n**Chat about your code** : Chat with the bot around your code. The more you chat, the smarter it gets.\r\n\r\n**Issue Validation**:  Validates the PR against the linked issues and identifies other related issues \r\n\r\n\r\n\r\n",
				"external_url": "https://coderabbit.ai?utm_source=cr_app&utm_medium=github",
				"html_url": "https://github.com/apps/coderabbitai",
				"created_at": "2023-06-14T15:47:27Z",
				"updated_at": "2026-03-14T07:58:44Z",
				"permissions": {
					"actions": "read",
					"checks": "write",
					"contents": "write",
					"discussions": "read",
					"issues": "write",
					"members": "read",
					"metadata": "read",
					"pull_requests": "write",
					"statuses": "write"
				},
				"events": [
					"issues",
					"issue_comment",
					"label",
					"organization",
					"pull_request",
					"pull_request_review",
					"pull_request_review_comment",
					"pull_request_review_thread",
					"release",
					"repository"
				]
			}
		},
		{
			"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4089515029",
			"html_url": "https://github.com/laurent22/joplin/pull/14831#issuecomment-4089515029",
			"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/14831",
			"id": 4089515029,
			"node_id": "IC_kwDOBLftOs7zwQwV",
			"user": {
				"login": "rachit23tech",
				"id": 179147574,
				"node_id": "U_kgDOCq2TNg",
				"avatar_url": "https://avatars.githubusercontent.com/u/179147574?v=4",
				"gravatar_id": "",
				"url": "https://api.github.com/users/rachit23tech",
				"html_url": "https://github.com/rachit23tech",
				"followers_url": "https://api.github.com/users/rachit23tech/followers",
				"following_url": "https://api.github.com/users/rachit23tech/following{/other_user}",
				"gists_url": "https://api.github.com/users/rachit23tech/gists{/gist_id}",
				"starred_url": "https://api.github.com/users/rachit23tech/starred{/owner}{/repo}",
				"subscriptions_url": "https://api.github.com/users/rachit23tech/subscriptions",
				"organizations_url": "https://api.github.com/users/rachit23tech/orgs",
				"repos_url": "https://api.github.com/users/rachit23tech/repos",
				"events_url": "https://api.github.com/users/rachit23tech/events{/privacy}",
				"received_events_url": "https://api.github.com/users/rachit23tech/received_events",
				"type": "User",
				"user_view_type": "public",
				"site_admin": false
			},
			"created_at": "2026-03-19T11:35:21Z",
			"updated_at": "2026-03-19T11:35:21Z",
			"body": "I have read the CLA Document and I hereby sign the CLA\r\n\r\n",
			"author_association": "NONE",
			"reactions": {
				"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4089515029/reactions",
				"total_count": 0,
				"+1": 0,
				"-1": 0,
				"laugh": 0,
				"hooray": 0,
				"confused": 0,
				"heart": 0,
				"rocket": 0,
				"eyes": 0
			},
			"performed_via_github_app": null
		},
		{
			"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4091356515",
			"html_url": "https://github.com/laurent22/joplin/pull/14831#issuecomment-4091356515",
			"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/14831",
			"id": 4091356515,
			"node_id": "IC_kwDOBLftOs7z3SVj",
			"user": {
				"login": "personalizedrefrigerator",
				"id": 46334387,
				"node_id": "MDQ6VXNlcjQ2MzM0Mzg3",
				"avatar_url": "https://avatars.githubusercontent.com/u/46334387?v=4",
				"gravatar_id": "",
				"url": "https://api.github.com/users/personalizedrefrigerator",
				"html_url": "https://github.com/personalizedrefrigerator",
				"followers_url": "https://api.github.com/users/personalizedrefrigerator/followers",
				"following_url": "https://api.github.com/users/personalizedrefrigerator/following{/other_user}",
				"gists_url": "https://api.github.com/users/personalizedrefrigerator/gists{/gist_id}",
				"starred_url": "https://api.github.com/users/personalizedrefrigerator/starred{/owner}{/repo}",
				"subscriptions_url": "https://api.github.com/users/personalizedrefrigerator/subscriptions",
				"organizations_url": "https://api.github.com/users/personalizedrefrigerator/orgs",
				"repos_url": "https://api.github.com/users/personalizedrefrigerator/repos",
				"events_url": "https://api.github.com/users/personalizedrefrigerator/events{/privacy}",
				"received_events_url": "https://api.github.com/users/personalizedrefrigerator/received_events",
				"type": "User",
				"user_view_type": "public",
				"site_admin": false
			},
			"created_at": "2026-03-19T16:12:08Z",
			"updated_at": "2026-03-19T16:12:08Z",
			"body": "> Test Plan\r\n\r\n\r\nThis is a large UI change. As such, it would be helpful to have:\r\n- A screen recording.\r\n- Information about how this impacts accessibility. For example, the testing plan could include a section on screen reader-based testing (see [Joplin: Testing with a screen reader](https://joplinapp.org/help/dev/accessibility#testing-with-a-screen-reader)).\r\n\r\nAlso, be sure to [follow the AI policy](https://github.com/joplin/gsoc/blob/master/ai_policy.md).\r\n\r\n(Thank you for working on this!)",
			"author_association": "COLLABORATOR",
			"reactions": {
				"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4091356515/reactions",
				"total_count": 0,
				"+1": 0,
				"-1": 0,
				"laugh": 0,
				"hooray": 0,
				"confused": 0,
				"heart": 0,
				"rocket": 0,
				"eyes": 0
			},
			"performed_via_github_app": null
		},
		{
			"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4091666149",
			"html_url": "https://github.com/laurent22/joplin/pull/14831#issuecomment-4091666149",
			"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/14831",
			"id": 4091666149,
			"node_id": "IC_kwDOBLftOs7z4d7l",
			"user": {
				"login": "personalizedrefrigerator",
				"id": 46334387,
				"node_id": "MDQ6VXNlcjQ2MzM0Mzg3",
				"avatar_url": "https://avatars.githubusercontent.com/u/46334387?v=4",
				"gravatar_id": "",
				"url": "https://api.github.com/users/personalizedrefrigerator",
				"html_url": "https://github.com/personalizedrefrigerator",
				"followers_url": "https://api.github.com/users/personalizedrefrigerator/followers",
				"following_url": "https://api.github.com/users/personalizedrefrigerator/following{/other_user}",
				"gists_url": "https://api.github.com/users/personalizedrefrigerator/gists{/gist_id}",
				"starred_url": "https://api.github.com/users/personalizedrefrigerator/starred{/owner}{/repo}",
				"subscriptions_url": "https://api.github.com/users/personalizedrefrigerator/subscriptions",
				"organizations_url": "https://api.github.com/users/personalizedrefrigerator/orgs",
				"repos_url": "https://api.github.com/users/personalizedrefrigerator/repos",
				"events_url": "https://api.github.com/users/personalizedrefrigerator/events{/privacy}",
				"received_events_url": "https://api.github.com/users/personalizedrefrigerator/received_events",
				"type": "User",
				"user_view_type": "public",
				"site_admin": false
			},
			"created_at": "2026-03-19T16:55:50Z",
			"updated_at": "2026-03-19T16:55:50Z",
			"body": "I've enabled a [test](https://github.com/laurent22/joplin/commit/c16eb16af4ce94f4c8fef528aa99c17fd18fe78b) that should help auto-detect certain accessibility issues. I'm merging recent changes from `dev` into this pull request so that the test runs in CI.",
			"author_association": "COLLABORATOR",
			"reactions": {
				"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4091666149/reactions",
				"total_count": 0,
				"+1": 0,
				"-1": 0,
				"laugh": 0,
				"hooray": 0,
				"confused": 0,
				"heart": 0,
				"rocket": 0,
				"eyes": 0
			},
			"performed_via_github_app": null
		},
		{
			"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4092506219",
			"html_url": "https://github.com/laurent22/joplin/pull/14831#issuecomment-4092506219",
			"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/14831",
			"id": 4092506219,
			"node_id": "IC_kwDOBLftOs7z7rBr",
			"user": {
				"login": "rachit23tech",
				"id": 179147574,
				"node_id": "U_kgDOCq2TNg",
				"avatar_url": "https://avatars.githubusercontent.com/u/179147574?v=4",
				"gravatar_id": "",
				"url": "https://api.github.com/users/rachit23tech",
				"html_url": "https://github.com/rachit23tech",
				"followers_url": "https://api.github.com/users/rachit23tech/followers",
				"following_url": "https://api.github.com/users/rachit23tech/following{/other_user}",
				"gists_url": "https://api.github.com/users/rachit23tech/gists{/gist_id}",
				"starred_url": "https://api.github.com/users/rachit23tech/starred{/owner}{/repo}",
				"subscriptions_url": "https://api.github.com/users/rachit23tech/subscriptions",
				"organizations_url": "https://api.github.com/users/rachit23tech/orgs",
				"repos_url": "https://api.github.com/users/rachit23tech/repos",
				"events_url": "https://api.github.com/users/rachit23tech/events{/privacy}",
				"received_events_url": "https://api.github.com/users/rachit23tech/received_events",
				"type": "User",
				"user_view_type": "public",
				"site_admin": false
			},
			"created_at": "2026-03-19T18:46:52Z",
			"updated_at": "2026-03-19T18:46:52Z",
			"body": "## Test Plan\r\n\r\n### Screen Recordings\r\n\r\n**Normal Testing of the Search Bar in Settings:**\r\nhttps://github.com/user-attachments/assets/ce911f7e-dba9-490c-a823-3a922640b561\r\n\r\n**Testing of Search Bar in Settings with Screen Reader (Windows Narrator) On:**\r\nhttps://github.com/user-attachments/assets/01e7f7b8-db54-4288-8a65-5e5f3bef5448\r\n\r\n### Manual Testing\r\n- Opened Settings and verified search bar appears at the top\r\n- Typed in search box and confirmed settings filter in real time\r\n- Cleared search and confirmed all settings return\r\n- Switching sidebar sections resets the search term correctly\r\n- Tested on light and dark themes — styling adapts correctly\r\n\r\n### Accessibility\r\n- Tested with Windows Narrator — announces \"Search settings\" correctly when focused\r\n- TabIndex={-1} ensures the input does not interfere with arrow key \r\n  navigation between tab panels\r\n\r\n### AI Policy\r\nI confirm this PR was written by me. AI tools were used only for \r\ndebugging assistance, not to generate the core implementation.",
			"author_association": "NONE",
			"reactions": {
				"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4092506219/reactions",
				"total_count": 0,
				"+1": 0,
				"-1": 0,
				"laugh": 0,
				"hooray": 0,
				"confused": 0,
				"heart": 0,
				"rocket": 0,
				"eyes": 0
			},
			"performed_via_github_app": null
		},
		{
			"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4178653836",
			"html_url": "https://github.com/laurent22/joplin/pull/14831#issuecomment-4178653836",
			"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/14831",
			"id": 4178653836,
			"node_id": "IC_kwDOBLftOs75ETKM",
			"user": {
				"login": "laurent22",
				"id": 1285584,
				"node_id": "MDQ6VXNlcjEyODU1ODQ=",
				"avatar_url": "https://avatars.githubusercontent.com/u/1285584?v=4",
				"gravatar_id": "",
				"url": "https://api.github.com/users/laurent22",
				"html_url": "https://github.com/laurent22",
				"followers_url": "https://api.github.com/users/laurent22/followers",
				"following_url": "https://api.github.com/users/laurent22/following{/other_user}",
				"gists_url": "https://api.github.com/users/laurent22/gists{/gist_id}",
				"starred_url": "https://api.github.com/users/laurent22/starred{/owner}{/repo}",
				"subscriptions_url": "https://api.github.com/users/laurent22/subscriptions",
				"organizations_url": "https://api.github.com/users/laurent22/orgs",
				"repos_url": "https://api.github.com/users/laurent22/repos",
				"events_url": "https://api.github.com/users/laurent22/events{/privacy}",
				"received_events_url": "https://api.github.com/users/laurent22/received_events",
				"type": "User",
				"user_view_type": "public",
				"site_admin": false
			},
			"created_at": "2026-04-02T15:22:15Z",
			"updated_at": "2026-04-02T15:22:15Z",
			"body": "Hello, unfortunately we no longer need this pull request as there's a duplicate here, that we will probably merge instead: https://github.com/laurent22/joplin/pull/14820",
			"author_association": "OWNER",
			"reactions": {
				"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/4178653836/reactions",
				"total_count": 0,
				"+1": 0,
				"-1": 0,
				"laugh": 0,
				"hooray": 0,
				"confused": 0,
				"heart": 0,
				"rocket": 0,
				"eyes": 0
			},
			"performed_via_github_app": null
		}
	]
}