changeset 112:77c8104d7053 default tip

add selectPost
author Franklin Schmidt <fschmidt@gmail.com>
date Thu, 13 Nov 2025 12:35:14 -0700
parents 37ab261aee7b
children
files src/chat.js src/index.html.luan
diffstat 2 files changed, 12 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/chat.js	Tue Sep 16 00:01:53 2025 -0600
+++ b/src/chat.js	Thu Nov 13 12:35:14 2025 -0700
@@ -432,7 +432,7 @@
 	let div = document.querySelector('div[reply]');
 	div.removeAttribute('hidden');
 	div.setAttribute('reply',postId);
-	document.querySelector('div[reply] div[text]').innerHTML = document.querySelector(`div[post="${postId}"] div[text]`).innerHTML
+	document.querySelector('div[reply] div[text]').innerHTML = document.querySelector(`div[post="${postId}"] div[text]`).innerHTML;
 	let a = document.querySelector('div[reply] a[when]');
 	a.href = `#p${postId}`;
 	a.textContent = document.querySelector(`div[post="${postId}"] span[when]`).textContent;
@@ -462,3 +462,13 @@
 	let dialog = document.querySelector('dialog[add]');
 	dialog.querySelector('span[error]').textContent = msg;
 }
+
+function selectPost(el) {
+	let postId = getPostId(el);
+	let div = document.querySelector(`div[post="${postId}"] div[text]`);
+	let range = document.createRange();
+	range.selectNodeContents(div);
+	let selection = window.getSelection();
+	selection.removeAllRanges();
+	selection.addRange(range);
+}
--- a/src/index.html.luan	Tue Sep 16 00:01:53 2025 -0600
+++ b/src/index.html.luan	Thu Nov 13 12:35:14 2025 -0700
@@ -64,6 +64,7 @@
 					<span onclick="editPost(this)">Edit</span>
 					<span onclick="replyPost(this)">Reply</span>
 					<span onclick="deletePost(this)">Delete</span>
+					<span onclick="selectPost(this)">Select</span>
 				</div>
 			</span>
 			<span pulldown=other>