Commit Graph

15976 Commits

Author SHA1 Message Date
Dan Winship
4850ea608f Track window adds/removes in the overlay. #568983
svn path=/trunk/; revision=180
2009-02-04 14:50:50 +00:00
Marina Zhurakhinskaya
e9826ecb45 Add a 'More' control to the applications display in the overlay
mode. When this control is clicked, documents display section slides down,
workspaces display slides to the side, and a multi-column applications view is
presented to the user. "More' control is replaced with a 'Less' control. When
the 'Less' control is clicked a default overlay view is restored.

Clean up positioning of the components of the overlay sideshow
and the items within generic item displays.


svn path=/trunk/; revision=179
2009-02-03 22:58:33 +00:00
Owen Taylor
5f5a41b54e Remove left-over comment
Remove comment in frame-ticker code about dynamically adjusting
FRAME_RATE - we no longer do that.

svn path=/trunk/; revision=178
2009-02-03 21:25:27 +00:00
Dan Winship
4117739abb Don't do window transitions while the overlay is active. Part of #568983.
Previously we were only doing this check for switch-workspace, but it
makes sense to do it for all transitions, since they won't be visible
anyway, and they might interfere with the overlay's operations by moving
windows around unexpectedly.

svn path=/trunk/; revision=177
2009-02-03 18:25:34 +00:00
Dan Winship
87a3088719 sort imports consistently; everything-but-our-javascript, alphabetically,
then a blank line, then all of our javascript, alphabetically

svn path=/trunk/; revision=176
2009-02-02 23:02:16 +00:00
Owen Taylor
18503ed28f Improve dependency checking for gnome-build-setup.sh
- Check for curl upfront to avoid problems if it is missing later
- Sync up Debian and Fedora depedency lists
- Add readline dependency

Patch from timbobsteve
http://bugzilla.gnome.org/show_bug.cgi?id=570015

svn path=/trunk/; revision=175
2009-02-02 22:22:00 +00:00
Dan Winship
489f3306e6 Fix a crash deleting a workspace, and another crash if the user tries to
select a workspace after deleting it.

svn path=/trunk/; revision=174
2009-02-02 20:54:33 +00:00
Dan Winship
f35ee1a5a0 oops, remove Workspace._makeDesktopRectangle, it's unused now
svn path=/trunk/; revision=173
2009-01-29 21:25:35 +00:00
Dan Winship
5def603e86 Move window clone functionality into its own class
svn path=/trunk/; revision=172
2009-01-29 21:21:50 +00:00
Dan Winship
7ca77dccc9 Do window dragging in the stage, not in the original workspace's actor
svn path=/trunk/; revision=171
2009-01-29 21:21:23 +00:00
Dan Winship
54337ee6a9 Two dragging-related fixes
- Don't let the user grab a moving window or we'll get dueling tweens.
    - Update _overlappedMode each time _positionWindows is called

svn path=/trunk/; revision=170
2009-01-29 21:20:37 +00:00
Dan Winship
a80c18bc4e Use BigBox rather than TidyGrid to organize the panel. #568712
svn path=/trunk/; revision=168
2009-01-27 20:29:37 +00:00
Dan Winship
3a84625888 Make a ClutterActor subclass that wraps a GtkWindow, and use it for the tray.
In particular, this lets us track the actor's location better; the old code
didn't work if the actor was put into a container that got moved around.
Part of #568712.

svn path=/trunk/; revision=167
2009-01-27 20:29:17 +00:00
Dan Winship
c86ce82921 fix a bug in the snap-back animation by turning it into a less-noticeable bug
svn path=/trunk/; revision=166
2009-01-27 20:05:55 +00:00
Owen Taylor
ee55d96190 Improve gnome-shell-build-setup.sh for Fedora
- If lsb_release binary isn't present, look for /etc/fedora-release
- Check for required packages for Fedora and invoke
  gpk-install-package-name

Patch from Mads Villadsen.

svn path=/trunk/; revision=165
2009-01-27 16:55:39 +00:00
Owen Taylor
9b89ba6270 Allow windows to be dragged to other workspaces
* Make updating of the clone title more of a state-machine - instead
  of showing/hiding/creating/raising the title all over the code, have a
  single Workspace._updateCloneTitle() method that looks at state bits and
  decides if the clone should be hidden or shown, and updates the
  stacking and position.

* Move code to positioning of windows within a workspace in the overlay
  modeto a new method Workspace._positionWindows()

* Add Workspace.addWindow()/removeWindow() to add and remove windows
  from the workspace on the fly. (Triggered manually: we still don't
  handle external changes to windows when the overlay is up.)

* Hook up mouse-dragging for window actors and add a
  ::window-dragged signal to Workspace

* Connect to ::window-dragged for each workspace, compute the new
  workspace, move it the window there, and animate everything into the
  new position. Snap back to the old location if the window didn't move.

http://bugzilla.gnome.org/show_bug.cgi?id=568753

svn path=/trunk/; revision=164
2009-01-23 19:21:20 +00:00
Marina Zhurakhinskaya
b2fbf5a2d8 shell-global.c: remove a log message about missing 'Categories' key in the desktop file, as this key is not required
main.js: set desktop environment to "GNOME" so that GIO can determine correctly which applications should be shown in the menus.

appDisplay.js: filter out applications that should not be shown in the menus, check if get_executable() for GAppInfo is not null before using it   

svn path=/trunk/; revision=163
2009-01-22 21:28:19 +00:00
Colin Walters
5280decb59 Bug 568625: Ignore extra whitespace in search
svn path=/trunk/; revision=162
2009-01-21 22:37:02 +00:00
Colin Walters
ce36eafc2f Bug 568624: Make overlay search case insensitive
svn path=/trunk/; revision=161
2009-01-21 22:36:53 +00:00
Dan Winship
90bce45ec6 fix workspaces padding a little. (it's still not quite right)
svn path=/trunk/; revision=160
2009-01-21 21:59:58 +00:00
Marina Zhurakhinskaya
9949d75fcc Get categories from the desktop files for all applications
and use them when finding matching applications for the search in the overlay mode.

svn path=/trunk/; revision=159
2009-01-21 21:50:57 +00:00
Dan Winship
0d612b7954 Highlight the current workspace in the overlay view
Needs cooler-ness.

svn path=/trunk/; revision=158
2009-01-21 21:12:49 +00:00
Dan Winship
136ce3257d Clean up Workspace animation. #567865
Use Tweener.registerSpecialPropertyModifier to handle moving windows in
straight lines on the screen even while their parent workspaces are also
moving.

Have the remove buttons track their parent workspace scale and deal with
it automatically rather than having special cases in each Workspace method.

svn path=/trunk/; revision=157
2009-01-21 20:35:20 +00:00
Owen Taylor
ff5f960978 Adapt to new Tweener frame ticker API
Now that getTime() has been added to the frame ticker interface
we can implement frame dropping in a more straightforward way
than adjusting the FRAME_RATE member variable to fool Tweener
into doing the right thing.

svn path=/trunk/; revision=156
2009-01-20 18:32:25 +00:00
Dan Winship
9a00ab1594 add a missing ";"
svn path=/trunk/; revision=155
2009-01-20 18:20:41 +00:00
Colin Walters
12b10342e0 Fix closing of loop variable which caused error messages
Can't close over loop variables in that way; need to define an explicit var.

Also fix case where no title is defined yet when attempting to adjust.

svn path=/trunk/; revision=154
2009-01-20 16:13:41 +00:00
Colin Walters
70a3434b5a Add a panel containing tasklist to bottom screen
This is implemented as a separate process, since creating and running
toplevel windows from inside Metacity has issues.

We now grab a DBus name, and exec the child process.  The child monitors
our name to know when to exit.

svn path=/trunk/; revision=153
2009-01-19 23:21:57 +00:00
Colin Walters
5afcf07782 Merge branch 'workspace-salon'
Conflicts:
	src/shell-global.c

svn path=/trunk/; revision=152
2009-01-19 23:06:59 +00:00
Owen Taylor
b6ec5080c8 Escape % in g_app_info_create_from_commandline
g_app_info_create_from_commandline supports % escapes for
file name, icon name, etc, so we need to escape the command line
we pass in. If it contains an URL with url-encoded UTF-8 it will
typically have some percent signs.

(Reported by Achim Frase)

svn path=/trunk/; revision=151
2009-01-17 14:41:45 +00:00
Owen Taylor
244555f3ae Fix include path to libgnomeui/gnome-thumbnail.h
Remove a stray libgnomeui-2.0/ (Michael Monreal)

svn path=/trunk/; revision=150
2009-01-17 13:44:44 +00:00
Owen Taylor
ac6a5ef4af Cleanup: use destructuring assignment
For multiple return values use

 let [val1, val2, val3] = function();

Rather than:

 temp = function();
 val1 = temp[0];
 ...

svn path=/trunk/; revision=149
2009-01-16 20:40:16 +00:00
Owen Taylor
8db3685e29 Include generated enumeration types when scanning
gjs requires flags types to be registered with GObject to
work properly; g-ir-scanner requires the get_type() functions
to be present in a scanned header in order to find the
GObject type for a flag. So pass {tidy,big}-enum-types.h to
the scanner as appropriate.

svn path=/trunk/; revision=148
2009-01-16 20:10:26 +00:00
Dan Winship
ca724920a3 Make sure the animation always starts from the first frame, even if the
system is really busy and ClutterTimeline doesn't get a chance to call
us until it thinks several frames have passed

svn path=/trunk/; revision=147
2009-01-13 20:49:31 +00:00
Dan Winship
b3860314b2 load the GAppInfos at startup time rather than waiting until the overlay
is opened for the first time

svn path=/trunk/; revision=146
2009-01-13 20:45:54 +00:00
Dan Winship
fd83658c8d Remove unused workspaces at startup (since mutter uses the same gconf
prefs as metacity, we're likely to start out with 4 workspaces)

svn path=/trunk/; revision=145
2009-01-13 20:43:03 +00:00
Dan Winship
84cfdcd244 update default apps list a little more: remove evince, totem, file-roller,
which you don't launch on their own, only with a document

svn path=/trunk/; revision=144
2009-01-13 20:07:57 +00:00
Marina Zhurakhinskaya
849ddbd3f6 Display thumbnails of recent files in the overlay mode by using GnomeThumbnailFactory to get them. Fall back to the system icon for the file type provided by GtkRecentInfo when a thumbnail is not available.
svn path=/trunk/; revision=143
2009-01-09 01:09:35 +00:00
Owen Taylor
1e99f00e59 Pass the right 'this' to switchWorkspaceDone
switchWorkspaceDone was being called with the wrong 'this', causing
ShellWM.completed_switch_workspace() never to be called, causing stacking
order to get confused.

http://bugzilla.gnome.org/show_bug.cgi?id=567091

svn path=/trunk/; revision=142
2009-01-08 23:34:19 +00:00
Marina Zhurakhinskaya
4406943fd8 Check if the file still exists when displaying matches for the search.
Use get_modified() instead of get_visited() for GtkRecentInfo as get_modified() seems to reflect when the file was last modified or visted, while get_visited() stays the same as get_added(). See http://bugzilla.gnome.org/show_bug.cgi?id=567094

svn path=/trunk/; revision=141
2009-01-08 23:31:23 +00:00
Colin Walters
9bee44fe26 Bug 563394 - revert change to run overlay key in idle
This was likely a different bug, possibly the OOM after a period of time.
It seems reliable for me now without the idle.

svn path=/trunk/; revision=140
2009-01-07 22:19:46 +00:00
Jonathan Matthew
85c22e484d implement some basic window management effects. #563844
svn path=/trunk/; revision=139
2008-12-29 04:44:03 +00:00
Dan Winship
b3aaf2ced5 Add (+) and (-) icons for workspace management to the overlay
svn path=/trunk/; revision=137
2008-12-22 22:06:47 +00:00
Dan Winship
54d8f3b27d Add (+) and (-) icon artwork, and a little bit of infrastructure for them
svn path=/trunk/; revision=136
2008-12-22 22:05:56 +00:00
Dan Winship
40a3fdc02e split out a Workspace class from Workspaces, reorganize for that
svn path=/trunk/; revision=135
2008-12-22 21:51:34 +00:00
Dan Winship
45ba65bebb Move Workspaces-size computation into Workspaces
svn path=/trunk/; revision=134
2008-12-22 21:50:23 +00:00
Owen Taylor
a168f6da42 Convert to gnome-shell-plugin to new plugin style
The plugin-gobject branch of Mutter (now merged into our branch) converts
plugins to more-standard GObject GTypePlugin, with the plugin itself
being a GObject class.

gnome-shell-plugin.c: Switch plugin to the new scheme
shell-wm.[ch]: Forward effect signals to ShellWM rather than hooking
  directly into the plugin vtable.
default: Remove this (accidentally committed) file

svn path=/trunk/; revision=133
2008-12-22 21:05:08 +00:00
Marina Zhurakhinskaya
48cda5b179 Create two base classes: GenericDisplayItem and GenericDisplay, as
well as corresponding classes for applications and documents that inherit from
them. 

Use half the height of the sideshow in the overlay mode for the
AppDisplay, and the other half for the DocDisplay. 

Enable moving the selection between the two displays by using up and down arrow keys. 

Enable activating any item by clicking on it, in addition to activating the currently selected item by pressing Enter.

Apply search entry content to both sets of items.


svn path=/trunk/; revision=132
2008-12-20 04:27:57 +00:00
Owen Taylor
749d356ef9 Remove accidentally introduced import of GtkClutter
An unused import of GtkClutter snuck in somehow, remove it.

svn path=/trunk/; revision=131
2008-12-18 22:16:51 +00:00
Colin Walters
6a1e408c44 Add magic 'restart' command to run dialog which re-executes
This is immensely convenient for debugging.  The shell global reexec_self
only works on Linux, sue me.

http://bugzilla.gnome.org/show_bug.cgi?id=565037

svn path=/trunk/; revision=130
2008-12-18 20:57:37 +00:00
Colin Walters
f059492a20 Add full size icon+title to overlay
The icon+text is useful in order to distinguish between windows
that might look similar otherwise.

The implementation is not optimal:

* We create a new texture from the pixmap each time

http://bugzilla.gnome.org/show_bug.cgi?id=563406

svn path=/trunk/; revision=129
2008-12-18 18:50:09 +00:00