diff --git a/SHiNE-bundle-20260829-180249.zip b/SHiNE-bundle-20260829-180249.zip new file mode 100644 index 00000000..193937b8 Binary files /dev/null and b/SHiNE-bundle-20260829-180249.zip differ diff --git a/VERSION.properties b/VERSION.properties index 9e157774..5ec5678a 100644 --- a/VERSION.properties +++ b/VERSION.properties @@ -1,2 +1,2 @@ -client.version=1.7.6 +client.version=1.7.7 server.version=1.6.2 diff --git a/shine-UI/styles/components.css b/shine-UI/styles/components.css index 3be47e4d..5a01aafb 100644 --- a/shine-UI/styles/components.css +++ b/shine-UI/styles/components.css @@ -10485,3 +10485,86 @@ body.chat-topbar-overlay .composer-slot { .channels-screen--list .channel-row-owner { display: none !important; } + +/* ===== Channel list alignment with Personal chats (2026-08-29) ===== */ +/* Match the Personal tab width model exactly: only the list itself grows beyond + * the content gutter, rather than widening several nested channel containers. */ +.channels-screen--list .channels-list-content, +.channels-screen--list .channels-groups { + width: 100% !important; + margin-left: 0 !important; + margin-right: 0 !important; +} +.channels-screen--list .stack:has(> .channel-row) { + width: calc(100% + 16px) !important; + margin-inline: -8px !important; + gap: 4px !important; +} + +/* Slightly taller than Personal (~12%) to comfortably fit title + technical id + * + last-message preview, while keeping the compact list rhythm. */ +.channels-screen--list .channel-row { + width: 100% !important; + min-height: 61px !important; + padding: 6px 7px 6px 5px !important; + grid-template-columns: 50px minmax(0, 1fr) !important; + gap: 8px !important; +} + +.channels-screen--list .channel-row-main { + display: grid !important; + align-content: center !important; + gap: 1px !important; + min-width: 0 !important; + overflow: hidden !important; +} + +/* Restore the compact technical channel id: owner login / channel name. */ +.channels-screen--list .channel-row-technical { + display: block !important; + min-width: 0 !important; + margin: 0 !important; + font-size: 10.5px !important; + line-height: 1.05 !important; + font-weight: 500 !important; + opacity: .72; + overflow: hidden !important; + text-overflow: ellipsis !important; + white-space: nowrap !important; +} + +/* Keep only the requested two supporting lines; description/counters stay out of + * the compact channel tile. */ +.channels-screen--list .channel-row-description, +.channels-screen--list .channel-row-owner { + display: none !important; +} + +/* Last message and its timestamp form one single line. The preview yields space + * to the timestamp and truncates with an ellipsis when necessary. */ +.channels-screen--list .channel-row-preview-line { + display: flex !important; + align-items: baseline !important; + width: 100% !important; + min-width: 0 !important; + gap: 7px !important; + margin: 0 !important; +} +.channels-screen--list .channel-row-preview-line .channel-row-message { + flex: 1 1 auto !important; + min-width: 0 !important; + margin: 0 !important; + font-size: 12px !important; + line-height: 1.1 !important; + overflow: hidden !important; + text-overflow: ellipsis !important; + white-space: nowrap !important; +} +.channels-screen--list .channel-row-preview-line .channel-row-time { + flex: 0 0 auto !important; + align-self: baseline !important; + margin: 0 !important; + font-size: 11px !important; + line-height: 1.1 !important; + white-space: nowrap !important; +}