Opened 12 years ago

Closed 12 years ago

Last modified 8 years ago

#1060 closed defect (fixed)

Intermittent Metacity layering issues

Reported by: garycmartin Owned by: tomeu
Priority: Unspecified by Maintainer Milestone:
Component: Sugar Version: 0.85.x
Severity: Critical Keywords:
Cc: sascha_silbe, sayamindu Distribution/OS: Unspecified
Bug Status: Needinfo

Description

Opening a ticket to track Metacity layering issues. The frame, a number of frame menus, and the object chooser are getting intermittently clobbered. I'm still trying to find a reliable series reproducible steps to trigger:

  • Frame pop-up menus go behind Activity windows. In 'desktop' layer views (neighbourhood/group/home) the frame menus appear fine, but switching back to an Activity the menus are inaccessible again.
  • The entire frame fails to appear in all views (need to reboot after this one, perhaps not a layering bug?)
  • Object Chooser dialogue appears behind the Activity window that requested it (seen this a number of times in Memorize when trying to load a game).

Change History (19)

comment:1 follow-up: Changed 12 years ago by garycmartin

One more likely metacity likely layer clobber:

  • Pulsing copy notification in lower left corner of screen is not appearing.

comment:2 Changed 12 years ago by sascha_silbe

  • Cc sascha_silbe added

comment:3 Changed 12 years ago by walter

I have seen the same behavior with object-chooser using sugar-jhbuild. I cannot seem to come up with a consistent way of reproducing the problem... comes and goes. Switching views sometimes causes the dialog to pop to the top... sometimes not.

comment:4 Changed 12 years ago by garycmartin

  • Cc sayamindu added

comment:5 Changed 12 years ago by garycmartin

  • Milestone changed from Unspecified by Release Team to 0.86
  • Severity changed from Major to Critical

Not sure where to start looking, way out of my depth here :-(

comment:6 in reply to: ↑ description ; follow-up: Changed 12 years ago by alsroot

Replying to garycmartin:

Opening a ticket to track Metacity layering issues. The frame, a number of frame menus, and the object chooser are getting intermittently clobbered. I'm still trying to find a reliable series reproducible steps to trigger:

  • Frame pop-up menus go behind Activity windows. In 'desktop' layer views (neighbourhood/group/home) the frame menus appear fine, but switching back to an Activity the menus are inaccessible again.

could you post exact steps, for me it looks fine w/ git versions

  • The entire frame fails to appear in all views (need to reboot after this one, perhaps not a layering bug?)

also, what exact actions to reproduce bug

  • Object Chooser dialogue appears behind the Activity window that requested it (seen this a number of times in Memorize when trying to load a game).

I can reproduce this issue only if activities omited "parent" argument for ObjectChooser(), w/ "parent" it works fine

comment:7 in reply to: ↑ 6 ; follow-ups: Changed 12 years ago by garycmartin

Replying to alsroot:

Replying to garycmartin:

Opening a ticket to track Metacity layering issues. The frame, a number of frame menus, and the object chooser are getting intermittently clobbered. I'm still trying to find a reliable series reproducible steps to trigger:

  • Frame pop-up menus go behind Activity windows. In 'desktop' layer views (neighbourhood/group/home) the frame menus appear fine, but switching back to an Activity the menus are inaccessible again.

could you post exact steps, for me it looks fine w/ git versions

I can confirm this is still a major issue with latest pull from git. It is never a problem if you are in a desktop view (neighbourhood, group, home); it only appears when your in an activity view. To reproduce try these steps:

1) open some activities (say, Log, Terminal, Write) you can reproduce with just one, but easier with more
2) in any of the open activities try to access it's top frame activity menu
3) often the tool icon will light, but the actual palette does not show (my assumption is it's hidden behind the activity window)
4) if the palette showed correctly (sometimes it does work) switch to one of the other activities and try again
5) once you've seen the palette issue, switching to home view and trying the palette again will show that it displays fine when no Activity window is covering the screen.

All palettes that appear from Frame toolbar icons can exhibit this issue (Copy, Device, Buddy, Zoom views, Activity palettes).

  • The entire frame fails to appear in all views (need to reboot after this one, perhaps not a layering bug?)

also, what exact actions to reproduce bug

Sorry this one is very intermittent, it may well not be a layering issue and could be a separate bug. I did see it 2 days ago so it's still about, just very rare. It seems to happen after Stopping or Resuming an activity, but that's just a guess from the perhaps 4-5 times I've seen this. Note: because Xephyr/X bug for me is 95% not accepting Sugar specific keys, I can't switch to other views one the frame stops showing, so it's hard for me to test further when it does happen (and I just have to force quit).

  • Object Chooser dialogue appears behind the Activity window that requested it (seen this a number of times in Memorize when trying to load a game).

I can reproduce this issue only if activities omited "parent" argument for ObjectChooser(), w/ "parent" it works fine

OK, I will try and test this again to confirm. FWIW Labyrinth doesn't currently used the parent argument as I could find no clean way of passing the activity self all the way down through the class and event structures. Will need some invasive changes there to fix :-(

Thanks for the feedback!

comment:8 in reply to: ↑ 7 Changed 12 years ago by alsroot

Replying to garycmartin:

Replying to alsroot:

  • Object Chooser dialogue appears behind the Activity window that requested it (seen this a number of times in Memorize when trying to load a game).

I can reproduce this issue only if activities omited "parent" argument for ObjectChooser(), w/ "parent" it works fine

OK, I will try and test this again to confirm. FWIW Labyrinth doesn't currently used the parent argument as I could find no clean way of passing the activity self all the way down through the class and event structures. Will need some invasive changes there to fix :-(

Use get_toplevel()
http://library.gnome.org/devel/pygtk/stable/class-gtkwidget.html#method-gtkwidget--get-toplevel

comment:9 in reply to: ↑ 7 ; follow-ups: Changed 12 years ago by alsroot

Replying to garycmartin:

Replying to alsroot:

Replying to garycmartin:

Opening a ticket to track Metacity layering issues. The frame, a number of frame menus, and the object chooser are getting intermittently clobbered. I'm still trying to find a reliable series reproducible steps to trigger:

  • Frame pop-up menus go behind Activity windows. In 'desktop' layer views (neighbourhood/group/home) the frame menus appear fine, but switching back to an Activity the menus are inaccessible again.

could you post exact steps, for me it looks fine w/ git versions

1) open some activities (say, Log, Terminal, Write) you can reproduce with just one, but easier with more
2) in any of the open activities try to access it's top frame activity menu
3) often the tool icon will light, but the actual palette does not show (my assumption is it's hidden behind the activity window)
4) if the palette showed correctly (sometimes it does work) switch to one of the other activities and try again
5) once you've seen the palette issue, switching to home view and trying the palette again will show that it displays fine when no Activity window is covering the screen.

All palettes that appear from Frame toolbar icons can exhibit this issue (Copy, Device, Buddy, Zoom views, Activity palettes).

The first stage with broken frame palettes looks like #1285,
could you remove self.window.set_override_redirect(True) line from src/jarabe/frame/framewindow.py and try once more

5) once you've seen the palette issue, switching to home view and trying the palette again will show that it displays fine when no Activity window is covering the screen.

by "trying the palette again" you mean left click, or right click and choosing "Resume" from menu?

comment:10 in reply to: ↑ 1 ; follow-up: Changed 12 years ago by alsroot

Replying to garycmartin:

One more likely metacity likely layer clobber:

  • Pulsing copy notification in lower left corner of screen is not appearing.

You mean it doesn't appear at all or only in some cases,
I tried in the shell and in several activities, works fine for me.

comment:11 in reply to: ↑ 9 ; follow-up: Changed 12 years ago by garycmartin

Replying to alsroot:

The first stage with broken frame palettes looks like #1285,
could you remove self.window.set_override_redirect(True) line from src/jarabe/frame/framewindow.py and try once more

Cool, removing self.window.set_override_redirect(True) and the Frame palettes are showing up reliably :-) There is a new side effect unfortunately, in that now the frame is often completely blank of any icon toolbuttons when first displayed. Steps to reproduce:

1) Whack you mouse cursor into a corner and don't move it (I can't use Sugar keyboard shortcut so don't know if it shows the issue)
2) If icons show up correctly (less than 50% for me), move mouse cursor back out of frame so it auto hides, and try step 1 again
3) Once you see empty dark grey frame, you can trigger icon redraw by moving the cursor to where a toolbutton should be, or moving out of the frame will momentarily show the tool buttons just before the frame auto hides.

comment:12 in reply to: ↑ 9 Changed 12 years ago by garycmartin

Replying to alsroot:

5) once you've seen the palette issue, switching to home view and trying the palette again will show that it displays fine when no Activity window is covering the screen.

by "trying the palette again" you mean left click, or right click and choosing "Resume" from menu?

Say you have Log Activity running, and none of the Frame palettes are showing over it. Using the Frame to switch to Home view, and then mousing over any Frame toolbar icon again would display its palette correctly (i.e. Frame palettes only disappearing when an Activity window is exposed).

comment:13 in reply to: ↑ 10 Changed 12 years ago by garycmartin

Replying to alsroot:

Replying to garycmartin:

One more likely metacity likely layer clobber:

  • Pulsing copy notification in lower left corner of screen is not appearing.

You mean it doesn't appear at all or only in some cases,
I tried in the shell and in several activities, works fine for me.

Sorry, only appears in some cases (just like Frame palette case). From testing with and without self.window.set_override_redirect(True), removal of this line also appears to fix this issue (as long as the Frame icons display issue can be resolved via some additional fix).

comment:14 in reply to: ↑ 11 Changed 12 years ago by alsroot

Replying to garycmartin:

Replying to alsroot:

The first stage with broken frame palettes looks like #1285,
could you remove self.window.set_override_redirect(True) line from src/jarabe/frame/framewindow.py and try once more

Cool, removing self.window.set_override_redirect(True) and the Frame palettes are showing up reliably :-) There is a new side effect unfortunately, in that now the frame is often completely blank of any icon toolbuttons when first displayed. Steps to reproduce:

1) Whack you mouse cursor into a corner and don't move it (I can't use Sugar keyboard shortcut so don't know if it shows the issue)
2) If icons show up correctly (less than 50% for me), move mouse cursor back out of frame so it auto hides, and try step 1 again
3) Once you see empty dark grey frame, you can trigger icon redraw by moving the cursor to where a toolbutton should be, or moving out of the frame will momentarily show the tool buttons just before the frame auto hides.

can you reproduce issue w/ removed self.window.set_override_redirect(True) and applied
http://dev.sugarlabs.org/attachment/ticket/1285/sugar-1285-hidden-frame-buttons.patch

comment:15 Changed 12 years ago by garycmartin

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

Closing as I think all these cases are now resolved, Sugar palettes under Metacity are now behaving themselves very well :-)

comment:16 follow-up: Changed 12 years ago by walter

Actually, the one place I am still having problems is with the Control Panel, which in recent jhbuilds seems not to appear. (I actually haven't done my homework to determine if it a Metacity problem or something else altogether.)

comment:17 in reply to: ↑ 16 Changed 12 years ago by alsroot

Replying to walter:

Actually, the one place I am still having problems is with the Control Panel, which in recent jhbuilds seems not to appear. (I actually haven't done my homework to determine if it a Metacity problem or something else altogether.)

You mean #1138 like issue?

comment:18 Changed 12 years ago by walter

Actually, it seems to be related to a different bug all together (#1341). But definitely not the one, so my apologies for reopening it.

comment:19 Changed 8 years ago by dnarvaez

  • Milestone 0.86 deleted

Milestone 0.86 deleted

Note: See TracTickets for help on using tickets.