@@ -18,8 +18,6 @@ struct CodeViewer: View {
1818 @Environment ( \. themeTextColor) var themeTextColor
1919 @Environment ( \. themePrimaryColor) var themePrimaryColor
2020
21- @State private var shouldShowPreview = false
22-
2321 var body : some View {
2422
2523 VStack ( alignment: . leading) {
@@ -44,7 +42,7 @@ struct CodeViewer: View {
4442 } ,
4543 onPreviewToggle: viewModel. snipItem. mode == CodeMode . html. mode ( ) || viewModel. snipItem. mode == CodeMode . markdown. mode ( ) ? {
4644 withAnimation ( Animation . easeOut ( duration: 0.6 ) ) { ( ) -> ( ) in
47- self . shouldShowPreview. toggle ( )
45+ viewModel . shouldShowPreview. toggle ( )
4846 }
4947 } : nil
5048 ) )
@@ -73,10 +71,10 @@ struct CodeViewer: View {
7371 onContentChange: { newCode in
7472 viewModel. saveNewCodeSnippet ( newCode)
7573 } )
76- . frame ( width: self . shouldShowPreview ? reader. size. width / 2 : reader. size. width, height: reader. size. height)
74+ . frame ( width: viewModel . shouldShowPreview ? reader. size. width / 2 : reader. size. width, height: reader. size. height)
7775
7876
79- if self . shouldShowPreview {
77+ if viewModel . shouldShowPreview {
8078 Divider ( )
8179
8280 MarkdownHTMLViewer ( code: viewModel. snipItem. snippet, mode: viewModel. snipItem. mode)
@@ -105,6 +103,7 @@ struct CodeViewer: View {
105103final class CodeViewerViewModel : ObservableObject {
106104
107105 @Published var snipItem : SnipItem
106+ @Published var shouldShowPreview = false
108107 var onTrigger : ( SnipItemsListAction ) -> Void
109108 var onDimiss : ( ) -> Void
110109
0 commit comments