aboutsummaryrefslogtreecommitdiffstats
path: root/modules/calendar/e-cal-shell-view-private.c
Commit message (Collapse)AuthorAgeFilesLines
* Ignore false GObject property change notificationsMilan Crha2014-06-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | This is related to bug 698275, which did not cover all cases. The problem here is that the dconf can in certain situation claim that everything changed (path "/" changed), which GSettingsBinding propagates to a GObject property unconditionally and GObject's property setter (g_object_set_property()) also notifies about the property change unconditionally, despite the real descendant property setter properly checks for the value change. After all these false notifications a callback on "notify" signal is called and possibly an expensive operation is run. Checking whether the value really changed helps in performance, for which were added new e-util functions: e_signal_connect_notify() e_signal_connect_notify_after() e_signal_connect_notify_swapped() e_signal_connect_notify_object() which have the same prototype as their GLib counterparts, but they allow only "notify::..." signals and they test whether the value really changed before they call the registered callback.
* Bug 721545 - License text contains obsolete FSF postal addressMatthew Barnes2014-01-081-10/+9
|
* Coding style and whitespace cleanup.Matthew Barnes2013-12-071-5/+5
|
* Bug #712342 - Calendar search doesn't finishMilan Crha2013-11-201-13/+9
|
* Bug #657808 - Copy/move of a single instance should grab whole serieMilan Crha2013-11-051-128/+94
|
* Miscellaneous cleanups.Matthew Barnes2013-09-081-13/+22
|
* Bug 704861 - Runtime warning in calendar moduleMatthew Barnes2013-07-291-1/+1
|
* ECalShellView: Disconnect all signal handlers in dispose().Matthew Barnes2013-07-201-105/+268
|
* EShellView can load the GalViewCollection itself now.Matthew Barnes2013-07-061-5/+1
| | | | | | | | EShellView no longer needs help from subclasses other than getting the needed GalView subclasses registered. A nice side-effect of this is EShellView subclasses can now use the G_DEFINE_DYNAMIC_TYPE macro.
* Remove gal_view_collection_add_factory().Matthew Barnes2013-07-061-34/+1
| | | | | | No longer needed. Instead, use g_type_ensure() to ensure the necessary GalView subclasses are registered in the GType system before loading a GalViewCollection. Best place to ensure types is from GClassInitFunc.
* Split CalendarViewFactory into separate classes by view type.Matthew Barnes2013-07-061-4/+4
| | | | | I suspect this will enable us to ditch GalViewFactory entirely once I rework a few more things. We'll see though; one step at a time here.
* GalViewFactoryEtable: Remove "specification" property.Matthew Barnes2013-07-061-18/+1
| | | | | | | | No longer needed. Removed functions: gal_view_factory_etable_get_specification()
* EShellView: Add a "view-instance" property.Matthew Barnes2013-07-061-6/+3
| | | | | | | | | | | | | | EShellView now holds a reference to the active GalViewInstance. Where applicable, the EShellView subclass is responsible for keeping this up to date when the sidebar selection changes. Holding a reference allows EShellView to implement common actions like "Save Current View" directly instead pushing it on to subclasses. New functions: e_shell_view_get_view_instance e_shell_view_set_view_instance
* ETableSpecification: Implement GInitable.Matthew Barnes2013-07-021-6/+10
| | | | | | | | | | | | | | | | e_table_specification_new() now takes a table specification filename and a GError and parses the file as part of instance creation. If a file or parse error occurs, e_table_specification_new() returns NULL. This replaces e_table_specification_load_from_file(). New functions: e_table_specification_get_filename() Removed functions: e_table_specification_load_from_file()
* ECalShellView: Disconnect "prepare-for-quit" handler on dispose().Matthew Barnes2013-06-111-0/+8
| | | | | | This is another source of crashes after creating and destroying a second shell window. The signal handler was left connected with the destroyed shell window as the closure.
* Minor efficiency tweak in cal_shell_view_user_created_cb().Matthew Barnes2013-06-011-7/+3
| | | | | | Call e_cal_shell_sidebar_add_client() instead of add_source(). No point asynchronously obtaining the client if we already have it.
* Add a boolean return to e_cal_model_remove_client().Matthew Barnes2013-06-011-3/+2
| | | | | | | | The function now returns TRUE if the ECalClient was actually removed from the model, or FALSE if the model did not have the ECalClient. Use this to avoid an unnecessary gnome_calendar_update_query() call in cal_shell_view_selector_client_removed().
* Add a boolean return to e_cal_model_add_client().Matthew Barnes2013-06-011-3/+2
| | | | | | | | The function now returns TRUE if the ECalClient was actually added to the model, or FALSE if the model already had the ECalClient. Use this to avoid an unnecessary gnome_calendar_update_query() call in cal_shell_view_selector_client_added_cb().
* GnomeCalendar: Get rid of the async message dispatcher.Matthew Barnes2013-06-011-4/+2
| | | | | | | | | | Obtain calendar views asynchronously and concurrently, and update the task and memo pads synchronously (they don't block as best I can tell). Get rid of the whole thread-pool message dispatching thing, which I think I myself wrote years ago (calendar had no async API back then). Consequently I'm seeing calendar events show up noticably quicker.
* Bug #700812 - Search in Calendar view is brokenMilan Crha2013-05-301-2/+8
|
* Add e_cal_model_list_clients().Matthew Barnes2013-04-131-8/+7
| | | | | | | Replaces e_cal_model_get_client_list(). Does the same thing, except the returned ECalClient instances are referenced for thread-safety.
* Remove more Express Mode hacks.Matthew Barnes2013-04-011-8/+0
| | | | | | This removes all traces of Express Mode from all but the contact editor and calendar appointment editor. Need to evaluate the remaining cases individually.
* Remove ECalShellSettings.Matthew Barnes2013-03-171-39/+16
| | | | | | | | EShellSettings predates GSettings and is no longer necessary. GSettings allows binding GObject properties to GSettings keys, with optional mapping functions. That fulfills the purpose of EShellSettings.
* Convert all "week-start-day" properties to GDateWeekday.Matthew Barnes2013-03-171-3/+4
|
* Remove e_cal_shell_view_update_timezone().Matthew Barnes2013-02-171-31/+0
| | | | | | | Thanks to the "default-timezone" property binding created by ESettingsClientCache, changes to the "cal-timezone" setting are automatically propagated to all ECalClient instances created by EClientCache.
* ECalShellView: Handle error signals from calendar backends.Matthew Barnes2013-02-171-0/+46
|
* ECalShellView: Use g_clear_object() in dispose().Matthew Barnes2013-02-161-3/+3
|
* Remove old GTK+ version checks.Matthew Barnes2013-02-161-2/+0
| | | | We require GTK+ 3.4, so no need to check for versions older than that.
* Remove usage of deprecated e_client_is_opened().Matthew Barnes2013-01-261-2/+1
| | | | e_client_is_opened() always returns TRUE, so skip it.
* Consolidate base utility libraries into libeutil.Matthew Barnes2012-12-131-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Evolution consists of entirely too many small utility libraries, which increases linking and loading time, places a burden on higher layers of the application (e.g. modules) which has to remember to link to all the small in-tree utility libraries, and makes it difficult to generate API documentation for these utility libraries in one Gtk-Doc module. Merge the following utility libraries under the umbrella of libeutil, and enforce a single-include policy on libeutil so we can reorganize the files as desired without disrupting its pseudo-public API. libemail-utils/libemail-utils.la libevolution-utils/libevolution-utils.la filter/libfilter.la widgets/e-timezone-dialog/libetimezonedialog.la widgets/menus/libmenus.la widgets/misc/libemiscwidgets.la widgets/table/libetable.la widgets/text/libetext.la This also merges libedataserverui from the Evolution-Data-Server module, since Evolution is its only consumer nowadays, and I'd like to make some improvements to those APIs without concern for backward-compatibility. And finally, start a Gtk-Doc module for libeutil. It's going to be a project just getting all the symbols _listed_ much less _documented_. But the skeletal structure is in place and I'm off to a good start.
* Avoid using GdkEventButton directly in certain places.Matthew Barnes2012-11-301-8/+8
| | | | | | | | | | | | Prefer dealing with GdkEvent pointers and using accessor functions like gdk_event_get_button(). This is complicated by the fact that some GtkWidget method declarations still use GdkEventButton pointers, and synthesizing button events pretty much requires direct GdkEventButton access. But GDK seems to be nudging itself toward sealing the GdkEvent union. Likely to happen in GDK4. Mainly clean up signal handlers and leave method overrides alone for now.
* Coding style and whitespace cleanup.Matthew Barnes2012-11-111-2/+4
|
* Make sure the selected days in the calendar matches shown daysMilan Crha2012-09-111-0/+16
|
* Bug #683407 - Preserve week views in calendar when clicking one dayMilan Crha2012-09-111-2/+5
|
* Coding style and whitespace cleanup.Matthew Barnes2012-08-201-38/+72
|
* Bug #676785 - Enables wrong calendar after saving appointmentMilan Crha2012-08-101-5/+4
|
* Adapt modules/calendar to the new ESource API.Matthew Barnes2012-06-031-22/+13
|
* Reduce diff noise with 'account-mgmt' branch.Matthew Barnes2012-06-031-2/+2
| | | | One last time.
* Bug #671585 - Add support for smooth scrolling devicesMilan Crha2012-05-151-4/+27
|
* Whitespace cleanups.Matthew Barnes2012-05-131-11/+11
|
* Bug #584143 - Global Search Function withing CalendarMilan Crha2012-04-111-0/+462
|
* Bug #670967 - Moving event in offline doesn't delete event from original ↵Vibha Yadav2012-04-041-0/+20
| | | | | | | calendar check for online state and if not verify source isn't a local calendar and operation is move or destination isn't a local calendar.
* Miscellaneous EShellView-related cleanups.Matthew Barnes2011-12-081-5/+5
|
* Coding style and whitespace cleanup.Matthew Barnes2011-09-041-1/+2
|
* Coding style and whitespace cleanup.Matthew Barnes2011-08-131-5/+13
|
* Bug #655843 - Copy to calendar doesn't add timezone informationJames Bottomley2011-08-111-0/+30
|
* Add a bit more error checking and do not leak icalcomponent-sMilan Crha2011-06-301-2/+1
|
* Do not use deprecated EBook/ECal APIMilan Crha2011-06-141-21/+23
|
* Coding style and whitespace cleanups.Matthew Barnes2011-06-091-6/+3
|
* Bug #646109 - Fix use of include <config.h> to make sure translations workMilan Crha2011-05-271-0/+4
|
* Bug #243938 - Clicking on week numbers changes work week to week viewMilan Crha2011-05-131-2/+8
|
* Whitespace and coding style cleanups.Matthew Barnes2011-05-081-2/+4
|
* Bug #614480 - Avoid using G_TYPE_INSTANCE_GET_PRIVATE repeatedlyMilan Crha2011-02-251-1/+1
|
* More whitespace cleanup.Matthew Barnes2011-01-311-2/+2
|
* Remove unused functionBenjamin Otte2010-10-301-16/+0
| | | | gcc warning fix
* Simplify EActivity.Matthew Barnes2010-10-231-6/+9
| | | | | | | | | | | | | | | | | | | | | | With unintrusive error dialogs gone, we can cut some unnecessary bits out of EActivity. I'm also adding a new enum property called "state", which is one of: E_ACTIVITY_RUNNING E_ACTIVITY_WAITING E_ACTIVITY_CANCELLED E_ACTIVITY_COMPLETED The state of an activity must be explicitly changed. In particular, when the user cancels an activity the state should be set only after confirming the operation has been cancelled and not when cancellation is requested (e.g. after receiving a G_IO_ERROR_CANCELLED, not when the GCancellable emits "cancelled"). EActivityBar and EActivityProxy widgets have been updated to make this distinction clearer in the UI. E_ACTIVITY_WAITING will be used when activities have to be queued and dispatched in sequence, which I haven't written yet.
* Replace EBinding with GBinding.Matthew Barnes2010-10-141-4/+7
| | | | | | GObject now does property bindings itself. Requires GLib >= 2.26.
* Add a GCancellable to EActivity.Matthew Barnes2010-09-191-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | EActivity now uses a GCancellable to manage cancellations, instead of having its own redundant cancellation API. API changes are as follows: + e_activity_get_cancellable() + e_activity_set_cancellable() - e_activity_cancel() - e_activity_is_cancelled() - e_activity_get_allow_cancel() - e_activity_set_allow_cancel() EActivity's "cancelled" signal remains, but only as a repeater for GCancellable::cancelled signals. It should not be emitted directly. The presence of a GCancellable implies that cancellation is allowed. EActivity does not create its own default GCancellable, it has to be given one. If a CamelOperation (cast as a GCancellable) is given, EActivity will configure itself to listen for status updates from the CamelOperation and propagate the information to its own "primary-text" and "percent" properties. These changes allowed me to start cleaning up some of the incredibly convoluted logic in mail-mt.c -- in particular, mail_operation_status() is completely gone now. mail-mt.c is still in a transitional state -- much more significant changes coming soon.
* Coding style and whitespace cleanups.Matthew Barnes2010-09-121-1/+1
|
* use g_signal_connect_object to improve reliabilityMichael Meeks2010-08-051-40/+40
|
* Coding style and whitespace cleanup.Matthew Barnes2010-05-271-1/+3
|
* Merge branch 'express2'Matthew Barnes2010-05-271-0/+96
|\
| * Coding style and whitespace cleanup.Matthew Barnes2010-05-251-12/+11
| |
| * fix build snafu (urk)MEEGO_1_0Michael Meeks2010-04-231-1/+1
| |
| * add defines to ease MeeGo buildingMichael Meeks2010-04-231-0/+10
| |
| * Merge commit 'origin/gnome-2-30' into express2Michael Meeks2010-04-221-1/+84
| |\
| | * Bug 596601 (bnc) - monitor system timezone changes in evolutionChenthill Palanisamy2010-04-161-1/+84
| | |
| * | Redo Calendar for express mode. Just design/layout changes.Srinivasa Ragavan2010-04-071-25/+31
| |/
| * Bug #613352 - Changed time range not propagated to calendarMilan Crha2010-04-011-2/+4
| |
| * Bug #613356 - Calendar doesn't save Task/Memo table stateMilan Crha2010-04-011-0/+4
| |
* | Bug #607257 - Add checks for event->comp_data != NULLMilan Crha2010-05-141-0/+3
| |
* | Coding style and whitespace cleanup.Matthew Barnes2010-05-021-2/+2
| |
* | Bug #613352 - Changed time range not propagated to calendarMilan Crha2010-04-011-2/+4
| |
* | Bug #613356 - Calendar doesn't save Task/Memo table stateMilan Crha2010-04-011-0/+4
| |
* | Redo Calendar for express mode. Just design/layout changes.Srinivasa Ragavan2010-03-201-25/+31
|/
* Some more directories relocated on windowsFridrich Strba2010-03-111-0/+2
|
* Bug 611727 - Date navigator marks dates for inactive calendarsMatthew Barnes2010-03-101-0/+4
|
* Bug #529331 - Deletes appointments when moving to the same calendarMilan Crha2010-02-251-2/+3
|
* Improve sidebar and ECalModel interaction.Matthew Barnes2010-01-301-0/+5
| | | | | Restores the "default client" behavior from 2.28, so that "Click to Add" task and memo fields work properly.
* Remove a bunch of dead code in GnomeCalendar.Matthew Barnes2010-01-301-24/+0
|
* Rename ECalendarTable to ETaskTable.Matthew Barnes2009-12-271-1/+1
| | | | | Since ECalendarTable was only used for tasks anyway, and ETaskTable pairs nicely with EMemoTable.
* Coding style and whitespace cleanup.Matthew Barnes2009-12-261-1/+2
|
* Bug #603342 - Memory leak fixesMilan Crha2009-12-151-4/+6
|
* Kill ETableScrolled.Matthew Barnes2009-12-081-6/+6
| | | | | ETableScrolled is nothing but a GtkScrolledWindow containing an ETable. It adds nothing of value and actually makes customizing ETable harder.
* Bug #602098 - No progress notification from GnomeCalendarMilan Crha2009-11-181-2/+5
|
* Bug 601767 - Delete action in calendar view has glitchesMatthew Barnes2009-11-141-3/+11
|
* Bug #593751 - Show correct context menu in calendar viewsMilan Crha2009-11-111-1/+19
|
* Bug #596860 - Duplicate event gets shown in calendar viewMilan Crha2009-10-161-2/+0
| | | | Interim/partial solution.
* Bug 594534 - Can't select calendar for a new appointmentMatthew Barnes2009-09-291-0/+27
|
* Bug 595119 - Crash while trying to add a new category in contactMatthew Barnes2009-09-211-2/+2
|
* Introduce an EShellView::execute-search signal.Matthew Barnes2009-09-031-155/+0
| | | | | | | | | | | | 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.
* Relax the EBinding API to reduce GObject casting.Matthew Barnes2009-09-021-2/+2
| | | | | Also make it more fault-tolerant by warning about non-existent property names instead of just crashing.
* Re-enable more calendar code.Matthew Barnes2009-08-281-2/+5
|
* Handle calendar URIs from the command line.Matthew Barnes2009-08-251-1/+1
|
* Trim more fat off the GnomeCalendar API.Matthew Barnes2009-08-191-7/+159
| | | | Oh and hey look, I can see events now!
* Remove duplicate handlers for date navigator signals.Matthew Barnes2009-08-181-1/+7
|
* Fix compiler warnings and deprecated GTK+ API usage.Matthew Barnes2009-08-161-1/+0
|
* Get the calendar view popup menu working.Matthew Barnes2009-08-161-0/+135
|
* Track the timezone in one place: ECalModelMatthew Barnes2009-08-131-12/+3
|
* Make switching between calendar views work.Matthew Barnes2009-08-131-1/+8
|
* Get the backup-restore plugin working.Matthew Barnes2009-08-121-2/+0
|
* More refactoring of settings management.Matthew Barnes2009-08-061-2/+0
|
* Replace more "config" classes with property bindings.Matthew Barnes2009-08-061-52/+40
|
* Get GnomeCalendar and the a11y stuff building.Matthew Barnes2009-07-281-2/+2
|
* Kill CalSearchBar.Matthew Barnes2009-07-281-1/+150
| | | | Move calendar search logic to ECalShellView.
* Move "user_created" signal emission to ECalendarView.Matthew Barnes2009-07-241-0/+22
|
* Radically reorganize source code.Matthew Barnes2009-06-251-0/+650
- Collect all shell modules into a new top-level 'modules' directory: $(top_srcdir)/modules/addressbook $(top_srcdir)/modules/calendar $(top_srcdir)/modules/mail Nothing is allowed to link to these, not plugins nor other modules. THIS SOLVES BUG #571275 AND OPENS THE DOOR TO PORTING TO MAC OS X. - Mimic the libevolution-mail-shared library from master (except drop the "shared" suffix) and have libevolution-mail-importers and all mail-related plugins link to it. - Discard the a11y subdirectories and have the files live alongside their counterpart widgets.