Pass through the browser's application id extra if one is provided, so that the browser can figure out which window to put a new search into.
diff --git a/src/com/android/googlesearch/GoogleSearch.java b/src/com/android/googlesearch/GoogleSearch.java
index f7e2a6f..ea0652a 100644
--- a/src/com/android/googlesearch/GoogleSearch.java
+++ b/src/com/android/googlesearch/GoogleSearch.java
@@ -106,12 +106,20 @@
         if (appSearchData != null) {
             source = appSearchData.getString(SearchManager.SOURCE);
         }
+        
+        // The browser can pass along an application id which it uses to figure out which
+        // window to place a new search into. So if this exists, we'll pass it back to
+        // the browser.
+        String applicationId = intent.getStringExtra(Browser.EXTRA_APPLICATION_ID);
 
         try {
             String searchUri = googleSearchUrlBase
                     + "&source=android-" + source
                     + "&q=" + URLEncoder.encode(query, "UTF-8");
             Intent launchUriIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(searchUri));
+            if (applicationId != null) {
+                launchUriIntent.putExtra(Browser.EXTRA_APPLICATION_ID, applicationId);
+            }
             launchUriIntent.putExtra(Browser.EXTRA_POST_DATA, getLocationData());
             launchUriIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
             startActivity(launchUriIntent);