| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2011, 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2011, 2012 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 2400 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2411 anchor = local_frame->View()->ContentsToViewport(anchor); | 2411 anchor = local_frame->View()->ContentsToViewport(anchor); |
| 2412 focus = local_frame->View()->ContentsToViewport(focus); | 2412 focus = local_frame->View()->ContentsToViewport(focus); |
| 2413 | 2413 |
| 2414 if (!selection.ComputeVisibleSelectionInDOMTree().IsBaseFirst()) | 2414 if (!selection.ComputeVisibleSelectionInDOMTree().IsBaseFirst()) |
| 2415 std::swap(anchor, focus); | 2415 std::swap(anchor, focus); |
| 2416 return true; | 2416 return true; |
| 2417 } | 2417 } |
| 2418 | 2418 |
| 2419 // TODO(ekaramad):This method is almost duplicated in WebFrameWidgetImpl as | 2419 // TODO(ekaramad):This method is almost duplicated in WebFrameWidgetImpl as |
| 2420 // well. This code needs to be refactored (http://crbug.com/629721). | 2420 // well. This code needs to be refactored (http://crbug.com/629721). |
| 2421 WebPlugin* WebViewImpl::FocusedPluginIfInputMethodSupported(LocalFrame* frame) { | |
| 2422 WebPluginContainerBase* container = | |
| 2423 WebLocalFrameImpl::CurrentPluginContainer(frame); | |
| 2424 if (container && container->SupportsInputMethod()) | |
| 2425 return container->Plugin(); | |
| 2426 return nullptr; | |
| 2427 } | |
| 2428 | |
| 2429 // TODO(ekaramad):This method is almost duplicated in WebFrameWidgetImpl as | |
| 2430 // well. This code needs to be refactored (http://crbug.com/629721). | |
| 2431 bool WebViewImpl::SelectionTextDirection(WebTextDirection& start, | 2421 bool WebViewImpl::SelectionTextDirection(WebTextDirection& start, |
| 2432 WebTextDirection& end) const { | 2422 WebTextDirection& end) const { |
| 2433 const LocalFrame* frame = FocusedLocalFrameInWidget(); | 2423 const LocalFrame* frame = FocusedLocalFrameInWidget(); |
| 2434 if (!frame) | 2424 if (!frame) |
| 2435 return false; | 2425 return false; |
| 2436 | 2426 |
| 2437 const FrameSelection& selection = frame->Selection(); | 2427 const FrameSelection& selection = frame->Selection(); |
| 2438 if (!selection.IsAvailable()) { | 2428 if (!selection.IsAvailable()) { |
| 2439 // plugins/mouse-capture-inside-shadow.html reaches here. | 2429 // plugins/mouse-capture-inside-shadow.html reaches here. |
| 2440 return false; | 2430 return false; |
| (...skipping 461 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2902 } | 2892 } |
| 2903 | 2893 |
| 2904 double WebViewImpl::ZoomLevel() { | 2894 double WebViewImpl::ZoomLevel() { |
| 2905 return zoom_level_; | 2895 return zoom_level_; |
| 2906 } | 2896 } |
| 2907 | 2897 |
| 2908 void WebViewImpl::PropagateZoomFactorToLocalFrameRoots(Frame* frame, | 2898 void WebViewImpl::PropagateZoomFactorToLocalFrameRoots(Frame* frame, |
| 2909 float zoom_factor) { | 2899 float zoom_factor) { |
| 2910 if (frame->IsLocalRoot()) { | 2900 if (frame->IsLocalRoot()) { |
| 2911 LocalFrame* local_frame = ToLocalFrame(frame); | 2901 LocalFrame* local_frame = ToLocalFrame(frame); |
| 2912 if (!WebLocalFrameImpl::PluginContainerFromFrame(local_frame)) | 2902 if (!local_frame->GetWebPluginContainerBase()) |
| 2913 local_frame->SetPageZoomFactor(zoom_factor); | 2903 local_frame->SetPageZoomFactor(zoom_factor); |
| 2914 } | 2904 } |
| 2915 | 2905 |
| 2916 for (Frame* child = frame->Tree().FirstChild(); child; | 2906 for (Frame* child = frame->Tree().FirstChild(); child; |
| 2917 child = child->Tree().NextSibling()) | 2907 child = child->Tree().NextSibling()) |
| 2918 PropagateZoomFactorToLocalFrameRoots(child, zoom_factor); | 2908 PropagateZoomFactorToLocalFrameRoots(child, zoom_factor); |
| 2919 } | 2909 } |
| 2920 | 2910 |
| 2921 double WebViewImpl::SetZoomLevel(double zoom_level) { | 2911 double WebViewImpl::SetZoomLevel(double zoom_level) { |
| 2922 if (zoom_level < minimum_zoom_level_) | 2912 if (zoom_level < minimum_zoom_level_) |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2954 maximum_zoom_level_ = maximum_zoom_level; | 2944 maximum_zoom_level_ = maximum_zoom_level; |
| 2955 client_->ZoomLimitsChanged(minimum_zoom_level_, maximum_zoom_level_); | 2945 client_->ZoomLimitsChanged(minimum_zoom_level_, maximum_zoom_level_); |
| 2956 } | 2946 } |
| 2957 | 2947 |
| 2958 float WebViewImpl::TextZoomFactor() { | 2948 float WebViewImpl::TextZoomFactor() { |
| 2959 return MainFrameImpl()->GetFrame()->TextZoomFactor(); | 2949 return MainFrameImpl()->GetFrame()->TextZoomFactor(); |
| 2960 } | 2950 } |
| 2961 | 2951 |
| 2962 float WebViewImpl::SetTextZoomFactor(float text_zoom_factor) { | 2952 float WebViewImpl::SetTextZoomFactor(float text_zoom_factor) { |
| 2963 LocalFrame* frame = MainFrameImpl()->GetFrame(); | 2953 LocalFrame* frame = MainFrameImpl()->GetFrame(); |
| 2964 if (WebLocalFrameImpl::PluginContainerFromFrame(frame)) | 2954 if (frame->GetWebPluginContainerBase()) |
| 2965 return 1; | 2955 return 1; |
| 2966 | 2956 |
| 2967 frame->SetTextZoomFactor(text_zoom_factor); | 2957 frame->SetTextZoomFactor(text_zoom_factor); |
| 2968 | 2958 |
| 2969 return text_zoom_factor; | 2959 return text_zoom_factor; |
| 2970 } | 2960 } |
| 2971 | 2961 |
| 2972 double WebView::ZoomLevelToZoomFactor(double zoom_level) { | 2962 double WebView::ZoomLevelToZoomFactor(double zoom_level) { |
| 2973 return pow(kTextSizeMultiplierRatio, zoom_level); | 2963 return pow(kTextSizeMultiplierRatio, zoom_level); |
| 2974 } | 2964 } |
| (...skipping 1187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4162 if (focused_frame->LocalFrameRoot() != MainFrameImpl()->GetFrame()) | 4152 if (focused_frame->LocalFrameRoot() != MainFrameImpl()->GetFrame()) |
| 4163 return nullptr; | 4153 return nullptr; |
| 4164 return focused_frame; | 4154 return focused_frame; |
| 4165 } | 4155 } |
| 4166 | 4156 |
| 4167 LocalFrame* WebViewImpl::FocusedLocalFrameAvailableForIme() const { | 4157 LocalFrame* WebViewImpl::FocusedLocalFrameAvailableForIme() const { |
| 4168 return ime_accept_events_ ? FocusedLocalFrameInWidget() : nullptr; | 4158 return ime_accept_events_ ? FocusedLocalFrameInWidget() : nullptr; |
| 4169 } | 4159 } |
| 4170 | 4160 |
| 4171 } // namespace blink | 4161 } // namespace blink |
| OLD | NEW |