Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.2
compiz
compiz-place-fix-bnc442052.diff
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File compiz-place-fix-bnc442052.diff of Package compiz
--- a/plugins/place.c +++ b/plugins/place.c @@ -1085,21 +1085,31 @@ placeConstrainToWorkarea (CompWindow *w, int *y) { CompWindowExtents extents; + int delta; extents.left = *x - w->input.left; extents.top = *y - w->input.top; extents.right = *x + w->serverWidth + w->input.right; extents.bottom = *y + w->serverHeight + w->input.bottom; - if (extents.left < workArea->x) - *x += workArea->x - extents.left; - else if (extents.right > workArea->x + workArea->width) - *x += workArea->x + workArea->width - extents.right; + delta = workArea->x + workArea->width - extents.right; + if (delta < 0) + extents.left += delta; - if (extents.top < workArea->y) - *y += workArea->y - extents.top; - else if (extents.bottom > workArea->y + workArea->height) - *y += workArea->y + workArea->height - extents.bottom; + delta = workArea->x - extents.left; + if (delta > 0) + extents.left += delta; + + delta = workArea->y + workArea->height - extents.bottom; + if (delta < 0) + extents.top += delta; + + delta = workArea->y - extents.top; + if (delta > 0) + extents.top += delta; + + *x = extents.left + w->input.left; + *y = extents.top + w->input.top; } static Bool
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor