How to use address bar to control extension? - google-chrome

some time ago I read an article that it is possible to use the url adress bar in an google chrome extension.
E.g. wikipedia stackoverflow will search for stackoverflow and open the wikipedia site.
However I can't find any reference about that feature: http://code.google.com/chrome/extensions/getstarted.html
Can you provide some information on that?

I found it! It's called Omnibox
The omnibox API allows you to register
a keyword with Google Chrome's address
bar, which is also known as the
omnibox.
from https://developer.chrome.com/extensions/omnibox

Type a site name, press tab, then finish typing your search. It's a pretty strange UI concept but that's how it works. For example if you've visited stackoverflow.com before then go to the address bar and type "stackoverflow.com" then hit the tab key, the address bar changes to say "Search Stack Overflow:". You can press tab as soon as it suggests the domain name to switch to this search mode.
No extension needed.

Related

Add Google search field to website that searches in the address bar

I have created a page to use as a 'homepage' when opening a new tab in Chrome, rather than the default Chrome 'New tab page'. I have used the extension 'New Tab Redirect' to display this page when I open a new tab.
I'd like to add a Google search field to this page that, when the user starts typing, it transfers to the browser address bar (like Google does on Chrome) - to allow either a Google search or to enter a URL.
I have looked around for a solution to this but haven't had any luck. Any ideas how this could be achieved?
Thanks!
Here it is explained pretty well:
http://www.brenkoweb.com/articles/development/designing-principles/how-to-add-a-search-field-to-your-website.php

How to block a URL in Chrome's developer tools network monitor

I am currently analysing my page connections and I want to block some tracking scripts and other external URL calls in my network monitor inside Chrome's developer tools.
I quickly want to check how the page behaves without some libraries.
Chrome itself does not provide any functions like this and the famous blocking extensions only block URLs which the user enters manually into the navigation bar.
As pointed out by #calavera.info, #iman.Bahrampour, and #Asim K T this feature is now available in Chrome 59. You can select a URL or domain to block in the Network panel. See this release note and these Screenshots where the StackOverflow logo has been blocked from this page. #iman.Bahrampour also shares two extensions below that will also do this ("HTTP Request Blocker" and "Request Blocker").
As abd3721 mentioned this is available directly within chrome DevTools (You don't need to be on canary anymore), however it is still behind a flag and in the hidden experimental features menu. As of the time of this comment, Chrome stable is on version 53.
To enable it, open this link and click the enable link under the appropriate flag:
chrome://flags/#enable-devtools-experiments
Then in DevTools open up the settings panel(F1) and click on the experiments tab.
This lists all currently available DevTools experiments but it is still in yet another hidden set of features.
Press Shift 6 times while in the experiments tab to show even more hidden features, one of them will be Request Blocking.
NOTE: These features are considered experimental and may be buggy or incomplete. Use with caution.
For blocking requests in google chrome you have 3 options:
1. Google Chrome with pattern matching:
In network tab, right click on request and then select block request URL
There is a plus sign that adds patterns for blocking requests
For example I have 7 request URLs:
http://www.test.com?userid=5
http://www.test.com?username=username
http://www.test.com?email=email
http://www.test.com?name=x
http://www.test.com?family=q
http://www.test.com?family=y
http://www.test.com?family=z
I can block requests that have a specific pattern by adding a pattern(for example the pattern *family* blocks 3 below requests):
http://www.test.com?family=q
http://www.test.com?family=y
http://www.test.com?family=z
Be careful! Because patterns are case sensitive
2. HTTP Request Blocker extension:
This extension has pattern matching for blocking requests:
Match patterns
3. Request blocker extension:
This is a useful extension that has pattern matching for blocking requests.
The most useful features of this request blocker are importing and exporting lists for using by other People.
For exporting a list and using in another computer(or future used): click on Direction down and select Export.
Open the exported list with import list button.
Good Luck
From Chrome 59 you can block specific requests from Network tab of developer tools itself.
https://developers.google.com/web/updates/2017/04/devtools-release-notes#block-requests
Right-click on the request in the Network panel and select Block Request URL. A new Request blocking tab pops up in the Drawer, which lets you manage blocked requests.
This is now achievable in Chrome 59 developer tools by blocking respective requests: https://developers.google.com/web/updates/2017/04/devtools-release-notes#block-requests. With this approach it is somehow difficult to turn off all the stylesheets, but it's easier to turn off just the most annoying ones.
As for Google Chrome 94, it's possible to exclude network activity for entire domain:
1. Go to "Network" panel of DevTools:
2. Rigth click on item of domain you want to block, click on "Block request domain" in the context menu:
3. Type "status-code:0" into "Filter" and click on "Invert" checkbox:
To manage blocked domains, press ESC button when in DevTools, and click on "Network request blocking" tab in the bottom panel:
Will changing host file help.
Your system (windows, linux, mac) all check host before requesting DNS lookup. I use it when I wan tot block some slow advertisers.
windows:
c:\Windows\system32\drivers\etc\hosts
linux & mac
/etc/hosts
* BE VERY CAREFUL TO MAKE BACK UPS *
An existing bug report is requesting this feature. You can star that issue to show support for it being added.
Well, i have been looking for an answer for this too, as I had this issue of choices by counterfeit, and nothing seemed to work for me.
But then I tried to analyze the requests and other things until I figured out, that there was this site which was loading ads onto my pages and redirecting me to advertisements. And also changing the google search bar on new tabs to some unknown search engine. I was able to temporarily block the request on one page. but after opening a new tab, the ads would appear again.
So googling for request blocker, I came up with a chrome extension "HTTP Request Blocker" and added the address which was causing all the crazy ads, has now solved the problem fully.
I hope it will be of help to you too or anyone else.
In the original question, the author states:
the famous blocking extensions only block URLs which the user enters manually into the navigation bar.
This is no longer the case. I have really enjoyed using mokku, which can intercept and mock all types of requests. You can specify what the status code should be, so it will definitely solve this problem as well as adding other functionality that is helpful. It works by another tab in the chrome dev tools. Here is a link to the extension: https://chrome.google.com/webstore/detail/mokku-mock-api-calls-seam/llflfcikklhgamfmnjkgpdadpmdplmji?hl=en

How can I detect url change in address bar in chrome extension?

I want to develop an extension, which can detect what I typed words in address bar. If the words match something, it will show the specified url in address bar.
Actually, it's like as Google Chrome did by itself. But I will let the browser detect my keyword firstly, and show the specified url. Only when can't match my keywords, then show the url google provided.
I'm not sure it matches exactly what you need, but you can have a look at the Omnibox API:
When the user enters your extension's keyword, the user starts interacting solely with your extension. Each keystroke is sent to your extension, and you can provide suggestions in response.
The suggestions can be richly formatted in a variety of ways. When the user accepts a suggestion, your extension is notified and can take action.
This is not possible, but you could create your own address bar in HTML and monitor it for changes.
When users type a keyword, you could modify the window.location in another window. You could also modify the same window to show the url contents in an IFrame for instance.

google chrome asking to change search country

I use a VPN to connect to the internet with and am using google chrome browser.
Annoyingly, I get a pop-up message regularly asking me if I want to continue using google.se instead of searching with google.de, for example. Pressing no only satisifies it for a short time before asking again and there are no options to turn this off.
I cut and pasted but worked for me:
Or you can just add "/ncr" to the URL of the google site you want and it'll keep you there - eg
NCR stands for No Country Redirect.

How does Google Chrome Instant Omnibox work?

How does omnibox instant in Google Chrome 9 work ?
I enabled developer panel and checked, but didn't find any XHRs being fired... Is the Omnibar hidden from developer panel ?
This part is done in C++, so you won't see it in the developer panel; you can use Google Codesearch for Chromium to view the Chromium source code. Of interest may be InstantController and TemplateURLFetcher. It's not the easiest code to follow, because it is written in the asynchronous style (the instant bits register an observer that gets invoked when the suggest URL has been fetched).