electron/shell/browser/ui/views/win_frame_view.h
Robo 068b464e13
fix: client area inset calculation when maximized for framless windows (#25052)
* adopt per monitor scale factor

* fix: client area inset calculation when maximized

* address review feedback

* pass correct glass insets to GetDwmFrameInsetsInPixels

* remove unused code

* Windows 8 and 10 use the same DWM frame calculation

Co-authored-by: Cheng Zhao <zcbenz@gmail.com>
2020-08-31 16:55:50 +09:00

33 lines
887 B
C++

// Copyright (c) 2014 GitHub, Inc.
// Use of this source code is governed by the MIT license that can be
// found in the LICENSE file.
#ifndef SHELL_BROWSER_UI_VIEWS_WIN_FRAME_VIEW_H_
#define SHELL_BROWSER_UI_VIEWS_WIN_FRAME_VIEW_H_
#include "shell/browser/ui/views/frameless_view.h"
namespace electron {
class WinFrameView : public FramelessView {
public:
static const char kViewClassName[];
WinFrameView();
~WinFrameView() override;
// views::NonClientFrameView:
gfx::Rect GetBoundsForClientView() const override;
gfx::Rect GetWindowBoundsForClientBounds(
const gfx::Rect& client_bounds) const override;
int NonClientHitTest(const gfx::Point& point) override;
// views::View:
const char* GetClassName() const override;
private:
DISALLOW_COPY_AND_ASSIGN(WinFrameView);
};
} // namespace electron
#endif // SHELL_BROWSER_UI_VIEWS_WIN_FRAME_VIEW_H_