summaryrefslogtreecommitdiff
path: root/Applications/TextEditor
AgeCommit message (Collapse)Author
2020-11-02Applications: Use GUI::Icon::default_icon to set application iconBrendan Coles
2020-11-02Applications: Use GUI::CommonActions for save and save as menu optionsBrendan Coles
2020-10-31LibGfx: Move FontDatabase from LibGUI to LibGfxAndreas Kling
Not sure why I put this into LibGUI in the first place.
2020-10-25LibGfx+LibGUI+Clients: Make fonts findable by their qualified nameAndreas Kling
The qualified name of a font is "<Family> <Size> <Weight>". You can get the QN of a Font via the Font::qualified_name() API, and you can get any system font by QN from the GUI::FontDatabase. :^)
2020-10-08TextEditor: Replace InProcessWebView with OutOfProcessWebViewLinus Groh
2020-10-06TextEditor: Use new format functions.asynts
2020-09-30HackStudio+TextEditor: Add the Shell syntax highlighterAnotherTest
2020-09-14Build+TextEditor: Add a compile_json_gui() CMake helperAndreas Kling
This makes it easier to include JSON GUI declarations in any app. :^)
2020-09-14TextEditor: Move the find/replace buttons to JSON GUIAndreas Kling
2020-09-14TextEditor: Set initial widget visibilities from JSONAndreas Kling
2020-09-14TextEditor: Move the "find" and "replace" widget containers to JSON GUIAndreas Kling
2020-09-14TextEditor: Move the main window UI to JSONAndreas Kling
This is our first client of the new JSON GUI declaration thingy. The skeleton of the TextEditor app GUI is now declared separately from the C++ logic, and we use the Core::Object::name() of widgets to locate them once they have been instantiated by the GUI builder.
2020-08-30TextEditor: Don't try to move(lambda)Ben Wiederhake
The move constructor of a lambda just copies it anyway. Even if the first move() left an 'empty' closure behind, then 'm_editor->on_cursor_change' would only be able to see an empty closure, which is certainly not what was intended.
2020-08-17LibWeb: Rename PageView => InProcessWebViewAndreas Kling
2020-08-16TextEditor: Put fonts in exclusive action groupthankyouverycool
2020-08-11TextEditor: Show pageview URLs in statusbar on hoverLinus Groh
2020-08-11TextEditor: Open links from Web::PageView using Desktop::LauncherLinus Groh
So far, clicking on a link from the Markdown/HTML preview Web::PageView did nothing - now we pass that link to Desktop::Launcher, which will then open it in Browser, FileManager, another TextEditor instance etc.
2020-08-01Applications: Stop setting initial window locationPeter Elliott
This will let the WindowManager choose the location of the window
2020-07-20TextEditor: Preserve preview scroll position across page refreshesSahan Fernando
2020-07-18TextEditor: Auto-select C++ syntax highlighting for more extensionsNico Weber
2020-07-16LibWeb: Require parent window argument for MessageBoxTom
Since the vast majority of message boxes should be modal, require the parent window to be passed in, which can be nullptr for the rare case that they don't. By it being the first argument, the default arguments also don't need to be explicitly stated in most cases, and it encourages passing in a parent window handle. Fix up several message boxes that should have been modal.
2020-07-16LibGUI: Add parent window argument to FilePicker functionsTom
Since FilePicker almost always should be modal, add the parent window as mandatory first argument.
2020-07-06TextEditor: Use ArgsParser and allow the user to specify preview modeAnotherTest
This makes looking at HTML files that somehow fail a little less painful by allowing the user to actually _see_ the html.
2020-07-04TextEditor: Allow turning off the preview modeAndreas Kling
This patch adds a PreviewMode enum with the following values: - None - Markdown - HTML This makes it a bit more logical to implement exclusive behavior.
2020-07-04TextEditor: Tweak 16x16 iconAndreas Kling
In keeping with the slightly-higher-contrast theme.
2020-07-04LibGUI: Turn GUI::Application::the() into a pointerAndreas Kling
During app teardown, the Application object may be destroyed before something else, and so having Application::the() return a reference was obscuring the truth about its lifetime. This patch makes the API more honest by returning a pointer. While this makes call sites look a bit more sketchy, do note that the global Application pointer only becomes null during app teardown.
2020-07-04LibGUI: Make GUI::Application a Core::ObjectAndreas Kling
Having this on the stack makes whole-program teardown iffy. Turning it into a Core::Object allows anyone who needs it to extends its lifetime.
2020-06-26TextEditor: Add live preview for HTML documents :^)Andreas Kling
This allows you to edit HTML and see the changes live. This feature is possibly my favorite feature in the world right now.
2020-06-21TextEditor: Use Web::PageView::load_html() for the markdown previewAndreas Kling
2020-06-04TextEditor: Allow "TextEditor foo.txt" to create a new fileAndreas Kling
Attempting to open a non-existent file from the command line should not fail, it should just open a new text document with that name. Note that the file is not created until you actually save it.
2020-05-30LibMarkdown: Change MD Document parse API to return a RefPtrFalseHonesty
Markdown documents are now obtained via the static Document::parse method, which returns a RefPtr<Document>, or nullptr on failure.
2020-05-28LibWeb: Rename Web::HtmlView => Web::PageViewAndreas Kling
This widget doesn't just view HTML, it views a web page. :^)
2020-05-26AK: Rename FileSystemPath -> LexicalPathSergey Bugaev
And move canonicalized_path() to a static method on LexicalPath. This is to make it clear that FileSystemPath/canonicalized_path() only perform *lexical* canonicalization.
2020-05-14Build: Switch to CMake :^)Sergey Bugaev
Closes https://github.com/SerenityOS/serenity/issues/2080
2020-05-09TextEditor: Use JS syntax highlighting for .json files :^)Andreas Kling
2020-05-03LibTextCodec: Start fleshing out a simple text codec libraryAndreas Kling
We're starting with a very basic decoding API and only ISO-8859-1 and UTF-8 decoding (and UTF-8 decoding is really a no-op since String is expected to be UTF-8.)
2020-05-03Meta: Fix Makefile permissions (not executable)Ben Wiederhake
2020-05-01Applications: TextEditor INI file syntax highlighterHüseyin ASLITÜRK
2020-04-30TextEditor: Use document path as base URL for markdown preview HTMLAndreas Kling
2020-04-30TextEditor: Pledge "unix" so we can load images in Markdown previewAndreas Kling
We should think a bit more about how we want preview content to interact with the outside world, but for now let's just make it run.
2020-04-29LibGUI: Simplify submenu constructionAndreas Kling
The API for adding a submenu to a menu is now: auto& submenu = menu.add_submenu("Name"); submenu.add_action(my_action);
2020-04-28TextEditor: Fix typo in commentLinus Groh
2020-04-28TextEditor: Add live preview when editing markdown :^)Andreas Kling
This works by hooking into the change notifications from the TextEditor widget and parsing the document content as markdown, and generating an HTML document from it which is displayed using LibWeb. This will make it a bit easier to write man pages! :^)
2020-04-23LibGUI: Add a ToolBarContainer widget and put most ToolBars in oneAndreas Kling
This mimics the Explorer toolbar container from Windows 2000 and looks pretty neat! :^)
2020-04-22TextEditor: Add "Find Previous" 16x16 iconBrendan Coles
2020-04-21LibGUI: Make it easier to create checkable GUI::ActionsAndreas Kling
This patch adds GUI::Action::create_checkable() helpers that work just like the existing create() helpers, but the actions become checkable(!) Clients are no longer required to manage the checked state of their actions manually, but instead they will be checked/unchecked as needed by GUI::Action itself before the activation hook is fired.
2020-04-21LibGUI: Make MenuBar a Core::ObjectAndreas Kling
This makes it show up in Inspector with all the menus inside it. :^)
2020-04-21TextEditor: Add "Find Next" 16x16 iconBrendan Coles
2020-04-04LibGUI: Add MenuBar::add_menu(name)Andreas Kling
This allows us to construct menus in a more natural way: auto& file_menu = menubar->add_menu("File"); file_menu.add_action(...); Instead of the old way: auto file_menu = GUI::Menu::construct(); file_menu->add_action(...); menubar->add_menu(file_menu);
2020-03-13Applications: Use "Document - AppName" window title formatTibor Nagy
Fixes #1444