Metacity should be responsible for maximising windows

Bug #252589 reported by Chris Gregan on 2008-07-28
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Neil J. Patel
maximus (Ubuntu)
Neil J. Patel

Bug Description

<Build: UNR 20080725>
<Environment: CG - 8.9">

There is a visible lag between when applications are launched and when they are switched to full screen mode. This should not be visible. Apps should appear to launch in full screen mode without a transition time.

Steps to Reproduce:
1) Switch to Graphics category
2) Launch Cheese
3) Switch to Accessories category
4) Launch Disk Usage Analyzer

Expected result:
Applications launch to full screen mode without a perceptible lag while it scales

Actual result:
A lag occurs between the application launch and when it achieves full screen.


To fix this, we need to have Maximus' functionality in Metacity. The window's would then appear maximised, rather than appearing and then maximising,


Chris Gregan (cgregan) on 2008-07-28
description: updated
Neil J. Patel (njpatel) wrote :

I'm confirming, but this is a bit difficult with the current set-up. We'd need to hack Metacity to do what maximus does...

Changed in netbook-remix:
assignee: nobody → njpatel
status: New → Confirmed
Bill Filler (bfiller) on 2008-08-26
Changed in netbook-remix:
importance: Undecided → Medium
Neil J. Patel (njpatel) on 2008-10-21
description: updated
Changed in netbook-remix:
importance: Medium → Wishlist
Mike (mike82) wrote :

We can definitely get much better results by doing everything inside metacity. This may have been a messy option previously, but I see that the netbook remix already has a custom metacity package now, so it shouldn't be too hard to include an extra patch in that package.

I've built a version of metacity that has maximus "built-in". It detects windows that could be maximized, and maximizes them before they are even shown for the first time. This avoids the messy delay and flickering as windows are resized. It also removes the window decoration before it's seen, again reducing flickering.

If a maximized and undecorated window is restored, the decorations are re-added and it becomes a normal window. It remains that way until closed.

This behaviour can be enabled and disabled via a new gconf key named "start_maximized". There is another key, named "never_maximize" which contains the exclusion list (in addition to a built-in exclusion list). From within metacity we can actually do a better job to figure out which windows should be maximized, based on properties of the window, so the exclusion lists become much less important. For example, windows that can't be resized by the user probably shouldn't be maximized by metacity.

If you're interested in testing out this package, please do and let me know how it goes. Be sure to disable maximus first, so that they don't conflict.

debs that can be installed manually:

A PPA you can add to sources.list to get the packages automatically:
deb intrepid main
deb-src intrepid main

Mike (mike82) wrote :

I've attached a patch against the metacity package that adds maximus-like functionality. It's the same code as used above.

The patch can be added into the debian/patches directory to be applied automatically.

Paul Larson (pwlars) wrote :

This bug has been moved to Ubuntu distribution.

Changed in maximus (Ubuntu):
assignee: nobody → Neil J. Patel (njpatel)
importance: Undecided → Wishlist
status: New → Confirmed
Changed in maximus:
status: Confirmed → Won't Fix
tags: added: ubuntu-unr
Luca Ferretti (elle.uca) wrote :

"On displays with less than 768 pixels of vertical space windows should default to open maximized."

This statement come from the GNOME Shell Design paper[1]. As you may know, Metacity is coming to deprecated in favour of Mutter and this will be strongly integrate in GNOME Shell.

Could be good start to interact with mutter/gnome-shell developers in ordert to include maximus features (and unr design) in mutter itself. The issues about decorating windows in maximized state, in fact, are still open.


To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers