Opened 12 years ago
Closed 12 years ago
#2838 closed Bug (worksforme)
Snow Leopard Expose Bug -- Fix Included
Reported by: | bdkjones | Owned by: | livings124 |
---|---|---|---|
Priority: | Normal | Milestone: | None Set |
Component: | Mac Client | Version: | 1.83+ |
Severity: | Normal | Keywords: | Expose, drag, drop, overlay |
Cc: |
Description
Transmission's performance in Expose on OS 10.6 is spotty. Invoke Expose, then move the cursor over the Transmission window. You'll notice it "jumps" from blue box to no blue box until you move the cursor again.
The bug lies in 'DragOverlayWindow?.m' in the -initForWindow: method. That method currently looks like this:
- (id) initWithLib: (tr_session *) lib forWindow: (NSWindow *) window {
if ((self = ([super initWithContentRect: NSZeroRect styleMask: NSBorderlessWindowMask backing: NSBackingStoreBuffered defer: NO])))
[...]
The fix is to replace the "NSZeroRect" with the frame of the window that's passed to the -initWithLib:forWindow: method. As such, the fix looks like this:
- (id) initWithLib: (tr_session *) lib forWindow: (NSWindow *) window {
if ((self = ([super initWithContentRect: [window frame] styleMask: NSBorderlessWindowMask backing: NSBackingStoreBuffered defer: NO])))
[...]
I have tested this approach in my own application, which uses the same overlay drawing code as Transmission. I can verify that it produces reliable, standard behavior in Expose on 10.6 and fixes the problem I mentioned at the beginning of the ticket.
Change History (2)
comment:1 Changed 12 years ago by livings124
- Component changed from Transmission to Mac Client
- Owner set to livings124
comment:2 Changed 12 years ago by livings124
- Resolution set to worksforme
- Status changed from new to closed
Please reopen with more info.
I can't replicate this issue. Do you see this in r10054?