summaryrefslogtreecommitdiff
path: root/doc
Commit message (Collapse)AuthorAgeFilesLines
* tools: remove window demoAlberts Muktupāvels2020-03-263-29/+8
|
* docs: remove theme docsAlberts Muktupāvels2020-03-264-678/+7
| | | | | | | | Preferred way is to use GTK+ theme for window decorations. Metacity themes are still "supported" to allow users use old themes... Also metacity-theme.dtd has not been updated for Theme Format 3.x, remove it as it can not be used to validate new format files.
* workspace: Don't try to use per-workspace MRU lists as a hint for focusingJasper St. Pierre2017-03-031-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
* doc: remove creating_themesAlberts Muktupāvels2016-02-124-1079/+0
| | | | Preferred way is to use GTK+ theme for window decorations.
* theme: revert theme format version 3.6Alberts Muktupāvels2016-01-281-6/+0
|
* doc: add info for 3.5 and 3.6 theme format versionsAlberts Muktupāvels2015-01-201-0/+12
|
* Fix some errors in manpagesDmitry Shachnev2014-10-152-3/+6
| | | | | | | * Escape hyphen signs properly. * Fix man -l -Tutf8 doc/man/metacity-message.1 >/dev/null reporting "warning [p 1, 1.5i]: cannot adjust line". * Update GTK2 to GTK3.
* misc: add git.mkAlberts Muktupāvels2014-10-025-5/+5
|
* theme: Allow using custom colors from the GTK+ themeFlorian Müllner2014-09-271-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 NOTE: Patch copied from mutter and adapted for metacity.
* theme: Add tiled_left/tiled_right frame statesFlorian Müllner2014-09-271-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 NOTE: Patch copied from mutter and adapted for metacity. This adds only description in doc/theme-format.txt as all other changes has been added already.
* theme: Add background functions for single buttonsFlorian Müllner2014-09-271-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 NOTE: Patch copied from mutter and adapted for metacity.
* Add frame type for attached modal dialogsOwen W. Taylor2014-09-271-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 NOTE: Patch copied from mutter and adapted for metacity.
* Allow a theme to specify ellipsize width for a titleOwen W. Taylor2014-09-271-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 NOTE: Patch copied from mutter and adapted for metacity.
* Add frame_x_center/frame_y_center variables for themesOwen W. Taylor2014-09-271-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 NOTE: Patch is copied from mutter and is adapted for metacity.
* metacity-theme-3.xml: Add a flexible version mechanismOwen W. Taylor2014-09-271-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 NOTE: Patch is copied from mutter and adapted for matacity.
* creating_themes: updated FSF's addressAlberts Muktupāvels2014-06-082-3/+3
|
* doc: Update man pagesFlorian Müllner2013-05-162-4/+25
| | | | | Metacity is not the fastest moving project, however there were a view additions in the last nine years, document those.
* build: Port themes documentation to yelp-toolsFlorian Müllner2012-09-033-14/+9
| | | | | | | | | | | gnome-doc-utils is considered deprecated, so documentation using it should be dropped or moved to the new yelp-tools. Given that the theme format is rather cryptic, still used by mutter and documentation on it quite spare, dropping the documentation in question doesn't seem like a good idea, so move to yelp-tools instead. As this effectively adds a dependency on GNOME 3, provide a configure switch to disable the documentation to allow builds on "pure" GNOME 2.x systems.
* Port preferences to GSettingsFlorian Müllner2011-11-114-9/+9
| | | | | | | | | | | | 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+. Based on an initial patch from Milan Bouchet-Valat. https://bugzilla.gnome.org/show_bug.cgi?id=621204
* [i18n] Updated German doc translationMario Blättermann2010-10-101-65/+391
|
* [i18n] Added initial German doc translationMario Blättermann2010-10-072-1/+449
|
* added missing @id on <book> top element.Frederic Peters2008-10-231-1/+1
| | | | | | | | * doc/creating_themes/C/creating-metacity-themes.xml: added missing @id on <book> top element. svn path=/trunk/; revision=3998
* renamed document to creating-metacity-themes to match other manuals usageFrederic Peters2008-10-232-1/+1
| | | | | | | | | * doc/creating_themes/Makefile.am: * doc/creating_themes/C/creating_metacity_themes.xml: renamed document to creating-metacity-themes to match other manuals usage of dashes. svn path=/trunk/; revision=3997
* Fixed various tags to make this validate. Bug #557337:Murray Cumming2008-10-221-10/+13
| | | | | | | | | | 2008-10-22 Murray Cumming <murrayc@murrayc.com> * doc/creating_themes/C/creating_metacity_themes.xml: Fixed various tags to make this validate. Bug #557337: svn path=/trunk/; revision=3978
* Call GNOME_DOC_INIT() so we can use the gnome-doc-utils variables in ourMurray Cumming2008-10-183-1/+308
| | | | | | | | | | | | | | | | | 2008-10-17 Murray Cumming <murrayc@murrayc.com> * configure.in: Call GNOME_DOC_INIT() so we can use the gnome-doc-utils variables in our Makefile.am: * doc/Makefile.am: * doc/creating_themes/Makefile.am * doc/creating_themes/C/creating_metacity_themes.xml: Added this new DocBook document, converted from the HTML here http://blogs.gnome.org/metacity/2008/05/30/themes/ This will be installed for yelp and can be translated and hosted on library.gnome.org. svn path=/trunk/; revision=3964
* new manual page. added new reference.Akira TAGOH2008-08-142-1/+62
| | | | | | | | | | 2008-08-14 Akira TAGOH <akira@tagoh.org> * doc/man/metacity-message.1: new manual page. * doc/man/Makefile.am: added new reference. svn path=/trunk/; revision=3811
* Fix lots of little issues with min/max constraints and size incrementElijah Newren2007-04-041-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-04-04 Elijah Newren <newren gmail com> Fix lots of little issues with min/max constraints and size increment constraints. Fixes #329152, #418395, and possibly others. * src/window-props.c (meta_set_normal_hints): Do more checking to make sure application specified constraints are self-consistent, modifying the size_hints as necessary to achieve self-consistency. * src/constraints.c (setup_constraint_info): remove ugly copy-pasto, (constrain_size_increments): be careful that fixing violation of the constraints doesn't cause a violation of the minimum size constraints. * src/window.c (ensure_size_hints_satisfied): new function, (meta_window_unmaximize, meta_window_unmake_fullscreen): the saved_rect may no longer be valid (as in the case of #329152) so call ensure_size_hints_satisfied to fix it up. * doc/how-to-get-focus-right.txt: Some minor spacing and wording fixes completely unrelated to the rest of this commit svn path=/trunk/; revision=3155
* fix silly thinko.Thomas James Alexander Thurman2007-01-161-1/+1
| | | | | | | * doc/compositor-control.txt: fix silly thinko. svn path=/trunk/; revision=3047
* New file.Thomas James Alexander Thurman2007-01-161-0/+46
| | | | | | * doc/compositor-control.txt: New file. svn path=/trunk/; revision=3043
* described new theme format.Thomas James Alexander Thurman2006-10-071-2/+87
| | | | | | * doc/theme-format.txt: described new theme format. * src/themes/Bright, src/themes/Crux: added version 2 themes.
* Fix longstanding focus bug with mouse (not sloppy) focus mode with popupElijah Newren2006-10-011-5/+10
| | | | | | | | | | | | | | | | | | 2006-10-01 Elijah Newren <newren gmail com> Fix longstanding focus bug with mouse (not sloppy) focus mode with popup override-redirect windows, particularly mozilla and firefox's location bar autocompletion. #357695. * src/display.c (event_callback -- EnterNotify & LeaveNotify events): for mouse focus, defocus the focused window when the mouse enters the desktop window rather than when the mouse leaves the focused window. * doc/how-to-get-focus-right.txt: update for the slightly nuanced definition of mouse focus (people without a DESKTOP window like nautilus get sloppy focus behavior now)
* Add a man page for metacity. Original version taken from Debian (writtenElijah Newren2006-02-122-1/+61
| | | | | | | | | 2006-02-11 Elijah Newren <newren gmail com> Add a man page for metacity. Original version taken from Debian (written by Thom May and Akira Tagoh) and updated by Luke Morton and Philip O'Brien. Necessary auto-fu supplied by Philip O'Brien. Fixes #321279.
* Oops, missed a couple cleanups in this documentationElijah Newren2005-11-211-3/+4
|
* It took me a little while to figure out how struts & workareas are updatedElijah Newren2005-11-211-0/+53
| | | | | | | | | | | 2005-11-21 Elijah Newren <newren@gmail.com> * doc/strut-and-related-updating.txt: It took me a little while to figure out how struts & workareas are updated and to learn what all the related functions were used for so I thought I'd clean up my notes and make them available. This will probably be more useful now since regions and edges are also computed and stored at the some time as the workareas.
* Merge of all the changes on the constraints_experiments branch. This isElijah Newren2005-11-191-0/+283
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-11-18 Elijah Newren <newren@gmail.com> Merge of all the changes on the constraints_experiments branch. This is just a summary, to get the full ChangeLog of those changes (approx. 2000 lines): cvs -q -z3 update -Pd -r constraints_experiments cvs -q -z3 diff -pu -r CONSTRAINTS_EXPERIMENTS_BRANCHPOINT ChangeLog Bugs fixed: unfiled - constraints.c is overly complicated[1] unfiled - constraints.c is not robust when all constraints cannot simultaneously be met (constraints need to be prioritized) unfiled - keep-titlebar-onscreen constraint is decoration unaware (since get_outermost_onscreen_positions() forgets to include decorations) unfiled - keyboard snap-moving and snap-resizing snap to hidden edges 109553 - gravity w/ simultaneous move & resize doesn't work 113601 - maximize vertical and horizontal should toggle and be constrained 122196 - windows show up under vertical panels 122670 - jerky/random resizing of window via keyboard[2] 124582 - keyboard and mouse snap-resizing and snap-moving erroneously moves the window multidimensionally 136307 - don't allow apps to resize themselves off the screen (*cough* filechooser *cough*) 142016, 143784 - windows should not span multiple xineramas unless placed there by the user 143145 - clamp new windows to screensize and force them onscreen, if they'll fit 144126 - Handle pathological strut lists sanely[3] 149867 - fixed aspect ratio windows are difficult to resize[4] 152898 - make screen edges consistent; allow easy slamming of windows into the left, right, and bottom edges of the screen too. 154706 - bouncing weirdness at screen edge with keyboard moving or resizing 156699 - avoid struts when placing windows, if possible (nasty a11y blocker) 302456 - dragging offscreen too restrictive 304857 - wireframe moving off the top of the screen is misleading 308521 - make uni-directional resizing easier with alt-middle-drag and prevent the occasional super annoying resize-the-wrong-side(s) behavior 312007 - snap-resize moves windows with a minimum size constraint 312104 - resizing the top of a window can cause the bottom to grow 319351 - don't instantly snap on mouse-move-snapping, remove braindeadedness of having order of releasing shift and releasing button press matter so much [1] fixed in my opinion, anyway. [2] Actually, it's not totally fixed--it's just annoying instead of almost completely unusable. Matthias had a suggestion that may fix the remainder of the problems (see http://tinyurl.com/bwzuu). [3] This bug was originally about not-quite-so-pathological cases but was left open for the worse cases. The code from the branch handles the remainder of the cases mentioned in this bug. [4] Actually, although it's far better there's still some minor issues left: a slight drift that's only noticeable after lots of resizing, and potential problems with partially onscreen constraints due to not clearing any fixed_directions flags (aspect ratio windows get resized in both directions and thus aren't fixed in one of them) New feature: 81704 - edge resistance for user move and resize operations; in particular 3 different kinds of resistance are implemented: Pixel-Distance: window movement is resisted when it aligns with an edge unless the movement is greater than a threshold number of pixels Timeout: window movement past an edge is prevented until a certain amount of time has elapsed during the operation since the first request to move it past that edge Keyboard-Buildup: when moving or resizing with the keyboard, once a window is aligned with a certain edge it cannot move past until the correct direction has been pressed enough times (e.g. 2 or 3 times) Major changes: - constraints.c has been rewritten; very few lines of code from the old version remain. There is a comment near the top of the function explaining the basics of how the new framework works. A more detailed explanation can be found in doc/how-constraints-works.txt - edge-resistance.[ch] are new files implementing edge-resistance. - boxes.[ch] are new files containing low-level error-prone functions used heavily in constraints.c and edge-resistance.c, among various places throughout the code. testboxes.c contains a thorough testsuite for the boxes.[ch] functions compiled into a program, testboxes. - meta_window_move_resize_internal() *must* be told the gravity of the associated operation (if it's just a move operation, the gravity will be ignored, but for resize and move+resize the correct value is needed) - the craziness of different values that meta_window_move_resize_internal() accepts has been documented in a large comment at the beginning of the function. It may be possible to clean this up some, but until then things will remain as they were before--caller beware. - screen and xinerama usable areas (i.e. places not covered by e.g. panels) are cached in the workspace now, as are the screen and xinerama edges. These get updated with the workarea in src/workspace.c:ensure_work_areas_validated()
* add doc/code-overview.txt and doc/how-to-get-focus-right.txtLex Hider2005-03-171-1/+2
| | | | | | | 2005-03-17 Lex Hider <Lex.Hider@gmail.com> * doc/Makefile.am (EXTRA_DIST): add doc/code-overview.txt and doc/how-to-get-focus-right.txt
* Handle keynav vs. mousenav in mouse and sloppy focus modes. Fixes #167545.Elijah Newren2005-02-221-5/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-02-21 Elijah Newren <newren@gmail.com> Handle keynav vs. mousenav in mouse and sloppy focus modes. Fixes #167545. * doc/how-to-get-focus-right.txt: Update due to this new method for handling keynav vs. mousenav, plus various other updates that I previously forgot. * src/display.h: (struct _MetaDisplay): add a mouse_mode boolean * src/display.c: (meta_display_open): initialize mouse_mode to true, (event_callback): have EnterNotify and LeaveNotify events set mouse_mode to true when focusing a window * src/keybindings.c: (process_tab_grab): set mouse_mode to false when using alt-tab/alt-esc, (do_choose_window): likewise, (do_handle_move_to_workspace): set mouse_mode to false on move-window-to-workspace-<n> keybindings * src/window.c (idle_calc_showing): if we're in keynav mode while using sloppy or mouse focus, use metacity_sentinel to avoid EnterNotify events being generated from events other than mouse movement. * src/workspace.c (meta_workspace_activate_with_focus): add a FIXME in a potentially duplicate section of code, (meta_workspace_focus_default_window): use the same focus choice as click-to-focus if in keynav mode.
* Focus parents of dismissed transient windows in preference to the windowElijah Newren2005-02-021-0/+8
| | | | | | | | | | | | | | | | | | | | 2005-02-02 Elijah Newren <newren@gmail.com> Focus parents of dismissed transient windows in preference to the window that most recently had keyboard focus. Fixes #157360. * doc/how-to-get-focus-right.txt: Note the distinction between "most recently used window" and "most recent to have keyboard focus" that we are now making. * src/workspace.c: (focus_ancestor_or_mru_window): rename from meta_workspace_focus_mru_window, and first check whether we need to focus an ancestor window before looking for the mru window, (record_ancestor): helper function for focus_ancestor_or_mru_window, (meta_workspace_focus_default_window): update due to the function rename from meta_workspace_focus_mru_window to focus_ancestor_or_mru_window
* Add man pages for metacity-window-demo and metacity-theme-viewer. ManElijah Newren2005-01-255-0/+74
| | | | | | | | | | | | | | | | | | | | | | 2005-01-25 Elijah Newren <newren@gmail.com> Add man pages for metacity-window-demo and metacity-theme-viewer. Man pages from Jose Moya, auto-fu from Dave Ahlswede. (#143513) * doc/man/metacity-theme-viewer.1: * doc/man/metacity-window-demo.1: New man pages * doc/man/Makefile.am: * doc/Makefile.am: * configure.in: Make sure to install the man pages * doc/man/.cvsignore: Silence cvs
* Don't focus the panel on click. Fixes #160470 (and 100470 and removes theElijah Newren2005-01-091-4/+9
| | | | | | | | | | | | | 2005-01-09 Elijah Newren <newren@gmail.com> Don't focus the panel on click. Fixes #160470 (and 100470 and removes the need for the hack from 128200) * doc/how-to-get-focus-right.txt: Update section on focusing non-decorated windows (specifically, DOCKS and DESKTOPS) * src/display.c (event_callback): don't focus dock windows on click
* Provide more documentation to make it easier for people to contribute toElijah Newren2005-01-021-0/+185
| | | | | | | | | | | | | | | | | | | 2005-01-02 Elijah Newren <newren@gmail.com> Provide more documentation to make it easier for people to contribute to Metacity * HACKING: Add lots of information to extend this document: more on relevant standards and X properties, lots of information on debugging and testing, and add a list of some other important things to read; also move some information to src/code-overview.txt and organize this file into sections. * src/code-overview.txt: New file including some small parts from the old HACKING file and lots of new stuff. This file gives a brief overview of some of the bigger structures and files, with guides for a variety of task categories providing places to start looking in the code and things to look for.
* Focus the no_focus_window if no suitable window is in the mru list (shouldElijah Newren2004-09-151-4/+1
| | | | | | | | | | | | | | | | 2004-09-15 Elijah Newren <newren@math.utah.edu> Focus the no_focus_window if no suitable window is in the mru list (should fix the almost contrived extra issue found in #147475) * doc/how-to-get-focus-right.txt: We no longer need to lie about only focusing panels upon explicit request. * src/workspace.c: (meta_workspace_focus_top_window): removed this function--it was more code than needed and was unreliable anyway, (meta_workspace_focus_mru_window): if a suitable window isn't in the mru list, focus the no_focus_window instead of calling focus_top_window.
* Oops, panel and desktop can be focused by Ctrl-Alt-Tab tooElijah Newren2004-09-071-5/+5
|
* Add a new write-up on making window focus consistent (see #152004)Elijah Newren2004-09-071-0/+199
| | | | | | | | | | | 2004-09-07 Elijah Newren <newren@math.utah.edu> Add a new write-up on making window focus consistent (see #152004) * doc/how-to-get-focus-right.txt: New document * rationales.txt: Remove references to focus bugs, instead point to doc/how-to-get-focus-right.txt
* A small writeup on how to use dialogs in metacity. Approved by Havoc.Arvind Samptur2003-02-172-1/+33
|
* DTD fixesRoss Burton2002-12-231-2/+2
|
* and youGlynn Foster2002-11-261-0/+2
|
* add DTD for themes from Ross BurtonHavoc Pennington2002-11-203-0/+520
2002-11-20 Havoc Pennington <hp@pobox.com> * doc/metacity-theme.dtd: add DTD for themes from Ross Burton * doc/Makefile.am: doc subdir * doc/theme-format.txt: move to doc subdir