Commit Graph

349 Commits

Author SHA1 Message Date
Gustavo Giráldez
6617781f4f Use icon's instead of image's fill_type when type is META_DRAW_ICON.
2002-06-04  Gustavo Giráldez  <gustavo.giraldez@gmx.net>

	* src/theme.c (draw_op_as_pixbuf): Use icon's instead of image's
	fill_type when type is META_DRAW_ICON.
2002-06-04 12:35:34 +00:00
Havoc Pennington
966c399154 don't automatically fullscreen things opened fullscreen, because there's
2002-06-03  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_new): don't automatically fullscreen
	things opened fullscreen, because there's no GUI to un-fullscreen
	them.
2002-06-04 03:56:16 +00:00
Havoc Pennington
fb448b2f31 fix error message about bad aspect ratio name.
2002-06-03  Havoc Pennington  <hp@pobox.com>

	* src/theme-parser.c (parse_aspect_ratio): fix error message about
	bad aspect ratio name.
2002-06-04 02:15:38 +00:00
Havoc Pennington
85815f8188 test button aspect ratio instead of hardcoded button size, James feel free
2002-06-03  Havoc Pennington  <hp@pobox.com>

	* src/themes/Esco/metacity-theme-1.xml: test button aspect ratio
	instead of hardcoded button size, James feel free to revert if you
	don't like it this way.

	* src/theme-parser.c: parse the aspect_ratio element for button
	aspect ratios.

	* src/theme.h (struct _MetaFrameLayout): allow button sizes to be
	given as an aspect ratio derived from the titlebar height,
	instead of as a fixed size.

	* src/theme.c (meta_frame_layout_validate): validate new button
	sizing parameters

	* src/theme.c (meta_frame_layout_calc_geometry): use new button
	layout params
2002-06-04 02:13:00 +00:00
Hidetoshi Tajima
3e4253f23e put -lXext into SHAPE_LIBS
* configure.in (METACITY_LIBS): put -lXext into SHAPE_LIBS
2002-06-03 22:14:10 +00:00
Kjartan Maraas
400e82daa3 Someone forgot to mark the two strings in here for translation :)
2002-06-03  Kjartan Maraas  <kmaraas@gnome.org>

	* src/tools/metacity-properties.desktop.in: Someone forgot to mark
	the two strings in here for translation :)
2002-06-03 20:13:08 +00:00
Havoc Pennington
e28902b102 2.3.610
2002-06-02  Havoc Pennington  <hp@pobox.com>

	* configure.in: 2.3.610
2002-06-03 03:09:07 +00:00
Havoc Pennington
d5bcea27e3 move the remove_listener to finalize instead of destroy, thanks to Jayaraj
2002-06-01  Havoc Pennington  <hp@pobox.com>

	* src/frames.c (meta_frames_finalize): move the remove_listener
	to finalize instead of destroy, thanks to Jayaraj for tracking
	down the bug.
2002-06-02 00:24:31 +00:00
Havoc Pennington
d0e109f96c add some missing \n (meta_session_init): remove the #if 0 interact
2002-06-01  Havoc Pennington  <hp@pobox.com>

	* src/session.c: add some missing \n
	(meta_session_init): remove the #if 0 interact callback from our
	initial SmcOpenConnection call, this arg to SmcOpenConnection
	doesn't exist.
2002-06-01 17:03:25 +00:00
Havoc Pennington
9d68b98bc9 put in more debug spew about the session
2002-06-01  Havoc Pennington  <hp@pobox.com>

	* src/session.c: put in more debug spew about the session
2002-06-01 15:46:04 +00:00
Havoc Pennington
a242f622ea use $(prefix)/@DATADIRNAME@/locale for localedir to work with Solaris
2002-05-30  Havoc Pennington  <hp@pobox.com>

	* src/Makefile.am (INCLUDES): use $(prefix)/@DATADIRNAME@/locale
	for localedir to work with Solaris native gettext, patch from
	Hidetoshi Tajima

	* src/tools/Makefile.am: ditto
2002-06-01 15:00:25 +00:00
Havoc Pennington
c6b3408398 add MetaImageFillType and implement TILE in addition to the existing SCALE
2002-05-31  Havoc Pennington  <hp@redhat.com>

	* src/theme.c: add MetaImageFillType and implement TILE in
	addition to the existing SCALE

	* src/theme.h (struct _MetaDrawOp): remove no-longer-used "alpha"
	field
2002-05-31 22:03:34 +00:00
Havoc Pennington
d4b91dc654 now just uses meta_gradient_add_alpha (draw_op_as_pixbuf): implement alpha
2002-05-31  Havoc Pennington  <hp@redhat.com>

	* src/theme.c (multiply_alpha): now just uses
	meta_gradient_add_alpha
	(draw_op_as_pixbuf): implement alpha gradients for tint, gradient,
	and image draw ops, so I can implement garrett's stuff.

	* src/gradient.c (meta_gradient_add_alpha): new function to
	multiply the alpha channel of a pixbuf by an alpha gradient
2002-05-31 21:18:11 +00:00
Havoc Pennington
3a745537f0 verbose-log on startup whether we were compiled with various extensions
2002-05-30  Havoc Pennington  <hp@redhat.com>

	* src/main.c (main): verbose-log on startup whether we were
	compiled with various extensions

	* src/display.c (meta_display_queue_retheme_all_windows): reapply
	shape mask when changing themes, sucks to do it here though, makes
	theme changing slower. Needs fixing.

	* src/theme-parser.c (parse_toplevel_element): parse rounded
	corner options to frame_geometry

	* src/frames.c (meta_frames_apply_shapes): apply rounded corners
	if requested by the theme

	* configure.in (HAVE_SHAPE): check for shape extension
2002-05-31 00:02:54 +00:00
Stephen Browne
bfd67fadef Rip out code for adding image to the dialog 2002-05-30 10:53:32 +00:00
Stephen Browne
2f74af1c04 UI changes as per HCI instructions 2002-05-30 10:49:19 +00:00
Stephen Browne
49f9ba96cc Changed metacity-properties window title to match its menu entry and be more consistent with other capplets 2002-05-30 09:49:15 +00:00
Havoc Pennington
90ff51acdb improve error about failing to open session manager.
2002-05-29  Havoc Pennington  <hp@pobox.com>

	* src/session.c (meta_session_init): improve error about failing
	to open session manager.
	(shutdown_cancelled_callback): send SmcSaveYourselfDone when we
	get cancelled
	(interact_callback): implement an interact callback that complains
	about lame clients that can't be saved. Still somewhat buggy
	in that it sends InteractDone before the user has closed the
	dialog.
2002-05-30 03:54:10 +00:00
Havoc Pennington
737d3cbbf5 add a magnifier I'm using when making themes. Not installed.
2002-05-29  Havoc Pennington  <hp@redhat.com>

	* src/tools/metacity-mag.c: add a magnifier I'm using when making
	themes. Not installed.

	* src/tools/metacity-properties.c: reindentation, show window, add
	copyright info.

	* src/tools/metacity-properties.glade: make main window !visible
	on startup, to avoid funkiness.
2002-05-29 16:16:53 +00:00
Jacob Berkman
6aaf2738c9 dist .desktop.in files
2002-05-29  Jacob Berkman  <jacob@ximian.com>

	* src/tools/Makefile.am (EXTRA_DIST): dist .desktop.in files
2002-05-29 15:06:08 +00:00
Stephen Browne
31ba0b1f95 New config dialog for focus mode and autoraise 2002-05-29 11:54:12 +00:00
Havoc Pennington
68eb780c75 add code to also guess that client wants to come out of fullscreen, then
2002-05-29  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_move_resize_internal): add code to
	also guess that client wants to come out of fullscreen, then
	#if 0 the whole deal, I'm not sure it's such a good idea.
2002-05-29 04:17:40 +00:00
Havoc Pennington
03498549b2 guess if a window meant to be fullscreen, and if so put it in that state.
2002-05-29  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_move_resize_internal): guess if a
	window meant to be fullscreen, and if so put it in that state.
2002-05-29 04:14:15 +00:00
Havoc Pennington
6077c26cdf handle missing frame, prevents segv with undecorated windows. #83298
2002-05-28  Havoc Pennington  <hp@pobox.com>

	* src/window.c (redraw_icon): handle missing frame, prevents segv
	with undecorated windows. #83298
2002-05-29 03:54:00 +00:00
Havoc Pennington
0498d55314 Patch from Erwann Chenede for raise_or_lower keybinding
2002-05-28  Havoc Pennington  <hp@pobox.com>

        Patch from Erwann Chenede for raise_or_lower keybinding

	* src/display.c, src/common.h: POINT_IN_RECT moved to a common
	location, removed from here
	(meta_rectangle_intersect): move here and make it public

	* src/prefs.c: add raise_or_lower keybinding

	* src/stack.c (meta_stack_get_below, meta_stack_get_above): add an
	arg to only get windows within the same layer

	* src/keybindings.c (handle_raise_or_lower): add handling for a
	"raise window if obscured, else lower" keybinding
2002-05-29 03:11:24 +00:00
Havoc Pennington
4b5eda0b0a handle CWStackMode in configure requests (meta_window_new): if a window is
2002-05-28  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_configure_request): handle CWStackMode
	in configure requests
	(meta_window_new): if a window is opened at 0,0 and screen size,
	put it in the fullscreen state.
	(meta_window_new): remove old code that set the window position to
	0,0 if PPosition/USPosition unset, that will be handled by whether
	we place the window or not.
2002-05-29 02:22:04 +00:00
Abel Cheung
ceb2f700f5 New traditional Chinese translation.
2002-05-28  Abel Cheung  <maddog@linux.org.hk>

	* zh_TW.po: New traditional Chinese translation.
2002-05-28 11:45:48 +00:00
Havoc Pennington
aad6035c57 search for the window's screen by root window instead of Screen*, maybe it
2002-05-27  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_new): search for the window's screen
	by root window instead of Screen*, maybe it will help with
	bug #82664
2002-05-27 19:26:56 +00:00
Kjartan Maraas
a1c5f93ef0 Final touches 2002-05-27 15:51:41 +00:00
Kjartan Maraas
b0af92b1d8 Hook up intltoolize here. Initialize intltool. Add this. Add this too Hook
2002-05-27  Kjartan Maraas  <kmaraas@gnome.org>

	* autogen.sh: Hook up intltoolize here.
	* configure.in: Initialize intltool.
	* src/metacity.schemas.in: Add this.
	* src/metacity.desktop.in: Add this too
	* src/Makefile.am: Hook up intltool support for .schemas and .desktop.
	* Makefile.am: Dist the intltool files.
2002-05-27 15:45:26 +00:00
Anders Carlsson
068c16b162 Apparently someone thinks my name is Anders Carlsom. Well, it's not.
2002-05-27  Anders Carlsson  <andersca@gnu.org>

	* src/themes/Gorilla/metacity-theme-1.xml: Apparently someone
	thinks my name is Anders Carlsom. Well, it's not.
	(Thanks to Carl-Johan Kjellander for noticing.)
2002-05-27 14:04:19 +00:00
James M. Cape
91bf299f16 Remove borders from Esco theme as well (didn't know you could), apparently
2002-05-26  James M. Cape  <jcape@ignore-your.tv>

    * src/themes/Esco/metacity-theme-1.xml: Remove borders from
    Esco theme as well (didn't know you could), apparently fixed
    the problem where the spacing between the icon & the title
    got larger as the fontsize went up.
2002-05-27 11:08:22 +00:00
Havoc Pennington
0cbf47ca30 totally drop the borders off of maximized windows.
2002-05-26  Havoc Pennington  <hp@pobox.com>

	* src/themes/Atlanta/metacity-theme-1.xml: totally drop the
	borders off of maximized windows.
2002-05-26 16:16:06 +00:00
Havoc Pennington
a40a9eccf4 Patch from Gaute Lindkvist so you can't move the panel or desktop to only
2002-05-26  Havoc Pennington  <hp@pobox.com>

        Patch from Gaute Lindkvist so you can't move the panel or desktop
	to only one workspace.

	* src/keybindings.c (handle_move_to_workspace): don't allow moving
	window to another space if the window is always_sticky

	* src/window.c (recalc_window_features): set the always_sticky
	field for desktop/dock windows.
	(meta_window_show_menu): disable unsticking always sticky windows
	via the menus

	* src/menu.c (meta_window_menu_new): disable workspace items
	if requested
2002-05-26 15:54:38 +00:00
Matthias Warkus
e19d4c048a Added German translation 2002-05-26 13:17:01 +00:00
Erwann Chenede -
af845f4de7 allow key grabbing for unmodified keys (e.g F1, etc) fix #82630
2002-05-25 Erwann Chenede - <erwann.chenede@sun.com>

  * src/keybindings.c (rebuild_screen_binding_table,
 		       rebuild_window_binding_table,
		       meta_change_keygrab): allow key grabbing for
    unmodified keys (e.g F1, etc) fix #82630
2002-05-25 16:41:41 +00:00
Anders Carlsson
d466c615ed Take Xinerama screen edges into consideration.
2002-05-25  Anders Carlsson  <andersca@gnu.org>

	* src/place.c: (get_vertical_edges), (get_horizontal_edges):
	Take Xinerama screen edges into consideration.

	* src/screen.c: (meta_rectangle_intersect),
	(meta_screen_get_xinerama_for_window):
	* src/screen.h:
	Add a new function that returns the xinerama monitor that
	a window is on.
2002-05-25 16:30:14 +00:00
Havoc Pennington
cc3c995d80 follow windows to their new workspace
2002-05-24  Havoc Pennington  <hp@pobox.com>

	* src/window.c (menu_callback): follow windows to their new
	workspace

	* src/keybindings.c (handle_move_to_workspace): follow windows to
	their new workspace
2002-05-25 02:33:55 +00:00
Havoc Pennington
a4fe1ad960 add minimize window binding
2002-05-24  Havoc Pennington  <hp@pobox.com>

	* src/metacity.schemas: add minimize window binding

	* src/keybindings.c (handle_minimize_window): add minimize keybinding
2002-05-25 02:30:00 +00:00
Havoc Pennington
4f70698493 change how focusing windows on initial map works, so that we only steal
2002-05-24  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_show): change how focusing windows
	on initial map works, so that we only steal focus from our
	transient parent or from a panel/desktop, never from other
	normal windows.
2002-05-25 02:11:33 +00:00
Havoc Pennington
30ff4540d0 modify to ignore PPosition and USPosition once the window has been placed
2002-05-24  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_configure_request): modify to ignore
	PPosition and USPosition once the window has been placed
2002-05-25 02:03:09 +00:00
Anders Carlsson
2536b82084 Redraw the window frame when the icon changes. Fixes #78543, reported by
2002-05-24  Anders Carlsson  <andersca@gnu.org>

	* src/window.c: Redraw the window frame when the icon changes.
	Fixes #78543, reported by Kang Jeong-Hee.
2002-05-24 08:16:59 +00:00
Havoc Pennington
d70e08039c also filter out LeaveNotify with NotifyInferior
2002-05-23  Havoc Pennington  <hp@pobox.com>

	* src/display.c (event_callback): also filter out LeaveNotify
	with NotifyInferior
2002-05-24 03:09:21 +00:00
Jayaraj Rajappan
49fe8f0399 fix for bugzilla bug #72314, filter out LeaveNotify caused by grabs when
2002-05-23  Jayaraj Rajappan <jayaraj.rajappan@wipro.com>

	* src/display.c (event_callback): fix for bugzilla bug #72314,
	filter out LeaveNotify caused by grabs when in mouse focus mode.
2002-05-24 02:55:54 +00:00
Havoc Pennington
4e9ac83b15 clean up the font preference
2002-05-23  Havoc Pennington  <hp@pobox.com>

	* src/metacity.schemas: clean up the font preference

	* src/prefs.c: font pref

	* src/frames.c: pay attention to the font pref
2002-05-24 02:50:02 +00:00
Havoc Pennington
0f1f2283e7 Crack from Erwann
2002-05-23  Havoc Pennington  <hp@pobox.com>

        Crack from Erwann

	* src/metacity.schemas: add autoraise crackrock

	* src/display.c (event_callback): autoraise window if autoraise is
	enabled

	* src/prefs.c: autoraise crack
2002-05-24 02:23:46 +00:00
Havoc Pennington
2567ee81b8 fix positioning in fullscreen mode, patch from Gustavo Giráldez
2002-05-21  Havoc Pennington  <hp@redhat.com>

	* src/window.c (constrain_position): fix positioning in fullscreen
	mode, patch from Gustavo Giráldez
2002-05-21 21:02:33 +00:00
Alessio Frusciante
860a1298b5 Added Italian translation. 2002-05-20 19:40:27 +00:00
Pablo Saratxaga
7366527aa7 Added Catalan file 2002-05-20 13:17:52 +00:00
Havoc Pennington
009a439259 2.3.377
2002-05-17  Havoc Pennington  <hp@redhat.com>

	* configure.in: 2.3.377
2002-05-17 22:09:05 +00:00
Havoc Pennington
82b064ed7d fix it, maybe
2002-05-16  Havoc Pennington  <hp@pobox.com>

	* src/workspace.c (meta_workspace_get_neighbor): fix it, maybe
2002-05-17 01:48:57 +00:00
Havoc Pennington
bb35f88925 lock desktop to position 0,0
2002-05-16  Havoc Pennington  <hp@redhat.com>

	* src/window.c (constrain_position): lock desktop to position 0,0
2002-05-16 20:47:29 +00:00
Havoc Pennington
74cf783be3 don't focus dock, desktop, etc. windows on initial map, only windows that
2002-05-16  Havoc Pennington  <hp@redhat.com>

	* src/window.c (meta_window_show): don't focus dock, desktop,
	etc. windows on initial map, only windows that should have focus.
2002-05-16 19:08:20 +00:00
Havoc Pennington
5f65ca07d7 use the layout information to figure out up/down neighbors
2002-05-15  Havoc Pennington  <hp@pobox.com>

	* src/workspace.c (meta_workspace_get_neighbor): use the layout
	information to figure out up/down neighbors

	* src/display.c (event_callback): catch propertynotify on
	_NET_DESKTOP_LAYOUT

	* src/screen.c (meta_screen_update_workspace_layout): keep track
	of the layout of workspaces as set by the pager
2002-05-16 04:03:36 +00:00
James M. Cape
2c73ab41ed Minor tweak to minimize button.
2002-05-15  James M. Cape  <jcape@ignore-your.tv>

	* src/themes/Esco/metacity-theme-1.xml: Minor tweak to minimize
	button.
2002-05-15 07:35:47 +00:00
Havoc Pennington
53bddf9ceb add Esco theme from James Cape
2002-05-14  Havoc Pennington  <hp@pobox.com>

	* src/themes/Makefile.am (THEMES): add Esco theme from James Cape
2002-05-14 05:25:04 +00:00
Havoc Pennington
5151c5102d move pposition/usposition honoring code into here, instead of putting it
2002-05-12  Havoc Pennington  <hp@pobox.com>

	* src/place.c (meta_window_place): move pposition/usposition
	honoring code into here, instead of putting it in window.c.
	Makes focusing new windows work, and cleans things up a bit.
	#81585
2002-05-13 00:03:17 +00:00
Havoc Pennington
973662d5c3 remove stray conflict marker 2002-05-12 15:21:57 +00:00
Havoc Pennington
b94beb3289 turn on --g-fatal-warnings if METACITY_G_FATAL_WARNINGS env variable is
2002-05-12  Havoc Pennington  <hp@pobox.com>

	* src/main.c (main): turn on --g-fatal-warnings if
	METACITY_G_FATAL_WARNINGS env variable is set.
2002-05-12 14:50:05 +00:00
Anders Carlsson
af83598ad3 Add screen argument to meta_display_get_tab_next, since we only want
2002-05-11  Anders Carlsson  <andersca@gnu.org>

	* src/display.c: (find_tab_forward), (find_tab_backward),
	(meta_display_get_tab_next):
	* src/display.h:
	* src/keybindings.c: (handle_tab_forward), (handle_focus_previous):
	Add screen argument to meta_display_get_tab_next, since we only
	want windows on the same screen to appear in the tab chain.

	* src/screen.c: (meta_screen_new):
	Or the event mask with existing events since gtk+ may listen to
	certain events and we don't want to disable those events.

	(meta_screen_ensure_tab_popup):
	* src/tabpopup.c: (meta_ui_tab_popup_new):
	* src/tabpopup.h:
	Add a screen number argument to meta_ui_tab_popup_new so we
	can position the popup on the correct screen.
2002-05-11 06:59:54 +00:00
Havoc Pennington
41e99288b5 include locale.h, fix from Hidetoshi Tajima
2002-05-11  Havoc Pennington  <hp@pobox.com>

	* src/main.c: include locale.h, fix from Hidetoshi Tajima

	* src/window.c (meta_window_new): disable show desktop mode when a
	new window is managed.
2002-05-11 05:47:04 +00:00
Havoc Pennington
a3460b8ac8 keep the tooltip on the screen horizontally, #76825
2002-05-11  Havoc Pennington  <hp@pobox.com>

	* src/fixedtip.c (meta_fixed_tip_show): keep the tooltip
	on the screen horizontally, #76825

	* src/window.c (meta_window_handle_mouse_grab_op_event): end grab
	op _after_ doing the final update of the move or resize.
	Hopefully I didn't have a reason for the order I was using before.
2002-05-11 05:09:54 +00:00
Havoc Pennington
9598affa03 add override redirect test window
2002-05-10  Havoc Pennington  <hp@pobox.com>

	* src/tools/metacity-window-demo.c: add override redirect test
	window

	* src/stack.c (raise_window_relative_to_managed_windows): new
	function, used to avoid moving windows above override redirect
	popup windows.

	* src/display.c (event_callback): don't lower panels on
	LeaveNotify if they have focus, #70895
2002-05-11 04:44:34 +00:00
Havoc Pennington
2679d3cf00 when maximizing/fullscreening something with a grid, like a terminal,
2002-05-10  Havoc Pennington  <hp@pobox.com>

	* src/window.c (constrain_position): when maximizing/fullscreening
	something with a grid, like a terminal, center it in the
	maximization area in case it can't fill the whole area.
	#70554

	* src/main.c (main): use g_strerror() to get proper UTF-8.
2002-05-11 03:37:51 +00:00
Havoc Pennington
487c6cfaaa put LockMask into the ignored_modifier_mask so that caps lock doesn't mess
2002-05-10  Havoc Pennington  <hp@pobox.com>

	* src/keybindings.c (reload_modmap): put LockMask into the
	ignored_modifier_mask so that caps lock doesn't mess up
	keybindings.
2002-05-11 02:38:58 +00:00
Havoc Pennington
052a794427 if window is not mapped after the calc_showing, don't focus it, it's
2002-05-10  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_focus): if window is not mapped after
	the calc_showing, don't focus it, it's probably on another
	workspace or something.
2002-05-11 02:25:11 +00:00
Havoc Pennington
912afb6e6b DefaultScreen() returns the screen number not Screen*
2002-05-09  Havoc Pennington  <hp@redhat.com>

	* src/frames.c (show_tip_now): DefaultScreen() returns the screen
	number not Screen*

	* src/frame.c (meta_frame_sync_to_window): immediately repaint
	frame whenever we resize it, if we're inside a grab operation.

	* src/frames.c (meta_frames_repaint_frame): new function

	* src/window.c (meta_window_new): initialize window's colormap
	(meta_window_notify_focus): install the colormap for a window when
	it gets focus, uninstall on unfocus.

	* src/window.h (struct _MetaWindow): store window's colormap

	* src/display.c (event_callback): note changes to window colormap

	* src/frame.c (EVENT_MASK): add ColormapChangeMask
2002-05-09 22:34:00 +00:00
Havoc Pennington
6d2c558bd8 make Alt+button2 do a resize
2002-05-09  Havoc Pennington  <hp@redhat.com>

	* src/display.c (event_callback): make Alt+button2 do a resize
2002-05-09 21:22:01 +00:00
Anders Carlsson
8f5c12d76d #ifdef out call to gtk_window_set_screen, reported by Erwann Chenede.
2002-05-08  Anders Carlsson  <andersca@gnu.org>

	* src/fixedtip.c (meta_fixed_tip_show):
	#ifdef out call to gtk_window_set_screen, reported by
	Erwann Chenede.
2002-05-08 17:20:38 +00:00
Anders Carlsson
0494b044d5 Add multi-screen support. Also add patch by Erwann Chenede to make
2002-05-08  Anders Carlsson  <andersca@gnu.org>

	* configure.in:
	* src/display.c: (meta_display_open):
	* src/fixedtip.c: (meta_fixed_tip_show):
	* src/fixedtip.h:
	* src/frames.c: (meta_frames_new), (show_tip_now):
	* src/frames.h:
	* src/menu.c: (meta_window_menu_new):
	* src/ui.c: (meta_ui_new):
	Add multi-screen support. Also add patch by Erwann Chenede
	to make tooltips appear on the correct screen.
2002-05-08 16:24:28 +00:00
Anders Carlsson
3f7203a3a4 Doh, only update the tmp pointer when the screen matches. Fixes a segfault
2002-05-07  Anders Carlsson  <andersca@gnu.org>

	* src/workspace.c (set_work_area_hint): Doh, only update
	the tmp pointer when the screen matches. Fixes a segfault
	when running with multiple screens.
2002-05-07 17:23:31 +00:00
Anders Carlsson
9138b9aa3c Fix atom name; it's _NET_SHOW_DESKTOP, not _NET_WM_SHOW_DESKTOP.
2002-05-07  Anders Carlsson  <andersca@gnu.org>

	* src/display.c: (meta_display_open), (event_callback),
	(meta_display_update_show_desktop_hint):
	* src/display.h:
	* src/screen.c: (set_supported_hint):
	Fix atom name; it's _NET_SHOW_DESKTOP, not
	_NET_WM_SHOW_DESKTOP.

	* src/frames.c: (meta_frames_unmanage_window):
	Restore the mouse cursor to default when unmanaging a window.
2002-05-07 14:42:47 +00:00
Anders Carlsson
7b9877258f Fix an off-by-one error.
2002-05-06  Anders Carlsson  <andersca@gnu.org>

	* src/display.c: (set_utf8_string_hint):
	Fix an off-by-one error.

	(meta_display_open),
	(event_callback), (meta_display_update_show_desktop_hint),
	(meta_display_show_desktop), (meta_display_unshow_desktop):
	* src/display.h:
	* src/screen.c: (set_supported_hint):
	Add support for _NET_WM_SHOW desktop, both as a message and
	as a root window property.
2002-05-06 06:11:46 +00:00
Havoc Pennington
41120f2a79 on unminimize, queue calc_showing on all transients
2002-05-05  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_unminimize): on unminimize, queue
	calc_showing on all transients
	(meta_window_activate): on activate, unminimize all a window's
	ancestors, not just the window itself.

	* src/workspace.c (set_work_area_hint): don't increment "tmp" by
	16 unsigned long, increment by 4

	* src/window.c (meta_window_free): if a window isn't minimized,
	restore its WM_STATE to NormalState instead of IconicState,
	since IconicState on initial window map means that the window
	should be minimized.

	* src/workspace.c (meta_workspace_invalidate_work_area): queue an
	idle to recompute the work area hint.
	(set_work_area_hint): we need 4*num_workspaces ints, not just
	num_workspaces.

	* src/screen.c (meta_screen_new): add work_area_idle field,
	handle it on screen shutdown

	* src/common.h (META_PRIORITY_PREFS_NOTIFY,
	META_PRIORITY_WORK_AREA_HINT): define some idle priorities

	* src/window.c (meta_window_calc_showing): hide windows if
	their parent window is minimized
	(meta_window_minimize): also queue_calc_showing on all
	transients of the window being minimized

	* src/place.c (constrain_placement): function to apply
	placement-time-only constraints, such as "not off the left of the
	screen"
	(meta_window_place): put dialogs down a bit over their parent,
	not right at the top.
	(meta_window_place): when centering a dialog, center it
	on the current xinerama screen, rather than the entire
	screen.

	* src/screen.c (meta_screen_get_current_xinerama): new function,
	but not implemented
2002-05-05 05:41:13 +00:00
Havoc Pennington
6f8a7f1870 chop out the portion of the region that's outside the screen.
2002-05-04  Havoc Pennington  <hp@pobox.com>

	* src/frames.c (meta_frames_paint_to_drawable): chop out the
	portion of the region that's outside the screen.

	* src/core.c (meta_core_get_screen_size): new function
	(meta_core_get_frame_extents): new function
2002-05-05 00:45:01 +00:00
Havoc Pennington
7fbbd0200f disable automatic GTK double buffering, since it resulted in gigantic
2002-05-04  Havoc Pennington  <hp@pobox.com>

	* src/frames.c (meta_frames_init): disable automatic GTK double
	buffering, since it resulted in gigantic backing pixmaps the size
	of the whole screen.
	(meta_frames_paint_to_drawable): change to take a region argument;
	punch the client area out of the expose region, then iterate over
	rectangles in the region and draw each, manually doing
	begin_paint_rect. Results in 4 long thin backing pixmaps
	per frame repaint, instead of one large backing pixmap.
	Suggested by Owen.
2002-05-05 00:21:17 +00:00
Bastien Nocera
cf4ef8cab2 - Wrap-around workspaces (ie. when on the last workspace, "switch_to_workspace_right" goes back to the first one) 2002-05-05 00:11:29 +00:00
Anders Carlsson
011a7f77a6 Fix a spelling error and change switch_to_workspace_up and
2002-05-05  Anders Carlsson  <andersca@gnu.org>

	* src/metacity.schemas: Fix a spelling error and change
	switch_to_workspace_up and switch_to_workspace_down to use
	Ctrl+Alt since Nautilus uses Alt now.
2002-05-04 23:40:12 +00:00
Havoc Pennington
80fb12a0b9 correctly print things if the type_atom is unset (meta_window_new): with
2002-05-04  Havoc Pennington  <hp@pobox.com>

	* src/window.c (update_net_wm_type): correctly print things if the
	type_atom is unset
	(meta_window_new): with workarounds disabled, always allow
	self-placement for windows with PPosition or USPosition set.
2002-05-04 22:53:13 +00:00
Havoc Pennington
80c4897ced fix for automake 1.5, patch from Tomasz Kloczko
2002-05-03  Havoc Pennington  <hp@redhat.com>

	* src/Makefile.am: fix for automake 1.5, patch from Tomasz Kloczko
2002-05-03 18:40:16 +00:00
Laszlo Peter
c56914dd5d add the X libs to METACITY_MESSAGE_LIBS and METACITY_WINDOW_DEMO_LIBS
2002-05-03  Laszlo Peter  <laca@sun.com>

	* configure.in: add the X libs to METACITY_MESSAGE_LIBS and
	METACITY_WINDOW_DEMO_LIBS
2002-05-03 11:40:04 +00:00
Havoc Pennington
559f6e8f19 updates
2002-05-02  Havoc Pennington  <hp@redhat.com>

	* README: updates

	* configure.in: 2.3.233
2002-05-02 22:40:49 +00:00
Bastien Nocera
718b077b82 - change the default for switch_to_workspace_* to be <Control><Alt>arrow as just <Alt>arrow collides with some apps (especially web browsers) 2002-05-02 16:59:52 +00:00
Havoc Pennington
14dccacfde Xlib doesn't like NULL for out arguments; fix for #80472 from lbedford
2002-05-01  Havoc Pennington  <hp@redhat.com>

	* src/screen.c (meta_screen_new): Xlib doesn't like NULL for out
	arguments; fix for #80472 from lbedford
2002-05-01 16:31:58 +00:00
Havoc Pennington
82ceb7c837 finish mopping up mode_switch_mask field
2002-04-30  Havoc Pennington  <hp@pobox.com>

	* src/keybindings.c: finish mopping up mode_switch_mask field

	* src/display.h (struct _MetaDisplay): remove mode_switch_mask
	field
2002-05-01 03:33:06 +00:00
Havoc Pennington
03481ae2d0 don't try to decorate toolbars.
2002-04-30  Havoc Pennington  <hp@pobox.com>

	* src/window.c (recalc_window_features): don't try to decorate
	toolbars.

	* src/tools/metacity-window-demo.c: add menu and toolbar tests

	* src/place.c (meta_window_place): only dialogs should be centered
	over parent, not anything with transient for set.

	* src/window.c (meta_window_configure_request): become more
	fascist about window positioning if workarounds are disabled, and
	less fascist if they are enabled.

	* src/metacity.schemas: add a "disable_workarounds" option.  Kind
	of crack-smoking. But we just can't get all applications
	fixed. And I need no-workarounds mode to monitor which apps are
	broken and what needs fixing in specs.

	* src/window.c (meta_window_configure_request): always allow
	windows to resize themselves

	* src/keybindings.c (reload_modmap): don't filter out Mode_switch,
	apparently some people bind window manager shortcuts to that.
2002-05-01 03:23:46 +00:00
Havoc Pennington
17b4eab4d4 oops, fix maximization. Pointed out by Gustavo Giráldez
2002-04-30  Havoc Pennington  <hp@redhat.com>

	* src/window.c (constrain_position): oops, fix
	maximization. Pointed out by Gustavo Giráldez
2002-04-30 19:52:30 +00:00
Jonathan Blandford
cb1b7deefa give Maximize/Unmaximize and Shade/Unshade the same mnemonic for
Tue Apr 30 06:24:09 2002  Jonathan Blandford  <jrb@gnome.org>

	* src/menu.c: give Maximize/Unmaximize and Shade/Unshade the same
	mnemonic for consistency's sake.
2002-04-30 11:00:53 +00:00
Havoc Pennington
cd40cc9edb require 36 pixels onscreen so you typically get a sliver of titlebar,
2002-04-29  Havoc Pennington  <hp@redhat.com>

	* src/window.c (TITLEBAR_LENGTH_ONSCREEN): require 36 pixels
	onscreen so you typically get a sliver of titlebar, suggested by
	tigert.  Should still fix this to consider actual theme geometry.
	(constrain_position): change to allow movement off the left
2002-04-29 21:29:51 +00:00
Havoc Pennington
e8267b20fe always raise windows on focus click, regardless of focus mode.
2002-04-29  Havoc Pennington  <hp@redhat.com>

	* src/display.c (event_callback): always raise windows on focus
	click, regardless of focus mode.
2002-04-29 20:20:38 +00:00
Havoc Pennington
c64ada94a5 2.3.144
2002-04-29  Havoc Pennington  <hp@redhat.com>

	* configure.in: 2.3.144
2002-04-29 18:09:24 +00:00
Havoc Pennington
a32503a75a don't leak the PangoContext
2002-04-29  Havoc Pennington  <hp@pobox.com>

	* src/ui.c (meta_ui_init): don't leak the PangoContext
2002-04-29 06:08:59 +00:00
Anders Carlsson
53268f985f Add support for setting the _NET_WM_WORKAREA hint. No code does it yet
2002-04-28  Anders Carlsson  <andersca@gnu.org>

	* src/display.c: (meta_display_open):
	* src/display.h:
	* src/screen.c: (set_supported_hint):
	* src/workspace.c: (set_number_of_spaces_hint),
	(set_workarea_hint):
	Add support for setting the _NET_WM_WORKAREA hint. No code
	does it yet though.
2002-04-28 15:47:21 +00:00
Havoc Pennington
e4e200a1dc remove caveats about keybindings
2002-04-28  Havoc Pennington  <hp@pobox.com>

	* README: remove caveats about keybindings

	* src/metacity.schemas: add schemas for all the keybindings.

	* src/window.c (meta_window_activate): if in "show desktop" mode
	when a window is activated, leave show desktop mode. So e.g.
	when you click on a task in the task list, show desktop mode
	will be turned off.

	* src/workspace.c (meta_workspace_get_neighbor): new function
	that doesn't quite work yet (needs support for getting
	workspace layout from the pager)

	* src/prefs.c: keybindings stuff

	* src/keybindings.c: make keybindings configurable

	* src/ui.c (meta_ui_parse_accelerator): new function
2002-04-28 04:52:26 +00:00
Havoc Pennington
e3156b007d fix to install gconf schemas
2002-04-25  Havoc Pennington  <hp@redhat.com>

	* metacity.spec: fix to install gconf schemas
2002-04-25 18:23:11 +00:00
jacob berkman
e691b664e3 g_file_get_contents() takes a gsize not int (fixes bus error on 64-bit
2002-04-25  jacob berkman  <jacob@ximian.com>

	* src/session.c (load_state): g_file_get_contents() takes a gsize
	not int (fixes bus error on 64-bit platforms)
2002-04-25 16:25:07 +00:00
Havoc Pennington
5fd4fb96f7 call setlocale ourselves because due to a GLib bug that sticks us in ASCII
2002-04-22  Havoc Pennington  <hp@redhat.com>

	* src/main.c (main): call setlocale ourselves because due to a
	GLib bug that sticks us in ASCII if you call g_print or anything
	prior to setlocale, and print a warning if we don't set the locale
	successfully. #79280

	* src/workspace.c (meta_workspace_get_work_area): be more verbose
	about how the work area was computed, to help find bugs here.

	* src/main.c (main): put locale and codeset in the log file
2002-04-22 18:18:38 +00:00
Havoc Pennington
8183c509d9 add error trap, fixes a possible BadWindow if a window closed itself in
2002-04-21  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_send_icccm_message): add error trap,
	fixes a possible BadWindow if a window closed itself in response
	to the delete window message prior to us sending the ping message.
2002-04-22 03:23:29 +00:00
Havoc Pennington
115c086eb9 never revert to user_rect.width, user_rect.height. Maybe fixes assorted
2002-04-21  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_move_resize_now): never revert to
	user_rect.width, user_rect.height. Maybe fixes assorted resize
	screwups e.g. with gnome-terminal.
2002-04-22 03:10:53 +00:00
Anders Carlsson
6603ee6084 Add padding if icon width and height differ.
2002-04-21  Anders Carlsson  <andersca@gnu.org>

	* src/iconcache.c (scaled_from_pixdata): Add padding if
	icon width and height differ.
2002-04-21 20:17:44 +00:00