From 320822f4904071192b0612eac76e878dbf25bf54 Mon Sep 17 00:00:00 2001 From: yougotwill Date: Tue, 13 Aug 2024 17:20:23 +1000 Subject: [PATCH 1/4] fix: dont show environment in about in prod --- ts/components/AboutView.tsx | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/ts/components/AboutView.tsx b/ts/components/AboutView.tsx index 751e460a14..321ddecb8b 100644 --- a/ts/components/AboutView.tsx +++ b/ts/components/AboutView.tsx @@ -40,13 +40,14 @@ const StyledContent = styled(Flex)` export const AboutView = () => { // Add debugging metadata - environment if not production, app instance name - const states = []; + const environmentStates = []; if (window.getEnvironment() !== 'production') { - states.push(window.getEnvironment()); + environmentStates.push(window.getEnvironment()); } + if (window.getAppInstance()) { - states.push(window.getAppInstance()); + environmentStates.push(window.getAppInstance()); } const versionInfo = `v${window.getVersion()}`; @@ -63,7 +64,7 @@ export const AboutView = () => { }, []); return ( - + { width={192} height={26} /> - { buttonType={SessionButtonType.Simple} /> - + {environmentStates.length ? ( + + ) : null} https://getsession.org
From 3ad305f451119ada3831e4cbd351026a6ed04dc6 Mon Sep 17 00:00:00 2001 From: yougotwill Date: Tue, 13 Aug 2024 17:21:18 +1000 Subject: [PATCH 2/4] feat: added copy button to debug window --- ts/components/DebugLogView.tsx | 20 +++++++++++++++++--- ts/themes/SessionTheme.tsx | 13 +++++++++++-- 2 files changed, 28 insertions(+), 5 deletions(-) diff --git a/ts/components/DebugLogView.tsx b/ts/components/DebugLogView.tsx index 930414d597..88f5609780 100644 --- a/ts/components/DebugLogView.tsx +++ b/ts/components/DebugLogView.tsx @@ -5,6 +5,8 @@ import { switchThemeTo } from '../themes/switchTheme'; import { fetchNodeLog } from '../util/logging'; import { SessionButton, SessionButtonType } from './basic/SessionButton'; import { SessionIconButton } from './icon'; +import { CopyToClipboardButton } from './buttons'; +import { Flex } from './basic/Flex'; const StyledContent = styled.div` background-color: var(--modal-background-content-color); @@ -54,7 +56,14 @@ const DebugLogTextArea = (props: { content: string }) => { const DebugLogButtons = (props: { content: string }) => { return ( -
+ { (window as any).saveLog(props.content); }} /> -
+ + ); }; @@ -107,7 +121,7 @@ export const DebugLogView = () => { }, []); return ( - +
{ } }; -export const SessionTheme = ({ children }: { children: ReactNode }) => { +export const SessionTheme = ({ + children, + runSetup = true, +}: { + children: ReactNode; + /** If we don't have access to some window functions or Storage yet we might not want to run the theme setup */ + runSetup?: boolean; +}) => { useMount(() => { setThemeValues(THEME_GLOBALS); - void setupTheme(); + if (runSetup) { + void setupTheme(); + } }); return children; }; From c378aba9600e9f2486587baac898e281fc926032 Mon Sep 17 00:00:00 2001 From: yougotwill Date: Wed, 14 Aug 2024 14:09:30 +1000 Subject: [PATCH 3/4] fix: run setupTheme after Storage is ready --- images/session/session_icon.png | Bin 22645 -> 25670 bytes ts/components/AboutView.tsx | 3 +++ ts/themes/SessionTheme.tsx | 5 ++++- 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/images/session/session_icon.png b/images/session/session_icon.png index 8555d93fe9bfad696f5f692de278c7f6fbd30a01..2c07ba2e90342f34651296e380f842fb1e54476b 100644 GIT binary patch literal 25670 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 We<;JufX@v8hnNseg<83{q5lK literal 22645 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 { const theme = window.Events.getThemeSetting(); @@ -63,7 +64,9 @@ export const SessionTheme = ({ useMount(() => { setThemeValues(THEME_GLOBALS); if (runSetup) { - void setupTheme(); + void Storage.onready(() => { + void setupTheme(); + }); } }); return children; From ffa276c23ff282307af31894498ba792931805c6 Mon Sep 17 00:00:00 2001 From: yougotwill Date: Wed, 14 Aug 2024 14:12:16 +1000 Subject: [PATCH 4/4] fix: update comment --- ts/themes/SessionTheme.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ts/themes/SessionTheme.tsx b/ts/themes/SessionTheme.tsx index 4a7f14fee4..22a6f84035 100644 --- a/ts/themes/SessionTheme.tsx +++ b/ts/themes/SessionTheme.tsx @@ -58,7 +58,7 @@ export const SessionTheme = ({ runSetup = true, }: { children: ReactNode; - /** If we don't have access to some window functions or Storage yet we might not want to run the theme setup */ + /** If we don't have access to some window object functions we may skip theme consistency checks */ runSetup?: boolean; }) => { useMount(() => {