zzag added a comment.
Restricted Application edited projects, added KWin; removed Plasma.
It seems to be working, but there is a problem with GTK apps. They have wrong
positions in their geometries:
Output like `"{...} -> {...}"` comes from `geometryChanged`:
js
geometryChanged: function (window, oldGeometry) {
"use strict";
print(JSON.stringify(oldGeometry), "->",
JSON.stringify(window.geometry));
if (window.fullScreenAnimation) {
Output like `"oldGeometry = ..."` comes from `fullScreenChanged`:
js
fullScreenChanged: function (window) {
"use strict";
if (!window.oldGeometry) {
return;
}
var oldGeometry = window.oldGeometry,
newGeometry = window.geometry;
if (oldGeometry.width == newGeometry.width &&
oldGeometry.height == newGeometry.height)
oldGeometry = window.olderGeometry;
window.olderGeometry = window.oldGeometry;
window.oldGeometry = newGeometry;
print("oldGeometry=", JSON.stringify(oldGeometry));
print("newGeometry=", JSON.stringify(newGeometry));
print("contentsRect=", JSON.stringify(window.contentsRect));
print("decorationInnerRect=",
JSON.stringify(window.decorationInnerRect));
window.fullScreenAnimation = animate({
Konsole(Qt): Entering Fullscreen mode
=====================================
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":55,\"y\":0,\"width\":1000,\"height\":583} ->
{\"x\":59,\"y\":29,\"width\":992,\"height\":550}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "oldGeometry= {\"x\":59,\"y\":29,\"width\":992,\"height\":550}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "newGeometry= {\"x\":0,\"y\":0,\"width\":1366,\"height\":768}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "contentsRect= {\"x\":0,\"y\":0,\"width\":1366,\"height\":768}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "decorationInnerRect= {\"x\":0,\"y\":0,\"width\":1366,\"height\":768}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":0,\"y\":0,\"width\":1366,\"height\":768} ->
{\"x\":0,\"y\":0,\"width\":1366,\"height\":768}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":55,\"y\":0,\"width\":1000,\"height\":583} ->
{\"x\":0,\"y\":0,\"width\":1366,\"height\":768}"
everything fine!
Konsole(Qt): Leaving Fullscreen mode
====================================
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":0,\"y\":0,\"width\":1366,\"height\":768} ->
{\"x\":-4,\"y\":-29,\"width\":1374,\"height\":801}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "oldGeometry= {\"x\":-4,\"y\":-29,\"width\":1374,\"height\":801}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "newGeometry= {\"x\":55,\"y\":0,\"width\":1000,\"height\":583}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "contentsRect= {\"x\":4,\"y\":29,\"width\":992,\"height\":550}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "decorationInnerRect= {\"x\":4,\"y\":29,\"width\":992,\"height\":550}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":55,\"y\":0,\"width\":1000,\"height\":583} ->
{\"x\":55,\"y\":0,\"width\":1000,\"height\":583}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":0,\"y\":0,\"width\":1366,\"height\":768} ->
{\"x\":55,\"y\":0,\"width\":1000,\"height\":583}"
everything fine!
Gimp(gtk): Entering Fullscreen mode
===================================
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":87,\"y\":0,\"width\":1141,\"height\":593} ->
{\"x\":87,\"y\":0,\"width\":1133,\"height\":560}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "oldGeometry= {\"x\":87,\"y\":0,\"width\":1133,\"height\":560}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "newGeometry= {\"x\":0,\"y\":0,\"width\":1366,\"height\":768}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "contentsRect= {\"x\":0,\"y\":0,\"width\":1366,\"height\":768}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "decorationInnerRect= {\"x\":0,\"y\":0,\"width\":1366,\"height\":768}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":0,\"y\":0,\"width\":1366,\"height\":768} ->
{\"x\":0,\"y\":0,\"width\":1366,\"height\":768}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":87,\"y\":0,\"width\":1141,\"height\":593} ->
{\"x\":0,\"y\":0,\"width\":1366,\"height\":768}"
should be
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "oldGeometry= {\"x\":87,\"y\":29,\"width\":1133,\"height\":560}"
NOTE: width and height are ok!
Gimp(gtk): Leaving Fullscreen mode
==================================
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":0,\"y\":0,\"width\":1366,\"height\":768} ->
{\"x\":0,\"y\":0,\"width\":1374,\"height\":801}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "oldGeometry= {\"x\":0,\"y\":0,\"width\":1374,\"height\":801}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "newGeometry= {\"x\":87,\"y\":0,\"width\":1141,\"height\":593}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "contentsRect= {\"x\":4,\"y\":29,\"width\":1133,\"height\":560}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "decorationInnerRect= {\"x\":4,\"y\":29,\"width\":1133,\"height\":560}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":87,\"y\":0,\"width\":1141,\"height\":593} ->
{\"x\":87,\"y\":0,\"width\":1141,\"height\":593}"
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "{\"x\":0,\"y\":0,\"width\":1366,\"height\":768} ->
{\"x\":87,\"y\":0,\"width\":1141,\"height\":593}"
should be:
kwin_scripting:
"/home/dev/kde/usr/share/kwin/effects/kwin4_effect_fullscreen/contents/code/fullscreen.js"
: "oldGeometry= {\"x\":-4,\"y\":-29,\"width\":1374,\"height\":801}"
NOTE: width and height are ok!
REPOSITORY
R108 KWin
REVISION DETAIL
https://phabricator.kde.org/D9391
To: zzag, #kwin, #plasma
Cc: graesslin, broulik, plasma-devel, kwin, bwowk, ZrenBot, progwolff,
lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart