Commit Graph

1792 Commits

Author SHA1 Message Date
Elijah Newren
16b9aff47c Fix a variety of focus race conditions in all focus modes, or at least
2004-10-04  Elijah Newren  <newren@math.utah.edu>

	Fix a variety of focus race conditions in all focus modes, or at
	least make them harder to trigger (fixes #152000)

	* src/core.[ch] (meta_core_user_lower_and_unfocus): add a
	timestamp parameter; pass it along to
	meta_workspace_focus_default_window

	* src/display.[ch] (meta_display_get_current_time_roundtrip): new
	function

	* src/display.c (event_callback): pass a timestamp to the
	meta_workspace_activate and meta_workspace_focus_default_window
	function calls

	* src/frames.c (meta_frames_button_press_event): pass a timestamp
	to meta_core_user_lower_and_unfocus

	* src/keybindings.c (handle_activate_workspace): pass a timestamp
	to meta_workspace_activate, (process_workspace_switch_grab): pass
	a timestamp to meta_workspace_focus_default_window and
	meta_workspace_activate, (handle_toggle_desktop): pass a timestamp
	to meta_workspace_focus_default_window,
	(do_handle_move_to_workspace): pass a timestamp to
	meta_workspace_activate_with_focus, (handle_workspace_switch):
	meta_workspace_activate

	* src/screen.c (meta_screen_new): pass a timestamp to
	meta_workspace_activate

	* src/window.c (meta_window_free): pass a timestamp to
	meta_workspace_focus_default_window, (idle_calc_showing): don't
	increment the focus sentinel here, (meta_window_minimize): pass a
	timestamp to meta_workspace_focus_default_window,
	(meta_window_client_message), pass a timestamp to
	meta_workspace_focus_default_window

	* src/workspace.h (meta_workspace_activate): add timestamp
	parameter, (meta_workspace_activate_with_focus): add timestamp
	parameter, (meta_workspace_focus_default_window): add timestamp
	parameter

	* src/workspace.c (meta_workspace_focus_mru_window): make this
	function take a timestamp and use it for meta_window_focus or
	XSetInputFocus, (meta_workspace_activate_with_focus): make this
	function take a timestamp and pass it along to meta_window_focus
	and meta_workspace_focus_default_window,
	(meta_workspace_activate): make this function take a timestamp and
	pass it to meta_workspace_activate_with_focus),
	(meta_workspace_focus_default_window): make this function take a
	timestamp, warn if its 0 but try to handle that case sanely, and
	pass the timestamp on to meta_window_focus or
	meta_workspace_focus_mru_window or XSetInputFocus
2004-10-04 20:32:59 +00:00
Nguyen Thai Ngoc Duy
7d4c302598 Updated vi.po 2004-09-29 01:47:42 +00:00
Adam Weinberger
5db3108815 Updated Canadian English translation.
* en_CA.po: Updated Canadian English translation.
2004-09-26 15:24:36 +00:00
Elijah Newren
7b1e571919 Focus the default window after the user dismisses the workspace switcher
2004-09-22  Elijah Newren  <newren@math.utah.edu>

	* src/keybindings.c (process_workspace_switch_grab): Focus the
	default window after the user dismisses the workspace switcher
	popup (fixes #123803; note that an alternate fix was made
	independently by David Baron for sloppy and mouse focus users)
2004-09-22 19:15:26 +00:00
Elijah Newren
3b9ec3ce50 Fix some uninitialized variable errors reported by valgrind (see #153338)
2004-09-22  Elijah Newren  <newren@math.utah.edu>

	Fix some uninitialized variable errors reported by valgrind (see
	#153338)

	* src/display.c (meta_display_open): initialize
	display->grab_resize_timeout_id, and display->grab_have_keyboard

	* src/ui.c (meta_ui_create_frame_window): initialize attrs.width
	and attrs.height
2004-09-22 18:57:36 +00:00
Alessio Frusciante
aa63e0884d Updated Italian translation. 2004-09-19 21:16:15 +00:00
Elijah Newren
7ee43e5a36 Don't focus a window that is minimized (fixes #147947)
2004-09-17  Elijah Newren  <newren@math.utah.edu>

	* src/workspace.c (meta_workspace_focus_mru_window): Don't focus a
	window that is minimized (fixes #147947)
2004-09-17 19:49:32 +00:00
Kjartan Maraas
43cc3b8606 A load of fixes of issues reported by sparse. Closes bug #152849
2004-09-17  Kjartan Maraas  <kmaraas@gnome.org>

	* src/bell.c: (meta_bell_flash_screen):
	* src/compositor.c:
	* src/effects.c: (meta_effects_draw_box_animation):
	* src/fixedtip.c: (meta_fixed_tip_show):
	* src/frame.c: (find_argb_visual):
	* src/frames.c: (unsigned_long_hash), (meta_frames_manage_window),
	(meta_frames_apply_shapes):
	* src/iconcache.c: (find_largest_sizes), (find_best_size):
	* src/keybindings.c: (meta_spawn_command_line_async_on_screen):
	* src/main.c: (main):
	* src/menu.c: (meta_window_menu_new):
	* src/prefs.c: (meta_prefs_get_visual_bell),
	(meta_prefs_bell_is_audible), (meta_prefs_get_visual_bell_type),
	(meta_prefs_get_action_double_click_titlebar),
	(meta_prefs_get_auto_raise), (meta_prefs_get_auto_raise_delay),
	(meta_prefs_get_reduced_resources):
	* src/screen.c: (meta_create_offscreen_window):
	* src/tabpopup.c: (meta_ui_tab_popup_get_selected):
	* src/theme-parser.c: (meta_theme_load):
	* src/theme.c: (meta_gtk_widget_get_font_desc):
	* src/tools/metacity-mag.c: (mouse_press), (begin_area_grab):
	* src/util.c: (meta_unsigned_long_hash): A load of fixes of issues
	reported by sparse. Closes bug #152849
2004-09-16 23:18:22 +00:00
Elijah Newren
9d9c744490 Remove some redundant code regarding focusing the default window (#152117)
2004-09-15  Elijah Newren  <newren@math.utah.edu>

	* src/display.c (event_callback): Remove some redundant code
	regarding focusing the default window (#152117)
2004-09-16 03:10:11 +00:00
Elijah Newren
63e1624bd7 Patch from Ken Harris in #135786 to focus a new default window when
2004-09-15  Elijah Newren  <newren@math.utah.edu>

	Patch from Ken Harris in #135786 to focus a new default window
	when lowering via middle-click on the frame.

	* src/core.[hc], src/frames.c: rename meta_core_user_lower to
	meta_core_user_lower_and_unfocus

	* src/core.c (meta_core_user_lower_and_unfocus): if in
	click-to-focus mode then also move the window to the back of the
	mru list and focus the new default window for the active workspace
2004-09-16 00:06:38 +00:00
Elijah Newren
cffe7e9566 Focus the no_focus_window if no suitable window is in the mru list (should
2004-09-15  Elijah Newren  <newren@math.utah.edu>

	Focus the no_focus_window if no suitable window is in the mru list
	(should fix the almost contrived extra issue found in #147475)

	* doc/how-to-get-focus-right.txt: We no longer need to lie about
	only focusing panels upon explicit request.

	* src/workspace.c: (meta_workspace_focus_top_window): removed this
	function--it was more code than needed and was unreliable anyway,
	(meta_workspace_focus_mru_window): if a suitable window isn't in
	the mru list, focus the no_focus_window instead of calling
	focus_top_window.
2004-09-15 16:53:20 +00:00
Elijah Newren
b8b647e346 Save the ChangeLog before committing this time. Grrrr.... 2004-09-15 16:43:31 +00:00
Elijah Newren
101a097f02 Prevent focus inconsistencies by only providing one focus method (fixes
2004-09-15  Elijah Newren  <newren@math.utah.edu>

	Prevent focus inconsistencies by only providing one focus method
	(fixes #151990)

	* src/screen.c (meta_screen_show_desktop): remove call to
	meta_workspace_focus_top_window (it was merely focusing a window
	that was going to be hidden anyway, and likely the one that
	already had focus)

	* src/workspace.[hc]: remove meta_workspace_focus_mru_window and
	meta_workspace_focus_top_window from workspace.h, make them static
	functions in workspace.c
2004-09-15 16:42:52 +00:00
Elijah Newren
5ac6fcad73 Remove race condition for focus window choice on window close followed by
2004-09-15  Elijah Newren  <newren@math.utah.edu>

	Remove race condition for focus window choice on window close
	followed by rapid mouse movement in sloppy and mouse focus modes
	(fixes #152000)

	* src/window.c (meta_window_free): Don't increment the focus
	sentinel for windows being freed, (idle_calc_showing): don't
	increment the focus sentinel for windows being minimized
2004-09-15 15:54:51 +00:00
Elijah Newren
a880f5d401 Fix unwanted loss of focus to the mouse window when using keynav (fixes
2004-09-15  Elijah Newren  <newren@math.utah.edu>

	Fix unwanted loss of focus to the mouse window when using keynav
	(fixes #101190)

	* src/display.c (event_callback): Ignore EnterNotify events with
	xcrossing.mode of either NotifyGrab or NotifyUngrab
2004-09-15 15:46:25 +00:00
Elijah Newren
4b9fe2cae7 Focus correct window after minimizing via the tasklist (fixes #128200; see
2004-09-15  Elijah Newren  <newren@math.utah.edu>

	Focus correct window after minimizing via the tasklist (fixes
	#128200; see also #107681)

	* src/display.h (struct _MetaDisplay): track the
	previously_focused_window

	* src/display.c (meta_display_open): initialize
	previously_focused_window

	* src/window.c (meta_window_free): clear the
	previously_focused_window if it's being freed,
	(meta_window_client_message): if we get a request to minimize the
	previously_focused_window and the focus_window is a dock or the
	desktop, focus the default window, (meta_window_notify_focus):
	update the previously_focused_window
2004-09-15 15:38:09 +00:00
Rob Adams
c188ae0954 post-release increment
2004-09-13  Rob Adams  <readams@readams.net>

	* configure.in: post-release increment
2004-09-14 02:04:48 +00:00
Rob Adams
b7323c9859 bump version number
2004-09-13  Rob Adams  <readams@readams.net>

	* configure.in: bump version number

	* NEWS: 2.8.5 release

	* README: 2.8.5 release
2004-09-14 02:02:53 +00:00
Nguyen Thai Ngoc Duy
32a38f64e8 Updated vi.po 2004-09-14 01:20:21 +00:00
Gora Mohanty
a738000745 configure.in: Added 'or' to ALL_LINGUAS.
po/or.po: Updated Oriya translation.
2004-09-13 21:52:43 +00:00
Paisa Seeluangsawat
7e0bc1e387 Updated Thai translation.
2004-09-12  Paisa Seeluangsawat  <paisa@users.sf.net>

	* th.po: Updated Thai translation.
2004-09-13 03:36:57 +00:00
Dafydd Harries
310f16e4da Updated Welsh translation. 2004-09-12 15:39:00 +00:00
Ivan Stojmirov
0cc258a4ef *** empty log message *** 2004-09-11 21:21:51 +00:00
Kwok-Koon Cheung
3f6f93ddc2 Updated traditional Chinese translation by GNOME HK Team.
* zh_TW.po: Updated traditional Chinese translation by GNOME HK Team.
2004-09-11 13:14:09 +00:00
Christophe Merlet
8b6e78800d Updated French translation. 2004-09-10 17:39:20 +00:00
Kwok-Koon Cheung
23f9090099 Updated traditional Chinese translation from GNOME HK Team 2004-09-08 22:26:31 +00:00
Raphael Higino
bd534f4412 Updating pt_BR translation 2004-09-08 16:05:04 +00:00
Arafat Medini
9dc40e3277 Updated Arabic translation
2004-09-08  Arafat Medini  <lumina@arabeyes.org>

	* ar.po: Updated Arabic translation
2004-09-08 12:57:32 +00:00
Elijah Newren
94b76b0762 Oops, panel and desktop can be focused by Ctrl-Alt-Tab too 2004-09-07 22:33:05 +00:00
Elijah Newren
96bb3fd89a Add a new write-up on making window focus consistent (see #152004)
2004-09-07  Elijah Newren  <newren@math.utah.edu>

	Add a new write-up on making window focus consistent (see #152004)

	* doc/how-to-get-focus-right.txt: New document

	* rationales.txt: Remove references to focus bugs, instead point
	to doc/how-to-get-focus-right.txt
2004-09-07 21:21:06 +00:00
Mugurel Tudor
4a69151d20 Updated Romanian translation
2004-09-07  Mugurel Tudor  <mugurelu@go.ro>

	* ro.po: Updated Romanian translation
2004-09-07 07:00:31 +00:00
Elijah Newren
5a25925606 Add bugs regarding window focus
2004-09-06  Elijah Newren  <newren@math.utah.edu>

	* rationales.txt: Add bugs regarding window focus
2004-09-06 18:02:37 +00:00
Miloslav Trmac
f0cb77ffc4 Updated Czech translation.
2004-09-05  Miloslav Trmac  <mitr@volny.cz>

	* cs.po: Updated Czech translation.
2004-09-05 15:14:14 +00:00
Baris Cicek
d12719dd59 Updated Turkish Translation
* tr.po: Updated Turkish Translation
2004-09-03 19:53:30 +00:00
N Jayaradha
178178e5e6 yet to proof read 2004-09-03 11:15:58 +00:00
N Jayaradha
4d1972d3b5 yet to proof read 2004-09-03 09:49:20 +00:00
Åsmund Skjæveland
2a9d9dc334 Updated Norwegian Nynorsk translation.
2004-08-31  Åsmund Skjæveland <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2004-08-30 23:16:43 +00:00
Elijah Newren
fed80bf081 2.8.4 release
2004-08-29  Elijah Newren  <newren@math.utah.edu>

	* NEWS: 2.8.4 release
2004-08-30 05:27:36 +00:00
Elijah Newren
8c7f81eac9 Disable focus-stealing-prevention for now; there are still some issues and
2004-08-29  Elijah Newren  <newren@math.utah.edu>

	* src/window.c (window_takes_focus_on_map): Disable
	focus-stealing-prevention for now; there are still some issues and
	hard code freeze is tomorrow...so this will have to wait until
	Gnome 2.10.
2004-08-30 04:56:07 +00:00
Kostas Papadimas
f3ffa919ee Updated Greek Translation. 2004-08-29 08:53:07 +00:00
Francisco Javier F. Serrador
0a3d3d6069 Updated Spanish translation
2004-08-28  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation
2004-08-28 14:59:58 +00:00
Havoc Pennington
19b808c4f5 add comment about broken assertion 2004-08-27 22:19:43 +00:00
Havoc Pennington
744efc95a1 disable NameWindowPixmap stuff always for now, it seemed kind of busted
2004-08-27  Havoc Pennington  <hp@redhat.com>

	* src/compositor.c (meta_compositor_new): disable NameWindowPixmap
	stuff always for now, it seemed kind of busted
	(paint_screen): don't grab the server during repaint, adds to the
	speed, though only slightly.

	* src/frames.c (meta_frames_set_window_background): factor out all
	the set_background stuff to one function; disable setting
	background to transparent, because it breaks existing themes. We
	need to add a flag in the theme XML file to say "start me with a
	transparent background"
2004-08-27 22:09:13 +00:00
Elijah Newren
522e9916b6 Prevent an assertion failure that can occur after increasing the number of
2004-08-27  Elijah Newren  <newren@math.utah.edu>

	Prevent an assertion failure that can occur after increasing the
	number of workspaces; also fix a warning and stacking order when a
	window is denied focus (fixes #150615)

	* src/window.c (meta_window_stack_just_below): the position of the
	window should be set equal to that of the one we want to be below,
	not 1 lower than that number

	* src/workspace.c (maybe_add_to_list): new function to add
	on_all_workspace windows to an mru_list, (meta_workspace_new):
	call maybe_add_to_list for all windows on the screen in order to
	initialize the mru_list
2004-08-27 17:22:54 +00:00
Havoc Pennington
b682a9f945 delete extra copy of find_argb_visual so things compile
2004-08-26  Havoc Pennington  <hp@redhat.com>

	* src/frame.c: delete extra copy of find_argb_visual so things
	compile

	* src/compositor.c (HAS_NAME_WINDOW_PIXMAP): copy the
	XCompositeNameWindowPixmap() stuff from xcompmgr, though I can't
	say I really know what it's supposed to help with (painting the
	window border?)
2004-08-27 03:27:43 +00:00
Havoc Pennington
a8fd516aa0 couple of cosmetic tweaks from resolving my local patch with the bugzilla
2004-08-26  Havoc Pennington  <hp@redhat.com>

	* src/frame.c, src/theme.c: couple of cosmetic tweaks from
	resolving my local patch with the bugzilla patch from the 8-19
	entry below
2004-08-27 02:24:48 +00:00
Havoc Pennington
1f7f29e059 move the have_xrender variable initialization up in the file since it can
2004-08-26  Havoc Pennington  <hp@redhat.com>

	* configure.in: move the have_xrender variable initialization up
	in the file since it can be set as part of composite check

2004-08-19  Havoc Pennington  <hp@redhat.com>

	Fixes from Rich Wareham

	* src/display.h (struct _MetaDisplay): add render extension check
	to the display

	* src/display.c: check for render

	* configure.in: don't build compositing manager by default, don't
	want any nasty surprises; check for render separately from
	compositing manager

	* src/frame.c: use an ARGB visual when available for the window
	frame, so we can be all cool-ass
2004-08-27 02:17:49 +00:00
Iñaki Larrañaga
0b497e95ed Updated Basque translation.
2004-08-26  Iñaki Larrañaga  <dooteo@euskalgnu.org>

        * eu.po:  Updated Basque translation.
2004-08-26 21:39:26 +00:00
Elijah Newren
044d8999a3 Make dialogs that Metacity shows follow focus-stealing-prevention
2004-08-25  Elijah Newren  <newren@math.utah.edu>

	Make dialogs that Metacity shows follow focus-stealing-prevention
	conventions. (fixes one issue in #149028; see comments 47-54)

	* src/delete.c (delete_ping_reply_func,
	delete_ping_timeout_func): Make callback functions take a
	timestamp arg, (delete_ping_timeout_func): pass the timestamp to
	metacity-dialog

	* src/display.c (meta_display_ping_timeout): add a timestamp to
	the call to the ping_timeout_func, (meta_display_ping_window,
	process_pong_message): add a timestamp to the call to the
	ping_reply_func

	* src/display.h (MetaWindowPingFunc typedef): add a timestamp to
	this function typedef

	* src/keybindings.c (error_on_command): require a timestamp and
	pass the timestamp on to metacity-dialog, (handle_run_command):
	pass a timestamp to error_on_command

	* src/metacity-dialog.c (copy_of_gdk_x11_window_set_user_time):
	new function (temporary; only for use while using gtk+-2.4),
	(kill_window_question, warn_about_no_sm_support,
	error_about_command): make these functions take a timestamp and
	call copy_of_gdk_x11_window_set_user_time, (main): require the
	first two args to the program to be "--timestamp <timestamp>"

	* src/session.c (warn_about_lame_clients_and_finish_inter): pass a
	timestamp of 0 to metacity-dialog to prevent focus (it's a popup
	not generated by and kind of user request).
2004-08-26 00:59:12 +00:00
Maxim Dziumanenko
07c406cad9 Updated Ukrainian translation.
2004-08-25  Maxim Dziumanenko <mvd@mylinux.com.ua>

	* Updated Ukrainian translation.
2004-08-25 09:19:16 +00:00