Commit Graph

26715 Commits

Author SHA1 Message Date
Federico Mena Quintero
6a00a965c5 Remove duplicated code from *_switch_to_browse_mode()
That code indeed lives in operation_mode_stop(), so use it instead of
having inlined duplicates.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-27 18:46:26 -05:00
Federico Mena Quintero
3b2185cd8e Rename stop_operation() to operation_mode_stop()
We'll now prefix functions to change the impl->operation_mode with 'operation_mode',
for clarity.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-27 18:46:26 -05:00
Federico Mena Quintero
09cf0f73ec Save selection to recent-files in the asynchronous Save cases
Various paths in SAVE or CREATE_FOLDER return from ::should_respond() but
leave an asynchronous process running.  This process checks some things
in the user's selection, for example, 'does the file exist, and if so
do we need to bring up an overwrite-confirmation dialog?'.  When these
async processes complete *and* it is indeed time for the dialog to
be terminated (via the response-requested signal), we also need to
save the selection to the recently-used list - as ::should_respond() does
by itself in the cases when it can request a response immediately.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-27 18:45:26 -05:00
Federico Mena Quintero
1974406604 Log to recent-files when confirming the file chooser
To make life easier for users, when apps don't properly update the recently-used list
after choosing a file, we now do that directly from the file chooser.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-27 18:45:15 -05:00
Federico Mena Quintero
095eec84c0 Update the docs with the policies for Save dialogs
Basically, don't ever set the current folder, and only use
gtk_file_chooser_set_filename() for 'File/Save As'.  This is so
that the file chooser will be able to present its recently-used
lists as appropriate, giving the user good suggestions by default.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 18:04:25 -05:00
Federico Mena Quintero
a06f1b3811 No need to highlight the file's basename when setting the base folder
None of the cases where _gtk_file_chooser_entry_set_base_folder() appear to require
the entry highlighting the file's basename.  Doing the highlighting actually makes
things look weird in Save/Recent mode if you

  1. type a filename
  2. click on a recent-folder,

as right after (2) your filename would get its basename highlighted for
no apparent reason.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 14:59:06 -05:00
Federico Mena Quintero
f429598b65 Hide the Create Folder button in recent-files mode when the pathbar is on
The create-folder machinery doesn't handle that case yet; we may enable it later
once we figure out the implications for the GUI.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 14:54:11 -05:00
Federico Mena Quintero
09850ff87e Centralize the setting of the pathbar's widgets
It used to be that every part of the file chooser's code would show/hide the widgets
near the pathbar as needed.  Now we have two central functions:

  path_bar_update()
  path_bar_set_mode()

These take care of all the widget shuffling;  setting the visibility of the
pathbar, info bar, and Create Folder button as appropriate; setting the contents
of the info bar, etc. - based on the current operation_mode and action.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 14:36:52 -05:00
Federico Mena Quintero
345286d4a6 Create the recently-used widgets and infobar from the pathbar widgets as well
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 12:57:44 -05:00
Federico Mena Quintero
d1b823aa8f Move the pathbar creation to its own function
We will centralize the place where all the pathbar-related widgets are created:
the location button, the pathbar itself, the Create Folder button, and in
subsequent commits, the info bar as well.  We will deal with the pathbar/infobar
as a unit, instead of swapping them in and out in an ad-hoc fashion.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-01 12:36:22 -05:00
Federico Mena Quintero
c6df130f6a Warn the user when he still needs to type a filename or choose a folder
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-30 16:23:12 -05:00
Federico Mena Quintero
b88acf80bc Return the recent-folder plus filename in Save mode from get_files()
Since the GtkFileChooserEntry already gets the recent-folder set upon it when a recent-folder
is selected, it already can give us the correct fully-formed path.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-30 14:38:27 -05:00
Federico Mena Quintero
a7486df39f Allow resolving absolute paths even if there is no base_folder
This lets us do proper completion in GtkFileChooserEntry even when no base folder
has been set.  Completion for relative paths won't work, as usual, as expected.
2011-06-29 18:20:53 -05:00
Federico Mena Quintero
22723af060 Set the filename entry's base folder when a recent-folder is selected
This lets the filename entry do completion relative to the selected recent-folder.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-29 17:58:10 -05:00
Federico Mena Quintero
e6ceb42289 Instruct the user to pick a folder when nothing is selected in the recent-folders list
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-29 17:04:14 -05:00
Federico Mena Quintero
a3280339bd Put recently-used folders in the recently-used list
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-29 14:06:36 -05:00
Federico Mena Quintero
b33827ee8a Turn a struct field into a local variable
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-28 18:55:37 -05:00
Federico Mena Quintero
6c64af402c Remove unused struct field
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-28 18:53:48 -05:00
Federico Mena Quintero
fc562d8052 Actually highlight the 'recently used' and 'search' items in the shortcuts bar
They weren't being selected in the shortcuts bar when those modes were
activated programmatically, instead of through the user selecting
them from the user interface.
2011-06-28 18:43:18 -05:00
Federico Mena Quintero
ecdc08e2ec Start in recently-used mode when no folder is set
In RELOAD_EMPTY mode, when no folder has been selected by the calling app, we now
start showing the recently-used list.  The rationale is as follows:

  - In Open mode, the user is likely to pick a file he has used recently.

  - In Save mode, the user is likely to want a destination folder which
    he has used recently.

For the Save case, where we want to present the user with recent folders instead
of recent files, we will make the recent-list do so in subsequent commits.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-28 17:17:22 -05:00
Stéphane Maniaci
7d8e458677 Make GtkFileChoser remember the last directory opened
Introduces a 'last-folder-uri' GSettings key, where we remember the last-opened
folder from the previous instance of the file chooser.

The idea is that this works globally, across all applications, so it will be
easy to do things like

  1. Save an attachment from a mail (or some other file)
  2. Open another program
  3. Do File/Open and automatically get sent to the folder where (1) happened.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>

https://bugzilla.gnome.org/show_bug.cgi?id=644426
2011-06-28 16:49:49 -05:00
Federico Mena Quintero
8db961e19d Put the pathbar in the 'Save in folder:' row in Save mode
Now we reparent the browse_path_bar_hbox to that spot in Save mode,
or to be above the file lists in Open mode.  The pathbar makes for a very
clear indication of the location to save in.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-28 16:43:06 -05:00
Federico Mena Quintero
888a362071 Get rid of the save_folder_combo
And with this we get rid of the craziness of having a separate filter model
for the combobox's model.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-28 13:33:32 -05:00
Federico Mena Quintero
47f7581129 Remove the expander in Save mode, and the configuration key
This effectively makes the file chooser always be in 'expanded' mode.
Later, we'll move the pathbar to the 'Save in folder:' line.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-27 17:51:57 -05:00
Federico Mena Quintero
c2fc707b6a Utility function to extract folders from the recently-used list
This extracts the parent folders from the items in the recently-used
list.  We'll use it in the file chooser to present a list of
recently-used folders.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-06-27 15:30:59 -05:00
Chun-wei Fan
c677c819c4 Update VS project files
-Fix the VS2010 property sheet as the DefDir "macro" needs to be updated
 as well when the intermediate directories were seperated by project.

-Reinstate build/win32/vs10/gtk+.sln with the correct DOS/Windows EOL so
 that file can be correctly recognized by Windows, without the
 "Unrecognized Visual Studio Version" problem.

-Update solutions and projects where gtk-demo becomes gtk3-demo, to be
 consistent across the board.
2011-06-24 13:16:40 +08:00
Chun-wei Fan
a956bd6d90 Temporarily remove build/win32/vs10/gtk+.sln
This file needs to have DOS/Windows-style EOL...
2011-06-24 13:13:01 +08:00
Chun-wei Fan
735a40eea7 Update VS property sheets
As Cairo and Cairo-GObject are often built as two seperate DLLs/modules,
set the property sheets to link to both libraries, instead of using the
previous approach where a monolithic Cairo DLL which contains GObject
support is used.
2011-06-20 17:07:17 +08:00
Chun-wei Fan
14dad8ca4c Refine Visual C++ 2010 projects
-Remove unneeded tags from projects
-Seperate intermediate directories for projects to avoid rebuilding/
 linking on every rebuild and MSBuild errors (et al.) for not being
 able to write into build log files as they are in use.
2011-06-20 12:15:44 +08:00
Chun-wei Fan
603e5f0c4a Update Visual C++ projects
Use G_ENABLE_DEBUG for all debug builds
2011-06-16 15:31:22 +08:00
Benjamin Otte
2c7846f63d toolbar: Handle the fact that size_allocate() != get_allocation()
size_allocate() allocates the available space for the margin box,
get_allocation() returns the actual space of the content box and those
can be different. And then animations never stop.
If that makes you go "huh?", you might want to read
http://www.w3.org/TR/CSS21/box.html
and the docs for gtk_widget_compute_align().
2011-06-15 20:16:06 +02:00
Benjamin Otte
65b4ab49de docs: Add Since tag to GtkWidget::draw 2011-06-13 18:32:09 +02:00
Michal Suchanek
982fc84a41 bgo#652045 - Initialize local_only in GtkFileChooserEntry
This has to be done also when we switch to the entry, otherwise completion for
non-local URIs won't work.
2011-06-08 16:25:26 -05:00
Chun-wei Fan
a074955878 Update Windows Resource template information 2011-06-07 11:13:31 +08:00
Matthias Clasen
bcdbe6593a Bump version 2011-06-06 16:47:21 -04:00
Matthias Clasen
f9c127ea13 Updates 3.0.11 2011-06-06 16:13:12 -04:00
Matthias Clasen
f1453862f1 Hacky support for combo boxes
This extends the current hacks in gailmenuitem to not only
recognize menuitems with labels in them, but also menuitems
which contain a GtkCellView, since those are used by GtkComboBox
nowadays.

Some of the AtkText apis are not fully supported.

https://bugzilla.gnome.org/show_bug.cgi?id=650302
2011-06-06 14:51:14 -04:00
Matthias Clasen
6f1fecf444 gail: Add back get_name for menu items
This was lost when GailItem was nuked. Not having it is leading
to problems, even though randomly poking strings out of your children
seems to be a less than perfect approach to naming...
2011-06-06 14:50:33 -04:00
Matthias Clasen
5c8a647a00 gtk-demo: Add an app chooser button demo
Add a 'Mail' app chooser to the 'Pickers' example.
2011-06-06 14:50:19 -04:00
Matthias Clasen
0c2ee42640 GtkCustomUnixPaperDialog: use an inline toolbar
This makes the dialog more similar to similar patterns,
e.g. in the file chooser.
2011-06-06 14:50:10 -04:00
Vincent Untz
2c79e57333 gtksearchenginetracker: Use non-case sensitive search for non-fts search
https://bugzilla.gnome.org/show_bug.cgi?id=642773
2011-06-06 16:24:13 +01:00
Matej Urbančič
eadc05b2ce Updated Slovenian translation 2011-06-03 22:18:25 +02:00
Juan Pablo Ugarte
8f4352ca53 Fixed bug #576492 "GtkBuilder does not respect G_PARAM_CONSTRUCT properties"
Added G_PARAM_CONSTRUCT flag in gtk_builder_get_parameters() checks as suggested by Johan Dahlin.
2011-06-03 15:16:22 -03:00
Carles Ferrando
c6d4284120 [l10n]Updated Catalan (Valencian) translation 2011-05-29 14:12:45 +02:00
Carles Ferrando
f77884d092 [l10n]Updated Catalan (Valencian) translation 2011-05-29 14:09:13 +02:00
Carles Ferrando
43956f4eab [l10n]Updated Catalan (Valencian) translation 2011-05-29 14:08:53 +02:00
Matej Urbančič
b7e777e7fa Updated Slovenian translation 2011-05-27 23:00:28 +02:00
Kjell Ahlstedt
219e82c9e7 bgo#642929 - Don't infinite-loop in GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER
If the user pressed Enter to confirm the file chooser while the filename entry
was empty, then gtk_file_chooser_default_should_respond() would go back and forth
between the cases for handling the filename entry and the file list.
2011-05-23 15:02:25 -05:00
Benjamin Otte
847df205ed window: Only draw resize grip if its window exists
Don't rely on priv->resize_grip_visible as the code comment in the
variable declaration indicates.
This fixes warnings with GtkPlug, which can cause resize_grip_visible to
be TRUE but grid_window to be NULL - running tests/teststatusicon
reproduces this.

This broke with 0cf31b35eb
2011-05-23 16:08:37 +02:00
Matthias Clasen
750aca05ff bump version 2011-05-22 23:11:57 -04:00