From 86744449e306cd7af2ce914f5292f515eed2c1e3 Mon Sep 17 00:00:00 2001 From: Sam Atkins Date: Tue, 22 Oct 2024 15:30:16 +0100 Subject: [PATCH] Documentation: Flatten the `Browser/` directory Separating out the browser documentation doesn't make much sense now that we are only a browser. :^) --- Documentation/{Browser => }/AddNewIDLFile.md | 6 +++--- Documentation/Browser/classes.png | Bin 30525 -> 0 bytes Documentation/Browser/processes.png | Bin 18940 -> 0 bytes .../BrowsingContextsAndNavigables.md | 0 .../{Browser => }/CSSGeneratedFiles.md | 4 ++-- Documentation/Images/classes.png | Bin 0 -> 24413 bytes Documentation/Images/processes.png | Bin 0 -> 14225 bytes .../LibWebFromLoadingToPainting.md | 0 .../{Browser/Patterns.md => LibWebPatterns.md} | 0 .../{Browser => }/ProcessArchitecture.md | 4 ++-- Documentation/README.md | 11 +++++------ 11 files changed, 12 insertions(+), 13 deletions(-) rename Documentation/{Browser => }/AddNewIDLFile.md (83%) delete mode 100644 Documentation/Browser/classes.png delete mode 100644 Documentation/Browser/processes.png rename Documentation/{Browser => }/BrowsingContextsAndNavigables.md (100%) rename Documentation/{Browser => }/CSSGeneratedFiles.md (98%) create mode 100644 Documentation/Images/classes.png create mode 100644 Documentation/Images/processes.png rename Documentation/{Browser => }/LibWebFromLoadingToPainting.md (100%) rename Documentation/{Browser/Patterns.md => LibWebPatterns.md} (100%) rename Documentation/{Browser => }/ProcessArchitecture.md (98%) diff --git a/Documentation/Browser/AddNewIDLFile.md b/Documentation/AddNewIDLFile.md similarity index 83% rename from Documentation/Browser/AddNewIDLFile.md rename to Documentation/AddNewIDLFile.md index 512a3f5194..acb0e2fa4c 100644 --- a/Documentation/Browser/AddNewIDLFile.md +++ b/Documentation/AddNewIDLFile.md @@ -23,10 +23,10 @@ interface CSSRule { }; ``` -3. Add a `libweb_js_bindings(HTML/HTMLDetailsElement)` call to [`LibWeb/idl_files.cmake`](../../Userland/Libraries/LibWeb/idl_files.cmake) +3. Add a `libweb_js_bindings(HTML/HTMLDetailsElement)` call to [`LibWeb/idl_files.cmake`](../Userland/Libraries/LibWeb/idl_files.cmake) -4. Forward declare the generated class in [`LibWeb/Forward.h`](../../Userland/Libraries/LibWeb/Forward.h): +4. Forward declare the generated class in [`LibWeb/Forward.h`](../Userland/Libraries/LibWeb/Forward.h): - `HTMLDetailsElement` in its namespace. -5. If your type isn't an Event or Element, you will need to add it to [`is_platform_object()`](../../Meta/Lagom/Tools/CodeGenerators/LibWeb/BindingsGenerator/IDLGenerators.cpp) +5. If your type isn't an Event or Element, you will need to add it to [`is_platform_object()`](../Meta/Lagom/Tools/CodeGenerators/LibWeb/BindingsGenerator/IDLGenerators.cpp) so that it can be accepted as an IDL parameter, attribute or return type. diff --git a/Documentation/Browser/classes.png b/Documentation/Browser/classes.png deleted file mode 100644 index bd51a40fdb997b89e811b5018be413b5a5bb18a9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30525 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 H 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 JE^gre{{WBLWSam0 diff --git a/Documentation/Browser/processes.png b/Documentation/Browser/processes.png deleted file mode 100644 index 1df16e82d96a9d87ff8dab926e9e43b36d76fa0f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18940 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 diff --git a/Documentation/Browser/BrowsingContextsAndNavigables.md b/Documentation/BrowsingContextsAndNavigables.md similarity index 100% rename from Documentation/Browser/BrowsingContextsAndNavigables.md rename to Documentation/BrowsingContextsAndNavigables.md diff --git a/Documentation/Browser/CSSGeneratedFiles.md b/Documentation/CSSGeneratedFiles.md similarity index 98% rename from Documentation/Browser/CSSGeneratedFiles.md rename to Documentation/CSSGeneratedFiles.md index e1e0aae239..73911a7098 100644 --- a/Documentation/Browser/CSSGeneratedFiles.md +++ b/Documentation/CSSGeneratedFiles.md @@ -1,11 +1,11 @@ # CSS Generated Files We generate a significant amount of CSS-related code, taking in one or more .json files in -[`Userland/Libraries/LibWeb/CSS`](../../Userland/Libraries/LibWeb/CSS) and producing C++ code from them, located in +[`Userland/Libraries/LibWeb/CSS`](../Userland/Libraries/LibWeb/CSS) and producing C++ code from them, located in `Build//Lagom/Userland/Libraries/LibWeb/CSS/`. It's likely that you'll need to work with these if you add or modify a CSS property or its values. -The generators are found in [`Meta/Lagom/Tools/CodeGenerators/LibWeb`](../../Meta/Lagom/Tools/CodeGenerators/LibWeb). +The generators are found in [`Meta/Lagom/Tools/CodeGenerators/LibWeb`](../Meta/Lagom/Tools/CodeGenerators/LibWeb). They are run automatically as part of the build, and most of the time you can ignore them. ## Properties.json diff --git a/Documentation/Images/classes.png b/Documentation/Images/classes.png new file mode 100644 index 0000000000000000000000000000000000000000..83acd18f697a5350bb7da64bc020044821dcc65a GIT binary patch literal 24413 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 F{}0W!^!We) literal 0 HcmV?d00001 diff --git a/Documentation/Images/processes.png b/Documentation/Images/processes.png new file mode 100644 index 0000000000000000000000000000000000000000..071ee67428e7a30493fba4571e79086b563e3f78 GIT binary patch literal 14225 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 literal 0 HcmV?d00001 diff --git a/Documentation/Browser/LibWebFromLoadingToPainting.md b/Documentation/LibWebFromLoadingToPainting.md similarity index 100% rename from Documentation/Browser/LibWebFromLoadingToPainting.md rename to Documentation/LibWebFromLoadingToPainting.md diff --git a/Documentation/Browser/Patterns.md b/Documentation/LibWebPatterns.md similarity index 100% rename from Documentation/Browser/Patterns.md rename to Documentation/LibWebPatterns.md diff --git a/Documentation/Browser/ProcessArchitecture.md b/Documentation/ProcessArchitecture.md similarity index 98% rename from Documentation/Browser/ProcessArchitecture.md rename to Documentation/ProcessArchitecture.md index 9f912df82e..9becaabd76 100644 --- a/Documentation/Browser/ProcessArchitecture.md +++ b/Documentation/ProcessArchitecture.md @@ -6,7 +6,7 @@ The SerenityOS web browser (**"Browser"**) uses a multi-process architecture to ## Process overview -![](processes.png) +![](Images/processes.png) Every instance of the **Browser** application can have one or more tabs open. Each tab has a unique **WebContent** service process spawned on its behalf. @@ -39,7 +39,7 @@ by **WebContent** as needed, not by **Browser**. ## Class overview -![](classes.png) +![](Images/classes.png) In the GUI application process, a `OutOfProcessWebView` widget is placed somewhere in a window, and it takes care of spawning all of the helper processes, etc. diff --git a/Documentation/README.md b/Documentation/README.md index 2e19d67da8..61f5bd0fc7 100644 --- a/Documentation/README.md +++ b/Documentation/README.md @@ -31,10 +31,9 @@ you are welcome to ask on [Discord](../README.md#get-in-touch-and-participate). * [String Formatting](StringFormatting.md) ## Browser/LibWeb -* [Ladybird Browser Build Instructions](BuildInstructionsLadybird.md) -* [General Architecture](Browser/ProcessArchitecture.md) -* [LibWeb: From Loading to Painting](Browser/LibWebFromLoadingToPainting.md) -* [LibWeb: Browsing Contexts and Navigables](Browser/BrowsingContextsAndNavigables.md) -* [How to Add an IDL File](Browser/AddNewIDLFile.md) +* [General Architecture](ProcessArchitecture.md) +* [LibWeb: From Loading to Painting](LibWebFromLoadingToPainting.md) +* [LibWeb: Browsing Contexts and Navigables](BrowsingContextsAndNavigables.md) +* [How to Add an IDL File](AddNewIDLFile.md) * [LibWeb Code Style & Patterns](Browser/Patterns.md) -* [CSS Generated Files](Browser/CSSGeneratedFiles.md) +* [CSS Generated Files](CSSGeneratedFiles.md)