Compare commits

...

358 Commits

Author SHA1 Message Date
Elijah Newren
d769484f35 2.15.0 release
2006-04-24  Elijah Newren  <newren gmail com>

        * NEWS: 2.15.0 release
2006-04-24 23:43:25 +00:00
Theppitak Karoonboonyanan
a524fb9c9c Updated Thai translation.
2006-04-21  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	* th.po: Updated Thai translation.
2006-04-21 06:24:51 +00:00
Brian Pepple
239cf4a060 #337951.
2006-04-20  Brian Pepple  <bdpepple@gmail.com>

        #337951.

        * po/LINGUAS: New file listing all supported languages.

        * configure.in: Use po/LINGUAS instead of including all languages
        directly in this file. See the wiki for more information:
        http://live.gnome.org/GnomeGoals/PoLinguas.
2006-04-20 15:13:20 +00:00
Ankitkumar Rameshchandra Patel
984154e011 Updated Translation 2006-04-20 07:34:48 +00:00
Thomas Andersen
14f120f131 warn and ignore if transient_for is set to a non-top-level window. Fixes
2006-04-19  Thomas Andersen  <phomes@gmail.com>

        * src/window-props.c (reload_transient_for): warn and ignore if
	transient_for is set to a non-top-level window.  Fixes #335524.
2006-04-19 20:55:49 +00:00
Björn Lindqvist
c118c50117 Replace while loops iterating over sequences with for loops. Also, replace
2006-04-19  Björn Lindqvist  <bjourne@gmail.com>

	* src/frames.c (struct CachedPixels, meta_frames_destroy,
	invalidate_cache, generate_pixmap, populate_cache,
	cached_pixels_draw, meta_frames_expose_event,
	meta_frames_paint_to_drawable):

	Replace while loops iterating over sequences with for loops. Also,
	replace the attributes in the CachedPixels struct with a list of
	four CachedFramePiece:s, this allows iteration over the four
	pixmaps instead of treating each one separately. Fixes #338359.
2006-04-19 15:22:07 +00:00
Ankitkumar Rameshchandra Patel
89f01eb73a Updated Translation 2006-04-19 11:39:44 +00:00
Björn Lindqvist
ae85a33614 Add boxes.{c,h} to libmetacity_private
2006-04-18  Björn Lindqvist  <bjourne@gmail.com>

	* makefile.am: Add boxes.{c,h} to libmetacity_private
	* src/theme-parser.c (check_expression):
	* src/theme-viewer.c (run_position_expression_tests):
	Use meta_rect ().

	* src/theme.c: Replace while loops iterating over sequences with
	for loops.

	* src/theme.c, src/theme.h (struct _MetaPositionExprEnv,
	meta_draw_op_draw, meta_draw_op_list_draw,
	meta_theme_draw_menu_icon): Use MetaRectangles in function
	prototypes instead of x, y, with, height ints where applicable.
2006-04-18 17:18:53 +00:00
Kjartan Maraas
fe47d4436d Remove obsolete entry for no_NO And the translation.
2006-04-18  Kjartan Maraas  <kmaraas@gnome.org>

	* configure.in: Remove obsolete entry for no_NO
	* po/no.po: And the translation.
2006-04-18 06:30:32 +00:00
Thomas Thurman
fee1fb094a Allow any keybinding pref to be specified either with <foo>, a string, or
2004-04-17  Thomas Thurman <thomas@thurman.org.uk>

        * keybindings.c (count_bindings, rebuild_binding_table):
        * prefs.c (change_notify, screen_bindings,
        window_bindings, init_bindings, update_binding,
        find_and_update_list_binding, update_list_binding,
        meta_prefs_get_window_binding): Allow any keybinding pref
        to be specified either with <foo>, a string, or <foo>_list,
        a list of strings, or both. Fixes #164831.
2006-04-17 17:23:09 +00:00
Clytie Siddall
83d21b97c4 vi.po: Updated Vietnamese translation. 2006-04-17 10:49:30 +00:00
Josep Puigdemont i Casamajó
f908d78e4b Updated Catalan translation. 2006-04-17 10:24:49 +00:00
Elijah Newren
e2ea1cf722 Patch from Dan Sanders to fix #334899.
2006-04-16  Elijah Newren  <newren gmail com>

	Patch from Dan Sanders to fix #334899.

	* window.c (meta_window_new_with_attrs): Unminimize ancestors of
	new windows when mapped; this prevents e.g. confirmation windows
	from causing applications to appear locked when closing via the
	window list.
2006-04-17 03:54:49 +00:00
Funda Wang
10f0cfd2dc Updated metacity zh_CN translation. 2006-04-16 06:02:53 +00:00
Elijah Newren
7e2d5185a0 Patch from Dan Sanders to fix #335076.
2006-04-15  Elijah Newren  <newren gmail com>

	Patch from Dan Sanders to fix #335076.

	* src/core.c (meta_core_maximize, meta_core_toggle_maximize,
	  meta_core_unmaximize):
	* src/window.c (meta_window_client_message):
	Raise windows on maximize/unmaximize.
2006-04-16 02:20:41 +00:00
Elijah Newren
5bf3e39ef6 Patch from Andy Morum to fix the build with --disable-xsync. #336605
2006-04-15  Elijah Newren  <newren gmail com>

	* src/display.h: Patch from Andy Morum to fix the build with
	--disable-xsync.  #336605
2006-04-15 22:58:07 +00:00
Elijah Newren
a03e78210f Include instructions on setting up a minimal building/testing environment
2006-04-14  Elijah Newren  <newren gmail com>

        * HACKING: Include instructions on setting up a minimal
        building/testing environment
2006-04-15 03:35:38 +00:00
Thomas James Alexander Thurman
ecf75915b9 Good grief, can I never get the bug number right? #94682 2006-04-15 02:08:19 +00:00
Thomas Thurman
2214fd75d9 Add a tabbing function, bound to alt-f6 by default, to cycle through the
2006-04-14  Thomas Thurman   <thomas@thurman.org.uk>

        Add a tabbing function, bound to alt-f6 by default, to cycle
        through the windows of the current application. Fixes #164831.

        * src/common.h: two new MetaGrabOpts values for group switching
        * src/display.c (ping_data_free, meta_display_in_grab_op,
        IN_TAB_CHAIN): adapt to new MetaGrabOpts
        * src/display.h: new enum value for MetaTabList for group switching
        * src/keybindings.c (meta_display_process_key_event):
        adapt to new MetaGrabOpts
        (process_tab_grab): adapt to new MetaGrabOpts, and use switch
        statement for cancelling instead of if statement
        * src/metacity.schemas.in: new keybindings
        * src/prefs.c, src/prefs.h: handle new keybindings
        * src/window.h: define META_WINDOW_IN_GROUP_TAB_CHAIN macro
2006-04-15 02:05:44 +00:00
Elijah Newren
1dea155c8c Include reasons why gdk/gtk.h and core includes like display.h/window.h
2006-04-14  Elijah Newren  <newren gmail com>

	* HACKING: Include reasons why gdk/gtk.h and core includes like
	display.h/window.h must be kept separate.  Taken from a private
	email from Havoc.
2006-04-14 17:36:17 +00:00
Francisco Javier F. Serrador
694a4352bc Updated Spanish translation.
2006-04-14  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2006-04-14 16:59:04 +00:00
Raphael Higino
4cbe4e7558 Updated Brazilian Portuguese translation 2006-04-14 16:23:25 +00:00
Åsmund Skjæveland
4f99d7e17f Updated Norwegian Nynorsk translation.
2006-04-14  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2006-04-14 14:09:10 +00:00
Ilkka Tuohela
3d4717c8e1 Updated Finnish translation 2006-04-14 13:54:50 +00:00
Wouter Bolsterlee
bf4172dc7c Translation updated by Wouter Bolsterlee.
2006-04-14  Wouter Bolsterlee  <uws+gnome@xs4all.nl>

	* nl.po: Translation updated by Wouter Bolsterlee.
2006-04-14 09:53:08 +00:00
Alexander Shopov
4d097fbc18 Updated Bulgarian translation by Alexander Shopov <ash@contact.bg>
2006-04-14  Alexander Shopov  <ash@contact.bg>

	* bg.po: Updated Bulgarian translation by
	Alexander Shopov <ash@contact.bg>
2006-04-14 08:58:43 +00:00
Alejandro Andres
13cdd8ad3d Fixed broken links. #333303
2006-04-13  Alejandro Andres <fuzzy.alej@gmail.com>

	* README: Fixed broken links.  #333303
2006-04-14 02:28:42 +00:00
Søren Sandmann
c7c9f0ee52 Check for both POPUP and DROPDOWN.
Thu Apr 13 12:23:28 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/c-screen.c (meta_screen_info_add_window): Check for both
	POPUP and DROPDOWN.
2006-04-13 16:24:03 +00:00
Björn Lindqvist
ea50cc7239 *** empty log message *** 2006-04-13 13:16:42 +00:00
Elijah Newren
59d99fb9d1 Patch from Ron Yorston to add a focus_new_windows option. Default is
2006-04-12  Elijah Newren  <newren gmail com>

	Patch from Ron Yorston to add a focus_new_windows option.  Default
	is 'smart' (focus by default but normal focus-stealing-prevention
	can kick in); 'strict' is current other choice (like 'smart'
	except that programs launched by the terminal will not be
	focused).  Fixes remainder of #326159.  Should also close #152004
	and a bunch of others.

	* src/common.h:
	Add a MetaFocusNewWindows enum giving the current types allowed

	* src/display.h:
	Update docs on allow_terminal_deactivation to note that it is only
	relevant when focus_new_windows is 'strict'

	* src/prefs.c:
	* src/prefs.h:

	* src/metacity.schemas.in: add the new gconf key and explanation

	* src/prefs.[ch] (#define KEY_FOCUS_NEW_WINDOWS, static gboolean
	  focus_new_windows, update_focus_new_windows, meta_prefs_init,
	  change_notify, meta_prefs_get_focus_new_windows,
	  meta_preference_to_string):
	Add all the normal preference handling stuff for this new
	focus-new-windows option.

	* src/window.c (window_state_on_map, meta_window_set_user_time):
	Don't focus windows launched from a terminal
2006-04-12 18:01:20 +00:00
Søren Sandmann
4b683fdbf2 Check if the window is a menu and make it 90% opaque in that case.
Mon Apr 10 16:44:51 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/c-screen.c (is_menu): Check if the window is a menu and make
	it 90% opaque in that case.

	* src/c-screen.c (claim_selection): Handle CM_Sn selection
	properly.

	* src/c-screen.c: Remove debug spew

	* src/screen.c (meta_screen_composite_all_windows): Remove debug spew
2006-04-10 20:47:02 +00:00
Björn Lindqvist
4730cb57bd *** empty log message *** 2006-04-10 08:30:02 +00:00
Vincent van Adrighem
c2b4a65e75 Translation updated by Michiel Sikkes.
2006-04-09  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Michiel Sikkes.
2006-04-09 16:35:59 +00:00
Gora Mohanty
793c1d7a43 Changes strings to make them more readable, and more translatable. Fixes
2006-03-27  Gora Mohanty  <gmohanty@cvs.gnome.org>

        * src/metacity.schemas.in:
	* src/theme.c:
	Changes strings to make them more readable, and more translatable.
	Fixes #335720.
2006-04-07 19:06:25 +00:00
Jeremy Le Floc'h
123684d80b file br.po was initially added on branch gnome-2-14. 2006-04-05 11:26:19 +00:00
Elijah Newren
8674051c58 Fix constraints bug causing negative width windows and crashes. #336651
2006-04-02  Elijah Newren  <newren gmail com>

	Fix constraints bug causing negative width windows and crashes.
	#336651

	* src/constraints.c (constrain_partially_onscreen): Don't
	accidentally shove & resize the window by requiring more pixels to
	be onscreen than the size of the window.
2006-04-02 23:11:25 +00:00
Kjartan Maraas
cb109b9637 Updated Norwegian bokmål translation. Same.
2006-04-02  Kjartan Maraas  <kmaraas@gnome.org>

	* nb.po: Updated Norwegian bokmål translation.
	* no.po: Same.
2006-04-02 12:37:45 +00:00
Søren Sandmann
6445d16fd5 Release the GL window here. Disconect from the magnifier, not the stacker.
Fri Mar 31 16:44:56 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/c-screen.c (meta_screen_info_unredirect): Release the GL
	window here. Disconect from the magnifier, not the stacker.
2006-03-31 21:45:29 +00:00
Søren Sandmann
21d5a43c29 Only use magnifier when USE_MAGNIFIER is set.
Fri Mar 31 12:24:26 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/c-screen.c (meta_screen_info_redirect): Only use magnifier
	when USE_MAGNIFIER is set.

	* src/compositor.c (meta_compositor_free_window): Only wobble when
	USE_WOBBLE is set.
2006-03-31 17:25:02 +00:00
Søren Sandmann
f7a202eb81 Don't hardcode screen size.
Fri Mar 31 12:13:21 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/c-screen.c (meta_screen_info_redirect): Don't hardcode
	screen size.
2006-03-31 17:13:48 +00:00
Søren Sandmann
eb102ab37f Fix the memory corruption in a better way.
Thu Mar 30 17:01:12 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c (struct MetaCompositor): Fix the memory
	corruption in a better way.
2006-03-30 22:01:45 +00:00
Søren Sandmann
aaafd14124 Fix an illegal write.
Thu Mar 30 16:38:35 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c (meta_compositor_begin_move): Fix an illegal write.
2006-03-30 21:39:00 +00:00
Søren Sandmann
3bf211c89f Turn wobbling back on Add new explosion effect.
Thu Mar 30 16:13:52 2006  Søren Sandmann  <sandmann@redhat.com>

	* composite.c: Turn wobbling back on  Add new explosion effect.
2006-03-30 21:14:56 +00:00
Elijah Newren
127a89886b Fix grouping in the presence of ancestors; caught by Björn. #336184
2006-03-29  Elijah Newren  <newren gmail com>

	Fix grouping in the presence of ancestors; caught by Björn.
	#336184

	* src/group.c (meta_window_compute_group): Use new
	meta_window_find_root_ancestor() function to get ancestor; for the
	computed group, use the ancestor's group instead of the ancestor
	itself

	* src/window.[ch] (meta_window_find_root_ancestor,
	meta_window_raise): split meta_window_find_root_ancestor()
	functionality of meta_window_raise() and make it available
	elsewhere
2006-03-30 19:22:38 +00:00
Guntupalli Karunakar
82a6c99485 Added Dzongkha translation 2006-03-30 15:23:51 +00:00
Elijah Newren
d0564def9c Add bugs about pointer warping; update raise-on-click ones.
2006-03-29  Elijah Newren  <newren gmail com>

	* rationales.txt: Add bugs about pointer warping; update
	raise-on-click ones.
2006-03-30 02:56:17 +00:00
Thomas James Alexander Thurman
1f7446cd88 That was #305882, not what I said. 2006-03-29 18:46:23 +00:00
Thomas Thurman
cf3deef6ea mark a window as needing or not needing the user's attention use the new
2006-03-29  Thomas Thurman   <thomas@thurman.org.uk>
        * src/window.c, src/window.h (meta_window_set_demands_attention,
        meta_window_unset_demands_attention): mark a window as needing
        or not needing the user's attention
        * src/window.c (meta_window_show, window_activate,
        meta_window_focus, meta_window_configure_request,
        meta_window_client_message): use the new set/unset
        demands attention functions. Fixes #305822.
2006-03-29 18:43:22 +00:00
Björn Lindqvist
28aeacb247 *** empty log message *** 2006-03-29 16:05:23 +00:00
Elijah Newren
d75c170fef New file. #335026. ;-)
2006-03-28  Elijah Newren  <newren gmail com>

	* MAINTAINERS: New file.  #335026.  ;-)
2006-03-29 05:47:04 +00:00
Søren Sandmann
ea1568c720 Also check for overlay_window.
Tue Mar 28 09:57:26 2006  Søren Sandmann  <sandmann@redhat.com>

        * src/c-screen.c (meta_screen_info_add_window): Also check for overlay_window.

        * src/c-screen.c (meta_screen_info_redirect): Trap errors out of
        unredirect().
2006-03-28 14:58:14 +00:00
Thomas James Alexander Thurman
9b6aeeef12 good grief, I always forget the bug number: #309567 2006-03-25 23:26:08 +00:00
Thomas Thurman
25923105e4 deleted and moved into window-props.c (meta_window_new_with_attrs): added
2006-03-25  Thomas Thurman  <thomas@thurman.org.uk>

	* src/window.c, src/window.h (update_net_wm_state,
	update_mwm_hints, update_wm_class, update_transient_for):
	deleted and moved into window-props.c
	(meta_window_new_with_attrs): added constructing field
	and four new initial properties (as above)
	(meta_window_recalc_features,
	meta_window_recalc_window_type): new functions

	* src/window-props.c (init_net_wm_state, reload_net_wm_state
	init_mwm_hints, reload_mwm_hints, init_wm_class,
	reload_mwm_class, init_transient_for, reload_transient_for):
	new functions, moved in from window.c

	(meta_display_init_window_prop_hooks): initialise new properties
2006-03-25 22:57:22 +00:00
Paolo Borelli
09a5c23585 use g_str_has_prefix instead of a local copy of the function.
2006-03-25  Paolo Borelli  <pborelli@katamail.com>

	* src/prefs.c: use g_str_has_prefix instead of a local copy
	of the function.
2006-03-25 11:47:31 +00:00
Ray Strode
8f59776087 Add patch from Elijah Newren to fix type for compositing_manager schema
2006-03-16  Ray Strode  <rstrode@redhat.com>

	Add patch from Elijah Newren to fix type
	for compositing_manager schema entry (bug 335901)

	* src/metacity.schemas.in: Change type from "boolean" to "bool"
	and default value from "FALSE" to "false"
2006-03-25 07:21:27 +00:00
Gora Mohanty
905b4e8e0d po/or.po: Updated Oriya translation.
po/Changelog: Changed to reflect this.
2006-03-23 18:54:56 +00:00
Søren Sandmann
b11ac45352 Actually remove the window.
Wed Mar 22 13:16:48 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c (meta_compositor_remove_window): Actually
	remove the window.

	* src/c-screen.c (meta_screen_info_remove_window): Only remove
	node if non-NULL
2006-03-22 18:34:18 +00:00
Søren Sandmann
fd1e1c76e8 Put a square below the desktop stack.
Wed Mar 22 10:33:21 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/c-screen.c (meta_screen_info_redirect): Put a square below
	the desktop stack.
2006-03-22 15:33:55 +00:00
Priit Laes
c5d4cbd742 Translation updated by Ivar Smolin.
2006-03-21  Priit Laes  <amd@store20.com>

	* et.po: Translation updated by Ivar Smolin.
2006-03-21 08:01:11 +00:00
Søren Sandmann
fc7a246074 Put the desktop into a magnifier.
Mon Mar 20 11:50:44 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/c-screen.c (meta_screen_info_redirect): Put the desktop into
	a magnifier.

	* src/c-screen.c (struct MetaScreenInfo): Add a CmMagnifier

	* src/c-screen.c (meta_screen_info_redirect): Move some of the gl
	window related stuff here.
2006-03-20 16:52:25 +00:00
Priit Laes
bdb60c4e72 Translation updated by Ivar Smolin.
2006-03-17  Priit Laes  <amd@store20.com>

	* et.po: Translation updated by Ivar Smolin.
2006-03-17 08:17:29 +00:00
Thomas James Alexander Thurman
d07fccc8b1 Mentioned bug number (#315142) 2006-03-17 04:34:16 +00:00
Søren Sandmann Pedersen
543f85a1db 2006-03-16 Soren Sandmann (sandmann@daimi.au.dk)
* src/c-screen.c (meta_screen_info_set_target_rect): Put inside
	COMPOSIT_EXTENSIONS
2006-03-17 04:15:40 +00:00
Thomas Thurman
ab176cf831 Always set _NET_WM_STATE when a window is shown or hidden, even if it
2006-03-03  Thomas Thurman  <thomas@thurman.org.uk>

	Always set _NET_WM_STATE when a window is shown or
	hidden, even if it wasn't mapped.

	* src/window.c (meta_window_hide, meta_window_show):
	call set_net_wm_state unconditionally
2006-03-17 03:26:25 +00:00
Elijah Newren
ef47c243c5 Add debugging information for edge resistance
2006-03-16  Elijah Newren  <newren gmail com>

	Add debugging information for edge resistance

	* src/edge-resistance.c (cache_edges): print out the edges that
	are being cached if in verbose mode,
	(meta_window_edge_resistance_for_move,
	meta_window_edge_resistance_for_resize): if edge resistance kicked
	in then print out a message about it

	* src/util.c:
	* src/util.h:
	Add META_DEBUG_EDGE_RESISTANCE to MetaDebugTopic enum list
2006-03-17 02:55:21 +00:00
Søren Sandmann
01cd31f7f4 Maintain the size of the window.
Thu Mar 16 14:55:18 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/c-screen.c (struct WindowInfo): Maintain the size of the
	window.
2006-03-16 20:00:18 +00:00
Søren Sandmann
ad2c7c6ce3 Use set_target_rect() instead of set_size().
Wed Mar 15 16:30:09 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c (set_geometry): Use set_target_rect() instead
	of set_size().

	* src/c-screen.c: Add set_target_rect() as a way of scaling windows.

	* src/window.c (meta_window_handle_mouse_grab_op_event): Turn
	updates on after a button release.

	* src/window.c (meta_window_move_resize_internal): Fix
	indentation.
2006-03-15 21:31:12 +00:00
Søren Sandmann
4d6ee9ea49 Use unset_patch() instead of unset_geometry().
Wed Mar 15 11:34:54 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/c-screen.c (meta_screen_info_add_window): Use unset_patch()
	instead of unset_geometry().
2006-03-15 16:35:26 +00:00
Žygimantas Beručka
a401b82089 Updated Lithuanian translation.
2006-03-15  Žygimantas Beručka  <zygis@gnome.org>

        * lt.po: Updated Lithuanian translation.
2006-03-15 14:22:42 +00:00
Mugurel Tudor
54751db00a Updated Romanian translation
2006-03-14  Mugurel Tudor  <mugurelu@gnome.ro>

	* ro.po: Updated Romanian translation
2006-03-14 18:30:48 +00:00
Søren Sandmann
16de3b603b Comment out wobbling
Tue Mar 14 11:57:46 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c: Comment out wobbling

	* src/compositor.c (blow_up): remove this function

	* src/compositor.c (process_configure_notify): Uncomment
	set_size().

	* src/c-screen.c (meta_screen_info_set_updates): When updates are
	true, set all the properties such as size and shape.

	* src/c-screen.c (meta_screen_info_add_window): Create a special
	WindowInfo structure for each window.

	* src/c-screen.c (meta_screen_info_set_size): Set size and output
	shape of the drawable node.
2006-03-14 17:00:56 +00:00
Miloslav Trmac
5f30265879 Updated Czech translation.
2006-03-14  Miloslav Trmac  <mitr@volny.cz>

	* cs.po: Updated Czech translation.
2006-03-14 01:02:36 +00:00
Elijah Newren
0b5f11ae5a Update to reflect that we're now targetting 2.15 development.
2006-03-13  Elijah Newren  <newren gmail com>

        * README:
	* configure.in:
	Update to reflect that we're now targetting 2.15 development.
2006-03-13 23:11:33 +00:00
Jordi Mallach
6ef997d3ad Updated Catalan translation. 2006-03-13 18:58:52 +00:00
Vincent van Adrighem
369ab5bc2b Translation updated by Tino Meinen.
2006-03-13  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.
2006-03-13 18:56:58 +00:00
Thomas James Alexander Thurman
188bc50a35 Belated update of ChangeLog for #334332 2006-03-13 17:46:25 +00:00
Danilo Šegan
042f5e3e6b Updated Serbian translation. 2006-03-13 14:50:35 +00:00
Alexander Shopov
82a3cad018 Updated Bulgarian translation by Alexander Shopov <ash@contact.bg>
2006-03-13  Alexander Shopov  <ash@contact.bg>

	* bg.po: Updated Bulgarian translation by
	Alexander Shopov <ash@contact.bg>
2006-03-13 12:09:47 +00:00
Laurent Dhima
c910286c02 Updated Albanian translation.
2006-03-13  Laurent Dhima  <laurenti@alblinux.net>

	* sq.po: Updated Albanian translation.
2006-03-13 11:56:30 +00:00
Francisco Javier F. Serrador
07ef2db60c Updated Spanish translation.
2006-03-13  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2006-03-13 10:45:45 +00:00
Maxim Dziumanenko
5f3b961989 Updated Ukrainian translation.
2006-03-13  Maxim Dziumanenko <mvd@mylinux.ua>

	* Updated Ukrainian translation.
2006-03-13 10:02:23 +00:00
Amanpreet Singh Alam
3393f4707c update translation for Punjabi (Gurmukhi) by apbrar gmail com 2006-03-13 10:01:11 +00:00
Rajesh Ranjan
77b8ed579a Updated Translation 2006-03-13 09:16:43 +00:00
Theppitak Karoonboonyanan
d02815b364 Updated Thai translation (merged from gnome-2-14 branch).
2006-03-13  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	* th.po: Updated Thai translation (merged from gnome-2-14 branch).
2006-03-13 05:27:16 +00:00
Satoru SATOH
9cfa08d4f4 Updated Japanese translation.
2006-03-13  Satoru SATOH <ss@gnome.gr.jp>

	* ja.po: Updated Japanese translation.
2006-03-13 03:04:30 +00:00
Duarte Loreto
77440097e1 Updated Portuguese translation.
2006-03-13  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Updated Portuguese translation.
2006-03-13 01:42:39 +00:00
Guilherme de S. Pastore
985195858d Updated Brazilian Portuguese translation 2006-03-13 00:52:17 +00:00
Frank Arnold
d161ddcff8 Updated German translation.
2006-03-13  Frank Arnold  <farnold@cvs.gnome.org>

	* de.po: Updated German translation.
2006-03-12 23:25:02 +00:00
Daniel Nylander
e27bebc49b Updated Swedish translation.
2006-03-13  Daniel Nylander  <po@danielnylander.se>

        * sv.po: Updated Swedish translation.
2006-03-12 23:04:05 +00:00
Ignacio Casal Quinteiro
9ac0eab5c3 *** empty log message *** 2006-03-12 22:56:29 +00:00
Thomas James Alexander Thurman
4d220adc32 Marking string for translation. Closes #334332 2006-03-12 21:04:56 +00:00
Amanpreet Singh Alam
7750026603 update translation for Punjabi (Gurmukhi) by apbrar gmail com 2006-03-12 18:03:46 +00:00
Raphael Higino
92ac98ef47 Updated Brazilian Portuguese translation 2006-03-12 15:25:54 +00:00
Priit Laes
1161cfdeba Translation updated by Ivar Smolin.
2006-03-12  Priit Laes  <amd@store20.com>

	* et.po: Translation updated by Ivar Smolin.
2006-03-12 08:08:43 +00:00
Miloslav Trmac
8d0a3358c7 Updated Czech translation by Petr Tomeš.
2006-03-12  Miloslav Trmac  <mitr@volny.cz>

	* cs.po: Updated Czech translation by Petr Tomeš.
2006-03-12 02:47:14 +00:00
Roozbeh Pournader
20c9efaf82 Updated Persian translation by Meelad Zakaria, Elnaz Sarbar, and Farzaneh
2006-03-12  Roozbeh Pournader  <roozbeh@farsiweb.info>

	* fa.po: Updated Persian translation by Meelad Zakaria,
	  Elnaz Sarbar, and Farzaneh Sarafraz.
2006-03-11 22:20:07 +00:00
Hendrik Richter
192943640e Updated German translation.
2006-03-09  Hendrik Richter  <hendrikr@gnome.org>

	* de.po: Updated German translation.
2006-03-09 20:34:29 +00:00
Laurent Dhima
46bdc87e94 Updated Albanian translation.
2006-03-09  Laurent Dhima  <laurenti@alblinux.net>

	* sq.po: Updated Albanian translation.
2006-03-09 17:00:13 +00:00
Laurent Dhima
35674ae862 Updated Albanian translation.
2006-03-08  Laurent Dhima  <laurenti@alblinux.net>

	* sq.po: Updated Albanian translation.
2006-03-08 19:02:06 +00:00
Gabor Kelemen
04433e5b9d Hungarian translation updated.
2006-03-08  Gabor Kelemen  <kelemeng@gnome.hu>

	* hu.po: Hungarian translation updated.
2006-03-08 09:21:03 +00:00
Funda Wang
f8cd8ae75f Updated metacity zh_CN translation. 2006-03-07 05:03:56 +00:00
Daniel Nylander
94d4d039c2 Updated Swedish translation
2006-03-06  Daniel Nylander  <po@danielnylander.se>

        * sv.po: Updated Swedish translation
2006-03-06 17:27:20 +00:00
Ryan Lortie
3c6b291641 Only unmaximise window before freeing if the window is actually maximised.
2006-03-06  Ryan Lortie  <desrt@desrt.ca>

        * src/window.c (meta_window_free): Only unmaximise window before
        freeing if the window is actually maximised.  #333563.
2006-03-06 16:33:33 +00:00
Mugurel Tudor
8c2a5dbc19 Updated Romanian translation
2006-03-05  Mugurel Tudor  <mugurelu@gnome.ro>

	* ro.po: Updated Romanian translation
2006-03-05 19:59:59 +00:00
Alexander Shopov
92971d6377 Updated Bulgarian translation by Alexander Shopov <ash@contact.bg>
2006-03-05  Alexander Shopov  <ash@contact.bg>

	* bg.po: Updated Bulgarian translation by
	Alexander Shopov <ash@contact.bg>
2006-03-05 11:31:27 +00:00
Hendrik Richter
add8531eb4 Updated German translation.
2006-03-04  Hendrik Richter  <hendrikr@gnome.org>

	* de.po: Updated German translation.
2006-03-04 10:07:31 +00:00
Søren Sandmann
eed6f29b30 Update for libcm API change.
Fri Mar  3 15:31:04 2006  Søren Sandmann  <sandmann@redhat.com>

        * src/c-screen.c (meta_screen_info_new): Update for libcm API
        change.
2006-03-03 20:31:41 +00:00
Søren Sandmann
832968ddd6 Split the ScreenInfo data structure into separate, new files
Wed Mar  3 13:25:03 2006  Søren Sandmann  <sandmann@redhat.com>

        * src/compositor.c, src/c-screen.[ch]: Split the ScreenInfo data
        structure into separate, new files c-screen.[ch].

        * src/errors.c (x_error_handler): Forward foreign errors to
        foreign displays.

        * src/errors.c (meta_errors_register_foreign_display): Implement
        this function

        * src/errors.h: Add new meta_errors_register_foreign_display()
2006-03-03 15:53:10 +00:00
Maxim Dziumanenko
7a8e3c94fd Updated Ukrainian translation.
2006-03-03  Maxim Dziumanenko <mvd@mylinux.ua>

	* Updated Ukrainian translation.
2006-03-03 14:18:35 +00:00
Hendrik Richter
4d0d192761 Updated German translation.
2006-03-02  Hendrik Richter  <hendrikr@gnome.org>

	* de.po: Updated German translation.
2006-03-02 22:14:16 +00:00
Hendrik Richter
c3ed3a3090 Updated German translation.
2006-03-02  Hendrik Richter  <hendrikr@gnome.org>

	* de.po: Updated German translation.
2006-03-02 21:50:37 +00:00
Rhys Jones
b7c040be26 Updated Welsh translation.
2006-03-02  Rhys Jones  <rhys@sucs.org>

	* cy.po: Updated Welsh translation.
2006-03-02 17:50:23 +00:00
Arangel Angov
e92403441a Updated Macedonian Translation <arangela@cvs.gnome.org> 2006-03-01 22:48:13 +00:00
Leonid Kanter
9232b75ef4 Updated Russian translation 2006-03-01 16:00:12 +00:00
Josep Puigdemont i Casamajó
1b7d0fbc87 Updated Catalan translation. 2006-03-01 00:29:49 +00:00
Søren Sandmann
0a1a7e523c Put the windows in a stacker rather than do the traversing outselves.
Tue Feb 28 14:49:23 2006  Søren Sandmann  <sandmann@redhat.com>

        * src/compositor.c: Put the windows in a stacker rather than
        do the traversing outselves.
2006-02-28 19:51:45 +00:00
Leonid Kanter
d3e27ed02a Updated Russian translation 2006-02-28 18:27:31 +00:00
Elijah Newren
3e01e149eb Patch from Thomas Thurman to prevent setting cycle_windows to keybindings
2006-02-27  Elijah Newren  <newren gmail com>

        Patch from Thomas Thurman to prevent setting cycle_windows to
        keybindings that won't work.  #329676

        * src/prefs.c (update_binding):
        Make sure that bindings which require a modifier key are set to a
        keybinding with one or else that the binding is reverted.

        * src/ui.[ch] (meta_ui_accelerator_name):
        New function
2006-02-27 22:44:47 +00:00
Elijah Newren
04a4f7c363 Patch from Thomas Thurman to work around buggy application grouping with
2006-02-27  Elijah Newren  <newren gmail com>

        Patch from Thomas Thurman to work around buggy application
        grouping with transient windows.  #328211

        * src/group.c (meta_window_compute_group):
        Put transients in the same group with their parent, always.

        * src/window.c (update_transient_for):
        Update group too
2006-02-27 22:19:11 +00:00
Elijah Newren
6a08faf99b Patch from Sylvain Bertrand to fix build issues with library search order.
2006-02-27  Elijah Newren  <newren gmail com>

        * configure.in:
        Patch from Sylvain Bertrand to fix build issues with library
        search order.  #330695.
2006-02-27 22:11:56 +00:00
Lasse Bang Mikkelsen
a3e7c9c222 Updated Danish translation 2006-02-27 20:03:30 +00:00
Lasse Bang Mikkelsen
1a430825c3 Updated Danish translation 2006-02-27 00:09:32 +00:00
Miloslav Trmac
82664c5d76 Updated Czech translation.
2006-02-25  Miloslav Trmac  <mitr@volny.cz>

	* cs.po: Updated Czech translation.
2006-02-25 22:59:37 +00:00
Søren Sandmann
f8f6016970 Remove include of flash.h
Sat Feb 25 14:50:17 2006  Søren Sandmann  <sandmann@redhat.com>

        * src/window.c: Remove include of flash.h
2006-02-25 19:50:50 +00:00
Søren Sandmann
b1847959b1 Call meta_compositor_begin_move if there is a compositor
Sat Feb 25 11:46:14 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/display.c (meta_display_begin_grab_op): Call
	meta_compositor_begin_move if there is a compositor

	* src/compositor.c (meta_compositor_begin/update/end_move):
	Implement those functions.

	* src/spring-model.[ch]: New files
2006-02-25 16:54:39 +00:00
Søren Sandmann
e4cf87c985 Don't attempt to manage the screen if it already is managed.
Thu Feb 23 15:40:52 2006  Søren Sandmann  <sandmann@redhat.com>

        * src/compositor.c (meta_compositor_manage_screen): Don't attempt
        to manage the screen if it already is managed.

        * src/compositor.c (meta_compositor_unmanage_screen): Synchronize
        the display.
2006-02-23 20:41:53 +00:00
Inaki Larranaga
928364e915 Updated Basque translation.
2006-02-23  Inaki Larranaga  <dooteo@euskalgnu.org>

	* eu.po:  Updated Basque translation.
2006-02-23 12:19:42 +00:00
Clytie Siddall
78ce6d6a60 ka.po: Added Georgian translation. 2006-02-23 06:05:40 +00:00
Duarte Loreto
a6b60a2024 Updated Portuguese translation.
2006-02-23  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Updated Portuguese translation.
2006-02-23 01:57:49 +00:00
Žygimantas Beručka
f5fdb07165 Updated Lithuanian translation.
2006-02-23  Žygimantas Beručka  <zygis@gnome.org>

        * lt.po: Updated Lithuanian translation.
2006-02-22 23:25:40 +00:00
Vincent van Adrighem
f127b2bc98 Translation updated by Tino Meinen.
2006-02-21  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.
2006-02-21 12:17:22 +00:00
Clytie Siddall
5352caac31 vi.po: Updated Vietnamese translation. 2006-02-21 11:27:20 +00:00
Slobodan D. Sredojevic
d24fa066a4 Updated Serbian translation
2006-02-21  Slobodan D. Sredojevic  <slobo@akrep.be>

        * sr.po, sr@Latn.po: Updated Serbian translation
2006-02-21 00:51:09 +00:00
Ignacio Casal Quinteiro
d010bbb5ed *** empty log message *** 2006-02-21 00:09:18 +00:00
Ankitkumar Rameshchandra Patel
636da5ebff Updated Translation 2006-02-20 11:06:21 +00:00
Kostas Papadimas
a42e4dac42 Updated Greek translation 2006-02-20 09:43:26 +00:00
Ilkka Tuohela
f966ab041b Updated Finnish translation 2006-02-20 09:41:06 +00:00
Thomas Thurman
9e17747f3c Removed "move to another workspace" menu when there are exactly two
2006-02-19  Thomas Thurman  <thomas thurman org uk>

        Removed "move to another workspace" menu when there are
        exactly two workspaces.  Fixes #151183.

        * src/menu.c (meta_window_menu_new): clear
        META_MENU_OP_WORKSPACES bit when n_workspaces==2
2006-02-20 02:15:14 +00:00
Takeshi AIHANA
5a85bf18fe Updated Japanese translation for v2.13.89.
2006-02-19  Takeshi AIHANA <takeshi.aihana@gmail.com>

	* ja.po: Updated Japanese translation for v2.13.89.
2006-02-18 15:18:52 +00:00
Francisco Javier F. Serrador
833fc11c47 Updated Spanish translation.
2006-02-18  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2006-02-18 13:38:30 +00:00
Kjartan Maraas
8215a35993 Updated Norwegian bokmål translation. Same.
2006-02-18  Kjartan Maraas  <kmaraas@gnome.org>

	* nb.po: Updated Norwegian bokmål translation.
	* no.po: Same.
2006-02-18 13:15:48 +00:00
Søren Sandmann
f3ade45b96 Only uncomposite the screen if there is a compositor.
Fri Feb 17 11:56:35 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/screen.c (meta_screen_free): Only uncomposite the screen if
	there is a compositor.

	* src/compositor.c (meta_compositor_new): Warn and fail if the
	server doesn't have composite
2006-02-17 16:58:08 +00:00
Søren Sandmann
71b27c6228 Fix the build when --enable-compositor is there.
Thu Feb 16 18:57:48 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c: Fix the build when --enable-compositor is
	there.
2006-02-17 00:00:24 +00:00
Søren Sandmann
053759fad6 Insert #ifdef's to make it build again
Thu Feb 16 15:54:48 2006  Søren Sandmann  <sandmann@redhat.com>

       * src/compositor.c: Insert #ifdef's to make it build again
2006-02-16 21:03:02 +00:00
Søren Sandmann
f6738a930c New function.
Thu Feb 16 15:24:42 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/screen.c (meta_screen_composite_all_windows): New function.

	* src/prefs.[ch], src/metacity.schemas.in: Add new
	compositing_manager key.

	* src/display.c (prefs_changed_callback): Handle
	META_PREF_COMPOSITOR_MANAGER

	* src/display.c (event_callback): Only call
	meta_compositor_process_event() if there is in fact a compositor.

	* src/display.c (enable/disable_compositor): Add code to
	enable/disable compositor at runtime
2006-02-16 20:26:05 +00:00
Søren Sandmann
0f48ff448c Add code to destroy compositor. Implement unmanage_screen() functionality.
Wed Feb 15 18:42:03 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.[ch]: Add code to destroy compositor. Implement
	unmanage_screen() functionality.
2006-02-15 23:44:15 +00:00
Søren Sandmann
ca539199b2 Add unused wobbly unminimize animation by Kristian
Wed Feb 15 14:47:50 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c (meta_compositor_unminimize): Add unused wobbly
	unminimize animation by Kristian

	* src/compositor.c (meta_compositor_minimize): Add wobbly minimize
	animation by Kristian.

	* src/compositor.c: Add support for turning updates on and off.

	* src/window.c (meta_window_move_resize_internal): Use
	sync counter to make composited resizing tear free
2006-02-15 19:50:12 +00:00
Elijah Newren
c348794431 Patch from Jens Granseuer to fix more build issues with gcc 2.95. #331166.
2006-02-14  Elijah Newren  <newren gmail com>

	Patch from Jens Granseuer to fix more build issues with gcc 2.95.
	#331166.

	* src/prefs.c (meta_prefs_init):
	Remove C99 style variable initiailization
2006-02-14 17:26:40 +00:00
Elijah Newren
0610f92f0f post-release version bump to 2.13.144
2006-02-13  Elijah Newren  <newren gmail com>

	* configure.in: post-release version bump to 2.13.144
2006-02-13 19:46:13 +00:00
Elijah Newren
b3e0208afa 2.13.89 release
2006-02-13  Elijah Newren  <newren gmail com>

	* NEWS:	2.13.89 release
2006-02-13 19:45:02 +00:00
Elijah Newren
8ceb613668 We had that prev_window code in multiple places and it was all identical.
2006-02-13  Elijah Newren  <newren gmail com>

	* src/keybindings.c (process_tab_grab):
	We had that prev_window code in multiple places and it was all
	identical.  Let's just stick it in one place to make the function
	easier to read.
2006-02-13 19:26:40 +00:00
Thomas Thurman
500bbefc6a Allow alt-escape to cancel alt-tabbing, and vice versa. Fixes #141425.
2006-02-13  Thomas Thurman <thomas thurman org uk>

	* src/keybindings.c (process_tab_grab):
	Allow alt-escape to cancel alt-tabbing, and vice versa.  Fixes
	#141425.
2006-02-13 19:16:32 +00:00
Miloslav Trmac
d0e8371494 Updated Czech translation.
2006-02-13  Miloslav Trmac  <mitr@volny.cz>

	* cs.po: Updated Czech translation.
2006-02-13 05:07:54 +00:00
Thomas Thurman
ce3299e815 Disable alt-f7 if a window can't be moved, and alt-f8 if it can't be
2006-02-11  Thomas Thurman <thomas thurman org uk>

        Disable alt-f7 if a window can't be moved, and alt-f8 if it
        can't be resized.  Fixes #328920.

        * src/keybindings.c (handle_begin_move, handle_begin_resize):
        check window->has_*_func before beginning operation
2006-02-12 03:17:10 +00:00
Elijah Newren
0e8c8eb6b5 Add a man page for metacity. Original version taken from Debian (written
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.
2006-02-12 00:55:57 +00:00
Elijah Newren
cb298b9279 actually use META_LAYER_TOP but just manually make it equal to
2006-02-11  Elijah Newren  <newren gmail com>

	* src/stack.h (enum MetaStackLayer):
	* src/stack.c (get_standalone_layer):
	actually use META_LAYER_TOP but just manually make it equal to
	META_LAYER_DOCK.  Add a note point to the EWMH for why we do this.
	#330717
2006-02-12 00:01:06 +00:00
Elijah Newren
74510389bc remove this legacy cruft that we stopped using years ago
2006-02-11  Elijah Newren  <newren gmail com>

	* src/window.c (enum GnomeWinLayer): remove this legacy cruft that
	we stopped using years ago
2006-02-11 23:41:15 +00:00
Kang Jeong-Hee
0654163d8a ko.po updated 2006-02-11 12:41:31 +00:00
Thomas Thurman
7aebefad3c Avoid a memory leak when checking which workspace(s) a window is on. Fixes
2006-02-10  Thomas Thurman <thomas thurman org uk>

	Avoid a memory leak when checking which workspace(s) a window is
	on.  Fixes #322059.

        * src/workspace.h (struct MetaWorkspace):
        * src/workspace.c (meta_workspace_new, meta_workspace_free):
	added list_containing_self member to MetaWorkspace

        * src/window.c (meta_window_get_workspaces): use
	window->workspace->list_containing_self instead of allocating (and
	leaking) such a list on the fly.
2006-02-11 05:06:08 +00:00
Thomas Thurman
4b6a87acb5 add messages to explain that warnings are harmless
2006-02-09  Thomas Thurman <thomas thurman org uk>

        * src/testboxes.c (test_regions_okay, test_clamping_to_region):
        add messages to explain that warnings are harmless
2006-02-11 04:03:27 +00:00
Soeren Sandmann
f39bcff434 Wrap fade code in #ifdef HAVE_COMPOSITE_EXTENSIONS
Tue Feb  7 00:58:05 2006  Soeren Sandmann  <sandmann@redhat.com>

	* src/compositor.c: Wrap fade code in #ifdef HAVE_COMPOSITE_EXTENSIONS
2006-02-07 05:58:52 +00:00
Søren Sandmann
abde4a3769 New fancy minimize animation. Fade windows in and out.
Mon Feb  6 17:45:39 2006  Søren Sandmann  <sandmann@redhat.com>

        * src/compositor.c: New fancy minimize animation. Fade windows in
        and out.

2
2006-02-06 22:47:13 +00:00
Funda Wang
d49bb492fe Updated metacity zh_CN translation. 2006-02-05 19:09:25 +00:00
Kjartan Maraas
14f72c89e3 Updated Norwegian bokmål translation. Same.
2006-02-03  Kjartan Maraas  <kmaraas@gnome.org>

	* nb.po: Updated Norwegian bokmål translation.
	* no.po: Same.
2006-02-03 18:09:35 +00:00
Thomas Thurman
b5c199c6e6 produce warning when invalid events with no timestamp are received, rather
2006-02-03  Thomas Thurman <thomas thurman org uk>

        * src/display.c (event_callback): produce warning when invalid
        events with no timestamp are received, rather than failing an
        assertion
2006-02-03 18:09:16 +00:00
Søren Sandmann
63d978d228 update the pixmap. (update) print out framerate. (dump_stacking_order) new
Thu Feb  2 17:58:22 2006  Søren Sandmann  <sandmann@redhat.com>

	* compositor.c (process_map): update the pixmap.
	(update) print out framerate.
	(dump_stacking_order) new debug
	function.
	(meta_compositor_add_window) error trap fixes
	(MiniInfo): Make the minimize animation fade out.
2006-02-02 23:02:21 +00:00
Vincent van Adrighem
f839edda05 Translation updated by Tino Meinen.
2006-01-31  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.
2006-01-31 11:20:22 +00:00
Slobodan D. Sredojevic
d6ace0d2d4 Updated Serbian translation
2006-01-31  Slobodan D. Sredojevic  <slobo@akrep.be>

        * sr.po, sr@Latn.po: Updated Serbian translation
2006-01-31 03:14:11 +00:00
Elijah Newren
bcadc0ce3a Oops, I forgot to save the final changes before committing; fix that now 2006-01-30 17:50:03 +00:00
Elijah Newren
fdd47d79b4 post-release version bump to 2.13.89
2006-01-30  Elijah Newren  <newren gmail.com>

	* configure.in: post-release version bump to 2.13.89
2006-01-30 17:44:50 +00:00
Elijah Newren
891e59e597 2.13.55 release
2006-01-30  Elijah Newren  <newren gmail com>

	* NEWS:	2.13.55 release
2006-01-30 17:42:51 +00:00
Elijah Newren
297e0e466f Track the active_screen, (event_callback): If the mouse enters a window on
2006-01-30  Elijah Newren  <newren gmail com>

	* src/display.[ch] (struct MetaDisplay), meta_display_open,
	meta_display_set_input_focus_window,
	meta_display_focus_the_no_focus_window): Track the active_screen,
	(event_callback): If the mouse enters a window on a different
	screen, activate the default window on the new screen.  May need
	to be modified for click-to-focus; we'll wait for feedback.  Fixes
	#319348.
2006-01-30 17:22:14 +00:00
Theppitak Karoonboonyanan
be036ca300 Updated Thai translation.
2006-01-28  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	* th.po: Updated Thai translation.
2006-01-28 10:59:06 +00:00
Josep Puigdemont i Casamajó
5a49bc8f91 Updated Catalan translation. 2006-01-27 00:45:53 +00:00
Adam Weinberger
2360ba0aeb Updated Canadian English translation.
2006-01-26  Adam Weinberger  <adamw@gnome.org>

	* en_CA.po: Updated Canadian English translation.
2006-01-26 18:09:53 +00:00
Evandro Fernandes Giovanini
2bcbabf6ec Updated Brazilian Portuguese translation.
2006-01-26  Evandro Fernandes Giovanini <evandrofg@ig.com.br>

	* pt_BR.po: Updated Brazilian Portuguese translation.
2006-01-26 07:49:44 +00:00
Ignacio Casal Quinteiro
e7675e8069 *** empty log message *** 2006-01-24 20:21:11 +00:00
Elijah Newren
405e21a82a change the order of the ||'ed items in the if to avoid using an
2006-01-23  Elijah Newren  <newren gmail com>

	* src/display.c (meta_display_check_threshold_reached): change the
	order of the ||'ed items in the if to avoid using an uninitialized
	value

	* src/prefs.c (meta_prefs_init): fix a couple uninitialized value
	problems
2006-01-24 01:07:41 +00:00
Ankitkumar Rameshchandra Patel
9abec54da6 Updated Translation 2006-01-23 09:46:05 +00:00
Funda Wang
095359b58d Updated metacity translation. 2006-01-23 07:25:16 +00:00
Kjartan Maraas
99c3ce1ef9 Updated Norwegian bokmål translation. Same.
2006-01-22  Kjartan Maraas  <kmaraas@gnome.org>

	* nb.po: Updated Norwegian bokmål translation.
	* no.po: Same.
2006-01-22 19:15:13 +00:00
Ilkka Tuohela
0375976ef0 Updated Finnish translation 2006-01-22 07:33:08 +00:00
Clytie Siddall
9a91c8066a vi.po: Updated Vietnamese translation. 2006-01-22 05:28:42 +00:00
Elijah Newren
9ce85d7657 Patch from Christian Kirbach to prevent a critical warning crasher when
2006-01-21  Elijah Newren  <newren gmail com>

	Patch from Christian Kirbach to prevent a critical warning crasher
	when switching themes.  #327847.

	* src/theme.c (meta_theme_free): since themes are only constructed
	as needed and may be NULL, check for that before freeing theme
	hash tables
2006-01-21 21:26:55 +00:00
Ilkka Tuohela
8808c8b500 Updated Finnish translation 2006-01-21 20:07:31 +00:00
Francisco Javier F. Serrador
5c29242d4a Updated Spanish translation.
2006-01-21  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2006-01-21 19:25:13 +00:00
Elijah Newren
c0f4b9d2d4 Patch from Dick Marinus to add a minimize double-click-titlebar-action;
2006-01-21  Elijah Newren  <newren gmail com>

	* src/common.h (enum MetaActionDoubleClickTitlebar):
	* src/frames.c (meta_frames_button_press_event):
	* src/prefs.c (action_double_click_titlebar_from_string):
	* src/metacity.schemas.in:
	Patch from Dick Marinus to add a minimize
	double-click-titlebar-action; slightly modified to also include a
	none action.  #300210.
2006-01-21 19:18:51 +00:00
Elijah Newren
e44e8c93aa post-release version bump to 2.13.55
2006-01-20  Elijah Newren  <newren gmail.com>

	* configure.in: post-release version bump to 2.13.55
2006-01-21 01:36:01 +00:00
Elijah Newren
c8d135b353 2.13.34 release
2006-01-20  Elijah Newren  <newren gmail com>

	* NEWS:	2.13.34 release
2006-01-21 01:33:49 +00:00
Elijah Newren
8e5425a86f fixed_directions is only meant for explicit user interactions; disable it
2006-01-20  Elijah Newren  <newren gmail com>

	* src/constraints.c (setup_constraint_info): fixed_directions is
	only meant for explicit user interactions; disable it for
	everything else.  There are other bugs and improvements that could
	be made with fixed_directions that I should be filing too, but at
	least put a FIXME there for now--I'm so lame.  Fixes #327822.
2006-01-21 01:09:46 +00:00
Ignacio Casal Quinteiro
0ea8552531 *** empty log message *** 2006-01-21 00:08:11 +00:00
Elijah Newren
dcec11274a Avoid flashing when closing a maximized window. Fixes #317254.
2006-01-20  Elijah Newren  <newren gmail com>

	Avoid flashing when closing a maximized window.  Fixes #317254.

	* src/window.c (unmaximize_window_before_freeing): new function
	that just fixes the net_wm_state and sends a configure_notify,
	(meta_window_free): use unmaximize_window_before_freeing() instead
	of meta_window_unmaximize() to avoid flicker
2006-01-20 23:36:23 +00:00
Elijah Newren
6f318f1a75 Fix unitialized value problem when in raise-on-click mode. Søren,
2006-01-20  Elijah Newren  <newren gmail com>

	Fix unitialized value problem when in raise-on-click mode.  Søren,
	#327572.

	* src/display.c (meta_display_check_threshold_reached): make
	function be a no op if raise_on_click!=FALSE

	* src/display.h (struct MetaDisplay): point out that
	grab_initial_[xy] and grab_threshold_movement_reached are only for
	raise_on_click==FALSE mode.
2006-01-20 23:02:24 +00:00
Elijah Newren
5568f75cb0 Patch from Søren to fix some reading-from-free'd-data errors. #327575
2006-01-20  Elijah Newren  <newren gmail com>

	Patch from Søren to fix some reading-from-free'd-data errors.
	#327575

	* src/edge-resistance.c (meta_display_cleanup_edges): store the
	edges in a hash table so that we can still read their values
	within the loop from the other array they are stored in, then free
	them all at the end.
2006-01-20 22:57:42 +00:00
Elijah Newren
e272295976 Fix various initialization and default issues, especially for
2006-01-20  Elijah Newren  <newren gmail com>

	Fix various initialization and default issues, especially for
	--disable-gconf.  Make --disable-gconf actually work.  #326661.

	* configure.in: Fix compilation with --disable-gconf
	* src/metacity.schemas.in: Add a note that if any defaults are
	  changed in this file, src/prefs.c may need to be updated to
	  reflect the change
	* src/prefs.c: set various static global vars to the right default
	value, (meta_prefs_init): get the titlebar_font and current_theme
	handled better when not using gconf, (struct MetaSimpleKeyMapping,
	screen_string_bindings, window_string_bindings): helper vars to
	allow some keybindings to work even without gconf,
	(init_bindings): initialize bindings for the without-gconf case
	too, (init_commands): make sure these are all NULL for the
	non-gconf case so that we don't access random memory,
	(init_workspace_names): just give these all a default name for the
	non-gconf case,
	(meta_prefs_change_workspace_name): actually change the name for
	the non-gconf case too
2006-01-20 22:42:25 +00:00
Elijah Newren
a556a7334a More careful error handling of values returned by GConf. Fixes #326615.
2006-01-20  Elijah Newren  <newren gmail com>

	More careful error handling of values returned by GConf.  Fixes
	#326615.

	* src/prefs.c (get_bool): new helper function, (meta_prefs_init):
	use get_bool to handle the case of a gconf key not existing,
	(update_cursor_size): sanity check for sane values
2006-01-20 22:32:28 +00:00
Elijah Newren
af14d9d2a1 Prevent rapidly repeated visual bells from hanging metacity. Fixes
2006-01-20  Elijah Newren  <newren gmail com>

	Prevent rapidly repeated visual bells from hanging metacity.
	Fixes #322032.

	* src/display.h (struct MetaDisplay): add a last_bell_time field,
	(XSERVER_TIME_IS_BEFORE_ASSUMING_REAL_TIMESTAMPS macro,
	XERVER_TIME_IS_BEFORE macro): add parentheses around usage of
	macro parameter

	* src/display.c (meta_display_open): initialize last_bell_time,
	(event_callback): don't allow more than one bell per second
2006-01-20 22:08:52 +00:00
Elijah Newren
32d4bd6b63 Patch from Kjartan Maraas to fix a lot of tiny issues (unused variable
2006-01-20  Elijah Newren  <newren gmail com>

	* src/async-getprop.c:
	* src/common.h:
	* src/display.c:
	* src/eggaccelerators.c:
	* src/frames.c:
	* src/gradient.c:
	* src/iconcache.c:
	* src/keybindings.c:
	* src/metaaccellabel.c:
	* src/place.c:
	* src/prefs.c:
	* src/preview-widget.c:
	* src/screen.c:
	* src/session.c:
	* src/stack.c:
	* src/tabpopup.c:
	* src/theme-viewer.c:
	* src/theme.c:
	* src/window-props.c:
	* src/window.c:
	* src/workspace.c:
	* src/tools/metacity-window-demo.c:
	* src/wm-tester/test-gravity.c:
	* src/wm-tester/test-resizing.c:
	* src/wm-tester/test-size-hints.c:
	Patch from Kjartan Maraas to fix a lot of tiny issues (unused
	variable removal, making unused variables used again, correction
	of types passed/declared for printf arguments, removal of unneeded
	breaks and returns, dead code removal, dead code revival, renaming
	to prevent shadowed variables, declaring unexported functions as
	static) spotted by the intel compiler.  #321439
2006-01-20 22:03:56 +00:00
Elijah Newren
4c10722262 Patch from Björn Lindqvist to fix #98340.
2006-01-20  Elijah Newren  <newren gmail com>

	Patch from Björn Lindqvist to fix #98340.

	* src/screen.c (meta_screen_ensure_tab_popup): Make sure an
	outline border is shown even if a window frame's width is 0.
	Also, correctly handle window outlines in showing desktop mode.
2006-01-20 21:48:51 +00:00
Søren Sandmann
cc790655f2 Make minimize animation update again.
Fri Jan 20 16:42:25 2006  Søren Sandmann  <sandmann@redhat.com>

        * src/compositor.c: Make minimize animation update again.
2006-01-20 21:43:13 +00:00
Vincent van Adrighem
1bce2c55fe Translation updated by Tino Meinen.
2006-01-20  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.
2006-01-20 12:50:15 +00:00
Søren Sandmann
5f9a097d2c g_object_unref() rather than ws_region_unref().
Thu Jan 19 18:05:47 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c (meta_compositor_manage_screen):
	g_object_unref() rather than ws_region_unref().
2006-01-19 23:06:19 +00:00
Søren Sandmann
24976318b5 Port to changes in libcm
Thu Jan 19 16:50:50 2006  Søren Sandmann  <sandmann@redhat.com>

        * src/compositor.c: Port to changes in libcm
2006-01-19 21:51:54 +00:00
Funda Wang
59d7d891db Updated metacity translation. 2006-01-18 13:40:28 +00:00
Søren Sandmann
8638300708 Port to changes in libcm.
Tue Jan 17 17:25:29 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c: Port to changes in libcm.
2006-01-17 22:27:10 +00:00
Ignacio Casal Quinteiro
a42d6647b5 *** empty log message *** 2006-01-17 20:19:07 +00:00
Ilkka Tuohela
0a815fb8f8 Updated Finnish translation 2006-01-16 20:00:56 +00:00
Elijah Newren
4dd216f5a8 manually define HOST_NAME_MAX if not already defined to fix Solaris
2006-01-16  Elijah Newren  <newren gmail com>

	* src/window-props.c: manually define HOST_NAME_MAX if not already
	defined to fix Solaris compilation issue.  Caught by Damien
	Carbery, patch from Havoc.  #326745
2006-01-16 17:37:53 +00:00
Elijah Newren
4d868c1ddc post-release version bump to 2.13.34
2006-01-16  Elijah Newren  <newren@gmail.com>

	* configure.in: post-release version bump to 2.13.34
2006-01-16 17:14:20 +00:00
Elijah Newren
97981e4322 2.13.21 release
2006-01-16  Elijah Newren  <newren@gmail.com>

	* NEWS:	2.13.21 release
2006-01-16 17:13:20 +00:00
Søren Sandmann
35dae65862 Really turn off draw-in-a-loop.
Mon Jan 16 11:55:20 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c (meta_compositor_manage_screen): Really turn
	off draw-in-a-loop.
2006-01-16 16:56:09 +00:00
Kyle Ambroff
fac7010411 If no valid window is found in the MRU list, then set focus to the desktop
2006-01-15  Kyle Ambroff  <kambroff@csus.edu>

	* src/workspace.c (focus_ancestor_or_mru_window):
	If no valid window is found in the MRU list, then set focus to the
	desktop window. (#317405)
2006-01-16 06:07:29 +00:00
Francisco Javier F. Serrador
d552ca35f6 Updated Spanish translation.
2006-01-15  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2006-01-15 19:32:28 +00:00
Elijah Newren
9fdd3d165d Fix accidental overzealous focus holding by the terminal introduced by the
2006-01-15  Elijah Newren  <newren@gmail.com>

	Fix accidental overzealous focus holding by the terminal
	introduced by the original patch in bug 326159.  Windows launched
	from panel icons, the panel menu, or global keybindings should get
	focus now.  #326159.

	* src/display.c (meta_display_open, event_callback):
	* src/display.h (struct MetaDisplay):
	* src/keybindings.c (process_event):
	* src/window.c (meta_window_set_user_time):
	Add a new allow_terminal_deactivation field to MetaDisplay and use
	it to track whether the user's last action was interaction with
	the terminal or some outside action (global keybinding, clicking
	on a dock, etc.) likely to launch a new window.

	* src/window.c (window_state_on_map):
	Allow the focus switch from a terminal to something else if
	allow_terminal_deactiviation is true.

	* src/keybindings.c (handle_panel_keybinding):
	Remove some unneeded code.
2006-01-15 17:03:57 +00:00
Elijah Newren
ef792fc1f7 Patch from Jens Granseuer to fix more build issues with gcc 2.95. #327050.
2006-01-15  Elijah Newren  <newren@gmail.com>

	Patch from Jens Granseuer to fix more build issues with gcc 2.95.
	#327050.

	* src/boxes.c (meta_rectangle_edge_cmp_ignore_type):
	* src/window.c (meta_window_show):
	Remove C99 style variable initiailization
2006-01-15 16:37:06 +00:00
Elijah Newren
50bcc976bc Don't dereference a NULL string. Fixes #327013.
2006-01-14  Elijah Newren  <newren gmail com>

	* src/window.c (__window_is_terminal): Don't dereference a NULL
	string.  Fixes #327013.
2006-01-15 04:45:34 +00:00
Elijah Newren
def12b85b8 fix compilation when HAVE_COMPOSITE_EXTENSIONS is undefined. #326912
2006-01-14  Elijah Newren  <newren gmail com>

	* src/compositor.[ch]: fix compilation when
	HAVE_COMPOSITE_EXTENSIONS is undefined.  #326912
2006-01-14 21:51:46 +00:00
Takeshi AIHANA
5a652acf88 Updated Japanese translation for v2.13.13.
2006-01-14  Takeshi AIHANA <takeshi.aihana@gmail.com>

	* ja.po: Updated Japanese translation for v2.13.13.
2006-01-14 15:57:24 +00:00
Søren Sandmann
efe25a80ed Only update on damage events.
Fri Jan 13 16:37:26 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c (update): Only update on damage events.
2006-01-13 21:38:56 +00:00
Elijah Newren
f9d11c0be6 Patch from Damien Carbery. Fixes #326746.
2006-01-13  Elijah Newren  <newren gmail com>

	Patch from Damien Carbery.  Fixes #326746.

	* src/util.c: explicitly #include Xlib.h to fix a compilation
	issue on Solaris.
2006-01-13 21:36:10 +00:00
Søren Sandmann
fea6191473 Add a dependency on libcm when building with compositor.
Fri Jan 13 14:40:19 2006  Søren Sandmann  <sandmann@redhat.com>

	* configure.in: Add a dependency on libcm when building with
	compositor.

	* src/window.c (meta_window_hide): Make this function static.

	* src/window.c (implement_showing): Use meta_compositor_minimize()
	to do a weird minimize effect.

	* src/compositor.[ch]: Beginning of new GL based compositor.

	* src/screen.h (struct _MetaScreen): Add void pointer to
	compositor data.

	* src/screen.c (meta_screen_new): Remove obsolete compositor
	stuff; initialize compositor_data. Don't composite manage screen
	out of this function.

	* src/errors.c (x_error_handler): Check that display is non-NULL
	before using it. Add comment about how that can happen.

	* src/display.c (meta_display_{begin,end}_grab_op): Remove
	explicity damage of windows.

	* src/display.c (meta_display_open): Composite manage all the
	screens.
2006-01-13 19:41:01 +00:00
Adam Weinberger
0eab7bd14c Updated Canadian English translation.
2006-01-11  Adam Weinberger  <adamw@gnome.org>

	* en_CA.po: Updated Canadian English translation.
2006-01-11 17:51:22 +00:00
Elijah Newren
9ec589b3b8 Replace __PRETTY_FUNCTION__ with G_STRFUNC, because lesser compilers don't
2006-01-11  Elijah Newren  <newren gmail com>

	* src/textboxes.c (test_area, test_intersect, test_equal,
	  test_overlap_funcs, test_basic_fitting, test_merge_regions,
	  test_regions_okay, test_region_fitting, test_clamping_to_region,
	  test_clipping_to_region, test_shoving_into_region,
	  test_find_onscreen_edges,
	  test_find_nonintersected_xinerama_edges, test_gravity_resize,
	  test_find_closest_point_to_line):
	Replace __PRETTY_FUNCTION__ with G_STRFUNC, because lesser
	compilers don't support the former.  Caught by Damien Carbery, fix
	suggested by Ray Strode.  #326281.
2006-01-11 16:35:03 +00:00
Theppitak Karoonboonyanan
d0b1dab993 Updated Thai translation.
2006-01-11  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	* th.po: Updated Thai translation.
2006-01-11 14:58:43 +00:00
Ankitkumar Rameshchandra Patel
4689944194 Updated Translation 2006-01-11 06:40:09 +00:00
Clytie Siddall
1f6dbf75fa vi.po: Updated Vietnamese translation. 2006-01-11 05:43:30 +00:00
Elijah Newren
51b8c402d8 post-release version bump to 2.13.21
2006-01-10  Elijah Newren  <newren@gmail.com>

	* configure.in: post-release version bump to 2.13.21
2006-01-10 20:08:27 +00:00
Elijah Newren
f0322ee76c 2.13.13 release
2006-01-10  Elijah Newren  <newren@gmail.com>

	* NEWS:	2.13.13 release
2006-01-10 20:07:34 +00:00
Elijah Newren
5913b8c5ab Whoops, I forgot to keep my copyright info updated with my previous
2006-01-10  Elijah Newren  <newren@gmail.com>

	* src/bell.c:
	* src/boxes.c:
	* src/boxes.h:
	* src/constraints.c:
	* src/core.c:
	* src/display.c:
	* src/display.h:
	* src/edge-resistance.c:
	* src/frames.c:
	* src/keybindings.c:
	* src/main.c:
	* src/prefs.c:
	* src/prefs.h:
	* src/screen.c:
	* src/screen.h:
	* src/window.c:
	* src/window.h:
	Whoops, I forgot to keep my copyright info updated with my previous
	commits as Havoc had asked me to do.  Doing that now...
2006-01-10 19:43:21 +00:00
Elijah Newren
52df880f32 Add a raise on click option, basically only because all the major distros
2006-01-10  Elijah Newren  <newren@gmail.com>

	Add a raise on click option, basically only because all the major
	distros are patching it in anyway.  See #326156.

	* src/metacity.schemas.in: add the new gconf key and explanation

	* src/prefs.[ch] (#define KEY_RAISE_ON_CLICK, static gboolean
	  raise_on_click, update_raise_on_click, meta_prefs_init,
	  change_notify, meta_prefs_get_raise_on_click,
	  meta_preference_to_string):
	Add all the normal preference handling stuff for this new
	raise-on-click option.

	* src/core.c (meta_core_show_window_menu):
	* src/display.c (event_callback, meta_display_begin_grab_op):
	* src/window.c (window_activate, meta_window_configure_request, ):
	Only raise the window if in raise_on_click mode.

	* src/display.c (meta_display_begin_grab_op,
	  meta_display_end_grab_op, meta_display_check_threshold_reached):
	* src/display.h (struct MetaDisplay):
	* src/window.c (meta_window_handle_mouse_grab_op_event):
	if not in raise-on-click mode only raise on button release if the
	click didn't start a move or resize operation; needs a few extra
	MetaDisplay fields to handle this

	* src/core.c (meta_core_user_lower_and_unfocus):
	no need to do the MRU shuffling if not maintaining the stacking
	order == MRU order invariant

	* src/frames.c (meta_frames_button_press_event):
	* src/window.c (meta_window_begin_grab_op):
	remove an unneeded window raising that is already handled elsewhere
2006-01-10 19:35:03 +00:00
Elijah Newren
f6270596de Don't "steal" focus from terminal windows for new window mappings as the
2006-01-10  Elijah Newren  <newren@gmail.com>

	Don't "steal" focus from terminal windows for new window mappings
	as the difference in usage between terminals and other apps seems
	to suggest this difference in treatment.  See #326159 for details,
	feedback welcome.

	* src/window.[ch] (__window_is_terminal): New function, currently
	an ugly hack and should be replaced by a new property set by
	applications if the behavior works to our liking,
	(window_state_on_map): don't transfer focus to new windows from
	terminals unless the new window is a transient of the focused
	terminal

	* src/keybindigns.c (handle_panel_keybinding): panel run dialog
	keybinding should be counted as an explicit transfer of focus to
	the new window, so override the
	don't-transfer-focus-from-terminals in this case
2006-01-10 18:33:53 +00:00
Elijah Newren
a4d1c6fd61 More thorough handling of source indication. Part of #326041.
2006-01-09  Elijah Newren  <newren@gmail.com>

	More thorough handling of source indication.  Part of #326041.

	* src/window.c (window_activate): new function based off the old
	meta_window_activate but which also takes source indication into
	account, (meta_window_active): just call window_activate() with
	the necessary source indication to get the behavior wanted,
	(meta_window_client_message): check source indication too for
	_net_active_window messages

	* src/window.h (enum MetaClientType): convenience enum for source
	indication handling
2006-01-10 05:44:40 +00:00
Elijah Newren
0f8add8b37 Make the taskbar less flash happy and fix up some related stacking issues.
2006-01-09  Elijah Newren  <newren@gmail.com>

	Make the taskbar less flash happy and fix up some related stacking
	issues.  #326035.

	* src/window.c (windows_overlap): new function,
	(meta_window_show): if a window is denied focus but doesn't
	overlap with the focus window there is no need to set the demands
	attention hint nor stack that window below the focus window,
	(meta_window_get_outer_rect): we're not modifying the window so
	declare it to be const
2006-01-10 05:14:48 +00:00
Elijah Newren
8c5b6c875a Fix window outline for minimized windows when using alt-esc. #325092.
2006-01-09  Elijah Newren  <newren@gmail.com>

	Fix window outline for minimized windows when using alt-esc.
	#325092.

	* src/display.c (meta_display_begin_grab_op): Specify the showing
	type of tabbing operation (Alt tab vs. alt-esc) in addition to the
	listing type of tabbing operation (docks vs normal windows) to
	meta_screen_ensure_tab_popup().

	* src/display.h (enum MetaTabShowType): new convenience enum

	* src/screen.[ch] (meta_screen_ensure_tab_popup): require the
	showing type be specified in addition to the tabbing type; put the
	outline around the window instead of the icon when in alt-esc
	mode.
2006-01-10 05:05:40 +00:00
Elijah Newren
ae52d731be Fix reduced resources resize handling for windows with sizing or resizing
2006-01-09  Elijah Newren  <newren@gmail.com>

	Fix reduced resources resize handling for windows with sizing or
	resizing constraints.  #325774.

	* src/display.c (meta_display_end_grab_op): Provide constraints.c
	with the correct gravity information.
2006-01-10 05:01:08 +00:00
Elijah Newren
d884f9ce8a Be more strict about what is considered a valid region with partial
2006-01-09  Elijah Newren  <newren@gmail.com>

	Be more strict about what is considered a valid region with
	partial struts.  Fixes #322070.

	* src/boxes.[ch]:
	(meta_rectangle_expand_region_conditionally):
	new function behaving like meta_rectangle_expand_region() but
	which only does so when the width and height of the rectangles
	meet a certain threshold

	(replace_rect_with_list):
	Remove a compiling warning

	* src/constraints.c:
	(constrain_partially_onscreen):
	provide minimum thresholds in each direction for the size of the
	rectangles to avoid cases where only a single pixel thick layer of
	a window might be showing
2006-01-10 04:57:51 +00:00
Elijah Newren
ee54debd6a Use the right function to remove the timeout so that we don't crash if
2006-01-09  Elijah Newren  <newren@gmail.com>

	* src/bell.c (meta_bell_notify_frame_destroy): Use the right
	function to remove the timeout so that we don't crash if removed
	at an inopportune time.  Fixes #322031.
2006-01-10 04:50:17 +00:00
Elijah Newren
24cfed8cf0 Remove the "pull-away" edge resistance. Fixes another of the zillions of
2006-01-09  Elijah Newren  <newren@gmail.com>

	* src/edge-resistance.c (apply_edge_resistance): Remove the
	"pull-away" edge resistance.  Fixes another of the zillions of
	issues covered in #321905.
2006-01-10 04:46:45 +00:00
Elijah Newren
008a811e10 Revert to the old edge resistance behavior for keyboard movement/resizing
2006-01-09  Elijah Newren  <newren@gmail.com>

	* src/edge-resistance.c (apply_edge_resistance): Revert to the old
	edge resistance behavior for keyboard movement/resizing based
	resistance.  Not only makes the code much simpler and shorter, but
	also fixes another of the zillions of issues covered in #321905.
2006-01-10 04:42:30 +00:00
Elijah Newren
de65967b62 Remove the timeout resistance at screen/xinerama edges for the whiners.
2006-01-09  Elijah Newren  <newren@gmail.com>

	* src/edge-resistance.c (apply_edge_resistance): Remove the
	timeout resistance at screen/xinerama edges for the whiners.
	Okay, it made sense.  Fixes another of the zillions of issues
	covered in #321905.
2006-01-10 04:39:53 +00:00
Elijah Newren
35532d14cb Make extra timeout edge resistance apply even if one edge already
2006-01-09  Elijah Newren  <newren@gmail.com>

	* src/edge-resistance.c (apply_edge_resistance): Make extra
	timeout edge resistance apply even if one edge already offscreen.
	Fixes another of the zillions of issues covered in #321905.
2006-01-10 04:36:36 +00:00
Elijah Newren
9516694385 Allow edge resistance at both sides of a window and also when edges don't
2006-01-09  Elijah Newren  <newren@gmail.com>

	Allow edge resistance at both sides of a window and also when
	edges don't overlap but are a single pixel away from doing so.
	Fixes one of the zillions of issues covered in #321905.

	* src/boxes.[ch]:
	(meta_rectangle_edges_align):
	new function to handle the overlap or off by one determining
	whether edge resistance should kick in for an edge.

	(meta_rectangle_edge_cmp_ignore_type):
	new function to sort edges but ignore the type so that e.g. left &
	right edges of windows can be used interchangeably.

	(meta_rectangle_edge_cmp):
	now uses meta_rectangle_edge_cmp_ignore_type() to do most the work
	and just adds an extra condition

	* src/edge-resistance.c:
	(find_nearest_position):
	use meta_rectangle_edges_align() now to determine whether the
	edges align,

	(apply_edge_resistance, apply_edge_resistance_to_each_side):
	have the edge resistance kick in if either the beginning or ending
	positions would cause overlap in the given direction -- fixes an
	uncommon but annoying corner case,

	(apply_edge_snapping, apply_edge_resistance_to_each_side,
	 meta_display_cleanup_edges,
	 stupid_sort_requiring_extra_pointer_dereference, cache_edges):
	mix edges from both sides now
2006-01-10 04:33:58 +00:00
Elijah Newren
9eb56f151c Plug a few leaks. Fixes #309178.
2006-01-09  Elijah Newren  <newren@gmail.com>

	Plug a few leaks.  Fixes #309178.

	* src/main.c (main): remove an unneeded g_set_prgname() call, free
	some strings allocated by the GOptions parsing
2006-01-10 04:18:09 +00:00
Kjartan Maraas
e3ff2316fe Updated Norwegian bokmål translation. Same
2006-01-06  Kjartan Maraas  <kmaraas@gnome.org>

	* nb.po: Updated Norwegian bokmål translation.
	* no.po: Same
2006-01-06 17:58:32 +00:00
Elijah Newren
ab0ba52f89 Clarify how/why metacity-message is used a little 2006-01-02 19:01:29 +00:00
Elijah Newren
339948fcf2 Patch from Björn Lindqvist to fix a logic error. #322149.
2006-01-02  Elijah Newren  <newren@gmail.com>

	Patch from Björn Lindqvist to fix a logic error.  #322149.

	* src/window.c (update_resize): && should have been ||.
2006-01-02 18:48:30 +00:00
Elijah Newren
ebd0c7e9a6 Patch from Jens Granseuer to fix build with gcc 2.95. #322622.
2006-01-02  Elijah Newren  <newren@gmail.com>

	Patch from Jens Granseuer to fix build with gcc 2.95.  #322622.

	* src/boxes.c (meta_rectangle_region_to_string,
	  meta_rectangle_edge_list_to_string, fix_up_edges):
	* src/constraints.c (meta_window_constrain, setup_constraint_info,
	  place_window_if_needed, constrain_maximization,
	  constrain_fullscreen, constrain_size_increments,
	  constrain_size_limits, constrain_aspect_ratio,
	  do_screen_and_xinerama_relative_constrai,
	  constrain_to_single_xinerama, constrain_fully_onscreen,
	  constrain_partially_onscreen):
	* src/edge-resistance.c (find_nearest_position,
	  apply_edge_resistance, apply_edge_resistance_to_each_side):
	* src/testboxes.c (test_clamping_to_region,
	  test_clipping_to_region, test_shoving_into_region):
	* src/window.c (meta_window_new_with_attrs,
	  meta_window_apply_session_info, meta_window_resize,
	  meta_window_resize_with_gravity, meta_window_configure_request):
	Remove C99 style variable initiailization
2006-01-02 18:37:46 +00:00
Elijah Newren
d530c3e405 post-release version bump to 2.13.13
2006-01-02  Elijah Newren  <newren@gmail.com>

	* configure.in: post-release version bump to 2.13.13
2006-01-02 18:00:18 +00:00
Elijah Newren
be86740b3d 2.13.8 release
2006-01-02  Elijah Newren  <newren@gmail.com>

	* NEWS:	2.13.8 release
2006-01-02 17:59:18 +00:00
Ilkka Tuohela
d4771cd9cf Updated Finnish translation 2005-12-30 14:03:29 +00:00
Clytie Siddall
a59f14adbc vi.po: Updated Vietnamese translation. 2005-12-30 07:49:05 +00:00
Elijah Newren
703f58cdf7 Make the workspace switcher work with dual-head (non-xinerama) setups.
2005-12-27  Elijah Newren  <newren@gmail.com>

	Make the workspace switcher work with dual-head (non-xinerama)
	setups.  Fixes #319423.

	* src/display.c (meta_display_open, event_callback,
	  meta_display_focus_the_no_focus_window):
	* src/display.h (struct MetaDisplay,
	  meta_display_focus_the_no_focus_window):
	* src/keybindings.c (primary_modifier_still_pressed):
	* src/screen.c (meta_screen_new):
	* src/screen.h (struct MetaScreen):
	* src/window.c (meta_window_new_with_attrs, meta_window_show):
	* src/workspace.c (meta_workspace_focus_default_window):
	Replace display->no_focus_window with a no_focus_window for each
	screen.

	* src/display.[ch] (meta_display_xwindow_is_a_no_focus_window,
	  event_callback):
	* src/window.c (meta_window_new_with_attrs):
	New utility function, meta_display_xwindow_is_a_no_focus_window(),
	for checking if the given xwindow is a no_focus_window for one of
	the screens.
2005-12-28 06:24:30 +00:00
Elijah Newren
5e9f20e94c since the title is going to be treated as markup, escape it. Fixes
2005-12-27  Elijah Newren  <newren@gmail.com>

	* src/tabpopup.c (meta_ui_tab_popup_new): since the title is going
	to be treated as markup, escape it.  Fixes #324846.
2005-12-27 16:40:47 +00:00
Kang Jeong-Hee
a710235e86 ko.po updated 2005-12-25 14:27:11 +00:00
Elijah Newren
53cba6ed37 Oops, I only meant to commit the changes to rationales.txt in the last commit 2005-12-22 07:08:38 +00:00
Elijah Newren
7e821f37fd Add xinerama and multi-head tracker bugs 2005-12-22 06:18:38 +00:00
Arangel Angov
830baad257 Macedonian Translation update <arangela@cvs.gnome.org> 2005-12-18 23:17:08 +00:00
Kang Jeong-Hee
6a9242b192 compile with compositor enabled 2005-12-14 12:47:35 +00:00
Elijah Newren
013c8b82db post-release version bump to 2.13.8
2005-12-12  Elijah Newren  <newren@gmail.com>

	* configure.in: post-release version bump to 2.13.8
2005-12-12 18:44:32 +00:00
Elijah Newren
37fb0af742 2.13.5 release
2005-12-12  Elijah Newren  <newren@gmail.com>

	* NEWS:	2.13.5 release
2005-12-12 18:41:02 +00:00
Elijah Newren
12193322a8 make the debugging message actually correspond to the code. Patch from
2005-12-12  Elijah Newren  <newren@gmail.com>

	* src/window.c (update_net_frame_extents): make the debugging
	message actually correspond to the code.  Patch from Björn
	Lindqvist.  Fixes #322051.
2005-12-12 18:22:40 +00:00
Miloslav Trmac
d9721257d2 Updated Czech translation.
2005-12-11  Miloslav Trmac  <mitr@volny.cz>

	* cs.po: Updated Czech translation.
2005-12-11 21:59:28 +00:00
Ankitkumar Rameshchandra Patel
c08a660368 Updated Gujarati Translation 2005-12-11 13:27:25 +00:00
Adam Weinberger
77b148afdc Updated Canadian English translation.
2005-12-03  Adam Weinberger  <adamw@gnome.org>

	* en_CA.po: Updated Canadian English translation.
2005-12-03 21:02:19 +00:00
Kjartan Maraas
b4635f2143 Updated Norwegian bokmål translation. Same
2005-12-03  Kjartan Maraas  <kmaraas@gnome.org>

	* nb.po: Updated Norwegian bokmål translation.
	* no.po: Same
2005-12-03 10:59:44 +00:00
Kjartan Maraas
b3f465c727 Make the wireframe a bit slimmer 2005-11-29 21:36:12 +00:00
Davyd Madeley
616d778f6b display hostname in titlebar for remote X clients. Closes bug #322202.
2005-11-24  Davyd Madeley  <davyd@fugro-fsi.com.au>

        * src/window-props.c: display hostname in titlebar for remote X
          clients. Closes bug #322202.
2005-11-23 17:08:03 +00:00
Marcel Telka
6fa00967a5 Updated Slovak translation.
2005-11-22  Marcel Telka  <marcel@telka.sk>

	* sk.po: Updated Slovak translation.
2005-11-22 23:08:02 +00:00
Elijah Newren
35925d1cf1 post-release version bump to 2.13.5
2005-11-22  Elijah Newren  <newren@gmail.com>

	* configure.in: post-release version bump to 2.13.5
2005-11-22 16:12:54 +00:00
Elijah Newren
d74b0ce151 2.13.3 release
2005-11-22  Elijah Newren  <newren@gmail.com>

	* NEWS:	2.13.3 release
2005-11-22 16:11:53 +00:00
Alexander Shopov
ca6991d4a8 Updated Bulgarian translation by Alexander Shopov <ash@contact.bg>
2005-11-22  Alexander Shopov  <ash@contact.bg>

	* bg.po: Updated Bulgarian translation by
	Alexander Shopov <ash@contact.bg>
2005-11-22 15:54:50 +00:00
Elijah Newren
ca2fe384bc Don't allow removing a window from maximized or fullscreened state to
2005-11-22  Elijah Newren  <newren@gmail.com>

	Don't allow removing a window from maximized or fullscreened state
	to place the titlebar under the top panel.  Fixes #322075.

	* src/display.c (handle_net_moveresize_window): fix up previous
	comments now that I know a little more, modify the code just
	slightly to clarify that this is NOT a manual user move/resize
	operation

	* src/window.c (meta_window_unmaximize,
	  meta_window_unmake_fullscreen,
	  meta_window_shove_titlebar_onscreen):
	don't claim that these are manual user move/resize operations
2005-11-22 15:48:30 +00:00
Theppitak Karoonboonyanan
65168cf8c9 Updated Thai translation.
2005-11-22  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	* th.po: Updated Thai translation.
2005-11-22 06:03:52 +00:00
Elijah Newren
b03d82661f Relax the partially onscreen constraint to allow the titlebar to touch the
2005-11-21  Elijah Newren  <newren@gmail.com>

	* src/constraints.c (constrain_partially_onscreen): Relax the
	partially onscreen constraint to allow the titlebar to touch the
	bottom panel in order to make the new constraints code function
	the same as the old version.  Fixes #322071.
2005-11-22 00:22:41 +00:00
Francisco Javier F. Serrador
20e6b8d2f8 Updated Spanish translation.
2005-11-21  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2005-11-21 22:20:32 +00:00
Elijah Newren
3426844ad5 When updating the xinerama due to placement, update which maximal/spanning
2005-11-21  Elijah Newren  <newren@gmail.com>

	* src/constraints.c (place_window_if_needed): When updating the
	xinerama due to placement, update which maximal/spanning rect set
	to use as well
2005-11-21 21:35:31 +00:00
Elijah Newren
a3902fb922 Oops, missed a couple cleanups in this documentation 2005-11-21 18:19:58 +00:00
Elijah Newren
0fdbdbd236 It took me a little while to figure out how struts & workareas are updated
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.
2005-11-21 18:16:52 +00:00
Elijah Newren
9641bc5ee7 compute the frame geometry due to maximization only after actually
2005-11-20  Elijah Newren  <newren@gmail.com>

	* src/constraints.c (place_window_if_needed): compute the frame
	geometry due to maximization only after actually maximizing.
	Fixes #321902.
2005-11-21 06:00:18 +00:00
Davyd Madeley
d1da3438d4 Use GPOINTER_TO_INT() macro instead of cast to allow compilation on 64-bit
2005-11-21  Davyd Madeley  <davyd@fugro-fsi.com.au>

        * src/edge-resistance.c (meta_display_compute_resistance_and_snap):
          Use GPOINTER_TO_INT() macro instead of cast to allow compilation on
          64-bit architectures without warning.
2005-11-21 02:58:36 +00:00
Francisco Javier F. Serrador
f9a4aea0cf Updated Spanish translation.
2005-11-20  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2005-11-20 18:04:11 +00:00
Ignacio Casal Quinteiro
0ac220aecd *** empty log message *** 2005-11-20 11:31:22 +00:00
Elijah Newren
075d6d34db differentiate between movement towards an edge and movement away from one.
2005-11-19  Elijah Newren  <newren@gmail.com>

	* src/edge-resistance.c (apply_edge_resistance): differentiate
	between movement towards an edge and movement away from one.  Pick
	smaller constants for movement away from an edge.
2005-11-20 04:02:46 +00:00
Takeshi AIHANA
dfbec3a4c3 Updated Japanese translation for v2.13.2.
2005-11-20  Takeshi AIHANA <aihana@gnome.gr.jp>

	* ja.po: Updated Japanese translation for v2.13.2.
2005-11-20 02:58:03 +00:00
Elijah Newren
466ce4a936 Add another fixed bug to the ChangeLog and NEWS that I missed earlier 2005-11-19 21:53:12 +00:00
Elijah Newren
c78a98e066 post-release version bump to 2.13.3
2005-11-19  Elijah Newren  <newren@gmail.com>

	* configure.in: post-release version bump to 2.13.3
2005-11-19 16:54:03 +00:00
Elijah Newren
a5165ee24d 2.13.2 release
2005-11-19  Elijah Newren  <newren@gmail.com>

	* NEWS:	2.13.2 release
2005-11-19 16:52:25 +00:00
Elijah Newren
a7201d27d1 Merge of all the changes on the constraints_experiments branch. This is
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()
2005-11-19 14:58:50 +00:00
Vincent van Adrighem
cfb3bd081a Translation updated by Wouter Bolsterlee.
2005-11-17  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Wouter Bolsterlee.
2005-11-16 23:22:35 +00:00
Elijah Newren
d0095e947f post-release version bump to 2.13.2
2005-11-14  Elijah Newren  <newren@gmail.com>

	* configure.in: post-release version bump to 2.13.2
2005-11-14 18:28:32 +00:00
Elijah Newren
ef486d855c 2.13.1 release
2005-11-14  Elijah Newren  <newren@gmail.com>

	* NEWS:	2.13.1 release
2005-11-14 18:27:22 +00:00
Theppitak Karoonboonyanan
2e10145b33 Updated Thai translation.
2005-11-13  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	* th.po: Updated Thai translation.
2005-11-13 06:20:15 +00:00
Aidan Delaney
6677b55cd5 Changed the 'minimized' field of the MetaTabEntry struct to 'hidden'.
2005-11-11 Aidan Delaney <a.j.delaney@brighton.ac.uk>

       * src/tabpopup.h: (struct _MetaTabEntry):
       * src/tabpopup.c: (meta_ui_tab_popup_new):
       * src/screen.c: (meta_screen_ensure_tab_popup):
       Changed the 'minimized' field of the MetaTabEntry struct to
       'hidden'.  Fixes reopened bug #168455.
2005-11-12 00:34:32 +00:00
Norayr Chilingaryan
7c1aa16c3b bugfix ;) 2005-11-08 14:18:08 +00:00
Miloslav Trmac
e2e2c6401b Updated Czech translation.
2005-11-03  Miloslav Trmac  <mitr@volny.cz>

	* cs.po: Updated Czech translation.
2005-11-02 23:02:27 +00:00
Kjartan Maraas
4752ef55c7 Merge fix for bug #320050 from stable.
2005-10-29  Kjartan Maraas  <kmaraas@gnome.org>

	* src/eventqueue.c: (meta_event_queue_new): Merge fix
	for bug #320050 from stable.
2005-10-29 07:37:45 +00:00
Francisco Javier F. Serrador
55f62585d0 Updated Spanish translation.
2005-10-28  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2005-10-28 20:07:07 +00:00
Takeshi AIHANA
a11e758b4b Updated Japanese translation for v2.13.0.
2005-10-29  Takeshi AIHANA <aihana@gnome.gr.jp>

	* ja.po: Updated Japanese translation for v2.13.0.
2005-10-28 15:07:54 +00:00
Erdal Ronahi
828d2ca01e Added Kurdish translation 2005-10-27 18:20:58 +00:00
Philip O'Brien
064303e98e add handling for META_PREF_CURSOR_THEME and META_PREF_CURSOR_SIZE for more
2005-10-25  Philip O'Brien  <philip.obrien@dal.ca>

	* src/prefs.c (meta_preference_to_string): add handling for
	META_PREF_CURSOR_THEME and META_PREF_CURSOR_SIZE for more complete
	debug info
2005-10-25 16:43:01 +00:00
Elijah Newren
094449d097 post-release version bump to 2.13.1
2005-10-24  Elijah Newren  <newren@gmail.com>

	* configure.in: post-release version bump to 2.13.1
2005-10-24 22:40:49 +00:00
Elijah Newren
ddd1d6616d 2.13.0 release
2005-10-24  Elijah Newren  <newren@gmail.com>

	* NEWS:	2.13.0 release
2005-10-24 22:39:15 +00:00
Elijah Newren
f2acdda740 Fix edge snapping for multi-screen (non-xinerama) setups. #319425
2005-10-23  Elijah Newren  <newren@gmail.com>

	Fix edge snapping for multi-screen (non-xinerama) setups.  #319425

	* src/place.c (get_windows_showing_on_same_screen,
	get_vertical_edges, get_horizontal_edges): rename
	get_windows_on_same_workspace() to
	get_windows_showing_on_same_screen()

	* src/place.c (get_windows_showing_on_same_screen): exclude windows
	in the list that are on a different screen
2005-10-23 21:19:22 +00:00
Elijah Newren
7c70749ae8 Clarify why METACITY_VERBOSE=1 is bad without META_USE_LOGFILE=1; point to
2005-10-20  Elijah Newren  <newren@gmail.com>

	* HACKING: Clarify why METACITY_VERBOSE=1 is bad without
	META_USE_LOGFILE=1; point to bug 305091 for details.
2005-10-21 00:22:38 +00:00
Marcel Telka
37ced4cc32 Updated Slovak translation.
2005-10-17  Marcel Telka  <marcel@telka.sk>

	* sk.po: Updated Slovak translation.
2005-10-17 04:28:32 +00:00
Vincent van Adrighem
0bf176de5b Translation updated.
2005-10-15  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated.
2005-10-15 12:57:14 +00:00
Vincent van Adrighem
f4a587f05e Translation updated.
2005-10-14  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated.
2005-10-14 12:25:09 +00:00
Kostas Papadimas
27b0a5e0b0 Updated Greek translation 2005-10-14 09:38:59 +00:00
Muktha
62fb5e6eb4 Make the unfocussed Simple window border visible with high contrast
2005-10-13  Muktha  <muktha.narayan@wipro.com>

        * src/themes/Simple/metacity-theme-1.xml: Make the unfocussed
        Simple window border visible with high contrast inverse theme.
        Fixes #121361.
2005-10-13 05:51:24 +00:00
Priit Laes
9292fe606a Translation updated by Ivar Smolin.
2005-10-10  Priit Laes  <plaes@cvs.gnome.org>

	* et.po: Translation updated by Ivar Smolin.
2005-10-10 19:36:56 +00:00
Elijah Newren
7ef871f73a Fix a crash that occurs when removing some virtual desktops and windows
2005-10-08  Elijah Newren  <newren@gmail.com>

	Fix a crash that occurs when removing some virtual desktops and
	windows happen to be on those desktops.  #318306.

	* src/workspace.c (meta_workspace_relocate_windows): Since windows
	cannot be on more than one workspace at a time, remove the window
	from the old workspace before adding it to the new one.
2005-10-08 23:18:05 +00:00
Elijah Newren
29e38a2f53 Add my copyright notice to a number of files on which it should already
2005-10-08  Elijah Newren  <newren@gmail.com>

	Add my copyright notice to a number of files on which it should
	already exist.
2005-10-08 19:38:54 +00:00
Alexander Shopov
3e77dd1ace Updated Bulgarian translation by Alexander Shopov <ash@contact.bg>
2005-10-04  Alexander Shopov  <ash@contact.bg>

	* bg.po: Updated Bulgarian translation by
	Alexander Shopov <ash@contact.bg>
2005-10-04 07:42:02 +00:00
Funda Wang
5b28d889fa Updated Simplified Chinese translation 2005-10-04 06:49:38 +00:00
Adam Weinberger
fcf89cc2fa Updated Canadian English translation.
2005-10-04  Adam Weinberger  <adamw@gnome.org>

	* en_CA.po: Updated Canadian English translation.
2005-10-04 04:06:13 +00:00
Elijah Newren
0a13bf3270 clarify the meaning of the auto_raise preference. Fixes one of the issues
2005-10-03  Elijah Newren  <newren@gmail.com>

	* src/metacity.schemas.in: clarify the meaning of the auto_raise
	preference.  Fixes one of the issues in #312421.
2005-10-03 20:10:56 +00:00
Elijah Newren
4aaf6e3eb4 Patch from Ross Cohen to make alt-esc consistent with alt-tab by leaving
2005-10-03  Elijah Newren  <newren@gmail.com>

	Patch from Ross Cohen to make alt-esc consistent with alt-tab by
	leaving stacking of unselected windows unchanged.  Fixes #314285.

	* src/keybindings.c (process_tab_grab): before raising and showing
	the next candidate, reset the stack positions to what they were
	at the beginning of the grab
2005-10-03 20:05:44 +00:00
Elijah Newren
12daca5cb1 Patch from Ross Cohen to make alt-esc (show windows instantly) actually
2005-10-03  Elijah Newren  <newren@gmail.com>

	Patch from Ross Cohen to make alt-esc (show windows instantly)
	actually show minimized windows too.  Fixes #107072.

	* src/keybindings.c (process_tab_grab): initialize tab_unminimized
	to FALSE for the target window when starting the grab, when
	advancing through the list check to find the previous window and
	re-minimize it if it was tab-unminimized, unminimize the new
	window we're alt-esc'ing to if it's minimized, (do_choose_window):
	raise and unminimize the initial window as well in alt-esc'ing

	* src/window.h (struct _MetaWindow): add a tab_unminimized field

	* src/window.c (meta_window_new_with_attrs): initialize
	tab_unminimized to false
2005-10-03 20:02:31 +00:00
Elijah Newren
1a8c2aa027 Branched for Gnome 2.13. :-)
2005-10-03  Elijah Newren  <newren@gmail.com>

	Branched for Gnome 2.13.  :-)

	* configure.in: bump version to 2.13.0.  Add UNSTABLE warning.
	* README: add 2.13.x to the list of unstable branches
2005-10-03 19:53:55 +00:00
Elijah Newren
26dbf9856b A combination of a couple memory leaks fixes, from Kjartan, Soeren, and I.
2005-10-03  Elijah Newren  <newren@gmail.com>

	A combination of a couple memory leaks fixes, from Kjartan,
	Soeren, and I.  Fixes #313030.

	* src/bell.c (meta_bell_flash_screen): call XFreeGC()

	* src/frames.c (invalidate_cache): free pixels

	* src/window.c (meta_window_show_menu): call
	meta_screen_free_workspace_layout()
2005-10-03 19:22:40 +00:00
Elijah Newren
ea4cd88285 Patch from Björn Lindqvist fix the workspace switcher tabpopup to display
2005-10-03  Elijah Newren  <newren@gmail.com>

	Patch from Björn Lindqvist fix the workspace switcher tabpopup to
	display the right windows and to fix the
	pick-a-new-window-to-focus algorithm in order to not select
	windows that aren't showing.  Fixes #170475.

	* src/tabpopup.c (meta_convert_meta_to_wnck,
	meta_select_workspace_expose_event): factor out conversion code
	from meta_select_workspace_expose_event() into the new
	meta_convert_meta_to_wnck() function

	* src/tabpopup.c (meta_select_workspace_expose_event):
	* src/workspace.c (focus_ancestor_or_mru_window):
	replace the buggy window->minimized logic with
	!meta_window_showing_on_its_workspace (window)
2005-10-03 19:06:17 +00:00
Elijah Newren
47f1a8634b Patch from Björn Lindqvist to have ancestors come along with the
2005-10-03  Elijah Newren  <newren@gmail.com>

	Patch from Björn Lindqvist to have ancestors come along with the
	transient when moving the window from one workspace to another.
	Fixes #314977.

	* src/window.c (meta_window_change_workspace): have all ancestors
	change workspaces too
2005-10-03 19:00:01 +00:00
Elijah Newren
c3624745ae post-release version bump to 2.12.2
2005-10-03  Elijah Newren  <newren@gmail.com>

	* configure.in: post-release version bump to 2.12.2
2005-10-03 18:35:55 +00:00
Elijah Newren
2aee817a56 2.12.1 release
2005-10-03  Elijah Newren  <newren@gmail.com>

	* NEWS:	2.12.1 release
2005-10-03 18:34:18 +00:00
Elijah Newren
ef5299ee92 Truncate ridiculously long titles to avoid crashing or letting the pager
2005-10-03  Elijah Newren  <newren@gmail.com>

	Truncate ridiculously long titles to avoid crashing or letting the
	pager crash.  Based on patch from Ray, incorporating suggestions
	from Havoc and some extensions of my own.  Fixes #315070.

	* src/display.c (set_utf8_string_hint, meta_display_open):
	* src/xprops.[ch] (meta_prop_set_utf8_string_hint):
	Move set_utf8_string_hint() to props.[ch], namespace it
	("meta_prop_"), and make it public

	* src/tabpopup.c (utf8_strndup, meta_ui_tab_popup_new):
	* src/util.[ch] (meta_g_utf8_strndup):
	Move utf8_strndup() to util.[ch], namespace it ("meta_g_"), and
	make it public

	* src/display.c (meta_display_open):
	* src/display.h (struct _MetaDisplay):
	add net_wm_visible_name and net_wm_visible_icon_name atoms to the
	list of atoms we work with

	* src/window-props.c (set_window_title, set_icon_title): If title
	length is greater than 512, truncate it and set
	_NET_WM_VISIBLE_NAME or _NET_WM_VISIBLE_ICON_NAME accordingly
2005-10-03 18:13:45 +00:00
Elijah Newren
fcba59e685 Get the tabbing window outline to work with gtk+ 2.8.4 again. Fixes
2005-10-03  Elijah Newren  <newren@gmail.com>

	Get the tabbing window outline to work with gtk+ 2.8.4 again.
	Fixes #317528.

	* src/tabpopup.c (display_entry): gtk+ 2.8.4 needs to know the
	mapped state of its windows (see bug 316180), and since we
	manually map with gdk_window_show_unraised() we need to manually
	set the mapped state too
2005-10-03 17:11:49 +00:00
Runa Bhattacharjee
662da0ec3c Added Entry for Updation of Bengali (bn) Translation:10/03 2005-10-03 05:46:53 +00:00
Runa Bhattacharjee
66c5548061 Updated Bengali (bn) Translation:10/03 2005-10-03 05:46:30 +00:00
Christian Rose
9503b4ba21 Fix the date in the ChangeLog entry. 2005-10-02 21:45:32 +00:00
Christian Rose
72c5649bc3 Reverted unauthorized changes made by user 'kloczek'.
2005-09-29  Christian Rose  <menthos@menthos.com>

	* sv.po: Reverted unauthorized changes made by
	user 'kloczek'.
2005-10-02 21:37:52 +00:00
Alessio Frusciante
43d72674e9 Updated Italian translation. 2005-09-26 20:07:26 +00:00
Funda Wang
943f4f66fb Updated Simplified Chinese translation 2005-09-24 15:17:34 +00:00
Francisco Javier F. Serrador
997b5dcccf Updated Spanish translation.
2005-09-21  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2005-09-21 18:35:16 +00:00
Christian Rose
94da2b94d7 Updated Swedish translation.
2005-09-20  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2005-09-20 19:59:25 +00:00
Tomasz Kłoczko
c502053ffc removed outdated strings and run "make update-po". 2005-09-19 14:25:36 +00:00
Nguyen Thai Ngoc Duy
213833f333 Fixed Kông 2005-09-17 05:40:13 +00:00
Clytie Siddall
9136686aa4 vi.po: Updated Vietnamese translation. 2005-09-16 07:45:55 +00:00
Inaki Larranaga
8eed998780 Updated Basque translation.
2005-09-08  Inaki Larranaga  <dooteo@euskalgnu.org>

	* eu.po: Updated Basque translation.
2005-09-08 18:52:51 +00:00
Priit Laes
0d1c28948d Translation updated by Ivar Smolin.
2005-09-07  Priit Laes  <plaes@cvs.gnome.org>

	* et.po: Translation updated by Ivar Smolin.
2005-09-07 05:18:49 +00:00
Elijah Newren
d02dc0e89a file constraints-ideas.txt was initially added on branch constraints_experiments. 2005-09-06 21:51:06 +00:00
Elijah Newren
b4f123c332 post-release version bump to 2.12.1
2005-09-05  Elijah Newren  <newren@gmail.com>

	* configure.in: post-release version bump to 2.12.1
2005-09-05 23:29:24 +00:00
Elijah Newren
422ee61608 2.12.0 release
2005-09-05  Elijah Newren  <newren@gmail.com>

	* configure.in:
	* README:
	* NEWS:
	2.12.0 release
2005-09-05 23:28:16 +00:00
Danilo Šegan
06df0d64ad Added Armenian translation. 2005-09-04 16:19:12 +00:00
Ignacio Casal Quinteiro
4c96a68427 *** empty log message *** 2005-09-04 09:26:15 +00:00
Elijah Newren
86bbde337c Add tips on how to more easily get the ids of windows, and how to shorten
2005-09-03  Elijah Newren  <newren@gmail.com>

	* HACKING: Add tips on how to more easily get the ids of windows,
	and how to shorten xprop output.
2005-09-03 23:33:27 +00:00
Danilo Šegan
809a1c173f Updated Serbian translation. 2005-09-03 19:07:50 +00:00
Amanpreet Singh Alam
735188fd2b update by amanpreetalam@yahoo.com 2005-09-02 19:45:30 +00:00
Brent Smith
6bb6566b86 Moved the call to meta_screen_get_natural_xinerama_list to earlier in
2005-09-02  Brent Smith  <gnome@nextreality.net>

        * src/place.c: (meta_window_place): Moved the call to
        meta_screen_get_natural_xinerama_list to earlier in
        function so that xineramas_list is allocated before
        find_first_fit is called.  Fixes #315000
2005-09-02 15:54:34 +00:00
Leonid Kanter
304a05b9a3 Updated Russian translation 2005-09-02 10:48:31 +00:00
Baris Cicek
7f90738dba Updated Turkish translation 2005-09-01 16:09:45 +00:00
Žygimantas Beručka
909de04b89 Updated Lithuanian translation.
2005-08-31  Žygimantas Beručka  <zygis@gnome.org>

	* lt.po: Updated Lithuanian translation.
2005-08-31 07:49:41 +00:00
Hendrik Richter
b751ceb159 Updated German translation.
2005-08-30  Hendrik Richter  <hendi@gnome-de.org>

	* de.po: Updated German translation.
2005-08-30 14:56:26 +00:00
Jens Seidel
feebb2f42e Typo corrections 2005-08-29 21:40:20 +00:00
Changwoo Ryu
2139d4e25e Updated Korean translation by Young-Ho Cha.
2005-08-30  Changwoo Ryu  <cwryu@debian.org>

	* ko.po: Updated Korean translation by Young-Ho Cha.
2005-08-29 17:35:59 +00:00
Telsa Gwynne
3ed91c8e14 Updated Welsh translation 2005-08-29 16:03:54 +00:00
Christophe Merlet
02d6e62aec Updated French translation. 2005-08-28 11:56:46 +00:00
Vincent van Adrighem
8126d0953d Translation updated by Michiel Sikkes.
2005-08-25  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Michiel Sikkes.
2005-08-25 16:03:03 +00:00
Elijah Newren
fc6dbd84b9 post-release version bump to 2.11.5
2005-08-22  Elijah Newren  <newren@gmail.com>

	* configure.in: post-release version bump to 2.11.5
2005-08-22 19:05:18 +00:00
159 changed files with 62201 additions and 43685 deletions

View File

@@ -15,6 +15,7 @@ ltconfig
ltmain.sh
stamp-h
stamp-h.in
stamp-h1
stamp.h
version.h
config.h.in

1715
ChangeLog

File diff suppressed because it is too large Load Diff

87
HACKING
View File

@@ -11,6 +11,7 @@ is nonetheless useful.
Overview
Administrative issues
Minimal Building/Testing Environment
Relevant standards and X properties
Debugging and testing
Debugging logs
@@ -34,6 +35,27 @@ Administrative issues
instructions is that the minor version number of a Metacity release
should always be a number from the Fibonacci sequence.
Minimal Building/Testing Environment
You do not need to _install_ a development version of Metacity to
build, run and test it; you can run it from some temporary
directory. Also, you do not need to build all of Gnome in order to
build a development version of Metacity -- odds are, you can build
metacity from CVS without building any other modules.
As long as you have gtk+ >= 2.6 with your distro, you should be able
to install your distro's development packages (e.g. gtk2-devel,
GConf2-devel, and startup-notification-devel on Fedora) and be ready
to build and test Metacity. Steps to do so:
$ cvs -q -z3 -d :pserver:anonymous@anoncvs.gnome.org:/cvs/gnome \
checkout metacity
$ cd metacity
$ ./autogen.sh --prefix /usr
$ make
$ ./src/metacity --replace
Again, note that you do not need to run 'make install'.
Relevant standards and X properties
There are two documents that describe some basics about how window
managers should behave: the ICCCM (Inter-Client Communication Conventions
@@ -69,16 +91,22 @@ Relevant standards and X properties
xprop
in a terminal and click on one of the windows on your screen. That gives
you the x properties for that window. Look through them and get a basic
idea of what's there for kicks. Next, try running
idea of what's there for kicks. Note that you can get rid of some of the
verboseness by grepping out the _NET_WM_ICON stuff, i.e.
xprop | grep -v _NET_WM_ICON
Next, try running
xprop -root
in a terminal. There's all the properties of the root window (which you
can think of as the "main" window). You can also manually specify
individual windows that you want the properties of with
can think of as the "main" Xserver window). You can also manually
specify individual windows that you want the properties of with
xprop -id <id>
if you know the id of the window in question (you can get this from the
_NET_CLIENT_STACKING property of the root window). Finally, it can also
be useful to add "-spy" (without the quotes) to the xprop command to get
it to continually monitor that window and report any changes to you.
if you know the id of the window in question. You can get the id of a
given window by either running xwininfo, e.g.
xwininfo | grep "Window id" | cut -f 4 -d ' '
or by looking at the _NET_CLIENT_STACKING property of the root
window. Finally, it can also be useful to add "-spy" (without the
quotes) to the xprop command to get it to continually monitor that
window and report any changes to you.
Debugging information
Trying to run a window manager under a typical debugger, such as gdb,
@@ -101,11 +129,12 @@ Debugging information
useful to get more information than just warnings. You can set
METACITY_VERBOSE to do that, like so:
METACITY_VERBOSE=1 METACITY_USE_LOGFILE=1 metacity --replace
(note that METACITY_VERBOSE=1 cannot be used without
METACITY_USE_LOGFILE=1 or metacity will crash). There are also
other flags, such as METACITY_DEBUG, most of which I haven't tried
and don't know what they do. Go to the source code directory and
run
(note that METACITY_VERBOSE=1 can be problematic without
METACITY_USE_LOGFILE=1; avoid it unless running in from something that
won't be managed by the new Metacity--see bug 305091 for more details).
There are also other flags, such as METACITY_DEBUG, most of which I
haven't tried and don't know what they do. Go to the source code
directory and run
grep "METACITY_" * | grep getenv
to find out what the other ones are.
@@ -177,17 +206,43 @@ Debugging information
metacity-message restart
metacity-message enable-keybindings
metacity-message disable-keybindings
The first of these is useful for testing themes, the second is just
another way (besides the --restart flag to metacity itself) of
restarting metacity, and the third is useful for testing Metacity when
running it under an Xnest (typically, the Metacity under the Xnest
wouldn't get keybinding notifications--making keyboard navigation not
work--but if you disable the keybindings for the global Metacity then
the Metacity under the Xnest can then get those keybinding notifications).
metacity-window-demo
metacity-window-demo is good for trying behavior of various kinds
of window without launching a full desktop.
Technical gotchas to keep in mind
Files that include gdk.h or gtk.h are not supposed to include display.h
or window.h or other core files.
Files that include gdk.h or gtk.h are not supposed to include
display.h or window.h or other core files. Files in the core
(display.[hc], window.[hc]) are not supposed to include gdk.h or
gtk.h. Reasons:
Files in the core (display.[hc], window.[hc]) are not supposed to include
gdk.h or gtk.h.
"Basically you don't want GDK most of the time. It adds
abstractions that cause problems, because they aren't designed to
be used in a WM where we do weird stuff (display grabs, and just
being the WM). At best GDK adds inefficiency, at worst it breaks
things in weird ways where you have to be a GDK guru to figure
them out. Owen also told me that they didn't want to start adding
a lot of hacks to GDK to let a WM use it; we both agreed back in
the mists of time that metacity would only use it for the "UI"
bits as it does.
Having the split in the source code contains and makes very clear
the interface between the WM and GDK/GTK. This keeps people from
introducing extra GDK/GTK usage when it isn't needed or
appropriate. Also, it speeds up the compilation a bit, though this
was perhaps more relevant 5 years ago than it is now.
There was also a very old worry that the GDK stuff might have to
be in a separate process to work right; that turned out to be
untrue. Though who knows what issues the CM will introduce."
Remember that strings stored in X properties are not in UTF-8, and they
have to end up in UTF-8 before we try putting them through Pango.

11
MAINTAINERS Normal file
View File

@@ -0,0 +1,11 @@
Currently active maintainers
----------------------------
Havoc Pennington
E-mail: hp@redhat.com
Elijah Newren
E-mail: newren@gmail.com
Søren Sandmann
E-mail: sandmann@redhat.com

View File

@@ -4,4 +4,4 @@ SUBDIRS=src po doc
EXTRA_DIST=HACKING rationales.txt \
intltool-extract.in intltool-merge.in intltool-update.in
DISTCLEANFILES = intltool-extract intltool-merge intltool-update
DISTCLEANFILES = intltool-extract intltool-merge intltool-update po/stamp-it po/.intltool-merge-cache

573
NEWS
View File

@@ -1,10 +1,557 @@
2.15.0
==
Thanks to Thomas Thurman, Elijah Newren, Havoc Pennington, Björn
Lindqvist, Gora Mohanty, Alejandro Andres, Andy Morum, Dan Sanders,
Thomas Andersen, Brian Pepple, and Søren Sandmann for improvements in
this release. (Note that "Thomas" below refers to Thomas Thurman if
last name isn't specified)
- An endless array of compositor updates, not all of which are well
explained in the ChangeLog. ;-) Includes an ability to enable and
disable the compositor at runtime, fixed up wobbling effect and new
explosion effect, special magnification handling, different opacity
for different window types like menus, a way of scaling windows,
handling of foreign displays, improved handling of window
moving/resizing, various code restructuring, special runtime checks
for correct extensions and other compositors, lots of bug fixes,
and possibly other stuff I'm missing or not understanding (Søren)
- Removed "move to another workspace" menu when there are exactly two
workspaces (Thomas) [#151183]
- fix type for compositing_manager schema entry (Elijah) [#335901]
- Port more properties to our async system for code cleanliness and
speed improvements (Havoc, Thomas)
- Lots of code cleanup, even more code cleanup, wow our code was
messy (Björn) [#335177, #337507, #336890, #338359]
- Abstract out the functions for setting/unsetting demands attention
hint and avoid doing it when the window isn't obscured (Thomas)
[#305882]
- Change strings to make them more readable, and more
translatable (Gora) [#335720]
- Reduce compiling warnings -- add a number of casts and change
signedness on a number of variables (Björn) [#336032]
- Fixed broken links in README (Alejandro) [#333303]
- Add a tabbing function, bound to alt-f6 by default, to cycle
through the windows of the current application (Thomas) [#94682]
- Fix the build with --disable-xsync (Andy) [#336605]
- Raise windows on maximize/unmaximize (Dan) [#335076]
- Don't have confirmation windows make applications appear to be
locked when closing via the window list (Dan) [#334899]
- Allow any keybinding pref to be specified either with <foo>, a
string, or <foo>_list, a list of strings, or both (Thomas)
[#164831]
- warn and ignore if transient_for is set to a non-top-level window
(Thomas Andersen) [#335524]
- Use po/LINGUAS for listing supported languages (Brian) [#337951]
Translations
Vladimir Petkov (bg), Jordi Mallach (ca), Miloslav Trmac (cs), Rhys
Jones (cy), Lasse Bang Mikkelsen (da), Frank Arnold (de), Kostas
Papadimas (el), Francisco Javier F. Serrador (es), Ivar Smolin (et), Iñaki
Larrañaga (eu), Farzaneh Sarafraz (fa), Ilkka Tuohela (fi), Ignacio Casal
Quinteiro (gl), Ankit Patel (gu), Rajesh Ranjan (hi), Gabor Kelemen (hu),
Satoru SATOH (ja), Alexander Didebulidze (ka), Žygimantas Beručka (lt),
Kjartan Maraas (nb), Michiel Sikkes (nl), Åsmund Skjæveland (nn), Gora
Mohanty (or), Raphael Higino (pt_BR), Duarte Loreto (pt), Mugurel Tudor (ro),
Leonid Kanter (ru), Steve Murphy (rw), Laurent Dhima (sq), Слободан Д.
Средојевић (sr), Daniel Nylander (sv), Theppitak Karoonboonyanan (th), Maxim
Dziumanenko (uk), Clytie Siddall (vi), Funda Wang (zh_CN)
2.14.3
==
This release just reverts the widely hated new focus behavior of Metacity
2.14.x to the behavior found in 2.12.x. Patch came from Ron Yorston.
See http://blogs.gnome.org/view/newren/2006/04/13/0 and
http://mail.gnome.org/archives/release-team/2006-April/msg00025.html for
more details.
- Add a focus_new_windows gconf key, change the default to 'smart' (2.12
behavior) and add a 'strict' option to get 2.14 behavior. (Ron)
[#326159]
Translations
Vladimir Petkov (bg), Miloslav Trmac (cs), Frank Arnold (de), Francisco
Javier F. Serrador (es), Ilkka Tuohela (fi), Tino Meinen (nl), Åsmund
Skjæveland (nn), Raphael Higino (pt_BR), Daniel Nylander (sv)
2.14.2
==
Thanks to Thomas Thurman, Paolo Borelli, Björn Lindqvist, and
Elijah Newren for fixes in this release.
- Fix constraints bug causing negative width windows and crashes
(Elijah) [#336651]
- Fix window grouping with parent/child windows (Björn) [#336184]
- use g_str_has_prefix instead of a local copy of the function
(Paolo) [#334643]
- Make sure pager can refresh when window is minimized on a different
workspace (Thomas) [#315142]
- Add debugging information for edge resistance (Elijah)
Translations
Vladimir Petkov (bg), tangi.bzh (br), Jordi Mallach (ca), Miloslav
Trmac (cs), Rhys Jones (cy), Lasse Bang Mikkelsen (da), Frank
Arnold (de), Mindu Dorji (dz), Kostas Papadimas (el), Francisco
Javier F. Serrador (es), Ivar Smolin (et), Iñaki Larrañaga
Murgoitio (eu), Elnaz Sarbar (fa), Ilkka Tuohela (fi),
Ignacio Casal Quinteiro (gl), Ankit Patel (gu), Rajesh Ranjan (hi)
Gabor Kelemen (hu), Luca Ferretti (it), Satoru SATOH (ja), Vladimer
Sichinava (ka), Žygimantas Beručka (lt), Kjartan Maraas (nb),
Tino Meinen (nl), Kjartan Maraas (no), Gora Mohanty (or), Gnome PL
Team (pl), Evandro Fernandes Giovanini (pt_BR), Duarte Loreto (pt),
Mugurel Tudor (ro), Leonid Kanter (ru), Laurent Dhima (sq),
Слободан Д. Средојевић (sr), Daniel Nylander (sv), Theppitak
Karoonboonyanan (th), Maxim Dziumanenko (uk), Clytie Siddall (vi),
Funda Wang (zh_CN)
2.14.1
==
The only change since 2.14.0 is to remove the "This is the UNSTABLE
branch" warning from configure for those compiling Metacity from
source.
2.14.0
==
Thanks to Ryan Lortie and Thomas Thurman for fixes in this release.
- Mark the app-running-remotely-window-title string for translation
(Thomas) [#334332]
- Only unmaximise window before freeing if the window is actually
maximised (Ryan) [#333563]
Translations
Jordi Mallach (ca), Frank Arnold (de), Luca Ferretti (it), Evandro
Fernandes Giovanini (pt_BR), Theppitak Karoonboonyanan (th)
2.13.144
==
Thanks to Jens Granseuer, Kristian, Søren Sandmann, Sylvain
Bertrand, and Thomas Thurman for improvements in this release.
- Fix build with gcc 2.95 (Jens) [#331166]
- Compositor improvements [remember, still off by default]: add
unused wobbly (un)minimize animation (Kristian), add support for
turning updates on and off (Søren), use sync counter to make
composited resizing tear free (Søren), add ability to unmanage
the screen (Søren),
- Fix build issue with library search order (Sylvain) [#330695]
- Work around buggy application grouping with transient windows
(Thomas) [#328211]
- Prevent setting cycle_windows to keybindings that won't work.
(Thomas) [#329676]
2.13.89
==
Thanks to Søren Sandmann, Thomas Thurman, Thom May, Akira Tagoh,
Luke Morton, and Philip O'Brien for improvements in this release.
- Compositor improvements [remember that the compositor is still
disabled by default]: New fancy minimize animation that fades in
and out, new debug stuff, various bug fixes (Søren)
- When buggy apps create synthetic button or keypresses without a
timestamp, produce a warning instead of failing an assertion
(Thomas) [#313490]
- Avoid a memory leak when checking which workspace(s) a window is
on (Thomas) [#322059]
- Add a man page for metacity (Thom, Akira, Luke, Philip) [#321279]
- Disable alt-f7 if a window can't be moved, and alt-f8 if it can't
be resized (Thomas) [#328920]
- Allow alt-escape to cancel alt-tabbing, and vice versa (Thomas)
[#141425]
Translations
Miloslav Trmac (cs), Kjartan Maraas (nb), Tino Meinen (nl),
Kjartan Maraas (no), Слободан Д. Средојевић (sr), Funda Wang (zh_CN)
2.13.55
==
Thanks to Dick Marinus, Christian Kirbach, and Elijah Newren for
improvements in this release.
- Add a minimize and none double-click-titlebar-action (Dick)
[#300210]
- Prevent a critical warning crasher when switching themes
(Christian) [#327847]
- Fix some uninitialized value problems (Elijah)
- If the mouse enters a window on a different screen, activate the
default window on the new screen (Elijah) [#319348]
Translations
Jordi Mallach (ca), Adam Weinberger (en_CA), Francisco Javier
F. Serrador (es), Ilkka Tuohela (fi), Ignacio Casal Quinteiro (gl),
Ankit Patel (gu), Kjartan Maraas (nb), Kjartan Maraas (no), Evandro
Fernandes Giovanini (pt_BR), Theppitak Karoonboonyanan (th), Clytie
Siddall (vi), Funda Wang (zh_CN)
2.13.34
==
Thanks to Damien Carbery, Havoc Pennington, Søren Sandmann,
Björn Lindqvist, Kjartan Maraas, Elijah Newren for improvements in
this release.
- manually define HOST_NAME_MAX if not already defined to fix Solaris
compilation issue (Damien, Havoc) [#326745]
- compositor improvements: port to changes in libcm, do it again, fix
unrefing, make minimize animation update again (all done by Søren)
- make sure an outline border is shown even if a window decoration's
width is 0 (Björn) [#98340]
- correctly handle window alt-tab outlines in showing desktop mode
(Björn) [#98340]
- fix lots of tiny issues spotted by the intel compiler (Kjartan)
[#321439]
- prevent rapidly repeated visual bells from hanging metacity
(Elijah) [#322032]
- more careful error handling of values returned by GConf (Elijah)
[#326615]
- fix various initialization and default issues, especially for
running with --disable-gconf. Make --disable-gconf actually work.
(Elijah) [#326661]
- fix some reading-from-free'd-data errors (Søren) [#327575]
- fix an unitialized value problem when in raise-on-click mode
(Søren) [#327572]
- avoid flashing original-sized window when closing a maximized
window (Elijah) [#317254]
- prevent windows from sometimes getting shoved and smashed by
sliding (and possibly auto-hiding) panels (Elijah) [#327822]
Translations
Ilkka Tuohela (fi), Ignacio Casal Quinteiro (gl), Tino Meinen (nl),
Funda Wang (zh_CN)
2.13.21
==
Thanks to Damien Carbery, Ray Strode, Søren Sandmann, Elijah
Newren, Jens Granseuer, and Kyle Ambroff for improvements in this
release.
- Fix Solaris compilation issues (Ray, Damien) [#326281, #326746]
- Merge compositor work from branches to get the beginnings of an openGL
based compositor. Still not ready and thus disabled by default.
(Søren)
- Composite fixes: Only update composite on damage events (Søren), get
non-composite compilation working again (Elijah), Really turn off
draw-in-a-loop (Søren)
- Don't dereference a NULL string (Elijah) [#327013]
- GCC 2.95 fix; remove more C99 style variable initiailizations (Jens)
[#327050]
- Fix accidental overzealous focus holding by the terminal (introduced in
last release) so that windows launched from panel icons, the panel
menu, or global keybindings should get focus now. (Elijah) [#326159]
- If no valid window is found in the MRU list, then set focus to the
desktop window. (Kyle) [#317405]
Translations
Adam Weinberger (en_CA), Francisco Javier F. Serrador (es), Ankit
Patel (gu), Takeshi AIHANA (ja), Theppitak Karoonboonyanan (th),
Clytie Siddall (vi)
2.13.13
==
Thanks to Jens Granseuer, Björn Lindqvist, and Elijah Newren for
improvements in this release.
- Remove C99 style variable initiailization (Jens) [#322622]
- Fix a logic error (Björn) [#322149]
- Plug a few leaks (Elijah) [#309178]
- Allow edge resistance at both sides of a window and also when edges
don't overlap but are a single pixel away from doing so (Elijah)
[part of #321905]
- Remove the timeout resistance at screen/xinerama edges (Elijah)
[part of #321905]
- Revert to the old edge resistance behavior for keyboard
movement/resizing based resistance (Elijah) [part of #321905]
- Remove the "pull-away" edge resistance (Elijah) [part of #321905]
- Avoid crashing when visual bell is in use and focus window is
closed (Elijah) [#322031]
- Be more strict about what is considered a valid region with partial
struts (Elijah) [#322070]
- Fix reduced resources resize handling for windows with sizing or
resizing constraints (Elijah) [#325774]
- Fix window outline for minimized windows when using alt-esc
(Elijah) [#325092]
- Make the taskbar less flash happy and fix up some related stacking
issues (Elijah) [#326035]
- More thorough handling of source indication (Elijah) [part of #326041]
- Don't "steal" focus from terminal windows for new window mappings
as the difference in usage between terminals and other apps seems
to suggest this difference in treatment. See bug #326159 for
details, feedback welcome (Elijah) [#326159]
- Add a raise on click option, basically only because all the major
distros are patching it in anyway (though each and every one of
them has bugs in their implementations). (Elijah) [#326156]
Translations
Kjartan Maraas (nb), Kjartan Maraas (no)
2.13.8
==
Thanks to Kang Jeong-Hee and Elijah Newren for improvements in this
release.
- Fix some compilation warnings and issues (Kang)
- Escape the title since it is going to be treated as Markup (Elijah)
[#324846]
- Make the workspace switcher work with dual-head (non-xinerama)
setups (Elijah) [#319423]
Translations
Ilkka Tuohela (fi), Ankit Patel (gu), Kang Joeng-Hee (ko)
2.13.5
==
Thanks to Davyd Madeley, Kjartan Maraas, and Björn Lindqvist for
improvements in this release.
- Make a debugging message actually correspond to the code (Björn)
[#322051]
- Make the wireframe a bit slimmer (Kjartan) [#320051]
- Display hostname in titlebar for remote X clients (Davyd) [#322202]
Translations
Miloslav Trmac (cs), Adam Weinberger (en_CA), Ankit Patel (gu),
Kjartan Maraas (nb), Kjartan Maraas (no), Marcel Telka (sk)
2.13.3
==
This is a special edition release just for gicmo, code-named 'elijah,
please do a release so magic seb can bring it to me'. It fixes a
number of issues due to the major constraints changes found since the
last release.
Thanks to Davyd Madeley and Elijah Newren for improvements in this release.
- Differentiate between movement towards an edge and movement away from
one for edge-resistance. Pick smaller constants for movement away from
an edge (Elijah)
- Use GPOINTER_TO_INT() macro instead of cast to allow compilation on
64-bit architectures without warning (Davyd)
- compute the frame geometry due to maximization only after actually
maximizing (Elijah) [#321902]
- add some developer documentation on updating struts, workareas, regions,
and edges (Elijah)
- When updating the xinerama due to placement, update which
maximal/spanning rect set to use as well (Elijah) [#322068]
- Relax the partially onscreen constraint to allow the titlebar to touch
the bottom panel in order to make the new constraints code function the
same as the old version (Elijah) [#322071]
- Don't allow removing a window from maximized or fullscreened state to
place the titlebar under the top panel (Elijah) [#322075]
Translations
Vladimir Petkov (bg), Francisco Javier F. Serrador (es), Ignacio Casal
Quinteiro (gl), Takeshi AIHANA (ja), Theppitak Karoonboonyanan (th)
2.13.2
==
This release just contains a merge of all the changes on the
constraints_experiments branch.
Thanks to Havoc Pennington for reviewing the gargantuan patch and
suggesting lots of little fixes for making it better, to Rob Adams and
Soeren Sandmann for grilling me on how some of the difficult internals work
-- allowing me to improve the documentation, to Olav Vitters for finding an
easy-to-fix crasher bug in early testing and for repeatedly extending my
deadline for switching from working on Metacity to Bugzilla, to Ray Strode
for finding two crashers and fixing one of them in early testing, to Bryan
Clark for usability advice, to Davyd Madeley and Christian Kellner for
testing Xinerama stuff, to Sebastien Bacher for packaging an early version
and finding some obscure bugs (that I unfortunately still can't duplicate
and will probably still need to fix once I can),
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
86644 - resize should have a shift option like move does
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 code 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()
Translation
Michiel Sikkes (nl)
2.13.1
==
Thanks to Philip O'Brien, Kjartan Maraas, and Aidan Delaney for
improvements in this release.
- add handling for META_PREF_CURSOR_THEME and META_PREF_CURSOR_SIZE
for more complete debug info (Philip) [#318976]
- Remove possible g_source leak in #ifdef'd out code, in case anyone uses
it in the future (Kjartan) [#320050]
- Changed the 'minimized' field of the MetaTabEntry struct to 'hidden'
(Aidan) [#168455]
Translations
Miloslav Trmac (cs), Francisco Javier F. Serrador (es), Takeshi AIHANA (ja),
Erdal Ronahi (ku), Theppitak Karoonboonyanan (th)
2.13.0
==
Thanks to Björn Lindqvist, Kjartan Maraas, Søren Sandmann,
Elijah Newren, Ross Cohen, and Muktha for improvements in this release
since 2.12.1.
- Mave ancestors come along with the transient when moving the window from
one workspace to another (Björn) [#314977]
- Fix the workspace switcher tabpopup to display the right windows and to
fix the pick-a-new-window-to-focus algorithm in order to not select
windows that aren't showing (Björn) [#170475]
- Fix a couple memory leaks (Kjartan, Søren, Elijah) [#313030]
- Make alt-esc (the "switch between windows immediately" keybinding)
actually show minimized windows too (Ross) [#107072]
- Make alt-esc consistent with alt-tab by leaving stacking of unselected
windows unchanged (Ross) [#314285]
- Clarify the meaning of the auto_raise preference (Elijah) [#312421]
- Fix a crash that occurs when removing some virtual desktops and windows
happen to be on those desktops (Elijah) [#318306]
- Make the unfocussed Simple window border visible with high contrast
inverse theme (Muktha) [#121361]
- Fix edge snapping for multi-screen (non-xinerama) setups (Elijah)
[#319425]
Translations
Vladimir Petkov (bg), Kostas Papadimas (el), Adam Weinberger (en_CA),
Ivar Smolin (et), Michiel Sikkes (nl), Marcel Telka (sk), Funda
Wang (zh_CN)
2.12.1
==
Thanks to Ray Strode, Havoc Pennington, and Elijah Newren for
improvements in this release.
- Truncate ridiculously long titles to avoid crashing or letting the
pager crash (Ray, Havoc, Elijah) [#315070]
- Get the tabbing window outline to work with gtk+ 2.8.4 again
(Elijah) [#317528]
Translations
Mahay Alam Khan (bn), Francisco Javier F. Serrador (es), Ivar Smolin (et),
Iñaki Larrañaga Murgoitio (eu), Luca Ferretti (it), Christian Rose (sv),
Clytie Siddall (vi), Funda Wang (zh_CN)
2.12.0
==
Thanks to Brent Smith for finding the crasher in the release candidate!
- Fix an uninitialized variable problem causing crashes (Brent) [#315000]
Translations
Bryn Salisbury (cy), Hendrik Richter (de), Christophe Merlet (RedFox) (fr),
Ignacio Casal Quinteiro (gl), Norayr Chilingaryan (hy), Young-Ho Cha (ko),
Žygimantas Berucka (lt), Michiel Sikkes (nl), Leonid Kanter (ru), Danilo
Šegan (sr), Baris Cicek (tr)
2.11.3
==
Thanks to Bj<EFBFBD>rn Lindqvist and Elijah Newren for improvements in
Thanks to Björn Lindqvist and Elijah Newren for improvements in
this release.
- Check for the right versions of glib and gtk+ (Bj<EFBFBD>rn) [#314116]
- Check for the right versions of glib and gtk+ (Björn) [#314116]
- Avoid obscuring centered-on-desktop windows which are denied focus
(Elijah) [#313234]
@@ -72,13 +619,13 @@ Translations
This release contains all fixes up to Metacity 2.10.2 plus some new goodies.
Thanks to Matthias Clasen, Aivars Kalvans, Bj<EFBFBD>rn Lindqvist, and
Thanks to Matthias Clasen, Aivars Kalvans, Björn Lindqvist, and
Andrew Johnson for improvements in this release.
- React to cursor theme changes (Matthias) [#308106]
- Plug a small leak with xinerama information (Aivars) [#307884]
- Split up main() into more manageable chunks and make use of GOpt
(Bj<EFBFBD>rn) [#305331]
(Björn) [#305331]
- Speed up vertical gradients (Andrew) [#169982]
Translations
@@ -139,8 +686,8 @@ The only difference between this version and 2.9.34 is some
translation updates.
Translations
Vladimir Petkov (bg), Gabor Kelemen (hu), <EFBFBD>ygimantas Berucka (lt),
Reinout van Schouwen (nl), Mugurel Tudor (ro), Danilo <EFBFBD>egan (sr),
Vladimir Petkov (bg), Gabor Kelemen (hu), Žygimantas Berucka (lt),
Reinout van Schouwen (nl), Mugurel Tudor (ro), Danilo Šegan (sr),
Woodman Tuen (zh_TW)
2.9.34
@@ -205,7 +752,7 @@ Marcus Clarke for fixes in this release.
Translations
Jordi Mallach (ca), Martin Willemoes Hansen (da),
Kostas Papadimas (el), David Lodge (en_GB),
Francisco Javier F. Serrador (es), T<EFBFBD>ivo Leedj<EFBFBD>rv (et),
Francisco Javier F. Serrador (es), Tõivo Leedjärv (et),
Christophe Merlet (RedFox) (fr), Takeshi AIHANA (ja),
Young-Ho, Cha (ko), Kjartan Maraas (nb), Michiel Sikkes (nl),
Kjartan Maraas (no), Duarte Loreto (pt), Leonid Kanter (ru),
@@ -273,7 +820,7 @@ Translations
Vladimir Petkov (bg), Miloslav Trmac (cs), Frank Arnold (de),
Adam Weinberger (en_CA), David Lodge (en_GB),
Francisco Javier F. Serrador (es), Pauli Virtanen (fi),
Young-Ho, Changwoo Ryu (ko), <EFBFBD>ygimantas Berucka (lt),
Young-Ho, Changwoo Ryu (ko), Žygimantas Berucka (lt),
Kjartan Maraas (nb), Kjartan Maraas (no), Duarte Loreto (pt),
Marcel Telka (sk), Christian Rose (sv),
Theppitak Karoonboonyanan (th)
@@ -380,7 +927,7 @@ Vincent Untz for fixes/features in this release.
Translations
da (Martin Willemoes Hansen), fr(Christophe Merlet, Baptiste
Mille-Mathias), lt(<EFBFBD>ygimantas Berucka), ja(Takeshi AIHANA)
Mille-Mathias), lt(Žygimantas Berucka), ja(Takeshi AIHANA)
2.9.0
==
@@ -411,7 +958,7 @@ and Vincent Untz for fixes and features in this release.
- Re-enable focus stealing prevention (Elijah)
Translations
es(Francisco Javier F. Serrador), sq(Laurent Dhima), sr(Danilo <EFBFBD>egan),
es(Francisco Javier F. Serrador), sq(Laurent Dhima), sr(Danilo Šegan),
cs(Miloslav Trmac), en_CA(Adam Weinberger), en_GB(David Lodge)
2.8.6
@@ -446,7 +993,7 @@ Translations
* ar(Abdulaziz Al-Arfaj), cs(Miloslav Trmac), cy(Dafydd Harries),
en_GB(David Lodge), fr(Christophe Merlet (RedFox)),
nn(<EFBFBD>smund Skj<EFBFBD>veland), or(Gora Mohanty),
nn(Åsmund Skjæveland), or(Gora Mohanty),
pr_BR(Gustavo Noronha Silva), ro(Mugurel Tudor),
th(Paisa Seeluangsawat), tr(Baris Cicek), zh_TW(Woodman Tuen)
@@ -484,7 +1031,7 @@ Fixes
Translations
* az(Metin Amiroff), bs(Kemal Sanjta), ca(Jordi Mallach),
el(Kostas Papadimas), es(Francisco Javier F. Serrador),
eu(I<EFBFBD><EFBFBD>aki Larra<EFBFBD><EFBFBD>aga Murgoitio), fi(Pauli Virtanen),
eu(Iñaki Larrañaga Murgoitio), fi(Pauli Virtanen),
nb(Kjartan Maraas), sq(Laurent Dhima), uk(Maxim Dziumanenko)
@@ -512,7 +1059,7 @@ Fixes
Translations
* fi (Pauli Virtanen), ja (Takeshi AIHANA), ko (Young-Ho, Cha),
pl (Gnome PL Team), ru (Dmitry G. Mastrukov), sr (Danilo <EFBFBD>Ł<EFBFBD>egan),
pl (Gnome PL Team), ru (Dmitry G. Mastrukov), sr (Danilo Šegan),
tk (Gurban M. Tewekgeli), zh_CN (Funda Wang)
2.8.2

9
README
View File

@@ -6,9 +6,10 @@ on UNIX keyboards.
The first release of Metacity was version 2.3. Metacity has no need for
your petty hangups about version numbers.
The stable releases so far are 2.4.x, 2.6.x, 2.8.[01], 2.8.1.x, 2.8.5-, 2.10.x
The stable releases so far are 2.4.x, 2.6.x, 2.8.[01], 2.8.1.x, 2.8.5-, 2.10.x,
2.12.x, 2.14.x.
Unstable branches are 2.3.x, 2.5.x, 2.8.2-4, 2.9.x, 2.11.x
Unstable branches are 2.3.x, 2.5.x, 2.8.2-4, 2.9.x, 2.11.x, 2.13.x, 2.15.x
COMPILING METACITY
===
@@ -314,8 +315,8 @@ A: Metacity only stores sizes/positions for apps that are session
archaic than twm - and you should flame them. ;-)
Docs on session management:
ftp://ftp.x.org/pub/R6.4/xc/doc/hardcopy/SM/xsmp.PS.gz
ftp://ftp.x.org:21/pub/R6.4/xc/doc/hardcopy/SM/SMlib.PS.gz
http://www.fifi.org/doc/xspecs/xsmp.txt.gz
http://www.fifi.org/doc/xspecs/SMlib.txt.gz
See also the ICCCM section on SM. For GNOME apps, use the
GnomeClient object. For a simple example of using libSM directly,

View File

@@ -2,7 +2,7 @@ AC_PREREQ(2.50)
# Fibonacci sequence for micro version numbering:
# 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987
AC_INIT([metacity], [2.11.3],
AC_INIT([metacity], [2.15.0],
[http://bugzilla.gnome.org/enter_bug.cgi?product=metacity])
AC_CONFIG_SRCDIR(src/display.c)
@@ -18,7 +18,7 @@ GETTEXT_PACKAGE=metacity
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE",[Name of default gettext domain])
AC_PROG_INTLTOOL([0.21])
IT_PROG_INTLTOOL([0.34.90])
AC_PROG_CC
AC_ISC_POSIX
AC_HEADER_STDC
@@ -155,7 +155,6 @@ AC_ARG_ENABLE(shape,
## try definining HAVE_BACKTRACE
AC_CHECK_HEADERS(execinfo.h, [AC_CHECK_FUNCS(backtrace)])
ALL_LINGUAS="am ar az be bg bn bs ca cs cy da de el en_CA en_GB es et eu fa fi fr ga gl gu he hi hr hu id is it ja ko lt lv mk ml mn ms nb ne nl nn no or pa pl pt pt_BR ro ru rw sl sk sq sr sr@Latn sv ta th tk tr uk vi wa xh zh_CN zh_TW"
AM_GLIB_GNU_GETTEXT
## here we get the flags we'll actually use
@@ -222,7 +221,7 @@ fi
if test x$have_xcomposite = xyes; then
echo "Building with CompositeExt"
METACITY_PC_MODULES="$METACITY_PC_MODULES xcomposite >= $XCOMPOSITE_VERSION xfixes xrender xdamage"
METACITY_PC_MODULES="$METACITY_PC_MODULES xcomposite >= $XCOMPOSITE_VERSION xfixes xrender xdamage cm"
AC_DEFINE(HAVE_COMPOSITE_EXTENSIONS, , [Building with compositing manager support])
## force on render also
@@ -404,10 +403,10 @@ if test "x$found_xsync" = "xyes"; then
AC_DEFINE(HAVE_XSYNC, , [Have the Xsync extension library])
fi
METACITY_LIBS="$XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS $METACITY_LIBS"
METACITY_MESSAGE_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS $METACITY_MESSAGE_LIBS"
METACITY_WINDOW_DEMO_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS $METACITY_WINDOW_DEMO_LIBS"
METACITY_PROPS_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS $METACITY_PROPS_LIBS"
METACITY_LIBS="$METACITY_LIBS $XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
METACITY_MESSAGE_LIBS="$METACITY_MESSAGE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
METACITY_WINDOW_DEMO_LIBS="$METACITY_WINDOW_DEMO_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
METACITY_PROPS_LIBS="$METACITY_PROPS_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
found_sm=no
case "$METACITY_LIBS" in
@@ -463,6 +462,9 @@ if test x$enable_gconf = xyes; then
fi
AM_GCONF_SOURCE_2
else
GCONF_SCHEMAS_INSTALL_TRUE='#'
GCONF_SCHEMAS_INSTALL_FALSE=
fi
AC_CONFIG_FILES([
@@ -518,4 +520,4 @@ metacity-$VERSION:
Xcursor: ${have_xcursor}
"
echo "This is the UNSTABLE branch of metacity"
echo "Use 2.10.x for stable (gnome-2-10 branch in CVS)"
echo "Use 2.14.x for stable (gnome-2-14 branch in CVS)"

View File

@@ -0,0 +1,283 @@
File contents:
Basic Ideas
Important points to remember
Explanation of fields in the ConstraintInfo struct
Gory details of resize_gravity vs. fixed_directions
IMPORTANT NOTE: There's a big comment at the top of constraints.c
explaining how to add extra constraints or tweak others. Read it. I put
that information there because it may be enough information by itself for
people to hack on constraints.c. I won't duplicate that information in
this file; this file is for deeper details.
---------------------------------------------------------------------------
Basic Ideas
---------------------------------------------------------------------------
There are a couple basic ideas behind how this constraints.c code works and
why it works that way:
1) Split the low-level error-prone operations into a special file
2) Add robustness by prioritizing constraints
3) Make use of a minimal spanning set of rectangles for the
"onscreen region" (screen minus struts).
4) Constraints can be user-action vs app-action oriented
5) Avoid over-complification ;-)
Some more details explaining these basic ideas:
1) Split tedious operations out
boxes.[ch] have been added which contain many common, tedious, and
error-prone operations. I find that this separation helps a lot for
managing the complexity and ensuring that things work correctly.
Also, note that testboxes.c thoroughly tests all functionality in
boxes.[ch] and a testboxes program is automatically compiled.
Note that functions have also been added to this file to handle some
of the tedium necessary for edge resistance as well.
2) Prioritize constraints
In the old code, if each and every constraint could not be
simultaneously satisfied, then it would result in some
difficult-to-predict set of constraints being violated. This was
because constraints were applied in order, with the possibility for
each making changes that violated previous constraints, with no
checking done at the end.
Now, all constraints have an associated priority, defined in the
ConstraintPriority enum near the top of constraints.c. The
constraints are all applied, and then are all checked; if not all are
satisfied then the least important constraints are dropped and the
process is repeated. This ensures that the most important constraints
are satisfied.
A special note to make here is that if any one given constraint is
impossible to satisfy even individually (e.g. if minimum size hints
specify a larger window than the screen size, making the
fully-onscreen constraint impossible to satisfy) then we treat the
constraint as being satisfied. This sounds counter-intuitive, but the
idea is that we want to satisfy as many constraints as possible and if
we treat it as a violation then all constraints with a lesser priority
also get dropped along with the impossible to satisfy one.
3) Using maximal/spanning rectangles
The constraints rely heavily on something I call spanning rectangles
(which Soeren referred to as maximal rectangles, a name which I think
I like better but I don't want to go change all the code now). These
spanning rectangles have the property that a window will fit on the
screen if and only if it fits within at least one of the rectangles.
Soeren had an alternative way of describing these rectangles, namely
that they were rectangles with the property that if you made any of
them larger in any direction, they would overlap with struts or be
offscreen (with the implicit assumption that there are enough of these
rectangles that combined they cover all relevant parts of the screen).
Note that, by necessity, these spanning/maximal rectangles will often
overlap each other.
Such a list makes it relatively easy to define operations like
window-is-onscreen or clamp-window-to-region or
shove-window-into-region. Since we have a on-single-xinerama
constraint in addition to the onscreen constraint(s), we cache
number_xineramas + 1 of these lists in the workspace. These lists
then only need to be updated whenever the workarea is (e.g. when strut
list change or screen or xinerama size changes).
4) Constraints can be user-action vs app-action oriented
Such differentiation requires special care for the constraints to be
consistent; e.g. if the user does something and one constraint
applies, then the app does something you have to be careful that the
constraint on the app action doesn't result in some jarring motion.
In particular, the constraints currently allow offscreen movement or
resizing for user actions only. The way consistency is handled is
that at the end of the constraints, update_onscreen_requirements()
checks to see if the window is offscreen or split across xineramas and
updates window->require_fully_onscreen and
window->require_on_single_xinerama appropriately.
5) Avoid over-complification
The previous code tried to reform the constraints into terms of a
single variable. This made the code rather difficult to
understand. ("This is a rather complicated fix for an obscure bug
that happened when resizing a window and encountering a constraint
such as the top edge of the screen.") It also failed, even on the
very example for which it used as justification for the complexity
(bug 312104 -- when keyboard resizing the top of the window,
Metacity extends the bottom once the titlebar hits the top panel),
though the reason why it failed is somewhat mysterious as it should
have worked. Further, it didn't really reform the constraints in
terms of a single variable -- there was both an x_move_delta and an
x_resize_delta, and the existence of both caused bug 109553
(gravity with simultaneous move and resize doesn't work)
---------------------------------------------------------------------------
Important points to remember
---------------------------------------------------------------------------
- Inner vs Outer window
Note that because of how configure requests work and
meta_window_move_resize_internal() and friends are set up, that the
rectangles passed to meta_window_constrain() are with respect to inner
window positions instead of outer window positions (meaning that window
manager decorations are not included in the position/size). For the
constraints that need to be enforced with respect to outer window
positions, you'll need to make use of the extend_by_frame() and
unextend_by_frame() functions.
- meta_window_move_resize_internal() accepts a really hairy set of
inputs. See the huge comment at the beginning of that function.
constraints gets screwed up if that function can't sanitize the input,
so be very careful about that. It used to be pretty busted.
---------------------------------------------------------------------------
Explanation of fields in the ConstraintInfo strut
---------------------------------------------------------------------------
As of the time of this writing, ConstraintInfo had the following fields:
orig
current
fgeom
action_type
is_user_action
resize_gravity
fixed_directions
work_area_xinerama
entire_xinerama
usable_screen_region
usable_xinerama_region
A brief description of each and/or pointers to more information are found
below:
orig
The previous position and size of the window, ignoring any window
decorations
current
The requested position and size of the window, ignoring any window
decorations. This rectangle gets modified by the various constraints
to specify the allowed position closest to the requested position.
fgeom
The geometry of the window frame (i.e. "decorations"), if it exists.
Otherwise, it's a dummy 0-size frame for convenience (i.e. this pointer
is guaranteed to be non-NULL so you don't have to do the stupid check).
action_type
Whether the action being constrained is a move, resize, or a combined
move and resize. Some constraints can run faster with this information
(e.g. constraining size increment hints or min size hints don't need to
do anything for pure move operations). This may also be used for
providing slightly different behavior (e.g. clip-to-region instead of
shove-into-region for resize vs. moving operations), but doesn't
currently have a lot of use for this.
is_user_action
Used to determine whether the action being constrained is a user
action. If so, certain parts of the constraint may be relaxed. Note
that this requires care to get right; see item 4 of the basic ideas
section for more details.
resize_gravity
The gravity used in the resize operation, used in order to make sure
windows are resized correctly if constraints specify that their size
must be modified. Explained further in the resize_gravity
vs. fixed_directions section.
fixed_directions
There may be multiple solutions to shoving a window back onscreen.
Typically, the shortest distance used is the solution picked, but if
e.g. an application only moved its window in a single direction, it's
more desirable that the window is shoved back in that direction than in
a different one. fixed_directions facilitates that. Explained further
in the resize_gravity vs. fixed_directions section.
work_area_xinerama
This region is defined in the workspace and just cached here for
convenience. It is basically the area obtained by taking the current
xinerama, treating all partial struts as full struts, and then
subtracting all struts from the current xinerama region. Useful
e.g. for enforcing maximization constraints.
entire_xinerama
Just a cache of the rectangle corresponding to the entire current
xinerama, including struts. Useful e.g. for enforcing fullscreen
constraints.
usable_screen_region
The set of maximal/spanning rectangles for the entire screen; this
region doesn't overlap with any struts and helps to enforce
e.g. onscreen constraints.
usable_xinerama_region
The set of maximal/spanning rectangles for the current xinerama; this
region doesn't overlap with any struts on the xinerama and helps to
enforce e.g. the on-single-xinerama constraint.
---------------------------------------------------------------------------
Gory details of resize_gravity vs. fixed_directions
---------------------------------------------------------------------------
Note that although resize_gravity and fixed_directions look similar, they
are used for different purposes:
- resize_gravity is only for resize operations and is used for
constraints unrelated to keeping a window within a certain region
- fixed_directions is for both move and resize operations and is
specifically for keeping a window within a specified region.
Examples of where each are used:
- If a window is simultaneously moved and resized to the southeast corner
with SouthEastGravity, but it turns out that the window was sized to
something smaller than the minimum size hint, then the size_hints
constraint should resize the window using the resize_gravity to ensure
that the southeast corner doesn't move.
- If an application resizes itself so that it grows downward only (which
I note could be using any of three different gravities, most likely
NorthWest), and happens to put the southeast part of the window under a
partial strut, then the window needs to be forced back on screen.
(Yes, shoved onscreen and not clipped; see bug 136307). It may be the
case that moving the window to the left results in less movement of the
window than moving the window up, which, in the absence of fixed
directions would cause us to chose moving to the left. But since the
user knows that only the height of the window is changing, they would
find moving to the left weird (especially if this were a dialog that
had been centered on its parent). It'd be better to shove the window
upwards so we make sure to keep the left and right sides fixed in this
case. Note that moving the window upwards (or leftwards) is probably
totally against the gravity in this case; but that's okay because
gravity typically assumes there's more than enough onscreen space for
the resize and we only override the gravity when that assumption is
wrong.
For the paranoid, a fixed directions might give an impossible to fulfill
constraint (I don't think that's true currently in the code, but I haven't
thought it through in a while). If this ever becomes a problem, it should
be relatively simple to throw out the fixed directions when this happens
and rerun the constraint. Of course, it might be better to rethink things
to just avoid such a problem.
The nitty gritty of what gets fixed:
User move:
in x direction - y direction fixed
in y direction - x direction fixed
in both dirs. - neither direction fixed
User resize: (note that for clipping, only 1 side ever changed)
in x direction - y direction fixed (technically opposite x side fixed too)
in y direction - x direction fixed (technically opposite y side fixed too)
in both dirs. - neither direction fixed
App move:
in x direction - y direction fixed
in y direction - x direction fixed
in both dirs. - neither direction fixed
App resize
in x direction - y direction fixed
in y direction - x direction fixed
in 2 parallel directions (center side gravity) - other dir. fixed
in 2 orthogonal directions (corner gravity) - neither dir. fixed
in 3 or 4 directions (a center-like gravity) - neither dir. fixed
Move & resize
Treat like resize case though this will usually mean all four sides
change and result in neither direction being fixed
Note that in all cases, if neither direction moves it is likely do to a
change in struts and thus neither direction should be fixed despite the
lack of movement.

View File

@@ -1,3 +1,3 @@
man_MANS = metacity-theme-viewer.1 metacity-window-demo.1
man_MANS = metacity.1 metacity-theme-viewer.1 metacity-window-demo.1
EXTRA_DIST = $(man_MANS)

60
doc/man/metacity.1 Normal file
View File

@@ -0,0 +1,60 @@
.\" Hey, EMACS: -*- nroff -*-
.\" First parameter, NAME, should be all caps
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
.\" other parameters are allowed: see man(7), man(1)
.TH METACITY 1 "11 February 2006"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
.\" .nh disable hyphenation
.\" .hy enable hyphenation
.\" .ad l left justify
.\" .ad b justify to both left and right margins
.\" .nf disable filling
.\" .fi enable filling
.\" .br insert line break
.\" .sp <n> insert n+1 empty lines
.\" for manpage-specific macros, see man(7)
.SH NAME
METACITY \- minimal GTK2 Window Manager
.SH SYNOPSIS
.B metacity
[\-\-display=\fIDISPLAY\fP] [\-\-replace] [\-\-sm\-client\-id=\fIID\fP] [\-\-sm\-disable] [\-\-sm\-save\-file=\fIFILENAME\fP] [\-\-version] [\-\-help]
.SH DESCRIPTION
This manual page documents briefly
.B metacity\fP.
.PP
.\" TeX users may be more comfortable with the \fB<whatever>\fP and
.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
.\" respectively.
\fBmetacity\fP is a minimal X window manager aimed at nontechnical users and is designed to integrate well with the GNOME desktop. \fBmetacity\fP lacks some features that may be expected by traditional UNIX or other technical users; these users may want to investigate other available window managers for use with GNOME or standalone.
.SH OPTIONS
.TP
.B \-\-display=DISPLAY
Connect to X display \fIDISPLAY\fP.
.TP
.B \-\-replace
a window manager which is running is replaced by \fBmetacity\fP. Users are encouraged to change the GNOME window manager by running the new WM with the --replace or -replace option, and subsequently saving the session.
.TP
.B \-\-sm\-client\-id=ID
Specify a session management \fIID\fP.
.TP
.B \-\-sm\-disable
Disable the session management.
.TP
.B \-\-sm\-save\-file=FILENAME
Load a session from \fIFILENAME\fP.
.TP
.B \-\-version
Print the version number.
.TP
.B \-?, \-\-help
Show summary of options.
.SH CONFIGURATION
\fBmetacity\fP configuration can be found under \fIPreferences\fP->\fIWindows\fP and \fIPreferences\fP->\fIKeyboard Shortcuts\fP on the menu-panel. Advanced configuration can be achieved directly through gconf editing (gconf-editor or gconftool-2).
.SH SEE ALSO
.BR metacity-message (1)
.SH AUTHOR
The original manual page was written by Thom May <thom@debian.org>. It was updated by Akira TAGOH <tagoh@debian.org>
for the Debian GNU/Linux system (with permission to use by others), and then updated by Luke Morton and Philip O'Brien
for inclusion in metacity.

View File

@@ -0,0 +1,54 @@
How updates happen for struts, workareas, and screen/xinerama regions/edges:
One of three things causes meta_window_update_struts to be called
(a) initial window map (window.c:meta_window_new_with_attrs())
(b) update of _net_wm_strut* properties (window.c:process_property_notify())
(c) screen resizes (e.g. via xrandr; from screen.c:meta_screen_resize_func())
meta_window_update_struts (MetaWindow *window)
- Gets new list of struts from window properties
- Makes sure window doesn't single-handedly fill the screen
- records new struts if different and calls invalidate_work_areas()
invalidate_work_areas ()
- Calls meta_workspace_invalidate_work_area() for each workspace it's on
meta_workspace_invalidate_work_area()
- Cleans out all strut lists
- queues all windows for resizing
- Calls meta_screen_queue_workarea_recalc (workspace->screen);
meta_screen_queue_workarea_recalc()
- Adds set_work_area_idle_func() as an idle handler
set_work_area_idle_func()
- Calls set_work_area_hint()
set_work_area_hint()
- Calls meta_workspace_get_work_area_all_xineramas()
- Sets _NET_WORKAREA property
meta_workspace_get_work_area_all_xineramas()
- Calls ensure_work_areas_validated()
ensure_work_areas_validated()
- Loops over xineramas
- Loops over windows, then struts:
- Adds struts to list first time through xinerama loop
- Find the amount of the strut on the given xinerama for <dir>_strut
- Just max the amount of the strut with the all_<dir>_strut
- Makes sure there's a non-empty xinerama workarea
- Record the xinerama workarea
- Make sure there's a non-empty screen workarea
- Record the screen workarea
- Cache the spanning rects for the screen and xinerama regions
- Cache the screen and xinerama edges
Alternatively to all the above, if the idle function for the screen
has not yet fired, constraints.c:setup_constraint_info() can call
either workspace.c:meta_workspace_get_onscreen_region() or
workspace.c:meta_workspace_get_onxinerama_region() which in turn
call workspace.c:ensure_work_areas_validated().
Meaning of related functions that might be difficult to tell apart:
screen.c:meta_screen_get_current_xinerama ()
- Finds out which xinerama the mouse is on with an XQueryPointer
window.c:meta_window_get_work_area_current_xinerama()
window.c:meta_window_get_work_area_for_xinerama()
window.c:meta_window_get_work_area_all_xineramas ()
- All three are for finding the intersection of workareas across
multiple workspaces so that placement of windows can be
determined in such a way that they remain in the workarea for
all workspaces that they are on.

View File

@@ -1,3 +1,609 @@
2006-04-21 Theppitak Karoonboonyanan <thep@linux.thai.net>
* th.po: Updated Thai translation.
2006-04-20 Ankit Patel <ankit644@yahoo.com>
* gu.po: Updated Gujarati Translation.
2006-04-19 Ankit Patel <ankit644@yahoo.com>
* gu.po: Updated Gujarati Translation.
2006-04-17 Clytie Siddall <clytie@riverland.net.au>
* vi.po: Updated Vietnamese translation.
2006-04-17 Josep Puigdemont Casamajó <josep.puigdemont@gmail.com>
* ca.po: Updated Catalan translation.
2006-04-16 Funda Wang <fundawang@linux.net.cn>
* zh_CN.po: Updated Simplified Chinese translation.
2006-04-14 Francisco Javier F. Serrador <serrador@cvs.gnome.org>
* es.po: Updated Spanish translation.
2006-04-14 Raphael Higino <raphaelh@cvs.gnome.org>
* pt_BR.po: Updated Brazilian Portuguese translation.
2006-04-14 Åsmund Skjæveland <aasmunds@fys.uio.no>
* nn.po: Updated Norwegian Nynorsk translation.
2006-04-14 Ilkka Tuohela <hile@iki.fi>
* fi.po: Updated Finnish translation.
2006-04-14 Wouter Bolsterlee <uws+gnome@xs4all.nl>
* nl.po: Translation updated by Wouter Bolsterlee.
2006-04-14 Alexander Shopov <ash@contact.bg>
* bg.po: Updated Bulgarian translation by
Alexander Shopov <ash@contact.bg>
2006-04-09 Vincent van Adrighem <adrighem@gnome.org>
* nl.po: Translation updated by Michiel Sikkes.
2006-04-02 Kjartan Maraas <kmaraas@gnome.org>
* nb.po: Updated Norwegian bokmål translation.
* no.po: Same.
2006-03-24 Gora Mohanty <gmohanty@cvs.gnome.org>
* or.po: Updated Oriya translation.
2006-03-21 Priit Laes <amd@store20.com>
* et.po: Translation updated by Ivar Smolin.
2006-03-17 Priit Laes <amd@store20.com>
* et.po: Translation updated by Ivar Smolin.
2006-03-15 Žygimantas Beručka <zygis@gnome.org>
* lt.po: Updated Lithuanian translation.
2006-03-14 Mugurel Tudor <mugurelu@gnome.ro>
* ro.po: Updated Romanian translation
2006-03-14 Miloslav Trmac <mitr@volny.cz>
* cs.po: Updated Czech translation.
2006-03-13 Jordi Mallach <jordi@sindominio.net>
* ca.po: Updated Catalan translation.
2006-03-13 Vincent van Adrighem <adrighem@gnome.org>
* nl.po: Translation updated by Tino Meinen.
2006-03-13 Danilo Šegan <danilo@gnome.org>
* sr.po, sr@Latn.po: Updated Serbian translation.
2006-03-13 Alexander Shopov <ash@contact.bg>
* bg.po: Updated Bulgarian translation by
Alexander Shopov <ash@contact.bg>
2006-03-13 Laurent Dhima <laurenti@alblinux.net>
* sq.po: Updated Albanian translation.
2006-03-13 Francisco Javier F. Serrador <serrador@cvs.gnome.org>
* es.po: Updated Spanish translation.
2006-03-13 Maxim Dziumanenko <mvd@mylinux.ua>
* uk.po: Updated Ukrainian translation.
2006-03-13 Rajesh Ranjan <rranjan@redhat.com>
* hi.po: Updated Hindi Translation.
2006-03-13 Theppitak Karoonboonyanan <thep@linux.thai.net>
* th.po: Updated Thai translation (merged from gnome-2-14 branch).
2006-03-13 Satoru SATOH <ss@gnome.gr.jp>
* ja.po: Updated Japanese translation.
2006-03-13 Duarte Loreto <happyguy_pt@hotmail.com>
* pt.po: Updated Portuguese translation.
2006-03-12 Guilherme de S. Pastore <gpastore@gnome.org>
* pt_BR.po: Updated Brazilian Portuguese translation.
2006-03-13 Frank Arnold <farnold@cvs.gnome.org>
* de.po: Updated German translation.
2006-03-13 Daniel Nylander <po@danielnylander.se>
* sv.po: Updated Swedish translation.
2006-03-12 Ignacio Casal Quinteiro <nacho.resa@gmail.com>
* gl.po: Updated Galician Translation.
2006-03-12 Raphael Higino <raphaelh@cvs.gnome.org>
* pt_BR.po: Updated Brazilian Portuguese translation.
2006-03-12 Priit Laes <amd@store20.com>
* et.po: Translation updated by Ivar Smolin.
2006-03-12 Miloslav Trmac <mitr@volny.cz>
* cs.po: Updated Czech translation by Petr Tomeš.
2006-03-12 Roozbeh Pournader <roozbeh@farsiweb.info>
* fa.po: Updated Persian translation by Meelad Zakaria,
Elnaz Sarbar, and Farzaneh Sarafraz.
2006-03-09 Hendrik Richter <hendrikr@gnome.org>
* de.po: Updated German translation.
2006-03-09 Laurent Dhima <laurenti@alblinux.net>
* sq.po: Updated Albanian translation.
2006-03-08 Laurent Dhima <laurenti@alblinux.net>
* sq.po: Updated Albanian translation.
2006-03-08 Gabor Kelemen <kelemeng@gnome.hu>
* hu.po: Hungarian translation updated.
2006-03-06 Funda Wang <fundawang@linux.net.cn>
* zh_CN.po: Updated Simplified Chinese translation.
2006-03-06 Daniel Nylander <po@danielnylander.se>
* sv.po: Updated Swedish translation
2006-03-05 Mugurel Tudor <mugurelu@gnome.ro>
* ro.po: Updated Romanian translation
2006-03-05 Alexander Shopov <ash@contact.bg>
* bg.po: Updated Bulgarian translation by
Alexander Shopov <ash@contact.bg>
2006-03-04 Hendrik Richter <hendrikr@gnome.org>
* de.po: Updated German translation.
2006-03-03 Maxim Dziumanenko <mvd@mylinux.ua>
* uk.po: Updated Ukrainian translation.
2006-03-02 Hendrik Richter <hendrikr@gnome.org>
* de.po: Updated German translation.
2006-03-02 Hendrik Richter <hendrikr@gnome.org>
* de.po: Updated German translation.
2006-03-02 Rhys Jones <rhys@sucs.org>
* cy.po: Updated Welsh translation.
2006-03-01 Leonid Kanter <leon@asplinux.ru>
* ru.po: Updated Russian translation
2006-03-01 Josep Puigdemont i Casamajó <josep.puigdemont@gmail.com>
* ca.po: Updated Catalan translation.
2006-02-27 Leonid Kanter <leon@asplinux.ru>
* ru.po: Updated Russian translation
2006-02-27 Lasse Bang Mikkelsen <lbm@fatalerror.dk>
* da.po: Updated Danish translation.
2006-02-25 Miloslav Trmac <mitr@volny.cz>
* cs.po: Updated Czech translation.
2006-02-23 Inaki Larranaga <dooteo@euskalgnu.org>
* eu.po: Updated Basque translation.
2006-02-23 Clytie Siddall <clytie@riverland.net.au>
* ka.po: Added Georgian translation by Alexander Didebulidze <didebuli@in.tum.de>.
2006-02-23 Duarte Loreto <happyguy_pt@hotmail.com>
* pt.po: Updated Portuguese translation.
2006-02-23 Žygimantas Beručka <zygis@gnome.org>
* lt.po: Updated Lithuanian translation.
2006-02-21 Vincent van Adrighem <adrighem@gnome.org>
* nl.po: Translation updated by Tino Meinen.
2006-02-21 Clytie Siddall <clytie@riverland.net.au>
* vi.po: Updated Vietnamese translation.
2006-02-21 Slobodan D. Sredojevic <slobo@akrep.be>
* sr.po, sr@Latn.po: Updated Serbian translation
2006-02-21 Ignacio Casal Quinteiro <nacho.resa@gmail.com>
* gl.po: Updated Galician Translation.
2006-02-01 Ankit Patel <ankit644@yahoo.com>
* gu.po: Updated Gujarati Translation.
2006-02-20 Kostas Papadimas <pkst@gnome.org>
* el.po: Updated Greek translation.
2006-02-20 Ilkka Tuohela <hile@iki.fi>
* fi.po: Updated Finnish translation.
2006-02-18 Takeshi AIHANA <takeshi.aihana@gmail.com>
* ja.po: Updated Japanese translation.
2006-02-18 Francisco Javier F. Serrador <serrador@cvs.gnome.org>
* es.po: Updated Spanish translation.
2006-02-18 Kjartan Maraas <kmaraas@gnome.org>
* nb.po: Updated Norwegian bokmål translation.
* no.po: Same.
2006-02-13 Miloslav Trmac <mitr@volny.cz>
* cs.po: Updated Czech translation.
2006-02-06 Funda Wang <fundawang@linux.net.cn>
* zh_CN.po: Updated Simplified Chinese translation.
2006-02-03 Kjartan Maraas <kmaraas@gnome.org>
* nb.po: Updated Norwegian bokmål translation.
* no.po: Same.
2006-01-31 Vincent van Adrighem <adrighem@gnome.org>
* nl.po: Translation updated by Tino Meinen.
2006-01-31 Slobodan D. Sredojevic <slobo@akrep.be>
* sr.po, sr@Latn.po: Updated Serbian translation
2006-01-28 Theppitak Karoonboonyanan <thep@linux.thai.net>
* th.po: Updated Thai translation.
2006-01-27 Josep Puigdemont i Casamajó <josep.puigdemont@gmail.com>
* ca.po: Updated Catalan translation.
2006-01-26 Adam Weinberger <adamw@gnome.org>
* en_CA.po: Updated Canadian English translation.
2006-01-26 Evandro Fernandes Giovanini <evandrofg@ig.com.br>
* pt_BR.po: Updated Brazilian Portuguese translation.
2006-01-24 Ignacio Casal Quinteiro <nacho.resa@gmail.com>
* gl.po: Updated Galician Translation.
2006-01-23 Ankit Patel <ankit644@yahoo.com>
* gu.po: Updated Gujarati Translation.
2006-01-23 Funda Wang <fundawang@linux.net.cn>
* zh_CN.po: Updated Simplified Chinese translation.
2006-01-22 Kjartan Maraas <kmaraas@gnome.org>
* nb.po: Updated Norwegian bokmål translation.
* no.po: Same.
2006-01-21 Ilkka Tuohela <hile@iki.fi>
* fi.po: Updated Finnish translation.
2006-01-22 Clytie Siddall <clytie@riverland.net.au>
* vi.po: Updated Vietnamese translation.
2006-01-21 Ilkka Tuohela <hile@iki.fi>
* fi.po: Updated Finnish translation.
2006-01-21 Francisco Javier F. Serrador <serrador@cvs.gnome.org>
* es.po: Updated Spanish tranlation.
2006-01-21 Ignacio Casal Quinteiro <nacho.resa@gmail.com>
* gl.po: Updated Galician Translation.
2006-01-20 Vincent van Adrighem <adrighem@gnome.org>
* nl.po: Translation updated by Tino Meinen.
2006-01-18 Funda Wang <fundawang@linux.net.cn>
* zh_CN.po: Updated Simplified Chinese translation.
2006-01-17 Ignacio Casal Quinteiro <nacho.resa@gmail.com>
* gl.po: Updated Galician Translation.
2006-01-16 Ilkka Tuohela <hile@iki.fi>
* fi.po: Updated Finnish translation.
2006-01-15 Francisco Javier F. Serrador <serrador@cvs.gnome.org>
* es.po: Updated Spanish translation.
2006-01-15 Takeshi AIHANA <takeshi.aihana@gmail.com>
* ja.po: Updated Japanese translation.
2006-01-11 Adam Weinberger <adamw@gnome.org>
* en_CA.po: Updated Canadian English translation.
2006-01-11 Theppitak Karoonboonyanan <thep@linux.thai.net>
* th.po: Updated Thai translation.
2006-01-11 Ankit Patel <ankit644@yahoo.com>
* gu.po: Updated Gujarati Translation.
2006-01-11 Clytie Siddall <clytie@riverland.net.au>
* vi.po: Updated Vietnamese translation.
2005-12-30 Clytie Siddall <clytie@riverland.net.au>
* vi.po: Updated Vietnamese translation.
2006-01-06 Kjartan Maraas <kmaraas@gnome.org>
* nb.po: Updated Norwegian bokmål translation.
* no.po: Same
2005-12-31 Ilkka Tuohela <hile@iki.fi>
* fi.po: Updated Finnish translation.
2005-12-25 Kang Jeong-Hee <Keizi@mail.co.kr>
* ko.po: Updated Korean translation.
2005-12-11 Miloslav Trmac <mitr@volny.cz>
* cs.po: Updated Czech translation.
2005-12-11 Ankit Patel <ankit644@yahoo.com>
* gu.po: Updated Gujarati Translation.
2005-12-03 Adam Weinberger <adamw@gnome.org>
* en_CA.po: Updated Canadian English translation.
2005-12-03 Kjartan Maraas <kmaraas@gnome.org>
* nb.po: Updated Norwegian bokmål translation.
* no.po: Same
2005-11-22 Marcel Telka <marcel@telka.sk>
* sk.po: Updated Slovak translation.
2005-11-22 Alexander Shopov <ash@contact.bg>
* bg.po: Updated Bulgarian translation by
Alexander Shopov <ash@contact.bg>
2005-11-22 Theppitak Karoonboonyanan <thep@linux.thai.net>
* th.po: Updated Thai translation.
2005-11-21 Francisco Javier F. Serrador <serrador@cvs.gnome.org>
* es.po: Updated Spanish translation.
2005-11-20 Francisco Javier F. Serrador <serrador@cvs.gnome.org>
* es.po: Updated Spanish translation.
2005-11-20 Ignacio Casal Quinteiro <nacho.resa@gmail.com>
* gl.po: Updated Galician Translation.
2005-11-20 Takeshi AIHANA <aihana@gnome.gr.jp>
* ja.po: Updated Japanese translation.
2005-11-17 Vincent van Adrighem <adrighem@gnome.org>
* nl.po: Translation updated by Wouter Bolsterlee.
2005-11-13 Theppitak Karoonboonyanan <thep@linux.thai.net>
* th.po: Updated Thai translation.
2005-11-03 Miloslav Trmac <mitr@volny.cz>
* cs.po: Updated Czech translation.
2005-10-28 Francisco Javier F. Serrador <serrador@cvs.gnome.org>
* es.po: Updated Spanish translation.
2005-10-28 Takeshi AIHANA <aihana@gnome.gr.jp>
* ja.po: Updated Japanese translation.
2005-10-27 Erdal Ronahi <erdal.ronahi@gmail.com>
* ku.po: Added Kurdish translation.
2005-10-17 Marcel Telka <marcel@telka.sk>
* sk.po: Updated Slovak translation.
2005-10-15 Vincent van Adrighem <adrighem@gnome.org>
* nl.po: Translation updated.
2005-10-14 Vincent van Adrighem <adrighem@gnome.org>
* nl.po: Translation updated.
2005-10-14 Kostas Papadimas <pkst@gnome.org>
* el.po: Updated Greek translation.
2005-10-10 Priit Laes <plaes@cvs.gnome.org>
* et.po: Translation updated by Ivar Smolin.
2005-10-04 Alexander Shopov <ash@contact.bg>
* bg.po: Updated Bulgarian translation by
Alexander Shopov <ash@contact.bg>
2005-10-04 Funda Wang <fundawang@linux.net.cn>
* zh_CN.po: Updated Simplified Chinese translation.
2005-10-04 Adam Weinberger <adamw@gnome.org>
* en_CA.po: Updated Canadian English translation.
2005-10-03 Runa Bhattacharjee <runa@bengalinux.org>
* bn.po: Updated Bengali Translation by Mahay Alam Khan <makl10n@yahoo.com>
2005-10-02 Christian Rose <menthos@menthos.com>
* sv.po: Reverted unauthorized changes made by
user 'kloczek'.
2005-09-26 Alessio Frusciante <algol@firenze.linux.it>
* it.po: Updated Italian translation by
Luca Ferretti <elle.uca@infinito.it>.
2005-09-24 Funda Wang <fundawang@linux.net.cn>
* zh_CN.po: Updated Simplified Chinese translation.
2005-09-21 Francisco Javier F. Serrador <serrador@cvs.gnome.org>
* es.po: Updated Spanish translation.
2005-09-20 Christian Rose <menthos@menthos.com>
* sv.po: Updated Swedish translation.
2005-09-16 Clytie Siddall <clytie@riverland.net.au>
* vi.po: Updated Vietnamese translation.
2005-09-08 Inaki Larranaga <dooteo@euskalgnu.org>
* eu.po: Updated Basque translation.
2005-09-07 Priit Laes <plaes@cvs.gnome.org>
* et.po: Translation updated by Ivar Smolin.
2005-09-04 Danilo Šegan <danilo@gnome.org>
* hy.po: Added Armenian translation by Norayr Chilingaryan
<asprayama@yahoo.com>.
2005-09-04 Ignacio Casal Quinteiro <nacho.resa@gmail.com>
* gl.po: Updated Galician Translation.
2005-09-03 Danilo Šegan <danilo@gnome.org>
* sr.po, sr@Latn.po: Updated.
2005-09-02 Leonid Kanter <leon@asplinux.ru>
* ru.po: Updated Russian translation
2005-09-01 Baris Cicek <baris@teamforce.name.tr>
* tr.po: Updated Turkish Translation
2005-08-31 Žygimantas Beručka <zygis@gnome.org>
* lt.po: Updated Lithuanian translation.
2005-08-30 Hendrik Richter <hendi@gnome-de.org>
* de.po: Updated German translation.
2005-08-30 Changwoo Ryu <cwryu@debian.org>
* ko.po: Updated Korean translation by Young-Ho Cha.
2005-08-29 Telsa Gwynne <hobbit@aloss.ukuu.org.uk>
* cy.po: Updated Welsh translation.
2005-08-28 Christophe Merlet <redfox@redfoxcenter.org>
* fr.po: Updated French translation.
2005-08-25 Vincent van Adrighem <adrighem@gnome.org>
* nl.po: Translation updated by Michiel Sikkes.
2005-08-20 Josep Puigdemont i Casamajó <josep.puigdemont@gmail.com>
* ca.po: Updated Catalan translation.
@@ -130,7 +736,7 @@
2005-07-08 Clytie Siddall <clytie@riverland.net.au>
* vi.po: Updated Vietnamese translation.
* vi.po: Updated Vietnamese translation.
2004-07-06 Christian Rose <menthos@menthos.com>
@@ -163,7 +769,7 @@
* el.po: Updated Greek translation.
2005-05-11 Kostas Papadimas <pkst@gnome.org>
* el.po: Updated Greek Translation.
2005-05-10 Adi Attar <aattar@cvs.gnome.org>
@@ -201,7 +807,7 @@
2005-03-31 Steve Murphy <murf@e-tools.com>
* rw.po: Added Kinyarwanda translation.
* rw.po: Added Kinyarwanda translation.
2005-03-29 Adi Attar <aattar@cvs.gnome.org>

71
po/LINGUAS Normal file
View File

@@ -0,0 +1,71 @@
# please keep this list sorted alphabetically
#
am
ar
az
be
bg
bn
bs
ca
cs
cy
da
de
el
en_CA
en_GB
es
et
eu
fa
fi
fr
ga
gl
gu
he
hi
hr
hu
hy
id
is
it
ja
ko
ku
lt
lv
mk
ml
mn
ms
nb
ne
nl
nn
or
pa
pl
pt
pt_BR
ro
ru
rw
sl
sk
sq
sr
sr@Latn
sv
ta
th
tk
tr
uk
vi
wa
xh
zh_CN
zh_TW

1044
po/am.po

File diff suppressed because it is too large Load Diff

1052
po/ar.po

File diff suppressed because it is too large Load Diff

1052
po/az.po

File diff suppressed because it is too large Load Diff

1077
po/be.po

File diff suppressed because it is too large Load Diff

945
po/bg.po

File diff suppressed because it is too large Load Diff

1910
po/bn.po

File diff suppressed because it is too large Load Diff

1052
po/bs.po

File diff suppressed because it is too large Load Diff

1076
po/ca.po

File diff suppressed because it is too large Load Diff

949
po/cs.po

File diff suppressed because it is too large Load Diff

1948
po/cy.po

File diff suppressed because it is too large Load Diff

1177
po/da.po

File diff suppressed because it is too large Load Diff

1158
po/de.po

File diff suppressed because it is too large Load Diff

2296
po/dz.po Normal file

File diff suppressed because it is too large Load Diff

836
po/el.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1737
po/es.po

File diff suppressed because it is too large Load Diff

1782
po/et.po

File diff suppressed because it is too large Load Diff

1282
po/eu.po

File diff suppressed because it is too large Load Diff

1156
po/fa.po

File diff suppressed because it is too large Load Diff

970
po/fi.po

File diff suppressed because it is too large Load Diff

1030
po/fr.po

File diff suppressed because it is too large Load Diff

1038
po/ga.po

File diff suppressed because it is too large Load Diff

833
po/gl.po

File diff suppressed because it is too large Load Diff

1219
po/gu.po

File diff suppressed because it is too large Load Diff

View File

@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: metacity.HEAD.he\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2005-07-30 15:39+0000\n"
"POT-Creation-Date: 2005-09-19 12:30+0200\n"
"PO-Revision-Date: 2005-07-31 01:18+0300\n"
"Last-Translator: Yuval Tanny\n"
"Language-Team: Hebrew <he@li.org>\n"
@@ -51,7 +51,8 @@ msgstr "שגיאה בקריאה מתהליך הצגת תיבת דו-שיח: %s\n
#: ../src/delete.c:344
#, c-format
msgid "Error launching metacity-dialog to ask about killing an application: %s\n"
msgid ""
"Error launching metacity-dialog to ask about killing an application: %s\n"
msgstr "שגיאה בהפעלת תיבת דו-שיח של מטאסיטי השואלת אם להרוג יישום: %s\n"
#: ../src/delete.c:452
@@ -107,17 +108,17 @@ msgid ""
"binding\n"
msgstr "תוכנית אחרת כבר משתמשת במקש %s עם המקש %x כצירוף\n"
#: ../src/keybindings.c:2535
#: ../src/keybindings.c:2620
#, c-format
msgid "Error launching metacity-dialog to print an error about a command: %s\n"
msgstr "שגיאה בהפעלת תיבת דו-שיח של מטאסיטי כדי להדפיס שגיאה על הפקודה: %s\n"
#: ../src/keybindings.c:2640
#: ../src/keybindings.c:2725
#, c-format
msgid "No command %d has been defined.\n"
msgstr "אף פקודה %d לא הוגדרה.\n"
#: ../src/keybindings.c:3485
#: ../src/keybindings.c:3570
msgid "No terminal command has been defined.\n"
msgstr "אף פקודת מסוף לא הוגדרה.\n"
@@ -166,7 +167,8 @@ msgstr "נכשל בטעינת ערכת נושא \"%s\": %s\n"
#: ../src/main.c:456
#, c-format
msgid "Could not find a theme! Be sure %s exists and contains the usual themes."
msgid ""
"Could not find a theme! Be sure %s exists and contains the usual themes."
msgstr "לא ניתן למצוא ערכת נושא! ודא כי %s קיים ומכיל את ערכות הנושא הרגילות."
#: ../src/main.c:518
@@ -350,7 +352,8 @@ msgid "The window \"%s\" is not responding."
msgstr "החלון \"%s\" אינו מגיב"
#: ../src/metacity-dialog.c:118
msgid "Forcing this application to quit will cause you to lose any unsaved changes."
msgid ""
"Forcing this application to quit will cause you to lose any unsaved changes."
msgstr "להכריח את ישום זה לסיים יגרום לאיבוד שינויים שלא נשמרו"
#: ../src/metacity-dialog.c:129
@@ -369,7 +372,9 @@ msgstr "מחלקה"
msgid ""
"These windows do not support \"save current setup\" and will have to be "
"restarted manually next time you log in."
msgstr "חלון זה אינו תומך ב\"שמירת ההגדרות הנוכחיות\", ויהיה צורך באתחול ידני בכניסה הבאה שלך."
msgstr ""
"חלון זה אינו תומך ב\"שמירת ההגדרות הנוכחיות\", ויהיה צורך באתחול ידני בכניסה "
"הבאה שלך."
#: ../src/metacity-dialog.c:330
#, c-format
@@ -1575,7 +1580,8 @@ msgstr ""
#: ../src/screen.c:448
#, c-format
msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
msgid ""
"Could not acquire window manager selection on screen %d display \"%s\"\n"
msgstr ""
#: ../src/screen.c:506
@@ -1714,16 +1720,12 @@ msgid ""
msgstr ""
#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
#, c-format
msgid "No \"%s\" attribute on element <%s>"
msgstr ""
#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
#, c-format
msgid "No \"%s\" attribute on <%s> element"
msgstr ""
@@ -1808,7 +1810,8 @@ msgstr ""
#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
#: ../src/theme-parser.c:1393
msgid "Cannot specify both button_width/button_height and aspect ratio for buttons"
msgid ""
"Cannot specify both button_width/button_height and aspect ratio for buttons"
msgstr ""
#: ../src/theme-parser.c:1343
@@ -2110,7 +2113,8 @@ msgstr ""
#: ../src/theme-parser.c:3679
#, c-format
msgid "Element <%s> is not allowed inside a name/author/date/description element"
msgid ""
"Element <%s> is not allowed inside a name/author/date/description element"
msgstr ""
#: ../src/theme-parser.c:3684
@@ -2120,7 +2124,8 @@ msgstr ""
#: ../src/theme-parser.c:3696
#, c-format
msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
msgid ""
"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
msgstr ""
#: ../src/theme-parser.c:3718
@@ -2457,7 +2462,8 @@ msgstr ""
#: ../src/theme.c:1105
#, c-format
msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
msgid ""
"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
msgstr ""
#: ../src/theme.c:1116
@@ -2508,12 +2514,14 @@ msgid "Coordinate expression results in division by zero"
msgstr ""
#: ../src/theme.c:1777
msgid "Coordinate expression tries to use mod operator on a floating-point number"
msgid ""
"Coordinate expression tries to use mod operator on a floating-point number"
msgstr ""
#: ../src/theme.c:1834
#, c-format
msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
msgid ""
"Coordinate expression has an operator \"%s\" where an operand was expected"
msgstr ""
#: ../src/theme.c:1843
@@ -2570,8 +2578,10 @@ msgstr ""
#: ../src/theme.c:4363 ../src/theme.c:4395
#, c-format
msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
msgstr "חסר <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
msgid ""
"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
msgstr ""
"חסר <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
#: ../src/theme.c:4446
#, c-format
@@ -2602,7 +2612,8 @@ msgstr ""
#: ../src/theme.c:5041 ../src/theme.c:5103
#, c-format
msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
msgid ""
"User-defined constants must begin with a capital letter; \"%s\" does not"
msgstr "קבועים מותאמים-אישית חייבים להתחיל באות גדולה; \"%s\" לא"
#: ../src/theme.c:5049 ../src/theme.c:5111
@@ -2685,6 +2696,6 @@ msgstr "המאפיין %s של החלון 0x%lx מכיל UTF-8 לא תקני\n"
#: ../src/xprops.c:482
#, c-format
msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
msgid ""
"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
msgstr "המאפיין %s של החלון 0x%lx מכיל UTF-8 לא תקני לפריט %d ברשימה\n"

776
po/hi.po

File diff suppressed because it is too large Load Diff

1059
po/hr.po

File diff suppressed because it is too large Load Diff

775
po/hu.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

209
po/id.po
View File

@@ -8,13 +8,13 @@ msgid ""
msgstr ""
"Project-Id-Version: metacity HEAD\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2005-08-14 09:55+0300\n"
"POT-Creation-Date: 2005-09-19 12:30+0200\n"
"PO-Revision-Date: 2005-08-14 10:27+0300\n"
"Last-Translator: Mohammad DAMT <mdamt@bisnisweb.com>\n"
"Language-Team: Indonesian <sukarelawan@gnome.linux.or.id>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit"
"Content-Transfer-Encoding: 8bit\n"
#: ../src/tools/metacity-message.c:150
#, c-format
@@ -135,9 +135,10 @@ msgid ""
msgstr ""
"metacity %s\n"
"Hak Cipta (C) 2001-2002 Havoc Pennington, Red Hat, Inc., dan lain-lain.\n"
"Ini adalah perangkat lunak bebas, silakan lihat kode asalnya untuk keterangan distribusi.\n"
"TIDAK ADA jaminan, bahkan untuk KELAYAKAN JUAL atau KELAYAKAN UNTUK KEGUNAAN TERTENTU.\n"
""
"Ini adalah perangkat lunak bebas, silakan lihat kode asalnya untuk "
"keterangan distribusi.\n"
"TIDAK ADA jaminan, bahkan untuk KELAYAKAN JUAL atau KELAYAKAN UNTUK KEGUNAAN "
"TERTENTU.\n"
#: ../src/main.c:257
msgid "Disable connection to session manager"
@@ -527,9 +528,9 @@ msgstr ""
"Pilih jika ingin metacity memberi reaksi yang lebih sedikit dan melakukan "
"manipulasi langsung dengan menggunakan bingkai kawat, tidak menjalankan "
"animasi, dan sebagainya. Ini berarti akan kurang berdaya guna menurut "
"sebagian pemakai, tapi cukup baik pada kondisi-kondisi tertentu, misalnya aplikasi "
"pada server terminal. Betapapun, fitur bingkai kawat akan dimatikan saat kemudahan "
"akses dinyalakan."
"sebagian pemakai, tapi cukup baik pada kondisi-kondisi tertentu, misalnya "
"aplikasi pada server terminal. Betapapun, fitur bingkai kawat akan dimatikan "
"saat kemudahan akses dinyalakan."
#: ../src/metacity.schemas.in.h:20
msgid ""
@@ -943,13 +944,13 @@ msgid ""
"set the option to the special string \"disabled\", then there will be no "
"keybinding for this action."
msgstr ""
"Kombinasi tombol untuk mengganti area kerja ke area kerja yang ada di sebelah "
"kiri area kerja aktif saat ini. Format penulisannya seperti \"&lt;Control&gt;a"
"\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. Program pendeteksi kombinasi tombol "
"ini sangat fleksibel dan memperbolehkan digunakannya huruf besar dan huruf "
"kecil, juga memperbolehkan digunakannya singkata seperti \"&lt;Ctl&gt;\" "
"atau \"&lt;Ctrl&gt;\". Dan apabila Anda menuliskan kata \"disabled\" maka "
"perintah ini tidak memiliki kombinasi tombol."
"Kombinasi tombol untuk mengganti area kerja ke area kerja yang ada di "
"sebelah kiri area kerja aktif saat ini. Format penulisannya seperti \"&lt;"
"Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. Program pendeteksi "
"kombinasi tombol ini sangat fleksibel dan memperbolehkan digunakannya huruf "
"besar dan huruf kecil, juga memperbolehkan digunakannya singkata seperti "
"\"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda menuliskan kata "
"\"disabled\" maka perintah ini tidak memiliki kombinasi tombol."
#: ../src/metacity.schemas.in.h:91
msgid ""
@@ -960,13 +961,13 @@ msgid ""
"set the option to the special string \"disabled\", then there will be no "
"keybinding for this action."
msgstr ""
"Kombinasi tombol untuk mengganti area kerja ke area kerja yang ada di sebelah "
"kanan area kerja aktif saat ini. Format penulisannya seperti \"&lt;Control&gt;"
"a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. Program pendeteksi kombinasi tombol "
"ini sangat fleksibel dan memperbolehkan digunakannya huruf besar dan huruf "
"kecil, juga memperbolehkan digunakannya singkata seperti \"&lt;Ctl&gt;\" "
"atau \"&lt;Ctrl&gt;\". Dan apabila Anda menuliskan kata \"disabled\" maka "
"perintah ini tidak memiliki kombinasi tombol."
"Kombinasi tombol untuk mengganti area kerja ke area kerja yang ada di "
"sebelah kanan area kerja aktif saat ini. Format penulisannya seperti \"&lt;"
"Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. Program pendeteksi "
"kombinasi tombol ini sangat fleksibel dan memperbolehkan digunakannya huruf "
"besar dan huruf kecil, juga memperbolehkan digunakannya singkata seperti "
"\"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda menuliskan kata "
"\"disabled\" maka perintah ini tidak memiliki kombinasi tombol."
#: ../src/metacity.schemas.in.h:92
msgid ""
@@ -1168,12 +1169,13 @@ msgid ""
"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
"\"disabled\", then there will be no keybinding for this action."
msgstr ""
"Kombinasi tombol untuk mengaktifkan menu jendela. Format penulisannya seperti "
"\"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. Program pendeteksi "
"kombinasi tombol ini sangat fleksibel dan memperbolehkan digunakannya huruf "
"besar dan huruf kecil, juga memperbolehkan digunakannya singkata seperti "
"\"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda menuliskan kata "
"\"disabled\" maka perintah ini tidak memiliki kombinasi tombol."
"Kombinasi tombol untuk mengaktifkan menu jendela. Format penulisannya "
"seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. Program "
"pendeteksi kombinasi tombol ini sangat fleksibel dan memperbolehkan "
"digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya "
"singkata seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda "
"menuliskan kata \"disabled\" maka perintah ini tidak memiliki kombinasi "
"tombol."
#: ../src/metacity.schemas.in.h:105
msgid ""
@@ -1302,13 +1304,13 @@ msgid ""
"option to the special string \"disabled\", then there will be no keybinding "
"for this action."
msgstr ""
"Kombinasi tombol untuk memindahkan jendela ke area kerja sebelah kiri. Format "
"penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. "
"Program pendeteksi kombinasi tombol ini sangat fleksibel dan memperbolehkan "
"digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya "
"singkata seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda "
"menuliskan kata \"disabled\" maka perintah ini tidak memiliki kombinasi "
"tombol."
"Kombinasi tombol untuk memindahkan jendela ke area kerja sebelah kiri. "
"Format penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;"
"Alt&gt;F1. Program pendeteksi kombinasi tombol ini sangat fleksibel dan "
"memperbolehkan digunakannya huruf besar dan huruf kecil, juga memperbolehkan "
"digunakannya singkata seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan "
"apabila Anda menuliskan kata \"disabled\" maka perintah ini tidak memiliki "
"kombinasi tombol."
#: ../src/metacity.schemas.in.h:113
msgid ""
@@ -1319,13 +1321,13 @@ msgid ""
"option to the special string \"disabled\", then there will be no keybinding "
"for this action."
msgstr ""
"Kombinasi tombol untuk memindahkan jendela ke area kerja sebelah kanan. Format "
"penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. "
"Program pendeteksi kombinasi tombol ini sangat fleksibel dan memperbolehkan "
"digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya "
"singkata seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda "
"menuliskan kata \"disabled\" maka perintah ini tidak memiliki kombinasi "
"tombol."
"Kombinasi tombol untuk memindahkan jendela ke area kerja sebelah kanan. "
"Format penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;"
"Alt&gt;F1. Program pendeteksi kombinasi tombol ini sangat fleksibel dan "
"memperbolehkan digunakannya huruf besar dan huruf kecil, juga memperbolehkan "
"digunakannya singkata seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan "
"apabila Anda menuliskan kata \"disabled\" maka perintah ini tidak memiliki "
"kombinasi tombol."
#: ../src/metacity.schemas.in.h:114
msgid ""
@@ -1335,13 +1337,13 @@ msgid ""
"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
"\"disabled\", then there will be no keybinding for this action."
msgstr ""
"Kombinasi tombol untuk memindahkan jendela ke area kerja sebelah atas. Format "
"penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. "
"Program pendeteksi kombinasi tombol ini sangat fleksibel dan memperbolehkan "
"digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya "
"singkata seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda "
"menuliskan kata \"disabled\" maka perintah ini tidak memiliki kombinasi "
"tombol."
"Kombinasi tombol untuk memindahkan jendela ke area kerja sebelah atas. "
"Format penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;"
"Alt&gt;F1. Program pendeteksi kombinasi tombol ini sangat fleksibel dan "
"memperbolehkan digunakannya huruf besar dan huruf kecil, juga memperbolehkan "
"digunakannya singkata seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan "
"apabila Anda menuliskan kata \"disabled\" maka perintah ini tidak memiliki "
"kombinasi tombol."
#: ../src/metacity.schemas.in.h:115
msgid ""
@@ -1580,8 +1582,8 @@ msgid ""
"no keybinding for this action."
msgstr ""
"Kombinasi tombol untuk memindahkan fokus ke belakang antara jendela tanpa "
"menampilkan jendela popup. Dengan menekan \"shit\" bersamaan dengan kombinasi "
"tombol ini akan membuat arah fokus maju kembali ke depan. Format "
"menampilkan jendela popup. Dengan menekan \"shit\" bersamaan dengan "
"kombinasi tombol ini akan membuat arah fokus maju kembali ke depan. Format "
"penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. "
"Program pendeteksi kombinasi tombol ini sangat fleksibel dan memperbolehkan "
"digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya "
@@ -1600,8 +1602,8 @@ msgid ""
"no keybinding for this action."
msgstr ""
"Kombinasi tombol untuk memindahkan fokus ke belakang antara jendela dengan "
"menampilkan jendela popup. Dengan menekan \"shit\" bersamaan dengan kombinasi "
"tombol ini akan membuat arah fokus maju kembali ke depan. Format "
"menampilkan jendela popup. Dengan menekan \"shit\" bersamaan dengan "
"kombinasi tombol ini akan membuat arah fokus maju kembali ke depan. Format "
"penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. "
"Program pendeteksi kombinasi tombol ini sangat fleksibel dan memperbolehkan "
"digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya "
@@ -1693,13 +1695,13 @@ msgid ""
"\"disabled\", then there will be no keybinding for this action."
msgstr ""
"Kombinasi tombol untuk togel apakah jendela diletakkan selalu di atas atau "
"tidak. Jendela yang selalu di atas akan selalu tampak walaupun ada banyak jendela terbuka."
" Format penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;"
"&lt;Alt&gt;F1. Program pendeteksi kombinasi tombol ini sangat fleksibel dan "
"memperbolehkan digunakannya huruf besar dan huruf kecil, juga memperbolehkan "
"digunakannya singkatan seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan "
"apabila Anda menuliskan kata \"disabled\" maka perintah ini tidak memiliki "
"kombinasi tombol."
"tidak. Jendela yang selalu di atas akan selalu tampak walaupun ada banyak "
"jendela terbuka. Format penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;"
"Shift&gt;&lt;Alt&gt;F1. Program pendeteksi kombinasi tombol ini sangat "
"fleksibel dan memperbolehkan digunakannya huruf besar dan huruf kecil, juga "
"memperbolehkan digunakannya singkatan seperti \"&lt;Ctl&gt;\" atau \"&lt;"
"Ctrl&gt;\". Dan apabila Anda menuliskan kata \"disabled\" maka perintah ini "
"tidak memiliki kombinasi tombol."
#: ../src/metacity.schemas.in.h:136
msgid ""
@@ -1806,13 +1808,12 @@ msgid ""
"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
"\"disabled\", then there will be no keybinding for this action."
msgstr ""
"Kombinasi tombol untuk menjalankan terminal. Format penulisannya "
"seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. Program "
"pendeteksi kombinasi tombol ini sangat fleksibel dan memperbolehkan "
"digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya "
"singkata seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda "
"menuliskan kata \"disabled\" maka perintah ini tidak memiliki kombinasi "
"tombol."
"Kombinasi tombol untuk menjalankan terminal. Format penulisannya seperti "
"\"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. Program pendeteksi "
"kombinasi tombol ini sangat fleksibel dan memperbolehkan digunakannya huruf "
"besar dan huruf kecil, juga memperbolehkan digunakannya singkata seperti "
"\"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda menuliskan kata "
"\"disabled\" maka perintah ini tidak memiliki kombinasi tombol."
#: ../src/metacity.schemas.in.h:143
msgid ""
@@ -1823,9 +1824,9 @@ msgid ""
"\". If you set the option to the special string \"disabled\", then there "
"will be no keybinding for this action."
msgstr ""
"Kombinasi tombol untuk menangkap gambar layar pada jendela. Format penulisannya "
"seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. Program "
"pendeteksi kombinasi tombol ini sangat fleksibel dan memperbolehkan "
"Kombinasi tombol untuk menangkap gambar layar pada jendela. Format "
"penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. "
"Program pendeteksi kombinasi tombol ini sangat fleksibel dan memperbolehkan "
"digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya "
"singkata seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda "
"menuliskan kata \"disabled\" maka perintah ini tidak memiliki kombinasi "
@@ -1917,16 +1918,16 @@ msgid ""
"no keybinding for this action."
msgstr ""
"Kombinasi tombol untuk merubah apakah letak suatu jendela ada di bawah/atas "
"jendela lain. Bila jendela tersebut ditutupi jendela lain, maka jendela tersebut "
"akan dinaikkan di atas jendela yang menutupi. Namun apabila jendela tersebut "
"sudah kelihatan sepenuhnya (ada di paling atas), maka jendela tersebut akan "
"diturunkan di bawah jendela yang sebelumnya ada dibawahnya. Format "
"penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. "
"Program pendeteksi kombinasi tombol ini sangat fleksibel dan memperbolehkan "
"digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya "
"singkata seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda "
"menuliskan kata \"disabled\" maka perintah ini tidak memiliki kombinasi "
"tombol."
"jendela lain. Bila jendela tersebut ditutupi jendela lain, maka jendela "
"tersebut akan dinaikkan di atas jendela yang menutupi. Namun apabila jendela "
"tersebut sudah kelihatan sepenuhnya (ada di paling atas), maka jendela "
"tersebut akan diturunkan di bawah jendela yang sebelumnya ada dibawahnya. "
"Format penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;"
"Alt&gt;F1. Program pendeteksi kombinasi tombol ini sangat fleksibel dan "
"memperbolehkan digunakannya huruf besar dan huruf kecil, juga memperbolehkan "
"digunakannya singkata seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan "
"apabila Anda menuliskan kata \"disabled\" maka perintah ini tidak memiliki "
"kombinasi tombol."
#: ../src/metacity.schemas.in.h:153
msgid ""
@@ -2142,8 +2143,8 @@ msgid ""
"Screen %d on display \"%s\" already has a window manager; try using the --"
"replace option to replace the current window manager.\n"
msgstr ""
"Layar %d pada tampilan \"%s\" sudah memiliki pengatur jendela. Cobalah gunakan "
"pilihan --replace untuk mengganti pengatur jendela yang aktif.\n"
"Layar %d pada tampilan \"%s\" sudah memiliki pengatur jendela. Cobalah "
"gunakan pilihan --replace untuk mengganti pengatur jendela yang aktif.\n"
#: ../src/screen.c:448
#, c-format
@@ -3224,7 +3225,8 @@ msgstr ""
#, c-format
msgid ""
"User-defined constants must begin with a capital letter; \"%s\" does not"
msgstr "Konstanta buatan pengguna harus dimulai dengan huruf besar: \"%s\" tidak"
msgstr ""
"Konstanta buatan pengguna harus dimulai dengan huruf besar: \"%s\" tidak"
#: ../src/theme.c:5049 ../src/theme.c:5111
#, c-format
@@ -3320,44 +3322,3 @@ msgid ""
"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
msgstr ""
"Properti %s pada jendela 0x%lx di obyek %d berisi karakter UTF-8 yang salah\n"
#~ msgid ""
#~ "metacity [--sm-disable] [--sm-client-id=ID] [--sm-save-file=FILENAME] [--"
#~ "display=DISPLAY] [--replace] [--version]\n"
#~ msgstr ""
#~ "metacity [--sm-disable] [--sm-client-id=ID] [--sm-save-file=FILENAME] [--"
#~ "display=DISPLAY] [--replace] [--version]\n"
#~ msgid "No \"%s\" attribute on element <%s>"
#~ msgstr "Tidak dijumpai atribut \"%s\" pada elemen <%s>"
#~ msgid "Put on _All Workspaces"
#~ msgstr "Letakkan p_ada semua area kerja"
#~ msgid "Select how to give focus to windows"
#~ msgstr "Pilih bagaimana cara fokus dapat dikenakan pada window"
#~ msgid "Window Focus"
#~ msgstr "Fokus window"
#~ msgid "Clic_k to give focus"
#~ msgstr "Kli_k untuk memberi fokus"
#~ msgid "Focus behavior:"
#~ msgstr "Kelakuan fokus:"
#~ msgid "Window Focus Preferences"
#~ msgstr "Setingan Fokus pada Window"
#~ msgid "_Point to give focus"
#~ msgstr "_Tunjuk untuk memberi fokus"
#~ msgid "_Raise window on focus"
#~ msgstr "_Naikkan window saat kena fokus"
#~ msgid ""
#~ "Failed to a open connection to a session manager, so window positions "
#~ "will not be saved: %s\n"
#~ msgstr ""
#~ "Gagal membuka koneksi ke manajer sesi akibatnya posisi window tidak akan "
#~ "disimpan: %s\n"

1052
po/is.po

File diff suppressed because it is too large Load Diff

1033
po/it.po

File diff suppressed because it is too large Load Diff

999
po/ja.po

File diff suppressed because it is too large Load Diff

2718
po/ka.po Normal file

File diff suppressed because it is too large Load Diff

1401
po/ko.po

File diff suppressed because it is too large Load Diff

2668
po/ku.po Normal file

File diff suppressed because it is too large Load Diff

1261
po/lt.po

File diff suppressed because it is too large Load Diff

1078
po/lv.po

File diff suppressed because it is too large Load Diff

804
po/mk.po

File diff suppressed because it is too large Load Diff

1047
po/ml.po

File diff suppressed because it is too large Load Diff

1059
po/mn.po

File diff suppressed because it is too large Load Diff

1059
po/ms.po

File diff suppressed because it is too large Load Diff

797
po/nb.po

File diff suppressed because it is too large Load Diff

1028
po/ne.po

File diff suppressed because it is too large Load Diff

1367
po/nl.po

File diff suppressed because it is too large Load Diff

1553
po/nn.po

File diff suppressed because it is too large Load Diff

1175
po/or.po

File diff suppressed because it is too large Load Diff

1174
po/pa.po

File diff suppressed because it is too large Load Diff

View File

@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: metacity\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2005-07-28 15:03+0200\n"
"POT-Creation-Date: 2005-09-19 12:30+0200\n"
"PO-Revision-Date: 2003-06-30 09:13+0100\n"
"Last-Translator: Gnome PL Team <translators@gnomepl.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
@@ -114,19 +114,19 @@ msgstr ""
"Skrótu klawiszowego z klawiszem %s i modyfikatorami %x używa już inny "
"program\n"
#: ../src/keybindings.c:2535
#: ../src/keybindings.c:2620
#, c-format
msgid "Error launching metacity-dialog to print an error about a command: %s\n"
msgstr ""
"Przy uruchamianiu metacity-dialog (informującego o błędzie dotyczącym "
"polecenia) wystąpił błąd: %s\n"
#: ../src/keybindings.c:2640
#: ../src/keybindings.c:2725
#, c-format
msgid "No command %d has been defined.\n"
msgstr "Nie zdefiniowano polecenia %d.\n"
#: ../src/keybindings.c:3485
#: ../src/keybindings.c:3570
msgid "No terminal command has been defined.\n"
msgstr "Nie zdefiniowano polecenia terminala.\n"
@@ -369,19 +369,19 @@ msgid ""
msgstr ""
"Wymuszenie zakończenia tej aplikacji spowoduje utratę niezapisanych zmian."
#: ../src/metacity-dialog.c:128
#: ../src/metacity-dialog.c:129
msgid "_Force Quit"
msgstr "_Wymuś zakończenie"
#: ../src/metacity-dialog.c:225
#: ../src/metacity-dialog.c:226
msgid "Title"
msgstr "Tytuł"
#: ../src/metacity-dialog.c:237
#: ../src/metacity-dialog.c:238
msgid "Class"
msgstr "Klasa"
#: ../src/metacity-dialog.c:263
#: ../src/metacity-dialog.c:264
msgid ""
"These windows do not support \"save current setup\" and will have to be "
"restarted manually next time you log in."
@@ -389,7 +389,7 @@ msgstr ""
"Te okna nie obsługują opcji zapisu aktualnego stanu (\"save current setup"
"\"), więc przy następnym zalogowaniu będą musiały być uruchomione ręcznie."
#: ../src/metacity-dialog.c:328
#: ../src/metacity-dialog.c:330
#, c-format
msgid ""
"There was an error running \"%s\":\n"
@@ -2288,16 +2288,12 @@ msgstr ""
"small, small, medium, large, x-large, xx-large)\n"
#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
#, c-format
msgid "No \"%s\" attribute on element <%s>"
msgstr "Brak atrybutu \"%s\" wewnątrz elementu <%s>"
#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
#, c-format
msgid "No \"%s\" attribute on <%s> element"
msgstr "Brak atrybutu \"%s\" wewnątrz elementu <%s>"
@@ -3351,47 +3347,3 @@ msgid ""
msgstr ""
"Własność %s odnosząca się do okna 0x%lx zawiera niepoprawną sekwencję UTF-8 "
"w %d. elemencie listy\n"
#~ msgid ""
#~ "metacity [--sm-disable] [--sm-client-id=ID] [--sm-save-file=FILENAME] [--"
#~ "display=DISPLAY] [--replace] [--version]\n"
#~ msgstr ""
#~ "metacity [--sm-disable] [--sm-client-id=ID] [--sm-save-file=NAZWA_PLIKU] "
#~ "[--display=EKRAN] [--replace] [--version]\n"
#~ msgid "Put on _All Workspaces"
#~ msgstr "Na _wszystkich obszarach roboczych"
#~ msgid "Select how to give focus to windows"
#~ msgstr "Sposób przekazywania skupienia do okien"
#~ msgid "Window Focus"
#~ msgstr "Skupienie okna"
#~ msgid "Clic_k to give focus"
#~ msgstr "Przekazanie skupienia po _kliknięciu"
#~ msgid "Focus behavior:"
#~ msgstr "Zachowanie skupienia:"
#~ msgid "Window Focus Preferences"
#~ msgstr "Ustawienia zachowania się skupienia okna"
#~ msgid "_Point to give focus"
#~ msgstr "Przekazanie skupienia po _wskazaniu"
#~ msgid "_Raise window on focus"
#~ msgstr "Wysuwanie _okna po otrzymaniu skupienia"
#~ msgid ""
#~ "Failed to a open connection to a session manager, so window positions "
#~ "will not be saved: %s\n"
#~ msgstr ""
#~ "Nie można nawiązać połączenia z menedżerem sesji, w związku z czym nie "
#~ "zostaną zapisane położenia okien: %s\n"
#~ msgid "Only on %s"
#~ msgstr "Tylko na obszarze %s"
#~ msgid "Move to %s"
#~ msgstr "Przenieś na obszar %s"

842
po/pt.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1342
po/ro.po

File diff suppressed because it is too large Load Diff

1174
po/ru.po

File diff suppressed because it is too large Load Diff

1027
po/rw.po

File diff suppressed because it is too large Load Diff

196
po/sk.po
View File

@@ -13,8 +13,8 @@ msgid ""
msgstr ""
"Project-Id-Version: metacity\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2005-07-20 23:28+0200\n"
"PO-Revision-Date: 2005-07-20 23:36+0200\n"
"POT-Creation-Date: 2005-11-22 23:56+0100\n"
"PO-Revision-Date: 2005-11-23 00:07+0100\n"
"Last-Translator: Marcel Telka <marcel@telka.sk>\n"
"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
"MIME-Version: 1.0\n"
@@ -26,44 +26,44 @@ msgstr ""
msgid "Usage: %s\n"
msgstr "Použitie: %s\n"
#: ../src/tools/metacity-message.c:176 ../src/util.c:128
#: ../src/tools/metacity-message.c:176 ../src/util.c:130
msgid "Metacity was compiled without support for verbose mode\n"
msgstr "Metacity bol skompilovaný bez podpory zobrazovania informácií\n"
#: ../src/delete.c:63 ../src/delete.c:90 ../src/metacity-dialog.c:70
#: ../src/delete.c:64 ../src/delete.c:91 ../src/metacity-dialog.c:71
#: ../src/theme-parser.c:467
#, c-format
msgid "Could not parse \"%s\" as an integer"
msgstr "Nepodarilo sa spracovať \"%s\" ako celé číslo"
#: ../src/delete.c:70 ../src/delete.c:97 ../src/metacity-dialog.c:77
#: ../src/delete.c:71 ../src/delete.c:98 ../src/metacity-dialog.c:78
#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
#, c-format
msgid "Did not understand trailing characters \"%s\" in string \"%s\""
msgstr "Nerozpoznané znaky na konci \"%s\" v reťazci \"%s\""
#: ../src/delete.c:128
#: ../src/delete.c:129
#, c-format
msgid "Failed to parse message \"%s\" from dialog process\n"
msgstr "Nepodarilo sa spracovať správu \"%s\" z dialógového procesu\n"
#: ../src/delete.c:263
#: ../src/delete.c:264
#, c-format
msgid "Error reading from dialog display process: %s\n"
msgstr "Chyba pri čítaní z procesu pre zobrazenie dialógu: %s\n"
#: ../src/delete.c:344
#: ../src/delete.c:345
#, c-format
msgid ""
"Error launching metacity-dialog to ask about killing an application: %s\n"
msgstr "Chyba pri spustení dialógu metacity pre zabitie aplikácie: %s\n"
#: ../src/delete.c:452
#: ../src/delete.c:453
#, c-format
msgid "Failed to get hostname: %s\n"
msgstr "Nepodarilo sa získať meno hostiteľa: %s\n"
#: ../src/display.c:319
#: ../src/display.c:308
#, c-format
msgid "Failed to open X Window System display '%s'\n"
msgstr "Nepodarilo sa otvoriť displej X Window '%s'\n"
@@ -83,27 +83,27 @@ msgstr ""
msgid "Fatal IO error %d (%s) on display '%s'.\n"
msgstr "Kritická chyba V/V %d (%s) na displeji '%s'\n"
#: ../src/frames.c:1125
#: ../src/frames.c:1123
msgid "Close Window"
msgstr "Zavrieť okno"
#: ../src/frames.c:1128
#: ../src/frames.c:1126
msgid "Window Menu"
msgstr "Menu okna"
#: ../src/frames.c:1131
#: ../src/frames.c:1129
msgid "Minimize Window"
msgstr "Minimalizovať okno"
#: ../src/frames.c:1134
#: ../src/frames.c:1132
msgid "Maximize Window"
msgstr "Maximalizovať okno"
#: ../src/frames.c:1137
#: ../src/frames.c:1135
msgid "Unmaximize Window"
msgstr "Odmaximalizovať okno"
#: ../src/keybindings.c:994
#: ../src/keybindings.c:996
#, c-format
msgid ""
"Some other program is already using the key %s with modifiers %x as a "
@@ -111,17 +111,17 @@ msgid ""
msgstr ""
"Iný program už používa kláves %s s modifikátormi %x ako klávesovú skratku.\n"
#: ../src/keybindings.c:2535
#: ../src/keybindings.c:2494
#, c-format
msgid "Error launching metacity-dialog to print an error about a command: %s\n"
msgstr "Chyba pri spustení dialógu metacity pre zobrazenie chyby príkazu: %s\n"
#: ../src/keybindings.c:2640
#: ../src/keybindings.c:2599
#, c-format
msgid "No command %d has been defined.\n"
msgstr "Nedefinovaný príkaz %d.\n"
#: ../src/keybindings.c:3485
#: ../src/keybindings.c:3461
msgid "No terminal command has been defined.\n"
msgstr "Nebol definovaný terminálový príkaz.\n"
@@ -181,83 +181,87 @@ msgstr ""
msgid "Failed to restart: %s\n"
msgstr "Nepodarilo znovu spustiť: %s\n"
#: ../src/menu.c:54
#: ../src/menu.c:55
msgid "Mi_nimize"
msgstr "_Minimalizovať"
#: ../src/menu.c:55
#: ../src/menu.c:56
msgid "Ma_ximize"
msgstr "Ma_ximalizovať"
#: ../src/menu.c:56
#: ../src/menu.c:57
msgid "Unma_ximize"
msgstr "_Odmaximalizovať"
#: ../src/menu.c:57
#: ../src/menu.c:58
msgid "Roll _Up"
msgstr "_Zabaliť"
#: ../src/menu.c:58
#: ../src/menu.c:59
msgid "_Unroll"
msgstr "_Rozbaliť"
#: ../src/menu.c:59 ../src/menu.c:60
#: ../src/menu.c:60 ../src/menu.c:61
msgid "On _Top"
msgstr "Na_vrch"
#: ../src/menu.c:61
#: ../src/menu.c:62
msgid "_Move"
msgstr "_Presunúť"
#: ../src/menu.c:62
#: ../src/menu.c:63
msgid "_Resize"
msgstr "Zmeniť _veľkosť"
#. separator
#: ../src/menu.c:64
msgid "Move Titlebar On_screen"
msgstr "Presunúť titulok na _obrazovku"
#. separator
#: ../src/menu.c:66
msgid "_Close"
msgstr "_Zavrieť"
#. separator
#: ../src/menu.c:66
#: ../src/menu.c:68
msgid "_Always on Visible Workspace"
msgstr "_Vždy na viditeľnej pracovnej ploche"
#: ../src/menu.c:67
#: ../src/menu.c:69
msgid "_Only on This Workspace"
msgstr "_Len na tejto pracovnej ploche"
#: ../src/menu.c:68
#: ../src/menu.c:70
msgid "Move to Workspace _Left"
msgstr "Presunúť na pracovnú plochu _vľavo"
#: ../src/menu.c:69
#: ../src/menu.c:71
msgid "Move to Workspace R_ight"
msgstr "Presunúť na pracovnú plochu v_pravo"
#: ../src/menu.c:70
#: ../src/menu.c:72
msgid "Move to Workspace _Up"
msgstr "Presunúť na pracovnú plochu _hore"
#: ../src/menu.c:71
#: ../src/menu.c:73
msgid "Move to Workspace _Down"
msgstr "Presunúť na pracovnú plochu _dole"
#: ../src/menu.c:162 ../src/prefs.c:2106
#: ../src/menu.c:164 ../src/prefs.c:2112
#, c-format
msgid "Workspace %d"
msgstr "Pracovná plocha %d"
#: ../src/menu.c:171
#: ../src/menu.c:173
msgid "Workspace 1_0"
msgstr "Pracovná plocha 1_0"
#: ../src/menu.c:173
#: ../src/menu.c:175
#, c-format
msgid "Workspace %s%d"
msgstr "Pracovná plocha %s%d"
#: ../src/menu.c:368
#: ../src/menu.c:370
msgid "Move to Another _Workspace"
msgstr "Presunúť na inú _pracovnú plochu"
@@ -351,29 +355,29 @@ msgstr "Mod4"
msgid "Mod5"
msgstr "Mod5"
#: ../src/metacity-dialog.c:110
#: ../src/metacity-dialog.c:111
#, c-format
msgid "The window \"%s\" is not responding."
msgstr "Okno \"%s\" neodpovedá."
#: ../src/metacity-dialog.c:118
#: ../src/metacity-dialog.c:119
msgid ""
"Forcing this application to quit will cause you to lose any unsaved changes."
msgstr "Vynútené ukončenie tejto aplikácie spôsobí stratu neuložených zmien."
#: ../src/metacity-dialog.c:128
#: ../src/metacity-dialog.c:130
msgid "_Force Quit"
msgstr "_Vynútiť ukončenie"
#: ../src/metacity-dialog.c:225
#: ../src/metacity-dialog.c:227
msgid "Title"
msgstr "Titulok"
#: ../src/metacity-dialog.c:237
#: ../src/metacity-dialog.c:239
msgid "Class"
msgstr "Trieda"
#: ../src/metacity-dialog.c:263
#: ../src/metacity-dialog.c:265
msgid ""
"These windows do not support \"save current setup\" and will have to be "
"restarted manually next time you log in."
@@ -381,7 +385,7 @@ msgstr ""
"Tieto okná nepodporujú \"uložiť aktuálne nastavenie\n"
" a pri budúcom prihlásení ich budete musieť znovu spustiť ručne."
#: ../src/metacity-dialog.c:328
#: ../src/metacity-dialog.c:331
#, c-format
msgid ""
"There was an error running \"%s\":\n"
@@ -498,11 +502,25 @@ msgstr "Skryť všetky okná a aktivovať plochu"
msgid ""
"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
"focused window will be automatically raised after a delay (the delay is "
"specified by the auto_raise_delay key)."
"specified by the auto_raise_delay key). This preference is poorly named, but "
"kept for backwards compatibility. To try to be more clear (at least to the "
"technically inclined), its meaning is \"automatically raise the window "
"following a timeout which is triggered by non-grabbed mouse entry in sloppy "
"or mouse focus modes\". It is unrelated to clicking behavior (i.e. this is "
"not related to raise-on-click/orthogonal-raise). It is unrelated to entering "
"a window during drag and drop (because that results in the application "
"grabbing the mouse)"
msgstr ""
"Ak je true a režim aktivácie je buď \"sloppy\" alebo \"mouse\", aktívne okno "
"sa automaticky po danej dobe posunie dopredu (čakanie je nastavené v kľúči "
"auto_raise_delay)."
"auto_raise_delay). Táto predvoľba je zle pomenovaná, ale je ponechaná pre "
"spätnú kompatibilitu. Aby to bolo viac jasné (aspoň po technickej stránke), "
"jej význam je \"automaticky presunúť okno nad ostatné po uplynutí časového "
"limitu, ktorý je spustený nezachyteným vstupom myši v režimoch aktivácie "
"'sloppy' alebo 'mouse'\". Nemá to vzťah k správaniu sa klikania (t.j. nemá "
"to vzťah k posunúť-dopredu-pri-kliknutí/ortogonálne-posunutie-dopredu). Nemá "
"to vzťah k vstupu do okna počas 'presuň a pusť' (pretože to má za následok "
"zachytenie myši aplikáciou)"
#: ../src/metacity.schemas.in.h:18
msgid ""
@@ -521,12 +539,12 @@ msgid ""
"otherwise be impractical. However, the wireframe feature is disabled when "
"accessibility is on to avoid weird desktop breakages."
msgstr ""
"Ak je true, metacity bude poskytovať používateľovi menej spätnej väzby a menší "
"pocit \"priameho ovládania\" pomocou obrysov, vynechaním animácií, alebo inak. "
"Toto je výrazné zníženie použiteľnosti pre veľa používateľov, ale môže umožniť "
"pracovať starým aplikáciam a terminálovým serverom, ktoré by inak boli prakticky "
"nepoužiteľné. Avšak obrysy nebudú povolené pri zapnutej použiteľnosti, aby sa "
"zabránilo čudným poškodeniam pracovnej plochy."
"Ak je true, metacity bude poskytovať používateľovi menej spätnej väzby a "
"menší pocit \"priameho ovládania\" pomocou obrysov, vynechaním animácií, "
"alebo inak. Toto je výrazné zníženie použiteľnosti pre veľa používateľov, "
"ale môže umožniť pracovať starým aplikáciam a terminálovým serverom, ktoré "
"by inak boli prakticky nepoužiteľné. Avšak obrysy nebudú povolené pri "
"zapnutej použiteľnosti, aby sa zabránilo čudným poškodeniam pracovnej plochy."
#: ../src/metacity.schemas.in.h:20
msgid ""
@@ -1985,12 +2003,12 @@ msgstr ""
msgid "%d stored in GConf key %s is out of range 0 to %d\n"
msgstr "Hodnota %d uložená v GConf kľúči %s nie je v rozsahu od 0 do %d\n"
#: ../src/prefs.c:1589
#: ../src/prefs.c:1595
#, c-format
msgid "Error setting number of workspaces to %d: %s\n"
msgstr "Chyba pri nastavovaní počtu pracovných plôch na %d: %s\n"
#: ../src/prefs.c:1833
#: ../src/prefs.c:1839
#, c-format
msgid ""
"\"%s\" found in configuration database is not a valid value for keybinding "
@@ -1999,7 +2017,7 @@ msgstr ""
"V konfiguračnej databázi nájdené \"%s\", čo nie je platná hodnota pre "
"klávesovú skratku \"%s\".\n"
#: ../src/prefs.c:2187
#: ../src/prefs.c:2193
#, c-format
msgid "Error setting name for workspace %d to \"%s\": %s\n"
msgstr "Chyba pri nastavovaní mena pracovnej plochy %d na \"%s\": %s\n"
@@ -2009,12 +2027,12 @@ msgstr "Chyba pri nastavovaní mena pracovnej plochy %d na \"%s\": %s\n"
msgid "%d x %d"
msgstr "%d x %d"
#: ../src/screen.c:408
#: ../src/screen.c:403
#, c-format
msgid "Screen %d on display '%s' is invalid\n"
msgstr "Obrazovka %d na displeji '%s' nie je platná\n"
#: ../src/screen.c:424
#: ../src/screen.c:419
#, c-format
msgid ""
"Screen %d on display \"%s\" already has a window manager; try using the --"
@@ -2023,7 +2041,7 @@ msgstr ""
"Obrazovka %d na displeji \"%s\" už má správcu okien. Skúste použiť prepínač "
"--replace, aby sa aktuálny správca predefinoval.\n"
#: ../src/screen.c:448
#: ../src/screen.c:443
#, c-format
msgid ""
"Could not acquire window manager selection on screen %d display \"%s\"\n"
@@ -2031,80 +2049,80 @@ msgstr ""
"Nepodarilo sa získať výber správcu okien pre obrazovku %d na displeji \"%s"
"\".\n"
#: ../src/screen.c:506
#: ../src/screen.c:501
#, c-format
msgid "Screen %d on display \"%s\" already has a window manager\n"
msgstr "Obrazovka %d na displeji \"%s\" už má správcu okien\n"
#: ../src/screen.c:716
#: ../src/screen.c:712
#, c-format
msgid "Could not release screen %d on display \"%s\"\n"
msgstr "Nepodarilo sa uvoľniť obrazovku %d na displeji \"%s\"\n"
#: ../src/session.c:884 ../src/session.c:891
#: ../src/session.c:844 ../src/session.c:851
#, c-format
msgid "Could not create directory '%s': %s\n"
msgstr "Nepodarilo sa vytvoriť priečinok '%s': %s\n"
#: ../src/session.c:901
#: ../src/session.c:861
#, c-format
msgid "Could not open session file '%s' for writing: %s\n"
msgstr "Nepodarilo sa otvoriť súbor sedenia '%s' pre zápis: %s\n"
#: ../src/session.c:1053
#: ../src/session.c:1013
#, c-format
msgid "Error writing session file '%s': %s\n"
msgstr "Chyba pri zápise súboru sedenia '%s': %s\n"
#: ../src/session.c:1058
#: ../src/session.c:1018
#, c-format
msgid "Error closing session file '%s': %s\n"
msgstr "Chyba pri zatváraní súboru sedenia '%s': %s\n"
#: ../src/session.c:1133
#: ../src/session.c:1093
#, c-format
msgid "Failed to read saved session file %s: %s\n"
msgstr "Nepodarilo sa prečítať uložený súbor sedenia %s: %s\n"
#: ../src/session.c:1168
#: ../src/session.c:1128
#, c-format
msgid "Failed to parse saved session file: %s\n"
msgstr "Nepodarilo sa spracovať uložený súbor sedenia: %s\n"
#: ../src/session.c:1217
#: ../src/session.c:1177
msgid "<metacity_session> attribute seen but we already have the session ID"
msgstr "Nájdený atribút <metacity_session>, ale ID sedenia už je nastavené"
#: ../src/session.c:1230
#: ../src/session.c:1190
#, c-format
msgid "Unknown attribute %s on <metacity_session> element"
msgstr "Neznámy atribút %s v elemente <metacity_session>"
#: ../src/session.c:1247
#: ../src/session.c:1207
msgid "nested <window> tag"
msgstr "vnorená značka <window>"
#: ../src/session.c:1305 ../src/session.c:1337
#: ../src/session.c:1265 ../src/session.c:1297
#, c-format
msgid "Unknown attribute %s on <window> element"
msgstr "Neznámy atribúť %s v elemente <window>"
#: ../src/session.c:1409
#: ../src/session.c:1369
#, c-format
msgid "Unknown attribute %s on <maximized> element"
msgstr "Neznámy atribút %s v elemente <maximized>"
#: ../src/session.c:1469
#: ../src/session.c:1429
#, c-format
msgid "Unknown attribute %s on <geometry> element"
msgstr "Neznámy atribúť %s v elemente <geometry>"
#: ../src/session.c:1489
#: ../src/session.c:1449
#, c-format
msgid "Unknown element %s"
msgstr "Neznámy element %s"
#: ../src/session.c:1961
#: ../src/session.c:1921
#, c-format
msgid ""
"Error launching metacity-dialog to warn about apps that don't support "
@@ -2170,16 +2188,12 @@ msgstr ""
"x-large,xx-large)\n"
#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
#, c-format
msgid "No \"%s\" attribute on element <%s>"
msgstr "Chýbajúci atribút \"%s\" v elemente %s"
#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
#, c-format
msgid "No \"%s\" attribute on <%s> element"
msgstr "Chýbajúci atribút \"%s\" v elemente %s"
@@ -3103,44 +3117,44 @@ msgstr "Používateľské konštanty musia začítať veľkým písmenom, \"%s\"
msgid "Constant \"%s\" has already been defined"
msgstr "Konštanta \"%s\" už je definovaná"
#: ../src/util.c:93
#: ../src/util.c:95
#, c-format
msgid "Failed to open debug log: %s\n"
msgstr "Nepodarilo sa otvoriť záznam pre ladenie: %s\n"
#: ../src/util.c:103
#: ../src/util.c:105
#, c-format
msgid "Failed to fdopen() log file %s: %s\n"
msgstr "Nepodarilo sa otvoriť súbor so záznamom pomocou fdopen() %s: %s\n"
#: ../src/util.c:109
#: ../src/util.c:111
#, c-format
msgid "Opened log file %s\n"
msgstr "Otvorený súbor so záznamom %s\n"
#: ../src/util.c:203
#: ../src/util.c:219
msgid "Window manager: "
msgstr "Správca okien:"
#: ../src/util.c:349
#: ../src/util.c:365
msgid "Bug in window manager: "
msgstr "Chyba v správcovi okien:"
#: ../src/util.c:378
#: ../src/util.c:394
msgid "Window manager warning: "
msgstr "Varovanie správcu okien:"
#: ../src/util.c:402
#: ../src/util.c:418
msgid "Window manager error: "
msgstr "Chyba správcu okien:"
#: ../src/window-props.c:162
#: ../src/window-props.c:163
#, c-format
msgid "Application set a bogus _NET_WM_PID %ld\n"
msgstr "Aplikácia nastavila neplatné _NET_WM_PID %ld\n"
#. first time through
#: ../src/window.c:5197
#: ../src/window.c:5238
#, c-format
msgid ""
"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
@@ -3156,7 +3170,7 @@ msgstr ""
#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
#. * about these apps but make them work.
#.
#: ../src/window.c:5868
#: ../src/window.c:5878
#, c-format
msgid ""
"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"

1080
po/sl.po

File diff suppressed because it is too large Load Diff

800
po/sq.po

File diff suppressed because it is too large Load Diff

1201
po/sr.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

3145
po/sv.po

File diff suppressed because it is too large Load Diff

1052
po/ta.po

File diff suppressed because it is too large Load Diff

1578
po/th.po

File diff suppressed because it is too large Load Diff

1026
po/tk.po

File diff suppressed because it is too large Load Diff

1030
po/tr.po

File diff suppressed because it is too large Load Diff

801
po/uk.po

File diff suppressed because it is too large Load Diff

2232
po/vi.po

File diff suppressed because it is too large Load Diff

1058
po/wa.po

File diff suppressed because it is too large Load Diff

1031
po/xh.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -8,13 +8,13 @@ msgid ""
msgstr ""
"Project-Id-Version: metacity 2.12\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2005-08-01 22:39+0000\n"
"POT-Creation-Date: 2005-09-19 12:30+0200\n"
"PO-Revision-Date: 2005-08-02 20:35+0800\n"
"Last-Translator: Woodman Tuen <wmtuen@gmail.com>\n"
"Language-Team: Chinese/Traditional <community@linuxhall.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit"
"Content-Transfer-Encoding: 8bit\n"
#: ../src/tools/metacity-message.c:150
#, c-format
@@ -103,20 +103,19 @@ msgstr "視窗還原最大化"
msgid ""
"Some other program is already using the key %s with modifiers %x as a "
"binding\n"
msgstr ""
"其它程式已經使用了按鍵 %s 加上特殊按鍵 %x 作為按鍵組合\n"
msgstr "其它程式已經使用了按鍵 %s 加上特殊按鍵 %x 作為按鍵組合\n"
#: ../src/keybindings.c:2535
#: ../src/keybindings.c:2620
#, c-format
msgid "Error launching metacity-dialog to print an error about a command: %s\n"
msgstr "當嘗試啟動 metacity-dialog 來顯示某指令的錯誤訊息時出現錯誤:%s\n"
#: ../src/keybindings.c:2640
#: ../src/keybindings.c:2725
#, c-format
msgid "No command %d has been defined.\n"
msgstr "並未定義任何指令 %d。\n"
#: ../src/keybindings.c:3485
#: ../src/keybindings.c:3570
msgid "No terminal command has been defined.\n"
msgstr "沒有定義任何終端機指令。\n"
@@ -353,8 +352,7 @@ msgstr "視窗“%s”沒有回應。"
#: ../src/metacity-dialog.c:118
msgid ""
"Forcing this application to quit will cause you to lose any unsaved changes."
msgstr ""
"強制結束本程式會失去所有未儲存的資料。"
msgstr "強制結束本程式會失去所有未儲存的資料。"
#: ../src/metacity-dialog.c:129
msgid "_Force Quit"
@@ -372,8 +370,7 @@ msgstr "分類"
msgid ""
"These windows do not support \"save current setup\" and will have to be "
"restarted manually next time you log in."
msgstr ""
"這些視窗不支援「儲存目前的設定」,必須在下次登入後自行啟動。"
msgstr "這些視窗不支援「儲存目前的設定」,必須在下次登入後自行啟動。"
#: ../src/metacity-dialog.c:330
#, c-format
@@ -1877,8 +1874,7 @@ msgstr "將工作區數目設定為 %d 個時出現錯誤:%s\n"
msgid ""
"\"%s\" found in configuration database is not a valid value for keybinding "
"\"%s\"\n"
msgstr ""
"組態資料庫中的“%s”不是按鍵組合“%s”的有效設定值\n"
msgstr "組態資料庫中的“%s”不是按鍵組合“%s”的有效設定值\n"
#: ../src/prefs.c:2187
#, c-format
@@ -2049,16 +2045,12 @@ msgstr ""
"x-large、xx-large 其中一個)\n"
#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
#, c-format
msgid "No \"%s\" attribute on element <%s>"
msgstr "沒有任何“%s”屬性出現在 <%s> 元素內"
#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
#, c-format
msgid "No \"%s\" attribute on <%s> element"
msgstr "沒有任何“%s”屬性出現在 <%s> 元素內"
@@ -3058,34 +3050,3 @@ msgstr "視窗 0x%2$lx 的屬性 %1$s 中含有無效的 UTF-8 資料\n"
msgid ""
"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
msgstr "視窗 0x%2$lx 的屬性清單 %1$s 的第 %3$d 個項目含有無效的 UTF-8 資料\n"
#~ msgid ""
#~ "metacity [--sm-disable] [--sm-client-id=ID] [--sm-save-file=FILENAME] [--"
#~ "display=DISPLAY] [--replace] [--version]\n"
#~ msgstr ""
#~ "metacity [--disable-sm] [--sm-client-id=識別碼] [--sm-save-file=檔案名稱] "
#~ "[--display=DISPLAY] [--replace] [--version]\n"
#~ msgid "Put on _All Workspaces"
#~ msgstr "放在所有工作區中(_A)"
#~ msgid "Select how to give focus to windows"
#~ msgstr "選擇如何令視窗獲取輸入焦點"
#~ msgid "Window Focus"
#~ msgstr "視窗焦點"
#~ msgid "Clic_k to give focus"
#~ msgstr "按滑鼠按鈕方可獲得輸入焦點(_K)"
#~ msgid "Focus behavior:"
#~ msgstr "焦點運作方式:"
#~ msgid "Window Focus Preferences"
#~ msgstr "視窗焦點偏好設定"
#~ msgid "_Point to give focus"
#~ msgstr "輸入焦點跟隨鼠標移動(_P)"
#~ msgid "_Raise window on focus"
#~ msgstr "當視窗獲取輸入焦點後會自動覆蓋其它視窗(_R)"

View File

@@ -39,10 +39,16 @@ workspace wrapping:
http://bugzilla.gnome.org/show_bug.cgi?id=89315
raise windows on click:
http://bugzilla.gnome.org/show_bug.cgi?id=326156
http://bugzilla.gnome.org/show_bug.cgi?id=86108
http://bugzilla.gnome.org/show_bug.cgi?id=115072
http://bugzilla.gnome.org/show_bug.cgi?id=115753
Pointer warping:
http://bugzilla.gnome.org/show_bug.cgi?id=134353
http://bugzilla.gnome.org/show_bug.cgi?id=134352
(Think about tasklist & window selector too; this would be a very bad idea)
Tracking bugs
====
@@ -60,3 +66,5 @@ moving/resizing (constraints): http://bugzilla.gnome.org/show_bug.cgi?id=155458
window placement: http://bugzilla.gnome.org/show_bug.cgi?id=155460
logout/system-monitor keys: http://bugzilla.gnome.org/show_bug.cgi?id=155462
modal dialogs: http://bugzilla.gnome.org/show_bug.cgi?id=164841
multi-head sans xinerama: http://bugzilla.gnome.org/show_bug.cgi?id=324772
xinerama: http://bugzilla.gnome.org/show_bug.cgi?id=324773

View File

@@ -5,6 +5,7 @@ Makefile
metacity
metacity-theme-viewer
metacity-dialog
testboxes
testgradient
inlinepixbufs.h
metacity.desktop

View File

@@ -13,7 +13,11 @@ metacity_SOURCES= \
async-getprop.h \
bell.h \
bell.c \
boxes.h \
boxes.c \
common.h \
c-screen.c \
c-screen.h \
compositor.c \
compositor.h \
constraints.c \
@@ -25,6 +29,8 @@ metacity_SOURCES= \
display.h \
draw-workspace.c \
draw-workspace.h \
edge-resistance.c \
edge-resistance.h \
effects.c \
effects.h \
errors.c \
@@ -66,6 +72,8 @@ metacity_SOURCES= \
screen.h \
session.c \
session.h \
spring-model.c \
spring-model.h \
stack.c \
stack.h \
tabpopup.c \
@@ -94,6 +102,8 @@ metacity_SOURCES= \
# metacity proper will be compiled with different names.
libmetacity_private_la_CFLAGS =
libmetacity_private_la_SOURCES= \
boxes.c \
boxes.h \
gradient.c \
gradient.h \
preview-widget.c \
@@ -133,11 +143,13 @@ metacity_LDADD=@METACITY_LIBS@ $(EFENCE)
metacity_theme_viewer_LDADD= @METACITY_LIBS@ libmetacity-private.la
metacity_dialog_LDADD=@METACITY_LIBS@
testboxes_SOURCES=util.h util.c boxes.h boxes.c testboxes.c
testgradient_SOURCES=gradient.h gradient.c testgradient.c
testasyncgetprop_SOURCES=async-getprop.h async-getprop.c testasyncgetprop.c
noinst_PROGRAMS=testgradient testasyncgetprop
noinst_PROGRAMS=testboxes testgradient testasyncgetprop
testboxes_LDADD= @METACITY_LIBS@
testgradient_LDADD= @METACITY_LIBS@
testasyncgetprop_LDADD= @METACITY_LIBS@

View File

@@ -66,7 +66,7 @@ struct _AgGetPropertyTask
unsigned long n_items;
unsigned long bytes_after;
unsigned char *data;
char *data;
Bool have_reply;
};
@@ -316,7 +316,7 @@ async_get_property_handler (Display *dpy,
/* there's padding to word boundary */
netbytes = ALIGN_VALUE (nbytes, 4);
if (nbytes + 1 > 0 &&
(task->data = (unsigned char *) Xmalloc ((unsigned)nbytes + 1)))
(task->data = (char *) Xmalloc ((unsigned)nbytes + 1)))
{
#ifdef DEBUG_SPEW
printf ("%s: already read %d bytes using %ld, more eating %ld more\n",
@@ -334,7 +334,7 @@ async_get_property_handler (Display *dpy,
netbytes = reply->nItems << 1;
netbytes = ALIGN_VALUE (netbytes, 4); /* align to word boundary */
if (nbytes + 1 > 0 &&
(task->data = (unsigned char *) Xmalloc ((unsigned)nbytes + 1)))
(task->data = (char *) Xmalloc ((unsigned)nbytes + 1)))
{
#ifdef DEBUG_SPEW
printf ("%s: already read %d bytes using %ld more, eating %ld more\n",
@@ -351,7 +351,7 @@ async_get_property_handler (Display *dpy,
nbytes = reply->nItems * sizeof (long);
netbytes = reply->nItems << 2; /* wire size is always 32 bits though */
if (nbytes + 1 > 0 &&
(task->data = (unsigned char *) Xmalloc ((unsigned)nbytes + 1)))
(task->data = (char *) Xmalloc ((unsigned)nbytes + 1)))
{
#ifdef DEBUG_SPEW
printf ("%s: already read %d bytes using %ld more, eating %ld more\n",
@@ -363,9 +363,9 @@ async_get_property_handler (Display *dpy,
*/
if (sizeof (long) == 8)
{
unsigned char *netdata;
unsigned char *lptr;
unsigned char *end_lptr;
char *netdata;
char *lptr;
char *end_lptr;
/* Store the 32-bit values in the end of the array */
netdata = task->data + nbytes / 2;
@@ -522,7 +522,6 @@ ag_task_create (Display *dpy,
{
AgGetPropertyTask *task;
xGetPropertyReq *req;
xError error;
AgPerDisplayData *dd;
/* Fire up our request */
@@ -543,8 +542,6 @@ ag_task_create (Display *dpy,
req->longOffset = offset;
req->longLength = length;
error.sequenceNumber = dpy->request;
/* Queue up our async task */
task = Xcalloc (1, sizeof (AgGetPropertyTask));
if (task == NULL)
@@ -587,7 +584,7 @@ ag_task_get_reply_and_free (AgGetPropertyTask *task,
int *actual_format,
unsigned long *nitems,
unsigned long *bytesafter,
unsigned char **prop)
char **prop)
{
Display *dpy;

View File

@@ -45,7 +45,7 @@ Status ag_task_get_reply_and_free (AgGetPropertyTask *task,
int *actual_format,
unsigned long *nitems,
unsigned long *bytesafter,
unsigned char **prop);
char **prop);
Bool ag_task_have_reply (AgGetPropertyTask *task);
Atom ag_task_get_property (AgGetPropertyTask *task);

View File

@@ -2,6 +2,7 @@
/*
* Copyright (C) 2002 Sun Microsystems Inc.
* Copyright (C) 2005, 2006 Elijah Newren
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
@@ -29,8 +30,8 @@ meta_bell_flash_screen (MetaDisplay *display,
MetaScreen *screen)
{
Window root = screen->xroot;
int width = screen->width;
int height = screen->height;
int width = screen->rect.width;
int height = screen->rect.height;
if (screen->flash_window == None)
{
@@ -77,6 +78,7 @@ meta_bell_flash_screen (MetaDisplay *display,
XFlush (display->xdisplay);
XSync (display->xdisplay, False);
XUnmapWindow (display->xdisplay, screen->flash_window);
XFreeGC (display->xdisplay, gc);
}
if (meta_prefs_get_focus_mode () != META_FOCUS_MODE_CLICK &&
@@ -250,5 +252,5 @@ void
meta_bell_notify_frame_destroy (MetaFrame *frame)
{
if (frame->is_flashing)
g_idle_remove_by_data (frame);
g_source_remove_by_funcs_user_data (&g_timeout_funcs, frame);
}

1812
src/boxes.c Normal file

File diff suppressed because it is too large Load Diff

263
src/boxes.h Normal file
View File

@@ -0,0 +1,263 @@
/* Simple box operations */
/*
* Copyright (C) 2005, 2006 Elijah Newren
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*/
#ifndef META_BOXES_H
#define META_BOXES_H
#include <glib.h>
#include "common.h"
typedef struct _MetaRectangle MetaRectangle;
struct _MetaRectangle
{
int x;
int y;
int width;
int height;
};
#define BOX_LEFT(box) ((box).x) /* Leftmost pixel of rect */
#define BOX_RIGHT(box) ((box).x + (box).width) /* One pixel past right */
#define BOX_TOP(box) ((box).y) /* Topmost pixel of rect */
#define BOX_BOTTOM(box) ((box).y + (box).height) /* One pixel past bottom */
typedef enum
{
FIXED_DIRECTION_X = 1 << 0,
FIXED_DIRECTION_Y = 1 << 1,
} FixedDirections;
typedef enum
{
META_EDGE_WINDOW,
META_EDGE_XINERAMA,
META_EDGE_SCREEN
} MetaEdgeType;
typedef struct _MetaEdge MetaEdge;
struct _MetaEdge
{
MetaRectangle rect; /* width or height should be 1 */
MetaDirection side_type; /* should only have 1 of the 4 directions set */
MetaEdgeType edge_type;
};
/* Output functions -- note that the output buffer had better be big enough:
* rect_to_string: RECT_LENGTH
* region_to_string: (RECT_LENGTH+strlen(separator_string)) *
* g_list_length (region)
* edge_to_string: EDGE_LENGTH
* edge_list_to_...: (EDGE_LENGTH+strlen(separator_string)) *
* g_list_length (edge_list)
*/
#define RECT_LENGTH 27
#define EDGE_LENGTH 37
char* meta_rectangle_to_string (const MetaRectangle *rect,
char *output);
char* meta_rectangle_region_to_string (GList *region,
const char *separator_string,
char *output);
char* meta_rectangle_edge_to_string (const MetaEdge *edge,
char *output);
char* meta_rectangle_edge_list_to_string (
GList *edge_list,
const char *separator_string,
char *output);
/* Function to make initializing a rect with a single line of code easy */
MetaRectangle meta_rect (int x, int y, int width, int height);
/* Basic comparison functions */
int meta_rectangle_area (const MetaRectangle *rect);
gboolean meta_rectangle_intersect (const MetaRectangle *src1,
const MetaRectangle *src2,
MetaRectangle *dest);
gboolean meta_rectangle_equal (const MetaRectangle *src1,
const MetaRectangle *src2);
/* overlap is similar to intersect but doesn't provide location of
* intersection information.
*/
gboolean meta_rectangle_overlap (const MetaRectangle *rect1,
const MetaRectangle *rect2);
/* vert_overlap means ignore the horizontal location and ask if the
* vertical parts overlap. An alternate way to think of it is "Does there
* exist a way to shift either rect horizontally so that the two rects
* overlap?" horiz_overlap is similar.
*/
gboolean meta_rectangle_vert_overlap (const MetaRectangle *rect1,
const MetaRectangle *rect2);
gboolean meta_rectangle_horiz_overlap (const MetaRectangle *rect1,
const MetaRectangle *rect2);
/* could_fit_rect determines whether "outer_rect" is big enough to contain
* inner_rect. contains_rect checks whether it actually contains it.
*/
gboolean meta_rectangle_could_fit_rect (const MetaRectangle *outer_rect,
const MetaRectangle *inner_rect);
gboolean meta_rectangle_contains_rect (const MetaRectangle *outer_rect,
const MetaRectangle *inner_rect);
/* Resize old_rect to the given new_width and new_height, but store the
* result in rect. NOTE THAT THIS IS RESIZE ONLY SO IT CANNOT BE USED FOR
* A MOVERESIZE OPERATION (that simplies the routine a little bit as it
* means there's no difference between NorthWestGravity and StaticGravity.
* Also, I lied a little bit--technically, you could use it in a MoveResize
* operation if you muck with old_rect just right).
*/
void meta_rectangle_resize_with_gravity (const MetaRectangle *old_rect,
MetaRectangle *rect,
int gravity,
int new_width,
int new_height);
/* find a list of rectangles with the property that a window is contained
* in the given region if and only if it is contained in one of the
* rectangles in the list.
*
* In this case, the region is given by taking basic_rect, removing from
* it the intersections with all the rectangles in the all_struts list,
* then expanding all the rectangles in the resulting list by the given
* amounts on each side.
*
* See boxes.c for more details.
*/
GList* meta_rectangle_get_minimal_spanning_set_for_region (
const MetaRectangle *basic_rect,
const GSList *all_struts);
/* Expand all rectangles in region by the given amount on each side */
GList* meta_rectangle_expand_region (GList *region,
const int left_expand,
const int right_expand,
const int top_expand,
const int bottom_expand);
/* Same as for meta_rectangle_expand_region except that rectangles not at
* least min_x or min_y in size are not expanded in that direction
*/
GList* meta_rectangle_expand_region_conditionally (
GList *region,
const int left_expand,
const int right_expand,
const int top_expand,
const int bottom_expand,
const int min_x,
const int min_y);
/* Free the list created by
* meta_rectangle_get_minimal_spanning_set_for_region()
* or
* meta_rectangle_find_onscreen_edges ()
* or
* meta_rectangle_find_nonintersected_xinerama_edges()
*/
void meta_rectangle_free_list_and_elements (GList *filled_list);
/* could_fit_in_region determines whether one of the spanning_rects is
* big enough to contain rect. contained_in_region checks whether one
* actually contains it.
*/
gboolean meta_rectangle_could_fit_in_region (
const GList *spanning_rects,
const MetaRectangle *rect);
gboolean meta_rectangle_contained_in_region (
const GList *spanning_rects,
const MetaRectangle *rect);
/* Make the rectangle small enough to fit into one of the spanning_rects,
* but make it no smaller than min_size.
*/
void meta_rectangle_clamp_to_fit_into_region (
const GList *spanning_rects,
FixedDirections fixed_directions,
MetaRectangle *rect,
const MetaRectangle *min_size);
/* Clip the rectangle so that it fits into one of the spanning_rects, assuming
* it overlaps with at least one of them
*/
void meta_rectangle_clip_to_region (const GList *spanning_rects,
FixedDirections fixed_directions,
MetaRectangle *rect);
/* Shove the rectangle into one of the spanning_rects, assuming it fits in
* one of them.
*/
void meta_rectangle_shove_into_region(
const GList *spanning_rects,
FixedDirections fixed_directions,
MetaRectangle *rect);
/* Finds the point on the line connecting (x1,y1) to (x2,y2) which is closest
* to (px, py). Useful for finding an optimal rectangle size when given a
* range between two sizes that are all candidates.
*/
void meta_rectangle_find_linepoint_closest_to_point (double x1, double y1,
double x2, double y2,
double px, double py,
double *valx, double *valy);
/***************************************************************************/
/* */
/* Switching gears to code for edges instead of just rectangles */
/* */
/***************************************************************************/
/* Return whether an edge overlaps or is adjacent to the rectangle in the
* nonzero-width dimension of the edge.
*/
gboolean meta_rectangle_edge_aligns (const MetaRectangle *rect,
const MetaEdge *edge);
/* Compare two edges, so that sorting functions can put a list of edges in
* canonical order.
*/
gint meta_rectangle_edge_cmp (gconstpointer a, gconstpointer b);
/* Compare two edges, so that sorting functions can put a list of edges in
* order. This function doesn't separate left edges first, then right edges,
* etc., but rather compares only upon location.
*/
gint meta_rectangle_edge_cmp_ignore_type (gconstpointer a, gconstpointer b);
/* Removes an parts of edges in the given list that intersect any box in the
* given rectangle list. Returns the result.
*/
GList* meta_rectangle_remove_intersections_with_boxes_from_edges (
GList *edges,
const GSList *rectangles);
/* Finds all the edges of an onscreen region, returning a GList* of
* MetaEdgeRect's.
*/
GList* meta_rectangle_find_onscreen_edges (const MetaRectangle *basic_rect,
const GSList *all_struts);
/* Finds edges between adjacent xineramas which are not covered by the given
* struts.
*/
GList* meta_rectangle_find_nonintersected_xinerama_edges (
const GList *xinerama_rects,
const GSList *all_struts);
#endif /* META_BOXES_H */

810
src/c-screen.c Normal file
View File

@@ -0,0 +1,810 @@
/*
* Copyright (C) 2006 Red Hat, Inc.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*/
#include <config.h>
#ifdef HAVE_COMPOSITE_EXTENSIONS
#include <cm/ws.h>
#include <cm/stacker.h>
#include <cm/wsint.h>
#include <cm/drawable-node.h>
#include <cm/state.h>
#include <cm/magnifier.h>
#include <cm/square.h>
#include "screen.h"
#include "c-screen.h"
typedef struct WindowInfo WindowInfo;
struct WindowInfo
{
Window xwindow;
CmNode *node;
gboolean updates;
WsRectangle size;
};
struct MetaScreenInfo
{
WsDisplay *display;
CmStacker *stacker;
CmMagnifier *magnifier;
WsWindow *gl_window;
WsWindow *root_window;
WsScreen *screen;
MetaScreen *meta_screen;
GHashTable *window_infos_by_xid;
int repaint_id;
int idle_id;
WsWindow *selection_window;
};
#if 0
static void
update_frame_counter (void)
{
#define BUFSIZE 128
static GTimer *timer;
static double buffer [BUFSIZE];
static int next = 0;
if (!timer)
timer = g_timer_new ();
buffer[next++] = g_timer_elapsed (timer, NULL);
if (next == BUFSIZE)
{
int i;
double total;
next = 0;
total = 0.0;
for (i = 1; i < BUFSIZE; ++i)
total += buffer[i] - buffer[i - 1];
g_print ("frames per second: %f\n", 1 / (total / (BUFSIZE - 1)));
}
}
#endif
static void
dump_stacking_order (GList *nodes)
{
GList *list;
for (list = nodes; list != NULL; list = list->next)
{
CmDrawableNode *node = list->data;
if (node)
g_print ("%lx, ", WS_RESOURCE_XID (node->drawable));
}
g_print ("\n");
}
static gboolean
repaint (gpointer data)
{
MetaScreenInfo *info = data;
CmState *state;
#if 0
g_print ("repaint\n");
#endif
glViewport (0, 0,
info->meta_screen->rect.width,
info->meta_screen->rect.height);
glLoadIdentity();
#if 0
glClearColor (0, 0, 0, 1.0);
glClear (GL_COLOR_BUFFER_BIT);
#endif
ws_window_raise (info->gl_window);
#if 0
glDisable (GL_TEXTURE_2D);
glDisable (GL_TEXTURE_RECTANGLE_ARB);
glPolygonMode (GL_FRONT_AND_BACK, GL_FILL);
glColor4f (0.0, 1.0, 0.0, 1.0);
glRectf (-1.0, -1.0, 1.0, 1.0);
glFinish();
#endif
state = cm_state_new ();
cm_state_disable_depth_buffer_update (state);
cm_node_render (CM_NODE (info->magnifier), state);
cm_state_enable_depth_buffer_update (state);
g_object_unref (state);
ws_window_gl_swap_buffers (info->gl_window);
glFinish();
#if 0
dump_stacking_order (info->stacker->children);
#endif
info->idle_id = 0;
return FALSE;
}
static WindowInfo *
find_win_info (MetaScreenInfo *info,
Window xwindow)
{
WindowInfo *win_info =
g_hash_table_lookup (info->window_infos_by_xid, (gpointer)xwindow);
return win_info;
}
static CmNode *
find_node (MetaScreenInfo *info,
Window xwindow)
{
WindowInfo *win_info = find_win_info (info, xwindow);
if (win_info)
return win_info->node;
return NULL;
}
static GList *all_screen_infos;
MetaScreenInfo *
meta_screen_info_get_by_xwindow (Window xwindow)
{
GList *list;
for (list = all_screen_infos; list != NULL; list = list->next)
{
MetaScreenInfo *info = list->data;
if (find_node (info, xwindow))
return info;
}
return NULL;
}
MetaScreenInfo *
meta_screen_info_new (WsDisplay *display,
MetaScreen *screen)
{
MetaScreenInfo *scr_info = g_new0 (MetaScreenInfo, 1);
scr_info->screen = ws_display_get_screen_from_number (
display, screen->number);
scr_info->root_window = ws_screen_get_root_window (scr_info->screen);
scr_info->display = display;
scr_info->window_infos_by_xid =
g_hash_table_new_full (g_direct_hash, g_direct_equal,
NULL, g_free);
scr_info->meta_screen = screen;
all_screen_infos = g_list_prepend (all_screen_infos, scr_info);
return scr_info;
}
static char *
make_selection_name (MetaScreenInfo *info)
{
char *buffer;
buffer = g_strdup_printf ("_NET_WM_CM_S%d", info->meta_screen->number);
return buffer;
}
static void
on_selection_clear (WsWindow *window,
WsSelectionClearEvent *event,
gpointer data)
{
MetaScreenInfo *info = data;
char *buffer = make_selection_name (info);
if (strcmp (event->selection, buffer))
{
/* We lost the selection */
meta_screen_info_unredirect (info);
}
}
static WsWindow *
claim_selection (MetaScreenInfo *info)
{
WsWindow *window = ws_window_new (info->root_window);
char *buffer = make_selection_name (info);
#if 0
g_print ("selection window: %lx\n", WS_RESOURCE_XID (window));
#endif
ws_window_own_selection (window, buffer, WS_CURRENT_TIME);
g_signal_connect (window, "selection_clear_event", G_CALLBACK (on_selection_clear), info);
g_free (buffer);
return window;
}
static void
queue_paint (CmNode *node,
MetaScreenInfo *info)
{
#if 0
g_print ("queueing %s\n", G_OBJECT_TYPE_NAME (node));
#endif
meta_screen_info_queue_paint (info);
}
void
meta_screen_info_redirect (MetaScreenInfo *info)
{
WsWindow *root = ws_screen_get_root_window (info->screen);
WsRectangle source;
WsRectangle target;
WsServerRegion *region;
int screen_w;
int screen_h;
CmSquare *square;
#if 0
g_print ("redirecting %lx\n", WS_RESOURCE_XID (root));
#endif
ws_window_redirect_subwindows (root);
info->gl_window = ws_screen_get_gl_window (info->screen);
/* FIXME: This should probably happen in libcm */
ws_window_set_override_redirect (info->gl_window, TRUE);
region = ws_server_region_new (info->display);
ws_window_set_input_shape (info->gl_window, region);
g_object_unref (G_OBJECT (region));
ws_display_begin_error_trap (info->display);
ws_window_unredirect (info->gl_window);
ws_display_end_error_trap (info->display);
info->selection_window = claim_selection (info);
ws_window_map (info->gl_window);
info->stacker = cm_stacker_new ();
square = cm_square_new (0.3, 0.3, 0.8, 1.0);
cm_stacker_add_child (info->stacker, CM_NODE (square));
g_object_unref (square);
screen_w = ws_screen_get_width (info->screen);
screen_h = ws_screen_get_height (info->screen);
#if 0
g_print ("width: %d height %d\n", screen_w, screen_h);
#endif
source.x = (screen_w - (screen_w / 4)) / 2;
source.y = screen_h / 16;
source.width = screen_w / 4;
source.height = screen_h / 16;
target.x = 0;
target.y = screen_h - screen_h / 4;
target.width = screen_w;
target.height = screen_h / 4;
info->magnifier = cm_magnifier_new (CM_NODE (info->stacker), &source, &target);
g_object_unref (info->stacker);
if (g_getenv ("USE_MAGNIFIER"))
cm_magnifier_set_active (info->magnifier, TRUE);
else
cm_magnifier_set_active (info->magnifier, FALSE);
info->repaint_id =
g_signal_connect (info->magnifier, "need_repaint",
G_CALLBACK (queue_paint), info);
ws_display_sync (info->display);
}
void
meta_screen_info_unredirect (MetaScreenInfo *info)
{
WsScreen *ws_screen = info->screen;
WsWindow *root = ws_screen_get_root_window (ws_screen);
#if 0
g_print ("unredirecting %lx\n", WS_RESOURCE_XID (root));
#endif
g_signal_handler_disconnect (info->magnifier, info->repaint_id);
g_object_unref (info->magnifier);
ws_window_unredirect_subwindows (root);
#if 0
ws_window_unmap (info->gl_window);
#endif
ws_screen_release_gl_window (ws_screen);
ws_display_sync (info->display);
/* FIXME: libcm needs a way to guarantee that a window is destroyed,
* without relying on ref counting having it as a side effect
*/
g_object_unref (info->selection_window);
}
void
meta_screen_info_queue_paint (MetaScreenInfo *info)
{
#if 0
g_print ("queuing\n");
#endif
if (!info->idle_id)
info->idle_id = g_idle_add (repaint, info);
}
void
meta_screen_info_restack (MetaScreenInfo *info,
Window window,
Window above_this)
{
CmNode *window_node = find_node (info, window);
CmNode *above_node = find_node (info, above_this);
#if 0
g_print ("restack %lx over %lx \n", window, above_this);
#endif
#if 0
dump_stacking_order (info->stacker->children);
#endif
if (window_node == above_node)
return;
if (window_node && above_this == WS_RESOURCE_XID (info->gl_window))
{
cm_stacker_raise_child (info->stacker, window_node);
}
else if (window_node && above_this == None)
{
cm_stacker_lower_child (info->stacker, window_node);
}
else if (window_node && above_node)
{
cm_stacker_restack_child (info->stacker, window_node, above_node);
}
#if 0
else
g_print ("nothing happened\n");
#endif
#if 0
g_print ("done restacking; new order:\n");
#endif
#if 0
dump_stacking_order (info->stacker->children);
#endif
}
void
meta_screen_info_raise_window (MetaScreenInfo *info,
Window window)
{
CmNode *node = find_node (info, window);
if (node)
cm_stacker_raise_child (info->stacker, node);
}
void
meta_screen_info_set_size (MetaScreenInfo *info,
Window window,
gint x,
gint y,
gint width,
gint height)
{
CmDrawableNode *node = CM_DRAWABLE_NODE (find_node (info, window));
WindowInfo *winfo = find_win_info (info, window);
WsRectangle rect;
rect.x = x;
rect.y = y;
rect.width = width;
rect.height = height;
if (node)
{
WsRegion *shape;
if (winfo && winfo->updates)
{
WsWindow *window = WS_WINDOW (node->drawable);
WsDisplay *display = WS_RESOURCE (window)->display;
ws_display_begin_error_trap (display);
#if 0
g_print ("meta screen info set: %d %d %d %d\n",
x, y, width, height);
#endif
cm_drawable_node_set_geometry (CM_DRAWABLE_NODE (node), &rect);
shape = ws_window_get_output_shape (window);
cm_drawable_node_set_shape (node, shape);
ws_region_destroy (shape);
if (rect.width != winfo->size.width ||
rect.height != winfo->size.height)
{
cm_drawable_node_update_pixmap (node);
}
winfo->size = rect;
ws_display_end_error_trap (display);
}
}
}
static void
print_child_titles (WsWindow *window)
{
GList *children = ws_window_query_subwindows (window);
GList *list;
int i;
g_print ("window: %lx %s\n", WS_RESOURCE_XID (window), ws_window_query_title (window));
i = 0;
for (list = children; list != NULL; list = list->next)
{
WsWindow *child = list->data;
g_print (" %d adding: %lx %s\n", i++, WS_RESOURCE_XID (child), ws_window_query_title (child));
}
}
static WindowInfo *
window_info_new (Window xwindow,
CmNode *node)
{
WindowInfo *win_info = g_new0 (WindowInfo, 1);
win_info->xwindow = xwindow;
win_info->node = node;
win_info->updates = TRUE;
return win_info;
}
static gboolean
has_type (WsWindow *window, const char *check_type)
{
gchar **types = ws_window_get_property_atom_list (window, "_NET_WM_WINDOW_TYPE");
int i;
gboolean result;
if (!types)
return FALSE;
result = FALSE;
for (i = 0; types[i] != NULL; ++i)
{
gchar *type = types[i];
g_print ("type: %s\n", type);
if (strcmp (type, check_type) == 0)
{
result = TRUE;
break;
}
}
g_strfreev (types);
return result;
}
void
meta_screen_info_add_window (MetaScreenInfo *info,
Window xwindow)
{
CmNode *node;
WsDrawable *drawable;
WsRectangle geometry;
double alpha = 1.0;
ws_display_begin_error_trap (info->display);
node = find_node (info, xwindow);
#if 0
g_print ("lookup %lx\n", xwindow);
#endif
drawable = WS_DRAWABLE (ws_window_lookup (info->display, xwindow));
if (node)
goto out;
if (ws_window_query_input_only (WS_WINDOW (drawable)))
goto out;
if (WS_WINDOW (drawable) == info->gl_window ||
WS_WINDOW (drawable) == info->screen->overlay_window)
{
#if 0
g_print ("gl window\n");
#endif
goto out;
}
ws_drawable_query_geometry (drawable, &geometry);
node = CM_NODE (cm_drawable_node_new (drawable, &geometry));
#if 0
g_print ("alpha: %f\n", alpha);
#endif
cm_drawable_node_set_alpha (node, alpha);
#if 0
print_child_titles (WS_WINDOW (drawable));
#endif
cm_stacker_add_child (info->stacker, node);
g_hash_table_insert (info->window_infos_by_xid,
(gpointer)xwindow,
window_info_new (xwindow, node));
g_object_unref (node);
out:
if (node)
{
#if 0
g_print ("drawable %lx is now ", WS_RESOURCE_XID (drawable));
#endif
if (ws_window_query_mapped (WS_WINDOW (drawable)))
{
#if 0
g_print ("mapped\n");
#endif
cm_drawable_node_unset_patch (node);
#if 0
g_print ("set alpha %f\n", alpha);
#endif
if (has_type (drawable, "_NET_WM_WINDOW_TYPE_DROPDOWN_MENU"))
{
#if 0
g_print ("is menu\n");
#endif
alpha = 0.9;
}
else if (has_type (drawable, "_NET_WM_WINDOW_TYPE_POPUP_MENU"))
{
alpha = 0.9;
}
else
{
#if 0
g_print ("is not menu\n");
#endif
alpha = 1.0;
}
cm_drawable_node_set_alpha (node, alpha);
cm_drawable_node_set_viewable (node, TRUE);
cm_drawable_node_update_pixmap (node);
}
else
{
#if 0
g_print ("unmapped\n");
#endif
cm_drawable_node_set_viewable (node, FALSE);
}
}
ws_display_end_error_trap (info->display);
#if 0
g_print ("done checking\n");
#endif
return;
}
void
meta_screen_info_remove_window (MetaScreenInfo *info,
Window xwindow)
{
CmNode *node = find_node (info, xwindow);
#if 0
g_print ("removing %lx\n", xwindow);
#endif
if (node)
{
g_hash_table_remove (info->window_infos_by_xid, (gpointer)xwindow);
cm_stacker_remove_child (info->stacker, node);
}
}
void
meta_screen_info_set_updates (MetaScreenInfo *info,
Window xwindow,
gboolean updates)
{
WindowInfo *win_info = find_win_info (info, xwindow);
CmDrawableNode *node = CM_DRAWABLE_NODE (win_info->node);
#if 0
g_print ("setting updates to %s\n", updates? "on" : "off");
#endif
win_info->updates = updates;
if (node)
cm_drawable_node_set_updates (node, updates);
if (updates)
{
WsRectangle rect;
WsRegion *shape;
WsDisplay *display = WS_RESOURCE (node->drawable)->display;
ws_display_begin_error_trap (display);
ws_drawable_query_geometry (node->drawable, &rect);
cm_drawable_node_update_pixmap (node);
cm_drawable_node_set_geometry (node, &rect);
shape = ws_window_get_output_shape (WS_WINDOW (node->drawable));
cm_drawable_node_set_shape (node, shape);
ws_region_destroy (shape);
ws_display_end_error_trap (display);
}
}
void
meta_screen_info_set_patch (MetaScreenInfo *info,
Window xwindow,
CmPoint points[4][4])
{
CmDrawableNode *node = CM_DRAWABLE_NODE (find_node (info, xwindow));
if (node)
cm_drawable_node_set_patch (node, points);
}
void
meta_screen_info_unset_patch (MetaScreenInfo *info,
Window xwindow)
{
CmDrawableNode *node = CM_DRAWABLE_NODE (find_node (info, xwindow));
if (node)
cm_drawable_node_unset_patch (node);
}
void
meta_screen_info_set_alpha (MetaScreenInfo *info,
Window xwindow,
gdouble alpha)
{
CmDrawableNode *node = CM_DRAWABLE_NODE (find_node (info, xwindow));
#if 0
g_print ("alpha: %f\n", alpha);
#endif
cm_drawable_node_set_alpha (node, alpha);
}
void
meta_screen_info_get_real_size (MetaScreenInfo *info,
Window xwindow,
WsRectangle *size)
{
CmDrawableNode *node = CM_DRAWABLE_NODE (find_node (info, xwindow));
if (!size)
return;
cm_drawable_node_get_clipbox (node, size);
}
void
meta_screen_info_unmap (MetaScreenInfo *info,
Window xwindow)
{
CmDrawableNode *node = CM_DRAWABLE_NODE (find_node (info, xwindow));
#if 0
g_print ("unmapping: %lx\n", xwindow);
#endif
if (node)
cm_drawable_node_set_viewable (node, FALSE);
}
void
meta_screen_info_set_target_rect (MetaScreenInfo *info,
Window xwindow,
WsRectangle *rect)
{
CmDrawableNode *node = CM_DRAWABLE_NODE (find_node (info, xwindow));
if (node)
cm_drawable_node_set_scale_rect (node, rect);
}
void
meta_screen_info_set_explode (MetaScreenInfo *info,
Window xwindow,
gdouble level)
{
CmDrawableNode *node = CM_DRAWABLE_NODE (find_node (info, xwindow));
if (node)
{
#if 0
g_print ("level: %f\n", level);
#endif
cm_drawable_node_set_explosion_level (node, level);
}
}
void
meta_screen_info_hide_window (MetaScreenInfo *info,
Window xwindow)
{
CmDrawableNode *node = CM_DRAWABLE_NODE (find_node (info, xwindow));
cm_drawable_node_set_viewable (node, FALSE);
}
#endif

49
src/c-screen.h Normal file
View File

@@ -0,0 +1,49 @@
#include "screen.h"
typedef struct MetaScreenInfo MetaScreenInfo;
MetaScreenInfo *meta_screen_info_new (WsDisplay *display,
MetaScreen *screen);
MetaScreenInfo *meta_screen_info_get_by_xwindow (Window xwindow);
void meta_screen_info_destroy (MetaScreenInfo *scr_info);
void meta_screen_info_redirect (MetaScreenInfo *info);
void meta_screen_info_unredirect (MetaScreenInfo *info);
void meta_screen_info_add_window (MetaScreenInfo *scr_info,
Window xwindow);
void meta_screen_info_remove_window (MetaScreenInfo *scr_info,
Window xwindow);
void meta_screen_info_restack (MetaScreenInfo *scr_info,
Window window,
Window above_this);
void meta_screen_info_set_size (MetaScreenInfo *info,
Window window,
gint x,
gint y,
gint width,
gint height);
void meta_screen_info_raise_window (MetaScreenInfo *scr_info,
Window window);
void meta_screen_info_queue_paint (MetaScreenInfo *info);
void meta_screen_info_set_updates (MetaScreenInfo *info,
Window xwindow,
gboolean updates);
void meta_screen_info_set_patch (MetaScreenInfo *info,
Window xwindow,
CmPoint points[4][4]);
void meta_screen_info_unset_patch (MetaScreenInfo *info,
Window xwindow);
void meta_screen_info_set_alpha (MetaScreenInfo *info,
Window xwindow,
gdouble alpha);
void meta_screen_info_get_real_size (MetaScreenInfo *info,
Window xwindow,
WsRectangle *size);
void meta_screen_info_set_target_rect (MetaScreenInfo *info,
Window xwindow,
WsRectangle *rect);
void meta_screen_info_set_explode (MetaScreenInfo *info,
Window xwindow,
gdouble level);
void meta_screen_info_hide_window (MetaScreenInfo *info,
Window xwindow);

View File

@@ -2,6 +2,7 @@
/*
* Copyright (C) 2001 Havoc Pennington
* Copyright (C) 2005 Elijah Newren
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
@@ -64,7 +65,8 @@ typedef enum
META_MENU_OP_MOVE_LEFT = 1 << 13,
META_MENU_OP_MOVE_RIGHT = 1 << 14,
META_MENU_OP_MOVE_UP = 1 << 15,
META_MENU_OP_MOVE_DOWN = 1 << 16
META_MENU_OP_MOVE_DOWN = 1 << 16,
META_MENU_OP_RECOVER = 1 << 17
} MetaMenuOp;
typedef struct _MetaWindowMenu MetaWindowMenu;
@@ -114,6 +116,11 @@ typedef enum
/* Alt+Esc */
META_GRAB_OP_KEYBOARD_ESCAPING_NORMAL,
META_GRAB_OP_KEYBOARD_ESCAPING_DOCK,
META_GRAB_OP_KEYBOARD_ESCAPING_GROUP,
/* Alt+F6 */
META_GRAB_OP_KEYBOARD_TABBING_GROUP,
META_GRAB_OP_KEYBOARD_WORKSPACE_SWITCHING,
@@ -149,10 +156,18 @@ typedef enum
META_FOCUS_MODE_MOUSE
} MetaFocusMode;
typedef enum
{
META_FOCUS_NEW_WINDOWS_SMART,
META_FOCUS_NEW_WINDOWS_STRICT
} MetaFocusNewWindows;
typedef enum
{
META_ACTION_DOUBLE_CLICK_TITLEBAR_TOGGLE_SHADE,
META_ACTION_DOUBLE_CLICK_TITLEBAR_TOGGLE_MAXIMIZE,
META_ACTION_DOUBLE_CLICK_TITLEBAR_MINIMIZE,
META_ACTION_DOUBLE_CLICK_TITLEBAR_NONE,
META_ACTION_DOUBLE_CLICK_TITLEBAR_LAST
} MetaActionDoubleClickTitlebar;
@@ -184,6 +199,22 @@ typedef enum
META_VIRTUAL_MOD5_MASK = 1 << 14
} MetaVirtualModifier;
/* Relative directions or sides seem to come up all over the place... */
/* FIXME: Replace
* place.[ch]:MetaWindowEdgePosition,
* screen.[ch]:MetaScreenDirection,
* workspace.[ch]:MetaMotionDirection,
* with the use of MetaDirection.
*/
typedef enum
{
META_DIRECTION_LEFT = 1 << 0,
META_DIRECTION_RIGHT = 1 << 1,
META_DIRECTION_TOP = 1 << 2,
META_DIRECTION_BOTTOM = 1 << 3,
META_DIRECTION_UP = 1 << 2, /* Alternate name for TOP */
META_DIRECTION_DOWN = 1 << 3 /* Alternate name for BOTTOM */
} MetaDirection;
/* Function a window button can have. Note, you can't add stuff here
* without extending the theme format to draw a new function and
@@ -226,7 +257,3 @@ struct _MetaButtonLayout
(ycoord) < ((rect).y + (rect).height))
#endif

File diff suppressed because it is too large Load Diff

View File

@@ -25,6 +25,8 @@
#include "util.h"
#include "display.h"
typedef void (* MetaAnimationFinishedFunc) (gpointer data);
MetaCompositor* meta_compositor_new (MetaDisplay *display);
void meta_compositor_unref (MetaCompositor *compositor);
void meta_compositor_process_event (MetaCompositor *compositor,
@@ -35,22 +37,42 @@ void meta_compositor_add_window (MetaCompositor *compositor,
XWindowAttributes *attrs);
void meta_compositor_remove_window (MetaCompositor *compositor,
Window xwindow);
void meta_compositor_set_debug_updates (MetaCompositor *compositor,
gboolean debug_updates);
void meta_compositor_manage_screen (MetaCompositor *compositor,
MetaScreen *screen);
void meta_compositor_unmanage_screen (MetaCompositor *compositor,
MetaScreen *screen);
void meta_compositor_damage_window (MetaCompositor *compositor,
MetaWindow *window);
void meta_compositor_minimize (MetaCompositor *compositor,
MetaWindow *window,
int x,
int y,
int width,
int height,
MetaAnimationFinishedFunc finished_cb,
gpointer finished_data);
void
meta_compositor_set_updates (MetaCompositor *compositor,
MetaWindow *window,
gboolean updates);
void
meta_compositor_destroy (MetaCompositor *compositor);
void meta_compositor_begin_move (MetaCompositor *compositor,
MetaWindow *window,
MetaRectangle *initial,
int grab_x, int grab_y);
void meta_compositor_update_move (MetaCompositor *compositor,
MetaWindow *window,
int x, int y);
void meta_compositor_end_move (MetaCompositor *compositor,
MetaWindow *window);
void meta_compositor_free_window (MetaCompositor *compositor,
MetaWindow *window);
void meta_compositor_free_window (MetaCompositor *compositor,
MetaWindow *window);
#endif /* META_COMPOSITOR_H */

File diff suppressed because it is too large Load Diff

View File

@@ -2,6 +2,7 @@
/*
* Copyright (C) 2002 Red Hat, Inc.
* Copyright (C) 2005 Elijah Newren
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
@@ -28,32 +29,18 @@
typedef enum
{
META_RESIZE_LEFT_OR_TOP,
META_RESIZE_CENTER,
META_RESIZE_RIGHT_OR_BOTTOM
} MetaResizeDirection;
META_IS_CONFIGURE_REQUEST = 1 << 0,
META_DO_GRAVITY_ADJUST = 1 << 1,
META_IS_USER_ACTION = 1 << 2,
META_IS_MOVE_ACTION = 1 << 3,
META_IS_RESIZE_ACTION = 1 << 4
} MetaMoveResizeFlags;
void meta_window_constrain (MetaWindow *window,
MetaFrameGeometry *fgeom,
MetaFrameGeometry *orig_fgeom,
MetaMoveResizeFlags flags,
int resize_gravity,
const MetaRectangle *orig,
int x_move_delta,
int y_move_delta,
MetaResizeDirection x_direction,
int x_delta,
MetaResizeDirection y_direction,
int y_delta,
MetaRectangle *new);
MetaResizeDirection meta_x_direction_from_gravity (int gravity);
MetaResizeDirection meta_y_direction_from_gravity (int gravity);
#endif /* META_CONSTRAINTS_H */

Some files were not shown because too many files have changed in this diff Show More