Compare commits
2 Commits
eb276e7179
...
4f2fcd8865
Author | SHA1 | Date |
---|---|---|
|
4f2fcd8865 | |
|
e4413419b8 |
|
@ -314,6 +314,9 @@ void FluFramelessHelper::componentComplete(){
|
||||||
_appBar.value<QObject*>()->setProperty("systemMoveEnable",false);
|
_appBar.value<QObject*>()->setProperty("systemMoveEnable",false);
|
||||||
}
|
}
|
||||||
window->setFlags((window->flags()) | Qt::CustomizeWindowHint | Qt::WindowMinimizeButtonHint | Qt::WindowCloseButtonHint);
|
window->setFlags((window->flags()) | Qt::CustomizeWindowHint | Qt::WindowMinimizeButtonHint | Qt::WindowCloseButtonHint);
|
||||||
|
if(resizeable()){
|
||||||
|
window->setFlag(Qt::WindowMaximizeButtonHint);
|
||||||
|
}
|
||||||
_nativeEvent =new FramelessEventFilter(this);
|
_nativeEvent =new FramelessEventFilter(this);
|
||||||
qApp->installNativeEventFilter(_nativeEvent);
|
qApp->installNativeEventFilter(_nativeEvent);
|
||||||
HWND hwnd = reinterpret_cast<HWND>(window->winId());
|
HWND hwnd = reinterpret_cast<HWND>(window->winId());
|
||||||
|
@ -343,9 +346,7 @@ void FluFramelessHelper::componentComplete(){
|
||||||
#endif
|
#endif
|
||||||
int w = _realWidth.read().toInt();
|
int w = _realWidth.read().toInt();
|
||||||
int h = _realHeight.read().toInt()+_appBarHeight.read().toInt();
|
int h = _realHeight.read().toInt()+_appBarHeight.read().toInt();
|
||||||
if(resizeable()){
|
if(!resizeable()){
|
||||||
window->setFlag(Qt::WindowMaximizeButtonHint);
|
|
||||||
}else{
|
|
||||||
window->setMaximumSize(QSize(w,h));
|
window->setMaximumSize(QSize(w,h));
|
||||||
window->setMinimumSize(QSize(w,h));
|
window->setMinimumSize(QSize(w,h));
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,7 +43,7 @@ Window {
|
||||||
property bool useSystemAppBar
|
property bool useSystemAppBar
|
||||||
property color resizeBorderColor: {
|
property color resizeBorderColor: {
|
||||||
if(window.active){
|
if(window.active){
|
||||||
return _accentColor
|
return FluTheme.dark ? "#333333" : "#6E6E6E"
|
||||||
}
|
}
|
||||||
return FluTheme.dark ? "#3D3D3E" : "#A7A7A7"
|
return FluTheme.dark ? "#3D3D3E" : "#A7A7A7"
|
||||||
}
|
}
|
||||||
|
@ -61,7 +61,6 @@ Window {
|
||||||
signal firstVisible()
|
signal firstVisible()
|
||||||
property point _offsetXY : Qt.point(0,0)
|
property point _offsetXY : Qt.point(0,0)
|
||||||
property var _originalPos
|
property var _originalPos
|
||||||
property color _accentColor : FluTheme.dark ? "#333333" : "#6E6E6E"
|
|
||||||
property int _realHeight
|
property int _realHeight
|
||||||
property int _realWidth
|
property int _realWidth
|
||||||
property int _appBarHeight: appBar.height
|
property int _appBarHeight: appBar.height
|
||||||
|
@ -204,18 +203,22 @@ Window {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Component{
|
||||||
|
id:com_border
|
||||||
|
Rectangle{
|
||||||
|
color:"transparent"
|
||||||
|
border.width: window.resizeBorderWidth
|
||||||
|
border.color: window.resizeBorderColor
|
||||||
|
}
|
||||||
|
}
|
||||||
FluLoader{
|
FluLoader{
|
||||||
id:loader_frameless_helper
|
id:loader_frameless_helper
|
||||||
}
|
}
|
||||||
Item{
|
Item{
|
||||||
id:layout_container
|
id:layout_container
|
||||||
property bool isMaximum : window.visibility == Window.Maximized
|
|
||||||
anchors{
|
anchors{
|
||||||
fill:parent
|
fill:parent
|
||||||
topMargin: _offsetXY.y
|
topMargin: _offsetXY.y
|
||||||
bottomMargin: isMaximum ? 0 : _offsetXY.y
|
|
||||||
leftMargin: isMaximum ? 0 :_offsetXY.x
|
|
||||||
rightMargin: isMaximum ? 0 : _offsetXY.x
|
|
||||||
}
|
}
|
||||||
onWidthChanged: {
|
onWidthChanged: {
|
||||||
window.appBar.width = width
|
window.appBar.width = width
|
||||||
|
@ -262,27 +265,22 @@ Window {
|
||||||
FluWindowLifecycle{
|
FluWindowLifecycle{
|
||||||
id:lifecycle
|
id:lifecycle
|
||||||
}
|
}
|
||||||
Rectangle{
|
// FluLoader{
|
||||||
anchors.fill: parent
|
// id:loader_border
|
||||||
color:"transparent"
|
// anchors.fill: parent
|
||||||
border.width: window.resizeBorderWidth
|
// sourceComponent: {
|
||||||
border.color: window.resizeBorderColor
|
// if(window.useSystemAppBar){
|
||||||
visible: {
|
// return undefined
|
||||||
if(window.useSystemAppBar || FluTools.isWindows10OrGreater()){
|
// }
|
||||||
return false
|
// if(FluTools.isWindows10OrGreater()){
|
||||||
}
|
// return undefined
|
||||||
if(FluTools.isMacos()){
|
// }
|
||||||
if(window.visibility == Window.FullScreen){
|
// if(window.visibility == Window.Maximized || window.visibility == Window.FullScreen){
|
||||||
return false
|
// return undefined
|
||||||
}
|
// }
|
||||||
}else{
|
// return com_border
|
||||||
if(window.visibility == Window.Maximized || window.visibility == Window.FullScreen){
|
// }
|
||||||
return false
|
// }
|
||||||
}
|
|
||||||
}
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
function destoryOnClose(){
|
function destoryOnClose(){
|
||||||
lifecycle.onDestoryOnClose()
|
lifecycle.onDestoryOnClose()
|
||||||
|
|
|
@ -42,7 +42,7 @@ Window {
|
||||||
property bool useSystemAppBar
|
property bool useSystemAppBar
|
||||||
property color resizeBorderColor: {
|
property color resizeBorderColor: {
|
||||||
if(window.active){
|
if(window.active){
|
||||||
return _accentColor
|
return FluTheme.dark ? "#333333" : "#6E6E6E"
|
||||||
}
|
}
|
||||||
return FluTheme.dark ? "#3D3D3E" : "#A7A7A7"
|
return FluTheme.dark ? "#3D3D3E" : "#A7A7A7"
|
||||||
}
|
}
|
||||||
|
@ -60,7 +60,6 @@ Window {
|
||||||
signal firstVisible()
|
signal firstVisible()
|
||||||
property point _offsetXY : Qt.point(0,0)
|
property point _offsetXY : Qt.point(0,0)
|
||||||
property var _originalPos
|
property var _originalPos
|
||||||
property color _accentColor : FluTheme.dark ? "#333333" : "#6E6E6E"
|
|
||||||
property int _realHeight
|
property int _realHeight
|
||||||
property int _realWidth
|
property int _realWidth
|
||||||
property int _appBarHeight: appBar.height
|
property int _appBarHeight: appBar.height
|
||||||
|
@ -203,6 +202,14 @@ Window {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Component{
|
||||||
|
id:com_border
|
||||||
|
Rectangle{
|
||||||
|
color:"transparent"
|
||||||
|
border.width: window.resizeBorderWidth
|
||||||
|
border.color: window.resizeBorderColor
|
||||||
|
}
|
||||||
|
}
|
||||||
FluLoader{
|
FluLoader{
|
||||||
id:loader_frameless_helper
|
id:loader_frameless_helper
|
||||||
}
|
}
|
||||||
|
@ -257,27 +264,22 @@ Window {
|
||||||
FluWindowLifecycle{
|
FluWindowLifecycle{
|
||||||
id:lifecycle
|
id:lifecycle
|
||||||
}
|
}
|
||||||
Rectangle{
|
// FluLoader{
|
||||||
anchors.fill: parent
|
// id:loader_border
|
||||||
color:"transparent"
|
// anchors.fill: parent
|
||||||
border.width: window.resizeBorderWidth
|
// sourceComponent: {
|
||||||
border.color: window.resizeBorderColor
|
// if(window.useSystemAppBar){
|
||||||
visible: {
|
// return undefined
|
||||||
if(window.useSystemAppBar || FluTools.isWindows10OrGreater()){
|
// }
|
||||||
return false
|
// if(FluTools.isWindows10OrGreater()){
|
||||||
}
|
// return undefined
|
||||||
if(FluTools.isMacos()){
|
// }
|
||||||
if(window.visibility == Window.FullScreen){
|
// if(window.visibility == Window.Maximized || window.visibility == Window.FullScreen){
|
||||||
return false
|
// return undefined
|
||||||
}
|
// }
|
||||||
}else{
|
// return com_border
|
||||||
if(window.visibility == Window.Maximized || window.visibility == Window.FullScreen){
|
// }
|
||||||
return false
|
// }
|
||||||
}
|
|
||||||
}
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
function destoryOnClose(){
|
function destoryOnClose(){
|
||||||
lifecycle.onDestoryOnClose()
|
lifecycle.onDestoryOnClose()
|
||||||
|
|
Loading…
Reference in New Issue