summaryrefslogtreecommitdiff
path: root/doc
Commit message (Collapse)AuthorAgeFilesLines
* Add MetaGravity and replace X11 equivalent with itJonas Ådahl2020-02-291-1/+1
| | | | | | | | | | | MetaGravity is an enum, where the values match the X11 macros used for gravity, with the exception that `ForgetGravity` was renamed `META_GRAVITY_NONE` to have less of a obscure name. The motivation for this is to rely less on libX11 data types and macros in generic code. https://gitlab.gnome.org/GNOME/mutter/merge_requests/705
* Remove obsolete .cvsignore filesGeorges Basile Stavracas Neto2019-01-102-4/+0
| | | | We moved to git 11 years ago, it's about time.
* Drop AutotoolsGeorges Basile Stavracas Neto2019-01-102-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I saw Meson fade from the sky On the wind I heard a sigh As snowflakes cover fallen Makefiles I will say this last goodbye Meson is now coming So ends Autotools days Future is now coming And we must away Over Python and without Bashisms Through lands where never Meson touched By silver streams that run down to the Sea Under parsers, beneath old legacy Over snow one winter’s morn I turned at last to paths that lead home And though where the road then takes me I cannot tell We came all this way But now comes the day To bid you farewell Many places I have been Many sorrows I have seen But I don’t regret Nor will I forget All Makefiles that took that road with me I bid you all a very fond farewell.
* Add meson build supportJonas Ådahl2018-11-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds meson build support to mutter. It takes a step away from the three separate code bases with three different autotools setups into a single meson build system. There are still places that can be unified better, for example by removing various "config.h" style files from cogl and clutter, centralizing debug C flags and other configurable macros, and similar artifacts that are there only because they were once separate code bases. There are some differences between the autotools setup and the new meson. Here are a few: The meson setup doesn't generate wrapper scripts for various cogl and clutter test cases. What these tests did was more or less generate a tiny script that called an executable with a test name as the argument. To run particular tests, just run the test executable with the name of the test as the argument. The meson setup doesn't install test files anymore. The autotools test suite was designed towards working with installed tests, but it didn't really still, and now with meson, it doesn't install anything at all, but instead makes sure that everything runs with the uninstalled input files, binaries and libraries when running the test suite. Installable tests may come later. Tests from cogl, clutter and mutter are run on 'meson test'. In autotools, only cogl and clutter tests were run on 'make check'.
* Remove gtk-docJasper St. Pierre2015-07-066-1030/+1
| | | | | | | The gtk-doc reference is woefully maintained, and trying to actually generate it resulted in some extremely outdated and poor documentation. If somebody wants to actually renew the docs, just revert this commit, otherwise, I'm not going to bother.
* Export the shadow factoryJasper St. Pierre2015-07-061-1/+0
| | | | | | | | | The elementary guys would like this as an API, and I don't see any reason to refuse -- this is quite nice shadow painting code :) For some reason, gobject-introspection can't seem to cope with MetaWindowShape. I'll look into it a bit later, but for now, mark the function it has trouble with as (skip).
* window: Remove the legacy get_outer_rectJasper St. Pierre2015-03-081-1/+0
| | | | | It's unused in gnome-shell, and we don't care about compatibility in the API. Don't expose it.
* build: Fix gtk-doc build failure when native backend is disabledTing-Wei Lan2015-01-191-0/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=743173
* Fix gtk-doc moreGiovanni Campagna2015-01-011-1/+1
| | | | | Apparently having a successful build is not enough to prove that a build fix is correct
* Fix gtk-doc buildGiovanni Campagna2015-01-011-0/+1
| | | | | | Need to hide the login1 DBus wrappers from the docs, because they use symbols that don't start with meta_ so they're not exported from the library. And they're not public API anyway.
* doc: Fix make distRico Tzschichholz2014-12-291-1/+1
|
* Remove all support for the metacity formatFlorian Müllner2014-12-293-404/+0
| | | | | | | | | | Rest in peace you magnificent format, love-child of arcane X11 drawing API and markup craze, you will not be missed. We do remember however the bravery of a many men and women, who fearlessly descended into the guts of your intrinsics and turned ugliness into beauty; their work will still be spoken of when you will long have been forgotten. https://bugzilla.gnome.org/show_bug.cgi?id=741917
* build: Fix gtk-doc build failure when native backend is disabledTing-Wei Lan2014-11-151-0/+9
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=731521
* theme: Remove COLORIZE feature of imagesJasper St. Pierre2014-10-141-2/+0
| | | | | | | | | | From a quick code search and grep of gnome-themes-standard, none of the themes that I inspected used this feature. Since it's the last thing that uses a lot of old legacy GdkPixbuf code, I'd rather just consider the feature unsupported at this point and clean up everything I need to. https://bugzilla.gnome.org/show_bug.cgi?id=662962
* docs: Allow building without waylandFlorian Müllner2014-09-171-0/+7
|
* compositor: add support for unminimize compositor effectsCosimo Cecchi2014-07-261-0/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=733789
* window: Rename get_input_rect to get_buffer_rectJasper St. Pierre2014-06-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | With get_input_region existing, get_input_rect is a misnomer. Really, it's about the geometry of the output surface, and it's only used that way in the compositor code. Way back when in GNOME 3.2, get_input_rect was added when we added invisible borders. get_outer_rect was always synonymous with server-side geometry of the toplevel. get_outer_rect was used for both user-side policy (the "frame rect") and to get the geometry of the window. Invisible borders were meant to extend the input region of the frame window silently. Since most users of get_outer_rect cared about the frame rect, we kept that the same and added a new method, get_input_rect to get the full rect of the framed window with all invisible borders for input kept on. As time went on and CSD and Wayland became a reality, the relationship between the server-side geometry and the "frame rect" became more complicated, as can be evidenced by the recent commits. Since clients don't tend to be framed anymore, they set their own input region. get_buffer_rect is also sort of a poor name, since X11 doesn't really have buffers, but we don't really have many other alternatives. This doesn't change any of the code, nor the meaning. It will always refer to the rectangle where the toplevel should be placed.
* Drop leftover menu.h/metaaccellabel.h referencesRico Tzschichholz2014-05-181-2/+0
| | | | In addition to 8640982e682fe00de21b2ea7301969a7ea74deee
* Revert "wayland: make parallel installable with regular mutter"Jasper St. Pierre2014-04-091-1/+1
| | | | This reverts commit ea3d2b4759524345c89fe08ad0c159d7136dbdf1.
* build: Don't try to distribute removed filesFlorian Müllner2014-03-191-1/+1
| | | | Fixes some left-overs from commit ff635bad3b72c701.
* Clean up the source treeJasper St. Pierre2014-03-181-0/+79
| | | | Remove a lot of old, unmaintained files
* Always map the client and frame windowsJasper St. Pierre2014-02-141-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Traditionally, WMs unmap windows when minimizing them, and map them when restoring them or wanting to show them for other reasons, like upon creation. However, as metacity morphed into mutter, we optionally chose to keep windows mapped for the lifetime of the window under the user option "live-window-previews", which makes the code keep windows mapped so it can show window preview for minimized windows in other places, like Alt-Tab and Expose. I removed this preference two years ago mechanically, by removing all the if statements, but never went through and cleaned up the code so that windows are simply mapped for the lifetime of the window -- the "architecture" of the old code that maps and unmaps on show/hide was still there. Remove this now. The one case we still need to be careful of is shaded windows, in which we do still unmap the client window. In the future, we might want to show previews of shaded windows in the overview and Alt-Tab. In that we'd also keep shaded windows mapped, and could remove all unmap logic, but we'd need a more complex method of showing the shaded titlebar, such as using a different actor. At the same time, simplify the compositor interface by removing meta_compositor_window_[un]mapped API, and instead adding/removing the window on-demand. https://bugzilla.gnome.org/show_bug.cgi?id=720631
* Revert unintentional merge from wip/surface-content to waylandJasper St. Pierre2014-01-221-0/+2
| | | | This reverts a lot of commits.
* compositor: Remove meta_compositor_window_[un]mappedJasper St. Pierre2014-01-211-2/+0
| | | | | | | We no longer unmap the toplevel windows during normal operation. The toplevel state is tied to the window's lifetime. Call meta_compositor_add_window / meta_compositor_remove_window instead...
* cullable: Turn cull_out / reset_culling into a separate interfaceJasper St. Pierre2013-11-251-0/+17
| | | | | | | | | | | | | | | | Instead of hardcoded knowledge of certain classes in MetaWindowGroup, create a generic interface that all actors can implement to get parts of their regions culled out during redraw, without needing any special knowledge of how to handle a specific actor. The names now are a bit suspect. MetaBackgroundGroup is a simple MetaCullable that knows how to cull children, and MetaWindowGroup is the "toplevel" cullable that computes the initial two regions. A future cleanup here could be to merge MetaWindowGroup / MetaBackgroundGroup so that we only have a generic MetaSimpleCullable, and move the "toplevel" cullability to be a MetaCullableToplevel. https://bugzilla.gnome.org/show_bug.cgi?id=714706
* Rename meta_window_get_outer_rect() to meta_window_get_frame_rect()Owen W. Taylor2013-11-191-0/+1
| | | | | | For clarity, rename meta_window_get_outer_rect() to match terminology we use elsewhere. The old function is left as a deprecated compatibility wrapper.
* Use utility functions to convert between frame and client rectanglesOwen W. Taylor2013-11-191-0/+2
| | | | | | | | | | | | | | | | There are extensive places in the code where we convert between the client rectangle and the frame rectangle. Instead of manually doing it use new helper functions on MetaWindow and the existing meta_window_get_outer_rect(). This fixes a number of bugs where the computation was being done incorrectly, most of these bugs are with the recently added custom frame extents, but some relate to invisible borders or even simply to confusion between the window and frame rectangle. Switch the placement code to place the frame rectangle rather than the client window - this simplifies things considerably. https://bugzilla.gnome.org/show_bug.cgi?id=707194
* doc: Fix file globsFlorian Müllner2013-11-191-2/+2
| | | | | | Any files matching the previously used globs are no longer distributed, breaking distcheck. Match the actual sources in compositor/, core/, meta/ and ui/ instead.
* keybindings: Remove unused functionJasper St. Pierre2013-10-151-1/+0
|
* Drop man pages for removed utilitiesKalev Lember2013-09-124-130/+1
| | | | | | | | Commit 8c1c77482db263a7dcc04051a9694f30a852b702 removed mutter-message, mutter-theme-viewer, and mutter-theme-viewer; this drops their man pages as well. https://bugzilla.gnome.org/show_bug.cgi?id=706579
* wayland: make parallel installable with regular mutterGiovanni Campagna2013-08-261-1/+1
| | | | | | | | Modify all visible instances of mutter with mutter-wayland (libraries, folders, pkgconfig, etc.), so that the wayland branch can be installed alongside the usual X11 mutter. https://bugzilla.gnome.org/show_bug.cgi?id=705497
* Remove application-based preferenceJasper St. Pierre2013-07-171-1/+0
| | | | It's hardcoded to FALSE.
* docs: Disable gtk-doc-check in make checkFlorian Müllner2013-03-181-1/+1
| | | | | Missing documentation should not cause make check to fail, disable it.
* Remove theme.h and preview-widget.h from the API docsTomeu Vizoso2013-03-183-36/+2
| | | | | | As they are of no use to plugins and to be removed in the future https://bugzilla.gnome.org/show_bug.cgi?id=695935
* Add a meaningful name and description to all sections/files in the API docsTomeu Vizoso2013-03-141-4/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=695641
* Enable tests for the gtk-doc generationTomeu Vizoso2013-03-141-1/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=695641
* Add overview and running sections to API docsTomeu Vizoso2013-03-144-2/+126
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=695641
* Improve a bit the look of the main page of the API docsTomeu Vizoso2013-03-141-15/+15
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=695641
* docs: Fix cross-reference generationTomeu Vizoso2013-03-142-0/+762
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=676856
* Ignore private headers when generating API docsTomeu Vizoso2013-03-141-1/+54
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=676856
* Build reference docsJasper St. Pierre2013-03-142-1/+106
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=676856
* workspace: Don't try to use per-workspace MRU lists as a hint for focusingJasper St. Pierre2012-03-201-2/+1
| | | | | | | | | | | | | | | | Commit 2fc880db switched from focusing the topmost window as the default window to focusing the MRU window. This was done in alignment with the introduction of per-workspace MRU lists to avoid problems where the window stack was inadvertently changed when focusing windows during window switches. Now that focusing windows don't have as big an impact on the stacking order, we can revert back to focusing the top window, which is less confusing to the user. For now, leave per-workspace MRU lists, as they're a pretty good approximation of a global MRU list, and it works well enough. https://bugzilla.gnome.org/show_bug.cgi?id=620744
* Port preferences to GSettingsFlorian Müllner2011-11-112-4/+4
| | | | | | | | | | Move preferences to GSettings, using mainly shared schemas from gsettings-desktop-schemas. Unlike GConf, GSettings support is not optional, as Gio is already a hard dependency of GTK+. https://bugzilla.gnome.org/show_bug.cgi?id=635378
* theme: Allow using custom colors from the GTK+ themeFlorian Müllner2011-07-081-0/+12
| | | | | | | | | | | | | | | | | Add an additional color type to pick up colors defined with @define-color in the GTK+ theme's CSS: gtk:custom(name,fallback) (where "name" refers to the name defined in GTK+'s CSS, and fallback refers to an alternative color spec which is used when the color referenced by "name" is not found) The main intent of the change is to allow designers to improve Adwaita's dark theme variant without having to compromise on colors which work in the light variant as well. https://bugzilla.gnome.org/show_bug.cgi?id=648709
* theme: Add tiled_left/tiled_right frame statesFlorian Müllner2011-01-051-0/+4
| | | | | | | | It may be desirable for theme authors to treat side-by-side tiled windows differently, for instance to give the edge-touching border a width of 0, so add additional frame states for tiled windows. https://bugzilla.gnome.org/show_bug.cgi?id=637330
* theme: Add background functions for single buttonsFlorian Müllner2011-01-051-0/+6
| | | | | | | | | | | | With the existing background functions, single buttons can not be styled separately - on the left side, the style of the left button is picked, and the right button's style on the right side. As theme authors may want to add rounded corners to button groups as a whole, it makes sense to treat the case of a single button in a group differently. https://bugzilla.gnome.org/show_bug.cgi?id=635683
* Add frame type for attached modal dialogsOwen W. Taylor2010-11-181-0/+8
| | | | | | | | | | | | | | | Add a new frame type META_FRAME_TYPE_ATTACHED which is used for attached modal dialogs. The theme format version is bumped to 3.2, and attached windows can have borders defined in a metacity-theme-3.xml as: <window version=">= 3.2" type="attached" style_set="[name]"/> If no style is defined for "attached", drawing will fall back to the "border" type. https://bugzilla.gnome.org/show_bug.cgi?id=592382
* Allow a theme to specify ellipsize width for a titleOwen W. Taylor2010-04-131-0/+4
| | | | | | | | | | | | | | | | It's nice to indicate when a title is truncated with an ellipsis. Because themes may draw a title multiple times to draw a shadow, or may include the window icon within the title area, we can't determine the proper ellipsization width automatically, so add an optional attribute to the <title/> element "ellipsize_width" which, if set, is the width to ellipsize at. This is only enabled if a theme version of 3.1 is required. When it's not set, we keep the old behavior of just letting the title be clipped with a hard edge. https://bugzilla.gnome.org/show_bug.cgi?id=591842
* Add frame_x_center/frame_y_center variables for themesOwen W. Taylor2010-04-131-0/+10
| | | | | | | | | | | | | | | | Sometimes you want to position something (usually the title) to be centered with respect to the entire frame instead of centered with respect to the individual piece currently being drawn. This patch adds frame_x_center and frame_y_center variables that represent the X/Y centers of the frame in the coordinate system of the piece being drawn. The theme version is bumped from 3.0 to 3.1 (3.0 is just the new version system, 3.1 will have all the features we add for Mutter-2.28.) position expressions https://bugzilla.gnome.org/show_bug.cgi?id=591842
* metacity-theme-3.xml: Add a flexible version mechanismOwen W. Taylor2010-04-131-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current mechanism of metacity-theme-1.xml and metacity-theme-2.xml is not flexible for allowing small-scale additions. With this patch we bump the major version version once more to metacity-theme-3.xml and add a single feature: Any element in the DTD can have an attribute: version="[<|<=|=>|>] MAJOR.MINOR" And it will be ignored unless the predicate is met. (< and > should be to be entity escaped as &lt; and &gt;) This allows having alternate sections of the theme file for older and newer version. * Required GLib version is bumped to 2.14 so we can parse versions with a regular expression. * We switch internal version numbers to be "1000 * major + minor" * We keep a stack of the maximum required version for the current portion the XML tree so that the "cannot use versions you don't require" stricture of the old code can be made local to a subpart of the tree. * A version on the top metacity_theme element causes the entire file to be ignored; this allows having one metacity-theme-3.xml for version 3.2 and newer (say) and a metacity-1.xml for everything old. Actual new features will be added starting with 3.1 - 3.0 is just the version="" feature. http://bugzilla.gnome.org/show_bug.cgi?id=592503