OLD | NEW |
1 // Copyright (c) 2007-2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2007-2009 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 #include "config.h" | 5 #include "config.h" |
6 | 6 |
7 #include "AXObjectCache.h" | 7 #include "AXObjectCache.h" |
8 #include "CSSStyleSelector.h" | 8 #include "CSSStyleSelector.h" |
9 #include "CSSValueKeywords.h" | 9 #include "CSSValueKeywords.h" |
10 #include "Cursor.h" | 10 #include "Cursor.h" |
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
192 ASSERT(editor); | 192 ASSERT(editor); |
193 editor->OnAutofillSuggestionAccepted( | 193 editor->OnAutofillSuggestionAccepted( |
194 static_cast<WebCore::HTMLInputElement*>(text_field_.get())); | 194 static_cast<WebCore::HTMLInputElement*>(text_field_.get())); |
195 } | 195 } |
196 | 196 |
197 virtual WebCore::String itemText(unsigned list_index) const { | 197 virtual WebCore::String itemText(unsigned list_index) const { |
198 return suggestions_[list_index]; | 198 return suggestions_[list_index]; |
199 } | 199 } |
200 | 200 |
201 virtual WebCore::String itemToolTip(unsigned last_index) const { | 201 virtual WebCore::String itemToolTip(unsigned last_index) const { |
202 NOTIMPLEMENTED(); | 202 notImplemented(); |
203 return WebCore::String(); | 203 return WebCore::String(); |
204 } | 204 } |
205 | 205 |
206 virtual bool itemIsEnabled(unsigned listIndex) const { | 206 virtual bool itemIsEnabled(unsigned listIndex) const { |
207 return true; | 207 return true; |
208 } | 208 } |
209 | 209 |
210 virtual PopupMenuStyle itemStyle(unsigned listIndex) const { | 210 virtual PopupMenuStyle itemStyle(unsigned listIndex) const { |
211 return *style_; | 211 return *style_; |
212 } | 212 } |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
294 } | 294 } |
295 | 295 |
296 WebCore::HTMLInputElement* text_field() const { | 296 WebCore::HTMLInputElement* text_field() const { |
297 return text_field_.get(); | 297 return text_field_.get(); |
298 } | 298 } |
299 | 299 |
300 WebCore::RenderStyle* GetTextFieldStyle() const { | 300 WebCore::RenderStyle* GetTextFieldStyle() const { |
301 WebCore::RenderStyle* style = text_field_->computedStyle(); | 301 WebCore::RenderStyle* style = text_field_->computedStyle(); |
302 if (!style) { | 302 if (!style) { |
303 // It seems we can only have an NULL style in a TextField if the node is | 303 // It seems we can only have an NULL style in a TextField if the node is |
304 // dettached, in which case we the popup shoud not be showing. | 304 // dettached, in which case we the popup shoud not be showing. Please |
305 NOTREACHED() << "Please report this in http://crbug.com/7708 and include " | 305 // report this in http://crbug.com/7708 and include the page you were |
306 "the page you were visiting."; | 306 // visiting. |
| 307 ASSERT_NOT_REACHED(); |
307 } | 308 } |
308 return style; | 309 return style; |
309 } | 310 } |
310 | 311 |
311 private: | 312 private: |
312 RefPtr<WebCore::HTMLInputElement> text_field_; | 313 RefPtr<WebCore::HTMLInputElement> text_field_; |
313 Vector<WebCore::String> suggestions_; | 314 Vector<WebCore::String> suggestions_; |
314 int selected_index_; | 315 int selected_index_; |
315 WebViewImpl* webview_; | 316 WebViewImpl* webview_; |
316 OwnPtr<PopupMenuStyle> style_; | 317 OwnPtr<PopupMenuStyle> style_; |
(...skipping 340 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
657 event.windowsKeyCode == VKEY_END) { | 658 event.windowsKeyCode == VKEY_END) { |
658 return false; | 659 return false; |
659 } | 660 } |
660 | 661 |
661 // Pressing delete triggers the removal of the selected suggestion from the | 662 // Pressing delete triggers the removal of the selected suggestion from the |
662 // DB. | 663 // DB. |
663 if (event.windowsKeyCode == VKEY_DELETE && | 664 if (event.windowsKeyCode == VKEY_DELETE && |
664 autocomplete_popup_->selectedIndex() != -1) { | 665 autocomplete_popup_->selectedIndex() != -1) { |
665 Node* node = GetFocusedNode(); | 666 Node* node = GetFocusedNode(); |
666 if (!node || (node->nodeType() != WebCore::Node::ELEMENT_NODE)) { | 667 if (!node || (node->nodeType() != WebCore::Node::ELEMENT_NODE)) { |
667 NOTREACHED(); | 668 ASSERT_NOT_REACHED(); |
668 return false; | 669 return false; |
669 } | 670 } |
670 WebCore::Element* element = static_cast<WebCore::Element*>(node); | 671 WebCore::Element* element = static_cast<WebCore::Element*>(node); |
671 if (!element->hasLocalName(WebCore::HTMLNames::inputTag)) { | 672 if (!element->hasLocalName(WebCore::HTMLNames::inputTag)) { |
672 NOTREACHED(); | 673 ASSERT_NOT_REACHED(); |
673 return false; | 674 return false; |
674 } | 675 } |
675 | 676 |
676 int selected_index = autocomplete_popup_->selectedIndex(); | 677 int selected_index = autocomplete_popup_->selectedIndex(); |
677 WebCore::HTMLInputElement* input_element = | 678 WebCore::HTMLInputElement* input_element = |
678 static_cast<WebCore::HTMLInputElement*>(element); | 679 static_cast<WebCore::HTMLInputElement*>(element); |
679 const WebString& name = webkit_glue::StringToWebString( | 680 const WebString& name = webkit_glue::StringToWebString( |
680 input_element->name()); | 681 input_element->name()); |
681 const WebString& value = webkit_glue::StringToWebString( | 682 const WebString& value = webkit_glue::StringToWebString( |
682 autocomplete_popup_client_->itemText(selected_index)); | 683 autocomplete_popup_client_->itemText(selected_index)); |
(...skipping 571 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1254 | 1255 |
1255 case WebTextDirectionLeftToRight: | 1256 case WebTextDirectionLeftToRight: |
1256 editor->setBaseWritingDirection(WebCore::LeftToRightWritingDirection); | 1257 editor->setBaseWritingDirection(WebCore::LeftToRightWritingDirection); |
1257 break; | 1258 break; |
1258 | 1259 |
1259 case WebTextDirectionRightToLeft: | 1260 case WebTextDirectionRightToLeft: |
1260 editor->setBaseWritingDirection(WebCore::RightToLeftWritingDirection); | 1261 editor->setBaseWritingDirection(WebCore::RightToLeftWritingDirection); |
1261 break; | 1262 break; |
1262 | 1263 |
1263 default: | 1264 default: |
1264 NOTIMPLEMENTED(); | 1265 notImplemented(); |
1265 break; | 1266 break; |
1266 } | 1267 } |
1267 } | 1268 } |
1268 | 1269 |
1269 // WebView -------------------------------------------------------------------- | 1270 // WebView -------------------------------------------------------------------- |
1270 | 1271 |
1271 WebSettings* WebViewImpl::settings() { | 1272 WebSettings* WebViewImpl::settings() { |
1272 if (!web_settings_.get()) | 1273 if (!web_settings_.get()) |
1273 web_settings_.set(new WebSettingsImpl(page_->settings())); | 1274 web_settings_.set(new WebSettingsImpl(page_->settings())); |
1274 ASSERT(web_settings_.get()); | 1275 ASSERT(web_settings_.get()); |
(...skipping 420 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1695 // focused node, then we have nothing to do. | 1696 // focused node, then we have nothing to do. |
1696 // TODO(jcampan): also check the carret is at the end and that the text has | 1697 // TODO(jcampan): also check the carret is at the end and that the text has |
1697 // not changed. | 1698 // not changed. |
1698 if (!focused_node.get() || | 1699 if (!focused_node.get() || |
1699 focused_node != webkit_glue::WebNodeToNode(node)) { | 1700 focused_node != webkit_glue::WebNodeToNode(node)) { |
1700 HideAutoCompletePopup(); | 1701 HideAutoCompletePopup(); |
1701 return; | 1702 return; |
1702 } | 1703 } |
1703 | 1704 |
1704 if (!focused_node->hasTagName(WebCore::HTMLNames::inputTag)) { | 1705 if (!focused_node->hasTagName(WebCore::HTMLNames::inputTag)) { |
1705 NOTREACHED(); | 1706 ASSERT_NOT_REACHED(); |
1706 return; | 1707 return; |
1707 } | 1708 } |
1708 | 1709 |
1709 WebCore::HTMLInputElement* input_elem = | 1710 WebCore::HTMLInputElement* input_elem = |
1710 static_cast<WebCore::HTMLInputElement*>(focused_node.get()); | 1711 static_cast<WebCore::HTMLInputElement*>(focused_node.get()); |
1711 | 1712 |
1712 // The first time the autocomplete is shown we'll create the client and the | 1713 // The first time the autocomplete is shown we'll create the client and the |
1713 // popup. | 1714 // popup. |
1714 if (!autocomplete_popup_client_.get()) | 1715 if (!autocomplete_popup_client_.get()) |
1715 autocomplete_popup_client_.set(new AutocompletePopupMenuClient(this)); | 1716 autocomplete_popup_client_.set(new AutocompletePopupMenuClient(this)); |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1910 hitTestResultAtPoint(doc_point, false); | 1911 hitTestResultAtPoint(doc_point, false); |
1911 } | 1912 } |
1912 | 1913 |
1913 void WebViewImpl::setTabsToLinks(bool enable) { | 1914 void WebViewImpl::setTabsToLinks(bool enable) { |
1914 tabs_to_links_ = enable; | 1915 tabs_to_links_ = enable; |
1915 } | 1916 } |
1916 | 1917 |
1917 bool WebViewImpl::tabsToLinks() const { | 1918 bool WebViewImpl::tabsToLinks() const { |
1918 return tabs_to_links_; | 1919 return tabs_to_links_; |
1919 } | 1920 } |
OLD | NEW |