Merge branch 'KDE/4.11'
This commit is contained in:
commit
feafbca941
4 changed files with 8 additions and 11 deletions
|
@ -34,7 +34,7 @@ function isLoginWindow(w) {
|
|||
var fadeInTime, fadeOutTime, fadeWindows;
|
||||
function loadConfig() {
|
||||
fadeInTime = animationTime(effect.readConfig("FadeInTime", 150));
|
||||
fadeOutTime = animationTime(effect.readConfig("FadeOutTime", 150));
|
||||
fadeOutTime = animationTime(effect.readConfig("FadeOutTime", 600));
|
||||
fadeWindows = effect.readConfig("FadeWindows", true);
|
||||
}
|
||||
loadConfig();
|
||||
|
@ -48,6 +48,6 @@ effects.windowAdded.connect(function(w) {
|
|||
});
|
||||
effects.windowClosed.connect(function(w) {
|
||||
if (fadeWindows && isFadeWindow(w)) {
|
||||
effect.animate(w, Effect.Opacity, fadeOutTime, 0.0);
|
||||
effect.animate(w, Effect.Opacity, fadeOutTime, 0.0, "", QEasingCurve.OutQuart);
|
||||
}
|
||||
});
|
||||
|
|
|
@ -2364,11 +2364,10 @@ bool Client::isFullScreenable(bool fullscreen_hack) const
|
|||
return false;
|
||||
if (fullscreen_hack)
|
||||
return isNormalWindow();
|
||||
if (rules()->checkStrictGeometry(false)) {
|
||||
// the app wouldn't fit exactly fullscreen geometry due to its strict geometry requirements
|
||||
if (rules()->checkStrictGeometry(true)) { // allow rule to ignore geometry constraints
|
||||
QRect fsarea = workspace()->clientArea(FullScreenArea, this);
|
||||
if (sizeForClientSize(fsarea.size(), SizemodeAny, true) != fsarea.size())
|
||||
return false;
|
||||
return false; // the app wouldn't fit exactly fullscreen geometry due to its strict geometry requirements
|
||||
}
|
||||
// don't check size constrains - some apps request fullscreen despite requesting fixed size
|
||||
return !isSpecialWindow(); // also better disallow only weird types to go fullscreen
|
||||
|
@ -2380,9 +2379,7 @@ bool Client::userCanSetFullScreen() const
|
|||
return false;
|
||||
if (!isFullScreenable(false))
|
||||
return false;
|
||||
// isMaximizable() returns false if fullscreen
|
||||
TemporaryAssign< FullScreenMode > tmp(fullscreen_mode, FullScreenNone);
|
||||
return isNormalWindow() && isMaximizable();
|
||||
return isNormalWindow() || isDialog();
|
||||
}
|
||||
|
||||
void Client::setFullScreen(bool set, bool user)
|
||||
|
|
|
@ -450,7 +450,7 @@ void Workspace::restack(Client* c, Client* under)
|
|||
// put in the stacking order below _all_ windows belonging to the active application
|
||||
for (int i = 0; i < unconstrained_stacking_order.size(); ++i) {
|
||||
Client *other = qobject_cast<Client*>(unconstrained_stacking_order.at(i));
|
||||
if (other && Client::belongToSameApplication(under, other)) {
|
||||
if (other && other->layer() == c->layer() && Client::belongToSameApplication(under, other)) {
|
||||
under = (c == other) ? 0 : other;
|
||||
break;
|
||||
}
|
||||
|
@ -468,7 +468,7 @@ void Workspace::restack(Client* c, Client* under)
|
|||
|
||||
void Workspace::restackClientUnderActive(Client* c)
|
||||
{
|
||||
if (!active_client || active_client == c) {
|
||||
if (!active_client || active_client == c || active_client->layer() != c->layer()) {
|
||||
raiseClient(c);
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -569,7 +569,7 @@ bool Client::manage(xcb_window_t w, bool isMapped)
|
|||
}
|
||||
} else if (allow) {
|
||||
// also force if activation is allowed
|
||||
if (!isOnCurrentDesktop()) {
|
||||
if (!isOnCurrentDesktop() && options->focusPolicyIsReasonable()) {
|
||||
VirtualDesktopManager::self()->setCurrent(desktop());
|
||||
}
|
||||
/*if (!isOnCurrentActivity()) {
|
||||
|
|
Loading…
Reference in a new issue