From 42f3aa0f6f9b72b06583715c812b0668801b5689 Mon Sep 17 00:00:00 2001 From: Christian Cleberg Date: Sun, 14 Jan 2024 12:01:54 -0600 Subject: feat: add option to view rendered markdown --- LibreEdit/ContentView.swift | 91 ++++++++++++++++++++++++--------------------- 1 file changed, 49 insertions(+), 42 deletions(-) (limited to 'LibreEdit/ContentView.swift') diff --git a/LibreEdit/ContentView.swift b/LibreEdit/ContentView.swift index 3b6d69e..33dab38 100644 --- a/LibreEdit/ContentView.swift +++ b/LibreEdit/ContentView.swift @@ -43,51 +43,58 @@ struct ContentView: View { @Binding var document: TextFile @State private var showingPopover = false @State private var wordCount: Int = 0 - + var body: some View { - Text("\(wordCount) words") - .foregroundColor(Color.white) - .font(.headline) - .padding(.trailing) - .frame(maxWidth: .infinity, maxHeight: 50) - .background(Color.gray.opacity(0.3)) - .padding(.top, 20) - TextEditor(text: $document.text) - .onAppear { - self.wordCount = countWords(text: document.text) - } - .onChange(of: document.text) { - self.wordCount = countWords(text: document.text) - } - .toolbar { - ToolbarItemGroup(placement: .secondaryAction) { - Button { - showingPopover = true - } label: { - Text("More Info") - }.popover(isPresented: $showingPopover) { - VStack(alignment: .leading) { - Text("More Info") - .font(.largeTitle) - Text("") - Text("Instructions") - .font(.title) - Text("") - Text("LibreEdit provides a direct interface with the Apple Files app on your iPhone. Simply navigate to your preferred directory, edit existing files, or create new files!") - Text("") - Text("Developer") - .font(.title) - Text("") - Text("LibreEdit is a free and open source text editor for iOS built by [Christian Cleberg](https://cleberg.net).") - Text("") - Text("Visit the [GitHub Repository](https://github.com/ccleberg/ios-edit) to view the source code.") - Text("") - Text("This project was developed under the [GNU GPL v3 license](https://github.com/ccleberg/ios-edit/LICENSE).") - Spacer() + NavigationView { + VStack { + Text("\(wordCount) words") + .foregroundColor(Color.white) + .font(.headline) + .padding(.trailing) + .frame(maxWidth: .infinity, maxHeight: 50) + .background(Color.gray.opacity(0.3)) + .padding(.top, 20) + TextEditor(text: $document.text) + .onAppear { + self.wordCount = countWords(text: document.text) + } + .onChange(of: document.text) { + self.wordCount = countWords(text: document.text) + } + .toolbar { + ToolbarItemGroup(placement: .secondaryAction) { + NavigationLink(destination: MarkdownView(document: $document)) { + Text("Show Rendered Markdown") + } + Button { + showingPopover = true + } label: { + Text("More Info") + }.popover(isPresented: $showingPopover) { + VStack(alignment: .leading) { + Text("More Info") + .font(.largeTitle) + Text("") + Text("Instructions") + .font(.title) + Text("") + Text("LibreEdit provides a direct interface with the Apple Files app on your iPhone. Simply navigate to your preferred directory, edit existing files, or create new files!") + Text("") + Text("Developer") + .font(.title) + Text("") + Text("LibreEdit is a free and open source text editor for iOS built by [Christian Cleberg](https://cleberg.net).") + Text("") + Text("Visit the [GitHub Repository](https://github.com/ccleberg/ios-edit) to view the source code.") + Text("") + Text("This project was developed under the [GNU GPL v3 license](https://github.com/ccleberg/ios-edit/LICENSE).") + Spacer() + } + .padding() + } } - .padding() } - } } + } } } -- cgit v1.2.3-70-g09d2