How koaie/browser works
This is a GTK desktop web browser: users enter or revisit a URL, the main window requests and displays the page, and successful visits are added to history. It also provides history, favorites, and homepage settings windows, backed by SQLite through Entity Framework and in-memory maps. The README only documents building; this map follows the supplied source excerpts, so omitted handlers and implementations are not assumed.
Main entry points: TabWindow.cs Browser Window · Program.cs Application Startup · Http.cs HTTP Requests · Options.cs Browser Options
Components 14
Browsing
- Application Startup
Program.cs - Browser Window
TabWindow.cs - HTTP Requests
Http.cs
Browser Windows
- History Window
History.cs - Favorites Window
FavoritesWindow.cs - Options Window
OptionsWindow.cs
Browser Data
- Visit History
History.cs - Saved Favorites
Favorites.cs - Browser Options
Options.cs - Key-Value Maps
Map.cs - Database Context
ListContext.cs - SQLite Database
ListContext.cs
Other components
- User
- Web Servers
Connections 25
- User → Application Startup: launches
- Application Startup → Browser Window: opens
- Application Startup → Browser Options: loads defaults
- Application Startup → Visit History: reloads
- Application Startup → Saved Favorites: reloads
- User → Browser Window: navigates
- Browser Window → HTTP Requests: requests URL
- HTTP Requests → Web Servers: sends HTTP
- Web Servers → HTTP Requests: returns response
- HTTP Requests → Browser Window: returns request
- Browser Window → Visit History: records visit
- Browser Window → History Window: opens
- Browser Window → Favorites Window: opens
- Browser Window → Options Window: opens
- History Window → Visit History: reads and deletes
- History Window → Browser Window: revisits URL
- Favorites Window → Saved Favorites: manages favorites
- Favorites Window → Browser Window: revisits URL
- Options Window → Browser Options: updates homepage
- Browser Options → Browser Window: provides homepage
- Visit History → Key-Value Maps: uses map
- Saved Favorites → Key-Value Maps: uses map
- Browser Options → Key-Value Maps: uses map
- Key-Value Maps → Database Context: queries and saves
- Database Context → SQLite Database: reads and writes