diff options
| author | Teddy Wing | 2023-11-14 00:31:23 +0100 | 
|---|---|---|
| committer | Teddy Wing | 2023-11-14 00:31:23 +0100 | 
| commit | 0fc6f35dcdca6aeec42bac6e90134b9e5920d4e2 (patch) | |
| tree | 2affa0d2925b08c2faea1b48e773530779c03c74 /internal | |
| parent | 613d96cf7cf814447fa767fa3d7dc13f2acb0b62 (diff) | |
| download | swextreload-0fc6f35dcdca6aeec42bac6e90134b9e5920d4e2.tar.bz2 | |
Move code from `main()` to `swextreload.Reload()`
Move everything to our library.
Diffstat (limited to 'internal')
| -rw-r--r-- | internal/swextreload.go | 99 | 
1 files changed, 99 insertions, 0 deletions
| diff --git a/internal/swextreload.go b/internal/swextreload.go index 65edbe0..5a5dab1 100644 --- a/internal/swextreload.go +++ b/internal/swextreload.go @@ -1,9 +1,108 @@  package swextreload +import ( +	"context" +	"log" +	"time" + +	"github.com/chromedp/cdproto/target" +	"github.com/chromedp/chromedp" +) +  // TODO  func Reload(  	url string,  	extensionID string,  	shouldReloadTab bool,  ) error { +	allocatorContext, cancel := chromedp.NewRemoteAllocator( +		context.Background(), +		"ws://127.0.0.1:55755/devtools/browser/4536efdf-6ddf-40b6-9a16-258a1935d866", +	) +	defer cancel() + +	ctx, cancel := chromedp.NewContext(allocatorContext) +	defer cancel() + +	targets, err := chromedp.Targets(ctx) +	if err != nil { +		log.Fatalf("error: targets: %v", err) +	} + +	log.Printf("Targets: %#v", targets) +	println() + +	var targetID target.ID +	for _, target := range targets { +		if target.URL == "chrome-extension://imcibeelfmccdpnnlemllnepgbfdbkgo/background.bundle.js" { +			log.Printf("Target: %#v", target) +			targetID = target.TargetID +			break +		} +	} + +	targetCtx, cancel := chromedp.NewContext(ctx, chromedp.WithTargetID(targetID)) +	defer cancel() + +	var runtimeResp []byte +	err = chromedp.Run( +		targetCtx, +		// chromedp.Evaluate(`chrome.runtime.reload();`, &runtimeResp), +		// chromedp.Evaluate(`chrome.tabs.reload();`, &tabsResp), +		// chromedp.Evaluate(`chrome.runtime.reload();`, nil), +		// chromedp.EvaluateAsDevTools(`chrome.runtime.reload();`, nil), +		chromedp.Evaluate(`chrome.runtime.reload();`, nil), +		// chromedp.Evaluate(`chrome.tabs.reload();`, nil), +	) +	if err != nil { +		log.Fatalf("error: run: %v", err) +	} + +	// var tabsResp []byte +	// err = chromedp.Run( +	// 	targetCtx, +	// 	// chromedp.Evaluate(`chrome.tabs.reload();`, &tabsResp), +	// 	// chromedp.Evaluate(`chrome.tabs.reload();`, nil), +	// 	chromedp.EvaluateAsDevTools(`chrome.tabs.reload();`, nil), +	// ) +	// if err != nil { +	// 	log.Fatalf("error: run tabs: %v", err) +	// } + +	log.Printf("Runtime: %v", string(runtimeResp)) +	// log.Printf("Tabs: %v", string(tabsResp)) + +	time.Sleep(200 * time.Millisecond) + +	targets, err = chromedp.Targets(ctx) +	if err != nil { +		log.Fatalf("error: targets2: %v", err) +	} + +	log.Printf("Targets: %#v", targets) +	println() + +	for _, target := range targets { +		if target.URL == "chrome-extension://imcibeelfmccdpnnlemllnepgbfdbkgo/background.bundle.js" { +			log.Printf("Target: %#v", target) +			targetID = target.TargetID +			break +		} +	} + +	targetCtx, cancel = chromedp.NewContext(ctx, chromedp.WithTargetID(targetID)) +	defer cancel() + +	var tabsResp []byte +	err = chromedp.Run( +		targetCtx, +		chromedp.Evaluate(`chrome.tabs.reload();`, nil), +	) +	if err != nil { +		log.Fatalf("error: run tabs: %v", err) +	} + +	log.Printf("Tabs: %v", string(tabsResp)) + +	return nil  } | 
