Index: chrome/browser/resources/options/browser_options_startup_page_list.js |
diff --git a/chrome/browser/resources/options/browser_options_startup_page_list.js b/chrome/browser/resources/options/browser_options_startup_page_list.js |
index 23f7c1a43a5cabf4863f2c27c6fa1c6f370adb71..6afed9a081d37c0c334ef8b5359b47948022d6b3 100644 |
--- a/chrome/browser/resources/options/browser_options_startup_page_list.js |
+++ b/chrome/browser/resources/options/browser_options_startup_page_list.js |
@@ -246,8 +246,19 @@ cr.define('options.browser_options', function() { |
if (this.dropPos == 'below') |
newIndex += 1; |
- chrome.send('dragDropStartupPage', |
- [newIndex, this.selectionModel.selectedIndexes]); |
+ // If there are selected indexes, it was a re-order. |
+ if (this.selectionModel.selectedIndexes.length > 0) { |
+ chrome.send('dragDropStartupPage', |
+ [newIndex, this.selectionModel.selectedIndexes]); |
+ return; |
+ } |
+ |
+ // Otherwise it was potentially a drop of new data (e.g. a bookmark). |
+ var url = e.dataTransfer.getData('url'); |
+ if (url) { |
+ e.preventDefault(); |
+ chrome.send('addStartupPage', [url, newIndex]); |
+ } |
}, |
/** |