From fdfaa410e1b6ac5ec787efdf83c17d6c9e38d87e Mon Sep 17 00:00:00 2001
From: DCoded <dicoded@email.com>
Date: Tue, 12 Oct 2021 15:39:40 -0400
Subject: [PATCH] Prevent spans from breaking line and giving unusable tooltip

---
 src/interaction/siRecords.js        | 18 ++++++++++++------
 src/player/managePersonalAffairs.js | 18 ++++++++++++------
 2 files changed, 24 insertions(+), 12 deletions(-)

diff --git a/src/interaction/siRecords.js b/src/interaction/siRecords.js
index 10897c4f0cc..707849bcb38 100644
--- a/src/interaction/siRecords.js
+++ b/src/interaction/siRecords.js
@@ -199,30 +199,36 @@ App.UI.SlaveInteract.records = function(slave, refresh) {
 		const ownedSlavesSpan = document.createElement("span");
 
 		for (let i = 0; i < ownedSlaves.length; i++) {
+			const innerSpan = document.createElement("span");
 			const slave = getSlave(ownedSlaves[i]);
 
+			innerSpan.style.display = 'inline-block';	// hack to prevent span breaking line and giving unusable tooltip
+			innerSpan.style.marginRight = '4px';
+
 			if (ownedSlaves.length > 1) {
 				if (i === ownedSlaves.length - 1) {
-					ownedSlavesSpan.append(` and `, App.UI.DOM.referenceSlaveWithPreview(slave, SlaveFullName(slave)));
+					innerSpan.append(` and `, App.UI.DOM.referenceSlaveWithPreview(slave, SlaveFullName(slave)));
 
 					if (unownedSlaves > 0) {
-						ownedSlavesSpan.append(`, as well as ${numberWithPlural(unownedSlaves, 'slave')} you don't currently own`);
+						innerSpan.append(`, as well as ${numberWithPlural(unownedSlaves, 'slave')} you don't currently own`);
 					}
 
-					ownedSlavesSpan.append(`.`);
+					innerSpan.append(`.`);
 				} else {
-					ownedSlavesSpan.append(App.UI.DOM.referenceSlaveWithPreview(slave, SlaveFullName(slave)));
+					innerSpan.append(App.UI.DOM.referenceSlaveWithPreview(slave, SlaveFullName(slave)));
 
 					if (ownedSlaves.length > 2) {
-						ownedSlavesSpan.append(`, `);
+						innerSpan.append(`, `);
 					}
 				}
 			} else {
-				ownedSlavesSpan.append(
+				innerSpan.append(
 					App.UI.DOM.referenceSlaveWithPreview(slave, SlaveFullName(slave)),
 					`.`,
 				);
 			}
+
+			ownedSlavesSpan.append(innerSpan);
 		}
 
 		if (slave.partners.has(-1)) {
diff --git a/src/player/managePersonalAffairs.js b/src/player/managePersonalAffairs.js
index d21bb58feee..1dfecc86216 100644
--- a/src/player/managePersonalAffairs.js
+++ b/src/player/managePersonalAffairs.js
@@ -678,33 +678,39 @@ App.UI.managePersonalAffairs = function() {
 			const ownedSlavesSpan = document.createElement("span");
 
 			for (let i = 0; i < ownedSlaves.length; i++) {
+				const innerSpan = document.createElement("span");
 				const slave = getSlave(ownedSlaves[i]);
 
+				innerSpan.style.display = 'inline-block';	// hack to prevent span breaking line and giving unusable tooltip
+				innerSpan.style.marginRight = '4px';
+
 				if (ownedSlaves.length > 1) {
 					if (i === ownedSlaves.length - 1) {
-						ownedSlavesSpan.append(
+						innerSpan.append(
 							` and `,
 							App.UI.DOM.referenceSlaveWithPreview(slave, SlaveFullName(slave)),
 						);
 
 						if (unownedSlaves > 0) {
-							ownedSlavesSpan.append(`, as well as ${numberWithPlural(unownedSlaves, 'slave')} you don't currently own`);
+							innerSpan.append(`, as well as ${numberWithPlural(unownedSlaves, 'slave')} you don't currently own`);
 						}
 
-						ownedSlavesSpan.append(`.`);
+						innerSpan.append(`.`);
 					} else {
-						ownedSlavesSpan.append(App.UI.DOM.referenceSlaveWithPreview(slave, SlaveFullName(slave)));
+						innerSpan.append(App.UI.DOM.referenceSlaveWithPreview(slave, SlaveFullName(slave)));
 
 						if (ownedSlaves.length > 2) {
-							ownedSlavesSpan.append(`, `);
+							innerSpan.append(`, `);
 						}
 					}
 				} else {
-					ownedSlavesSpan.append(
+					innerSpan.append(
 						App.UI.DOM.referenceSlaveWithPreview(slave, SlaveFullName(slave)),
 						`.`,
 					);
 				}
+
+				ownedSlavesSpan.append(innerSpan);
 			}
 
 			if (PC.partners.has(-2)) {
-- 
GitLab