| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CHROME_BROWSER_SEARCH_ENGINES_TEMPLATE_URL_H_ | 5 #ifndef CHROME_BROWSER_SEARCH_ENGINES_TEMPLATE_URL_H_ |
| 6 #define CHROME_BROWSER_SEARCH_ENGINES_TEMPLATE_URL_H_ | 6 #define CHROME_BROWSER_SEARCH_ENGINES_TEMPLATE_URL_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <string> | 9 #include <string> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 244 struct TemplateURLData { | 244 struct TemplateURLData { |
| 245 TemplateURLData(); | 245 TemplateURLData(); |
| 246 ~TemplateURLData(); | 246 ~TemplateURLData(); |
| 247 | 247 |
| 248 // A short description of the template. This is the name we show to the user | 248 // A short description of the template. This is the name we show to the user |
| 249 // in various places that use TemplateURLs. For example, the location bar | 249 // in various places that use TemplateURLs. For example, the location bar |
| 250 // shows this when the user selects a substituting match. | 250 // shows this when the user selects a substituting match. |
| 251 string16 short_name; | 251 string16 short_name; |
| 252 | 252 |
| 253 // The shortcut for this TemplateURL. May be empty. | 253 // The shortcut for this TemplateURL. May be empty. |
| 254 void SetKeyword(const string16& keyword) const; | 254 void SetKeyword(const string16& keyword); |
| 255 const string16& keyword(const TemplateURL* t_url) const; | 255 const string16& keyword(const TemplateURL* t_url) const; |
| 256 // TODO(pkasting): This should only be necessary until we eliminate keyword | 256 // TODO(pkasting): This should only be necessary until we eliminate keyword |
| 257 // autogeneration. | 257 // autogeneration. |
| 258 const string16& raw_keyword() const { return keyword_; } | 258 const string16& raw_keyword() const { return keyword_; } |
| 259 | 259 |
| 260 // Whether to autogenerate a keyword in TemplateURL::GetKeyword(). Most | 260 // Whether to autogenerate a keyword in TemplateURL::GetKeyword(). Most |
| 261 // consumers should not need this. | 261 // consumers should not need this. |
| 262 // NOTE: Calling SetKeyword() turns this back off. Manual and automatic | 262 // NOTE: Calling SetKeyword() turns this back off. Manual and automatic |
| 263 // keywords are mutually exclusive. | 263 // keywords are mutually exclusive. |
| 264 void SetAutogenerateKeyword(bool autogenerate_keyword) const; | 264 void SetAutogenerateKeyword(bool autogenerate_keyword); |
| 265 bool autogenerate_keyword() const { return autogenerate_keyword_; } | 265 bool autogenerate_keyword() const { return autogenerate_keyword_; } |
| 266 | 266 |
| 267 // Ensures that the keyword is generated. Most consumers should not need this | 267 // Ensures that the keyword is generated. Most consumers should not need this |
| 268 // because it is done automatically. Use this method on the UI thread, so | 268 // because it is done automatically. Use this method on the UI thread, so |
| 269 // the keyword may be accessed on another thread. | 269 // the keyword may be accessed on another thread. |
| 270 void EnsureKeyword(const TemplateURL* t_url) const; | 270 void EnsureKeyword(const TemplateURL* t_url) const; |
| 271 | 271 |
| 272 // The raw URL for the TemplateURL, which may not be valid as-is (e.g. because | 272 // The raw URL for the TemplateURL, which may not be valid as-is (e.g. because |
| 273 // it requires substitutions first). | 273 // it requires substitutions first). |
| 274 void SetURL(const std::string& url); | 274 void SetURL(const std::string& url); |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 335 std::string sync_guid; | 335 std::string sync_guid; |
| 336 | 336 |
| 337 private: | 337 private: |
| 338 // Private so we can enforce using the setters. | 338 // Private so we can enforce using the setters. |
| 339 // TODO(pkasting): For now these setters are not critical, but later we will | 339 // TODO(pkasting): For now these setters are not critical, but later we will |
| 340 // begin using them to ensure that these fields are non-empty. | 340 // begin using them to ensure that these fields are non-empty. |
| 341 mutable string16 keyword_; | 341 mutable string16 keyword_; |
| 342 std::string url_; | 342 std::string url_; |
| 343 | 343 |
| 344 // TODO(pkasting): These fields will go away soon. | 344 // TODO(pkasting): These fields will go away soon. |
| 345 mutable bool autogenerate_keyword_; | 345 bool autogenerate_keyword_; |
| 346 // True if the keyword was generated. This is used to avoid multiple attempts | 346 // True if the keyword was generated. This is used to avoid multiple attempts |
| 347 // if generating a keyword failed. | 347 // if generating a keyword failed. |
| 348 mutable bool keyword_generated_; | 348 mutable bool keyword_generated_; |
| 349 }; | 349 }; |
| 350 | 350 |
| 351 | 351 |
| 352 // TemplateURL ---------------------------------------------------------------- | 352 // TemplateURL ---------------------------------------------------------------- |
| 353 | 353 |
| 354 // A TemplateURL represents a single "search engine", defined primarily as a | 354 // A TemplateURL represents a single "search engine", defined primarily as a |
| 355 // subset of the Open Search Description Document | 355 // subset of the Open Search Description Document |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 388 void EnsureKeyword() const { data_.EnsureKeyword(this); } | 388 void EnsureKeyword() const { data_.EnsureKeyword(this); } |
| 389 | 389 |
| 390 const std::string& url() const { return data_.url(); } | 390 const std::string& url() const { return data_.url(); } |
| 391 const std::string& suggestions_url() const { return data_.suggestions_url; } | 391 const std::string& suggestions_url() const { return data_.suggestions_url; } |
| 392 const std::string& instant_url() const { return data_.instant_url; } | 392 const std::string& instant_url() const { return data_.instant_url; } |
| 393 const GURL& favicon_url() const { return data_.favicon_url; } | 393 const GURL& favicon_url() const { return data_.favicon_url; } |
| 394 | 394 |
| 395 const GURL& originating_url() const { return data_.originating_url; } | 395 const GURL& originating_url() const { return data_.originating_url; } |
| 396 | 396 |
| 397 bool show_in_default_list() const { return data_.show_in_default_list; } | 397 bool show_in_default_list() const { return data_.show_in_default_list; } |
| 398 | |
| 399 // Returns true if show_in_default_list() is true and this TemplateURL has a | 398 // Returns true if show_in_default_list() is true and this TemplateURL has a |
| 400 // TemplateURLRef that supports replacement. | 399 // TemplateURLRef that supports replacement. |
| 401 bool ShowInDefaultList() const; | 400 bool ShowInDefaultList() const; |
| 402 | 401 |
| 403 bool safe_for_autoreplace() const { return data_.safe_for_autoreplace; } | 402 bool safe_for_autoreplace() const { return data_.safe_for_autoreplace; } |
| 404 | 403 |
| 405 const std::vector<std::string>& input_encodings() const { | 404 const std::vector<std::string>& input_encodings() const { |
| 406 return data_.input_encodings; | 405 return data_.input_encodings; |
| 407 } | 406 } |
| 408 | 407 |
| (...skipping 26 matching lines...) Expand all Loading... |
| 435 std::string GetExtensionId() const; | 434 std::string GetExtensionId() const; |
| 436 bool IsExtensionKeyword() const; | 435 bool IsExtensionKeyword() const; |
| 437 | 436 |
| 438 private: | 437 private: |
| 439 friend class TemplateURLService; | 438 friend class TemplateURLService; |
| 440 | 439 |
| 441 void SetURL(const std::string& url); | 440 void SetURL(const std::string& url); |
| 442 void SetPrepopulateId(int id); | 441 void SetPrepopulateId(int id); |
| 443 | 442 |
| 444 // Invalidates cached values on this object and its child TemplateURLRefs. | 443 // Invalidates cached values on this object and its child TemplateURLRefs. |
| 445 void InvalidateCachedValues() const; | 444 void InvalidateCachedValues(); |
| 446 | 445 |
| 447 TemplateURLData data_; | 446 TemplateURLData data_; |
| 448 TemplateURLRef url_ref_; | 447 TemplateURLRef url_ref_; |
| 449 TemplateURLRef suggestions_url_ref_; | 448 TemplateURLRef suggestions_url_ref_; |
| 450 TemplateURLRef instant_url_ref_; | 449 TemplateURLRef instant_url_ref_; |
| 451 | 450 |
| 452 // TODO(sky): Add date last parsed OSD file. | 451 // TODO(sky): Add date last parsed OSD file. |
| 453 }; | 452 }; |
| 454 | 453 |
| 455 #endif // CHROME_BROWSER_SEARCH_ENGINES_TEMPLATE_URL_H_ | 454 #endif // CHROME_BROWSER_SEARCH_ENGINES_TEMPLATE_URL_H_ |
| OLD | NEW |