After the folder's context menu closes the folder tree selection jumps
back to the folder whose contents are showing in the message list.
Suggested by Philippe LeCavalier on evolution-list.
This addresses bug #593896 but is also a cleaner design than before.
It introduces an EShellView::execute-search signal and renames the
"search-execute" action to "search-quick" to clarify that it's only
meant for the "quick" search bar in the main window.
Shell view subclasses should implement the execute_search() method to
actually execute a search.
e_shell_view_execute_search() emits the new signal.
Each EShellView now maintains a GKeyFile for recording disposable widget
state such as tree view path expansion, scroll bar positions, combo box
selections, etc. The EShellView records changes to the key file to
~/.evolution/<shell-backend>/config/state, and automatically restores
the GKeyFile at startup.
Currently only the mailer uses the key file, but it's intended to serve
all shell views. It replaces the use of Camel "cmeta" files, as well as
"et-expanded-*" and "folder-tree-expand-state.xml" files.
Also, the mailer's folder tree model now includes a column for tracking
which sidebar folders are expanded. Folder tree widgets appearing in
dialog windows can copy the sidebar's expanded state using
em_folder_tree_clone_expanded().
Split the GTypeModule loader out of EShellModule as EModule, and rename
EShellModule to EShellBackend. Backends (formerly modules) should now
subclass EShellBackend.
This commit converts EShell but breaks all the shell backends.
common to both the main shell window and the message browser. Replaces
EMFolderView. Also begin to define EMailBrowser (GtkWindow subclass),
which implements EMailReader and replaces EMMessageBrowser.
svn path=/branches/kill-bonobo/; revision=36933
- Tighter integration of GalViewInstance and EShellView.
- EBinding. Stolen from ExoBinding. Lets you bind GObject properties
together to automatically keep their values in sync. This is a godsend.
Added to e-util, but might even deserve a place in libedataserver.
- EShellSettings. This is the concept I blogged about. Already
started ripping apart em-mailer-prefs.c. Others to follow. Any
place where we're monitoring GConf keys is a target.
- Incremental progress on the calender and mailer. Got EMFolderView
somewhat working, but I think I'll be killing off EMFolderBrowser.
svn path=/branches/kill-bonobo/; revision=36795
What's interesting here is we're actually sharing the ECalModel across views.
Instead of having the Calendar view listen to GConf for changes to the Task
and Memo models, the Calendar view fetches the models directly from the Task
and Memo views -- starting the views if it has to, although the shell really
takes care of that -- and loads the models into its own taskpad and memopad.
We couldn't do that sort of thing before with Bonobo in the way.
Big chunks of redundant code should begin falling out shortly.
svn path=/branches/kill-bonobo/; revision=36696
EActivity objects instead of numeric handler IDs. Create an EActivity,
configure it, and (optionally) connect to its "cancelled" and "completed"
signals. Then hand it to the shell view via e_shell_view_add_activity().
When finished with the activity, call e_activity_finish() and unref it.
svn path=/branches/kill-bonobo/; revision=36391
- Contacts module partially working!
- Implement UI merging. Also merge EInfoLabel into ESidebar.
The shell window now manages the icon and labels and keeps
them up-to-date via EShellView properties.
svn path=/branches/kill-bonobo/; revision=36214
- Get the test module to demonstrate populating the shell window
(particularly, the various notebooks) with some stupid widgets.
svn path=/branches/kill-bonobo/; revision=36094
- Further refinements of the shell API.
- Kill ESMenu and EUserCreatableItemsHandler.
- Start ripping apart the addressbook component.
svn path=/branches/kill-bonobo/; revision=36093
Realized the "New" menu construction algorithm needs to live independently of
shell view instances since we lazy load the shell views but have to display
all possible "New" items immediately.
Prototype the mechanisms for managing the various shell views and keeping
track of which one is current.
Various other tightening up and rethinking of APIs.
svn path=/branches/kill-bonobo/; revision=36022
2008-08-07 Matthew Barnes <mbarnes@redhat.com>
** Fixes bug #467115
* shell/e-component-registry.h:
Replace button and menu icon pixbufs with an icon name string.
* shell/e-component-registry.c (query_components):
No need to create pixbufs, just save the icon name.
* shell/e-sidebar.c:
Remember a default icon name rather than a default pixbuf.
* shell/e-sidebar.c (e_sidebar_add_button),
(e_sidebar_change_button_icon):
* shell/e-shell-window.c (e_shell_window_change_component_button_icon):
Take an icon name instead of a pixbuf.
* shell/e-shell-window.c (switch_view):
Call gtk_window_set_icon_name() instead of gtk_window_set_icon().
* shell/e-shell-window.c (setup_widgets):
Change XML from pixtype="pixbuf" to pixbuf="filename" and derive
an appropriate filename from the icon name.
svn path=/trunk/; revision=35924
2008-06-06 Matthew Barnes <mbarnes@redhat.com>
** Allow evolution to build with G_DISABLE_SINGLE_INCLUDES and
GTK_DISABLE_SINGLE_INCLUDES defined. (#536637)
svn path=/trunk/; revision=35606
2008-01-11 Changwoo Ryu <cwryu@debian.org>
** Fix for bug #508282
* e-shell-window.c (switch_view):
* e-shell-view.c (impl_ShellView_setTitle): Mark the window title
for translation.
From po/ChangeLog
2008-01-11 Changwoo Ryu <cwryu@debian.org>
** Part of fix for bug #508282
* POTFILES.in: Add new file shell/e-shell-view.c
svn path=/trunk/; revision=34792