mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Support JavaScript window.moveTo/By() and resizeTo/By() (fixes #698)
Adds new CefDisplayHandler::OnContentsBoundsChange and CefDisplayHandler::GetRootWindowScreenRect callbacks. cefclient: Implement the above callbacks and call CefBrowserHost::NotifyScreenInfoChanged when the root window bounds change. cefclient: osr: Use real screen bounds by default. Pass `--fake-screen-bounds` for the old default behavior. Load https://tests/window in cefclient for additional implementation details and usage examples.
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
#include "tests/cefclient/browser/main_context.h"
|
||||
#include "tests/cefclient/browser/resource.h"
|
||||
#include "tests/cefclient/browser/views_style.h"
|
||||
#include "tests/shared/browser/geometry_util.h"
|
||||
#include "tests/shared/common/client_switches.h"
|
||||
|
||||
#if !defined(OS_WIN)
|
||||
@@ -229,7 +230,9 @@ void ViewsWindow::Maximize() {
|
||||
void ViewsWindow::SetBounds(const CefRect& bounds) {
|
||||
CEF_REQUIRE_UI_THREAD();
|
||||
if (window_) {
|
||||
window_->SetBounds(bounds);
|
||||
auto window_bounds = bounds;
|
||||
ConstrainWindowBounds(window_->GetDisplay()->GetWorkArea(), window_bounds);
|
||||
window_->SetBounds(window_bounds);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user