refactor(deps): integrate CopyURLUseCase into dependency injection
- commit
- 717efa6acaaf37015154730469353184e703b88c
- author
- brice · · 2025-12-17 21:41 UTC
- committer
- brice · · 2025-12-17 22:56 UTC
- parent
- c4effaa
- signature
- unsigned
3 files · +7 -2
M cmd/dumber/main.go +4 -1
| @@ -152,6 +152,8 @@ func runGUI() { | |||
| 152 | 152 | favoritesUC := usecase.NewManageFavoritesUseCase(favoriteRepo, folderRepo, tagRepo) | |
| 153 | 153 | zoomUC := usecase.NewManageZoomUseCase(zoomRepo, cfg.DefaultWebpageZoom) | |
| 154 | 154 | navigateUC := usecase.NewNavigateUseCase(historyRepo, zoomRepo, cfg.DefaultWebpageZoom) | |
| 155 | + | clipboardAdapter := clipboard.New() | |
| 156 | + | copyURLUC := usecase.NewCopyURLUseCase(clipboardAdapter) | |
| 155 | 157 | ||
| 156 | 158 | // Build dependencies | |
| 157 | 159 | deps := &ui.Dependencies{ | |
| @@ -175,8 +177,9 @@ func runGUI() { | |||
| 175 | 177 | FavoritesUC: favoritesUC, | |
| 176 | 178 | ZoomUC: zoomUC, | |
| 177 | 179 | NavigateUC: navigateUC, | |
| 180 | + | CopyURLUC: copyURLUC, | |
| 178 | 181 | // Infrastructure Adapters | |
| 179 | - | Clipboard: clipboard.New(), | |
| 182 | + | Clipboard: clipboardAdapter, | |
| 180 | 183 | } | |
| 181 | 184 | ||
| 182 | 185 | // Run the application | |
| @@ -152,6 +152,8 @@ func runGUI() { | |||||
| 152 | favoritesUC := usecase.NewManageFavoritesUseCase(favoriteRepo, folderRepo, tagRepo) | 152 | favoritesUC := usecase.NewManageFavoritesUseCase(favoriteRepo, folderRepo, tagRepo) | ||
| 153 | zoomUC := usecase.NewManageZoomUseCase(zoomRepo, cfg.DefaultWebpageZoom) | 153 | zoomUC := usecase.NewManageZoomUseCase(zoomRepo, cfg.DefaultWebpageZoom) | ||
| 154 | navigateUC := usecase.NewNavigateUseCase(historyRepo, zoomRepo, cfg.DefaultWebpageZoom) | 154 | navigateUC := usecase.NewNavigateUseCase(historyRepo, zoomRepo, cfg.DefaultWebpageZoom) | ||
| 155 | + | clipboardAdapter := clipboard.New() | |||
| 156 | + | copyURLUC := usecase.NewCopyURLUseCase(clipboardAdapter) | |||
| 155 | 157 | ||||
| 156 | // Build dependencies | 158 | // Build dependencies | ||
| 157 | deps := &ui.Dependencies{ | 159 | deps := &ui.Dependencies{ | ||
| @@ -175,8 +177,9 @@ func runGUI() { | |||||
| 175 | FavoritesUC: favoritesUC, | 177 | FavoritesUC: favoritesUC, | ||
| 176 | ZoomUC: zoomUC, | 178 | ZoomUC: zoomUC, | ||
| 177 | NavigateUC: navigateUC, | 179 | NavigateUC: navigateUC, | ||
| 180 | + | CopyURLUC: copyURLUC, | |||
| 178 | // Infrastructure Adapters | 181 | // Infrastructure Adapters | ||
| 179 | - | Clipboard: clipboard.New(), | 182 | + | Clipboard: clipboardAdapter, |
| 180 | } | 183 | } | ||
| 181 | 184 | ||||
| 182 | // Run the application | 185 | // Run the application | ||
M internal/ui/app.go +2 -1
| @@ -215,7 +215,7 @@ func (a *App) onActivate(ctx context.Context) { | |||
| 215 | 215 | HistoryUC: a.deps.HistoryUC, | |
| 216 | 216 | FavoritesUC: a.deps.FavoritesUC, | |
| 217 | 217 | FaviconCache: a.faviconCache, | |
| 218 | - | Clipboard: a.deps.Clipboard, | |
| 218 | + | CopyURLUC: a.deps.CopyURLUC, | |
| 219 | 219 | Shortcuts: a.deps.Config.SearchShortcuts, | |
| 220 | 220 | DefaultSearch: a.deps.Config.DefaultSearchEngine, | |
| 221 | 221 | InitialBehavior: a.deps.Config.Omnibox.InitialBehavior, | |
| @@ -382,6 +382,7 @@ func (a *App) initCoordinators(ctx context.Context) { | |||
| 382 | 382 | a.wsCoord, | |
| 383 | 383 | a.navCoord, | |
| 384 | 384 | a.deps.ZoomUC, | |
| 385 | + | a.deps.CopyURLUC, | |
| 385 | 386 | ) | |
| 386 | 387 | a.kbDispatcher.SetOnQuit(a.Quit) | |
| 387 | 388 | ||
| @@ -215,7 +215,7 @@ func (a *App) onActivate(ctx context.Context) { | |||||
| 215 | HistoryUC: a.deps.HistoryUC, | 215 | HistoryUC: a.deps.HistoryUC, | ||
| 216 | FavoritesUC: a.deps.FavoritesUC, | 216 | FavoritesUC: a.deps.FavoritesUC, | ||
| 217 | FaviconCache: a.faviconCache, | 217 | FaviconCache: a.faviconCache, | ||
| 218 | - | Clipboard: a.deps.Clipboard, | 218 | + | CopyURLUC: a.deps.CopyURLUC, |
| 219 | Shortcuts: a.deps.Config.SearchShortcuts, | 219 | Shortcuts: a.deps.Config.SearchShortcuts, | ||
| 220 | DefaultSearch: a.deps.Config.DefaultSearchEngine, | 220 | DefaultSearch: a.deps.Config.DefaultSearchEngine, | ||
| 221 | InitialBehavior: a.deps.Config.Omnibox.InitialBehavior, | 221 | InitialBehavior: a.deps.Config.Omnibox.InitialBehavior, | ||
| @@ -382,6 +382,7 @@ func (a *App) initCoordinators(ctx context.Context) { | |||||
| 382 | a.wsCoord, | 382 | a.wsCoord, | ||
| 383 | a.navCoord, | 383 | a.navCoord, | ||
| 384 | a.deps.ZoomUC, | 384 | a.deps.ZoomUC, | ||
| 385 | + | a.deps.CopyURLUC, | |||
| 385 | ) | 386 | ) | ||
| 386 | a.kbDispatcher.SetOnQuit(a.Quit) | 387 | a.kbDispatcher.SetOnQuit(a.Quit) | ||
| 387 | 388 | ||||
M internal/ui/deps.go +1 -0
| @@ -44,6 +44,7 @@ type Dependencies struct { | |||
| 44 | 44 | ZoomUC *usecase.ManageZoomUseCase | |
| 45 | 45 | FavoritesUC *usecase.ManageFavoritesUseCase | |
| 46 | 46 | HistoryUC *usecase.SearchHistoryUseCase | |
| 47 | + | CopyURLUC *usecase.CopyURLUseCase | |
| 47 | 48 | ||
| 48 | 49 | // Infrastructure Adapters | |
| 49 | 50 | Clipboard port.Clipboard | |
| @@ -44,6 +44,7 @@ type Dependencies struct { | |||||
| 44 | ZoomUC *usecase.ManageZoomUseCase | 44 | ZoomUC *usecase.ManageZoomUseCase | ||
| 45 | FavoritesUC *usecase.ManageFavoritesUseCase | 45 | FavoritesUC *usecase.ManageFavoritesUseCase | ||
| 46 | HistoryUC *usecase.SearchHistoryUseCase | 46 | HistoryUC *usecase.SearchHistoryUseCase | ||
| 47 | + | CopyURLUC *usecase.CopyURLUseCase | |||
| 47 | 48 | ||||
| 48 | // Infrastructure Adapters | 49 | // Infrastructure Adapters | ||
| 49 | Clipboard port.Clipboard | 50 | Clipboard port.Clipboard | ||