On Mon, Jun 24, 2013 at 5:56 PM, Brandon Schaefer
<email address hidden> wrote:
> Hmm it seems to overwrite them :). For example with the draft you've made:
>
> If out last state was not maxed, and we go into a V Max we save X,Y,W,H. This should be our orig position.
>
> Then we go to a full max (V + H), in the Vert if statement we re-save Y, H (since are state is also a Horz max), and in the Horz Max we re-save the X, W causing the new position to be save where it was in the Vert Max position ie. the bug :). Sooo I suppose I should look into why saving is overwriting the window cords?
As I mentioned in (5) PrivateWindow::saveGeometry will only save
positions that have not yet been saved. This is because we only save
bits which are in mask & ~saveMask. Any bits in saveMask already will
be changed to 0 by ~. So if you call saveGeometry with CWX | CWWidth,
it will only overwrite them they were not already added to saveMask.
>
> Also some strange thing be happening with your changes, when I move to a vert maxed the window slowly decreases its width? Its actually pretty cool looking...but something must be off..
Indeed, as I mentioned in (b), there is a different bug which is
causing an incorrect offset move. Hence the reason why I'm getting
some acceptance tests around the decor plugin so that we can fix that.
On Mon, Jun 24, 2013 at 5:56 PM, Brandon Schaefer
<email address hidden> wrote:
> Hmm it seems to overwrite them :). For example with the draft you've made:
>
> If out last state was not maxed, and we go into a V Max we save X,Y,W,H. This should be our orig position.
>
> Then we go to a full max (V + H), in the Vert if statement we re-save Y, H (since are state is also a Horz max), and in the Horz Max we re-save the X, W causing the new position to be save where it was in the Vert Max position ie. the bug :). Sooo I suppose I should look into why saving is overwriting the window cords?
As I mentioned in (5) PrivateWindow: :saveGeometry will only save
positions that have not yet been saved. This is because we only save
bits which are in mask & ~saveMask. Any bits in saveMask already will
be changed to 0 by ~. So if you call saveGeometry with CWX | CWWidth,
it will only overwrite them they were not already added to saveMask.
>
> Also some strange thing be happening with your changes, when I move to a vert maxed the window slowly decreases its width? Its actually pretty cool looking...but something must be off..
Indeed, as I mentioned in (b), there is a different bug which is
causing an incorrect offset move. Hence the reason why I'm getting
some acceptance tests around the decor plugin so that we can fix that.