fix kde/qt iconic startup bug

SVN revision: 23505
This commit is contained in:
Carsten Haitzler 2006-06-19 19:29:31 +00:00
parent c025903109
commit 0d4723e3b7
4 changed files with 48 additions and 25 deletions

6
TODO
View File

@ -20,12 +20,10 @@ Some of the things (in very short form) that need to be done to E17...
* BUG: change exe name in basic mode in eap editor and icon vanishes (don't
extract existing icon and write out to tmp .png while rebuilding).
* BUG: resolution (xrandr) changes seem to screw the shelf up a bit.
* BUG: openoffice2's impress presentation fullscreen has sizing and
configuration issues.
* BUG: ghost windows happen if windows close when on another desktop or if
windows are very short-lived
* BUG: k3b has minimization issues when burning cds (it tries to unminimize
its window and this doesn't work)
* BUG: openoffice 2's impress presentation fullscreen has sizing and
configuration issues.
* BUG: openoffice 2 when displaying a presentation with xinerama (multiple
zones) weird things happen (the presentation doesnt display - it seemingly
attaches to the 2nd zone, not the first), crashes have been reported too.

View File

@ -4797,38 +4797,69 @@ group {
}
parts {
part {
name: "pixel";
name: "pixel1";
type: RECT;
description {
state: "default" 0.0;
visible: 1;
rel1 {
relative: 0.0 0.0;
offset: 0 0;
}
rel2 {
relative: 1.0 1.0;
offset: -1 -1;
relative: 1.0 0.0;
offset: -1 0;
}
color: 0 0 0 255;
color: 0 0 0 255;
}
}
}
part {
name: "whole";
name: "pixel2";
type: RECT;
description {
state: "default" 0.0;
visible: 0;
rel1 {
relative: 0.0 0.0;
offset: 0 0;
relative: 0.0 1.0;
offset: 0 -1;
}
rel2 {
relative: 1.0 1.0;
offset: -1 -1;
}
color: 0 0 0 255;
}
}
}
part {
name: "pixel3";
type: RECT;
description {
state: "default" 0.0;
rel1 {
relative: 0.0 0.0;
offset: 0 1;
}
rel2 {
relative: 0.0 1.0;
offset: 0 -2;
}
color: 0 0 0 255;
}
}
part {
name: "pixel4";
type: RECT;
description {
state: "default" 0.0;
rel1 {
relative: 1.0 0.0;
offset: -1 1;
}
rel2 {
relative: 1.0 1.0;
offset: -1 -2;
}
color: 0 0 0 255;
}
}
part {
name: "client";
type: SWALLOW;
@ -4837,13 +4868,10 @@ group {
rel1 {
relative: 0.0 0.0;
offset: 1 1;
to: "pixel";
}
rel2 {
relative: 1.0 1.0;
offset: -2 -2;
to: "pixel";
}
}
}

View File

@ -703,10 +703,7 @@ e_border_hide(E_Border *bd, int manage)
}
e_container_shape_hide(bd->shape);
/* FIXME: If the client unmaps itself, the border should be
* withdrawn, not iconic */
if (!bd->iconic)
e_hints_window_hidden_set(bd);
if (!bd->iconic) e_hints_window_hidden_set(bd);
bd->visible = 0;
bd->changes.visible = 1;

View File

@ -1040,10 +1040,10 @@ e_hints_window_iconic_set(E_Border *bd)
EAPI void
e_hints_window_hidden_set(E_Border *bd)
{
if (bd->client.icccm.state != ECORE_X_WINDOW_STATE_HINT_ICONIC)
if (bd->client.icccm.state != ECORE_X_WINDOW_STATE_HINT_WITHDRAWN)
{
ecore_x_icccm_state_set(bd->client.win, ECORE_X_WINDOW_STATE_HINT_ICONIC);
bd->client.icccm.state = ECORE_X_WINDOW_STATE_HINT_ICONIC;
ecore_x_icccm_state_set(bd->client.win, ECORE_X_WINDOW_STATE_HINT_WITHDRAWN);
bd->client.icccm.state = ECORE_X_WINDOW_STATE_HINT_WITHDRAWN;
}
if (bd->client.netwm.state.hidden)
{