Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#3394 closed defect (fixed)

Clock activity draws off the screen

Reported by: erikos Owned by: manuq
Priority: Unspecified by Maintainer Milestone: Unspecified
Component: Clock Version: Unspecified
Severity: Unspecified Keywords: 12.1.0
Cc: tonyforster Distribution/OS: OLPC
Bug Status: Unconfirmed

Description

In http://build.laptop.org/12.1.0/os5/ the clock activity draws off the screen on an XO.

Attachments (1)

0001-Set-clock-center-relative-to-ClockFace-widget-not-ac.patch (1.2 KB) - added by manuq 7 years ago.

Download all attachments as: .zip

Change History (10)

comment:1 Changed 7 years ago by erikos

(same on 1.75)

comment:2 Changed 7 years ago by manuq

This worked fine in os833, now in os5 I see the bug. And I see it in sugar-jhbuild in my dev machine with F16 too, so is not only related to the XOs.

Did a debug in the size allocation callback of ClockFace widget and the allocation seems fine, correct width, height, x and y.

More news later.

comment:3 Changed 7 years ago by manuq

Forgot to say that Clock activity code has not changed in a while, and the bug seems provoked by the change of external dependencies.

comment:4 follow-up: Changed 7 years ago by manuq

Solved. Seems that the expose callback now is not relative to the parent's position (if it ever was), so this solves the issue:

  • self._center_x = int(allocation.x + allocation.width / 2.0)
  • self._center_y = int(allocation.y + allocation.height / 2.0)

+ self._center_x = int(allocation.width / 2.0)
+ self._center_y = int(allocation.height / 2.0)

I will send the corresponding patch to sugar-devel.

comment:5 Changed 7 years ago by manuq

Still happens in os7.

comment:6 in reply to: ↑ 4 Changed 7 years ago by garycmartin

Replying to manuq:

Solved. Seems that the expose callback now is not relative to the parent's position (if it ever was), so this solves the issue:

  • self._center_x = int(allocation.x + allocation.width / 2.0)
  • self._center_y = int(allocation.y + allocation.height / 2.0)

+ self._center_x = int(allocation.width / 2.0)
+ self._center_y = int(allocation.height / 2.0)

I will send the corresponding patch to sugar-devel.

OK, just retested. 12.1.0 builds are now returning a value of 75 for allocation.y, in the old releases allocation.y returns 0. Not sure if this should be considered an issue with the 12.1.0 build, possibly effecting other Activities, or just something to fix in Clock? After retesting the patch on both old and new builds it does solve the issue for Clock (I'd previously seen Clock draw a grey screen when testing in previous releases, but this appears to be an existing, unrelated, interment bug on XO-1s I'd not noticed before, will investigate it separately and land this fix).

comment:7 follow-up: Changed 7 years ago by tonyforster

  • Cc tonyforster added

OS8 xo-1.75 still faulty

comment:8 Changed 7 years ago by manuq

  • Resolution set to fixed
  • Status changed from new to closed

This was pushed as aedc2c95670b51ceb1d18ec46728acc9bac5058b .

comment:9 in reply to: ↑ 7 Changed 7 years ago by humitos

Replying to tonyforster:

OS8 xo-1.75 still faulty

I can confirm this.

In my Debian Testing (sugar-jhbuild) instance with the git repository source I don't have this problem. I can see the whole clock in the screen.

I downloaded the git version in my XO 1.75 os8 and I couldn't reproduce this bug.

Note: See TracTickets for help on using tickets.