Commit Graph

303 Commits

Author SHA1 Message Date
Milan Bouchet-Valat
4ef655ffce Don't print useless error message when app monitor config file does not exist
This warning was printed even when app monitoring was disabled. It's not needed anyay since we'll warn on saving if an error occurs.
2009-05-04 16:45:42 -04:00
Owen W. Taylor
b7d3640b49 Add missing include of <stdlib.h>
gnome-shell-plugin.c needs stdlib.h for exit()
2009-05-04 14:28:07 -04:00
Owen W. Taylor
3327a198e1 Add size negotiation to the tray icons
* Rename ShellGtkWindowActor to ShellGtkEmbed, and make it require
  a ShellEmbeddedWindow rather than a general GtkWindow.

* Add ShellEmbeddedWindow subclass of GtkWindow that bypasses most
  of the GtkWindow complexity for size negotiation, and calls out
  to a clutter actor instead; also automatically handle reparenting
  the GtkWindow into the stage window.

* Use the reworked ShellGtkEmbed in ShellTrayManager, this simplifies
  the code a bit, and more importantly results in the tray icons
  having the correct size negotiation, rather than having a fixed
  24x24 size.

http://bugzilla.gnome.org/show_bug.cgi?id=580047
2009-05-04 14:24:05 -04:00
Owen W. Taylor
20e755023b Clean up underscores in function and variable names
Try to fix all places where we accidentally used foo_bar instead
of fooBar for function names, function parameters, and variables.

(Lucas Rocha pointed out one example.)

http://bugzilla.gnome.org/show_bug.cgi?id=581141
2009-05-04 13:50:49 -04:00
Dan Winship
63eea7dc20 Merge branch 'tab' 2009-05-04 13:01:22 -04:00
Dan Winship
81dbf5118f Implement MetaAltTabHandler
This is a fairly simple implementation, not all that different from
plain metacity's. Further improvements could be made to
js/ui/altTab.js in the future.

http://bugzilla.gnome.org/show_bug.cgi?id=580917
2009-05-04 13:01:03 -04:00
Owen W. Taylor
432ad0f451 Avoid clobbering the root window event mask
Calling gdk_window_get_events() then gdk_window_set_events() will
remove "exotic" X event masks that GDK doesn't know about like
SubstructureRedirectMask. A window manager that doesn't select
for SubstructureRedirectMask on the root window is no longer
really a window manager, so various Bad Things were happening.

We can just piggy-back on Mutter selecting for PropertyNotify
events on the root window, so removing the code works fine.

http://bugzilla.gnome.org/show_bug.cgi?id=580572 (reported by Mike Bursell)
2009-05-01 19:40:12 -04:00
Owen W. Taylor
4664fac566 Improve comments about startup notification
Do a better job at describe the problems in docDisplay.js related
to not reading the desktop files and finding StartupNotify=true.
Also, fix a typo.

http://bugzilla.gnome.org/show_bug.cgi?id=580658
2009-05-01 16:21:00 -04:00
Owen W. Taylor
bb69afc830 Set the workspace when launching apps
main.js: Add create_app_launch_context() with code from appDisplay;
  additionally set the workspace on the launch context to the current
  workspace so that the application launches on the right workspace
  even if the user switches before the app starts.

appDisplay.js docDisplay.js: Use Main.create_app_launch_context()

http://bugzilla.gnome.org/show_bug.cgi?id=580658 (Reported by Igor Vatavuk)
2009-05-01 15:18:51 -04:00
Dan Winship
4a5873dd22 Create a more extensible/organized strut/input_area management system.
Now code can call Main.addShellActor(actor) to declare that that actor
is part of the shell, and so it should (a) be protected by wm struts, and
(b) be part of the stage input area, and then that code automatically
deals with updating if the actor changes size or visibility.
2009-04-30 14:57:13 -04:00
Milan Bouchet-Valat
63821f1ae7 use application monitoring to show most used apps in the menu
The menu is filled with apps that are know to ShellAppMonitor, and then with default apps if there are not enough of them.
2009-04-29 11:05:03 -04:00
Milan Bouchet-Valat
216db2bb12 add GConf option to disable app monitoring
This option only disables timers, so that already collected is still provided to e.g. appDisplay. IMO that's required for privacy concerns...
2009-04-29 11:05:03 -04:00
Milan Bouchet-Valat
f4f92a879c application monitoring base object
The new ShellAppMonitor object is responsible for tracking active applications and store statistics.

http://bugzilla.gnome.org/show_bug.cgi?id=570899
2009-04-29 11:05:03 -04:00
Milan Bouchet-Valat
17a4a3a949 use a global config dir (for app monitor)
Ensure a configuration dir exists, and provide its path as 'configdir' property of ShellGlobal. This will be used by ShellAppMonitor.
2009-04-29 11:05:03 -04:00
Marina Zhurakhinskaya
81b3f7cf44 Bug 580528 – The panel should show today's date
Show the date in the panel so that it looks more polished.

Suggested by Josh Adams.
2009-04-28 17:29:53 -04:00
Marina Zhurakhinskaya
82cf98740a Bug 578178 – Show large previews for image files
Use the actual image from the file for expanded mode previews for image files. Use the pixbuf loader to set the appropriate image size as soon as the image is prepared, but before it is loaded, to avoid loading large images. Apply the pixbuf orientation setting so that the image is properly rotated. Preserve the original size of the image if its dimensions are smaller than the space available.

Make sure we provide the accurate available width for the details actor. This
width has to exclude the padding and border width. Also provide the available height for the details actor.
2009-04-28 15:35:36 -04:00
Colin Walters
59b12687d4 Bug 573322 - Do box layout in int
This fixes some centering issues, e.g. in the search area.

This patch is from Havoc Pennington.
2009-04-27 13:48:56 -04:00
Owen W. Taylor
0b81a4a7e9 Use Meta-2.27.gir when building the plugin gir
Use Meta-2.27.gir; Mutter in git.gnome.org now generates that
version.
2009-04-25 11:56:09 -04:00
Dan Winship
59ac8d15ad Specify bindir explicitly when installing jhbuild
Works around the new default install dir (~/.local/bin) in the latest
git jhbuild.
2009-04-24 15:49:11 -04:00
Owen W. Taylor
b2a51db065 Switch from metacity-clutter to mutter
Switch our window manager dependency in the jhbuild moduleset from
fishsoup.net branch of metacity-clutter to mutter module on
git.gnome.org.
2009-04-24 10:26:42 -04:00
Marina Zhurakhinskaya
ac64e86932 Add xserver-xephyr to Debian/Ubuntu dependencies.
This is needed to be able to start the shell in Xephyr.
2009-04-22 16:17:50 -04:00
Colin Walters
b632801c7c Rename ShellAppMonitor to ShellAppSystem
This makes it clearer that really we're now an API, not just a
monitor.
2009-04-22 15:34:14 -04:00
Owen W. Taylor
56644dfada Close file descriptors on re-exec
Use code copied from GLib to close all file descriptors before we reexec ourselves
on the restart Alt-F2 command. This fixes serious memory leaks when we have mapped
graphics buffers.

http://bugzilla.gnome.org/show_bug.cgi?id=579776
2009-04-22 15:08:07 -04:00
Sander Dijkhuis
7c8cb8450c Bug 578584 - Use the wallpaper for the overlay background
The overlay looks nicer with the root window pixmap drawn on the
background. It is scaled up to twice the size, with positioning
based on the rule of thirds.

The sideshow animations shown when entering or leaving the
overlay and toggling the extended view were implemented by
Marina Zhurakhinskaya. They replace the old method of having a
black rectangle behind the workspaces that partly covers the
sideshow during transitions.

configure.ac: Add gdk-x11, clutter-x11 and clutter-glx modules.
overlay.js: Add a root window pixmap actor, make sideshow width
    definitions more logical, replace the way the sideshow
    animates when entering or leaving the overlay.
workspaces.js: Remove the backdrop, add helper functions for the
    overlay transitions.
shell-global.[ch]: Add a method that creates an actor displaying
    the root window pixmap and returning clones of it.
2009-04-22 02:46:36 +02:00
Owen W. Taylor
822ef09350 Refer to xulrunner-dev and python-dev on Debian/Ubuntu
In the build setup script using unversioned xulrunner-dev and
python-dev gives better compatibility with different operating
systems and versions than using xulrunner-1.9-dev and python2.5-dev.

http://bugzilla.gnome.org/show_bug.cgi?id=578773 (Siegfried Gevatter)
2009-04-20 18:04:44 -04:00
Colin Walters
61b6fd2f9c When removing all items from the display, ensure selection state is reset too
This avoids a problem where after a state change, we'd still think
something was selected.
2009-04-20 15:58:31 -04:00
Owen W. Taylor
3aeadee946 Set colormap on background pixmaps for a tray icons
We need to use gdk_drawable_set_colormap() before drawing with cairo
on a pixmap; otherwise cairo won't know what colors to use.
2009-04-18 17:09:11 -04:00
Owen W. Taylor
a0dcee1b81 Fix drawing of icons with alpha transparency
Icons with real alpha transparency weren't being drawn correctly
because the NaTrayIcon was being set redirected in addition to the
window holding it. And nothing drew the icon onto the window holding
it. Use the newly added na_tray_icon_set_composited() to fix.
2009-04-18 17:06:14 -04:00
Owen W. Taylor
58e718ac0c Allow more flexibility for NaTrayChild compositing
na-tray-child.[ch]: Add na_tray_child_set_composited() to allow the
 application to modify the behavior where gdk_window_set_composited(TRUE)
 is called for icons with alpha. Rename na_tray_child_is_composited() to
 na_tray_child_has_alpha() to better reflect the meaning and fix things
 so that it can be called at any time and not only after the icon is
 realized.
na-tray.c: Adapt to na_tray_child_is_composited() rename.

http://bugzilla.gnome.org/show_bug.cgi?id=579454
2009-04-18 17:05:14 -04:00
Owen W. Taylor
bb92791bd3 Sync whitespace with gnome-panel version of NaTray*
Propagate line-wrapping and other white-space changes from gnome-panel
to our copy of NaTrayChild and NaTrayManager.
2009-04-18 16:49:07 -04:00
Owen W. Taylor
c8fd1f99d5 Use single include for gtk+
Merge from gnome-panel

2008-12-09  Vincent Untz  <vuntz@gnome.org>

        * na-tray-manager.[ch]: use single include for gtk+
2009-04-18 16:49:07 -04:00
Owen W. Taylor
5963a00fc5 fix compilation warnings
Merge from gnome-panel

2008-12-09  Vincent Untz  <vuntz@gnome.org>

        * na-tray-child.c: (na_tray_child_realize): fix compilation warnings
2009-04-18 16:49:07 -04:00
Owen W. Taylor
5efb616acc Remove translatable string in a warning
Merge from gnome-panel

2008-12-09  Vincent Untz  <vuntz@gnome.org>

        * na-tray-child.c: (na_tray_child_size_request): remove translatable
        string in a warning
2009-04-18 16:49:07 -04:00
Owen W. Taylor
3de308ebe5 Download jhbuild from git
Switch gnome-shell-build-setup.sh to check out subversion from git
rather than the old subversion location.
2009-04-18 14:23:36 -04:00
Sander Dijkhuis
171ad80b43 Bug 578776 - Add gtkutil.js to the Makefile
(Corrected to be in alphabetical order)

Signed-off-by: Colin Walters <walters@verbum.org>
2009-04-13 16:03:01 -04:00
Colin Walters
5f01854c62 Bug 578807 - Menu selection not reset on mouse selection
Clean up how we handle transitions a bit so that in the
case of selection by mouse instead of keynav we correctly
reset state.
2009-04-13 15:41:13 -04:00
Colin Walters
a5a2112b31 Cleanup of search entry layout
This will be useful for later fine tuning.  We avoid some hard coded
offsetting in favor of using box layout.
2009-04-13 14:45:58 -04:00
Dan Winship
b153e4ed0f When using -g, reset terminal state on exit
Fixes various problems where gnome-shell would kill gdb and then leave
the terminal in a broken state.
2009-04-13 11:58:05 -04:00
Colin Walters
f5aed5127b Bug 578430 - Followup fix for docs
This commit follows up on 6760de9965c32f9f75901d3699aa7f2cb086f856
and adds the corresponding fix for "Less...".
2009-04-09 11:01:41 -04:00
Colin Walters
7ae278f206 Bug 578430 - Docs section regression
This fixes a bad merge which broke the docs section.
2009-04-09 10:58:58 -04:00
Owen W. Taylor
14498d80f1 Add libgnome-menu-dev for Ubuntu/Debian
gnome-shell-build-setup.sh add libgnome-menu-dev to the list of
required dependencies.
2009-04-09 10:32:21 -04:00
Marina Zhurakhinskaya
ed0f7de4c0 Add gnome-menus-devel to the Fedora build dependencies.
It's needed by the new code for displaying application categories.
2009-04-09 09:54:58 -04:00
Colin Walters
b199ca2518 Add missing "return true" from event handler 2009-04-08 16:06:11 -04:00
Colin Walters
df1e051207 Check the type of GMenu items we get to avoid a crash
We can't assume they're entries, and in this case they were
actually directories.
2009-04-08 10:54:27 -04:00
Colin Walters
3e33ee6481 Add missing gtkutil.js file from previous commit 2009-04-07 17:15:02 -04:00
Colin Walters
0a9226f7f2 Add a menu display to applications
ShellAppMonitor now depends on gmenu to load menus.

Use the menu data from ShellAppMonitor to show a menu list.

GenericDisplay implementations can now have a sidebar area.  We
handle keystrokes such as left/right explicitly.

Some internal API changes to account for the fact that a display
can have another filter in addition to the search.
2009-04-07 17:07:35 -04:00
Dan Winship
3c7f378e2f Don't use bash syntax pointlessly. Fixes this to work under real /bin/sh.
http://bugzilla.gnome.org/show_bug.cgi?id=578195
2009-04-07 09:37:29 -04:00
Siegfried Gevatter
0857377f82 Add support for respawning Compiz
If you start gnome-shell while Compiz is running, respawn it instead
of Metacity when gnome-shell ends.

http://bugzilla.gnome.org/show_bug.cgi?id=578148
2009-04-06 20:35:51 -04:00
Siegfried Gevatter
22835b35e7 Catch exception raised when Xephyr can't be found
If Xephyr isn't installed currently src/gnome-shell raises
an exception which isn't at all obvious without looking at
the source. This commit catches the exception and replaces
it with a more informative error message.
2009-04-06 10:42:05 -04:00
Dan Winship
2ea5012535 Disable gdmuser debugging messages (unless "gdm" is set in GNOME_SHELL_DEBUG)
http://bugzilla.gnome.org/show_bug.cgi?id=577855
2009-04-03 14:33:39 -04:00