Commit Graph

1379 Commits

Author SHA1 Message Date
7e9fc6d2b6 Coding style and whitespace cleanup. 2010-11-09 23:33:23 +01:00
4a929caada Pass an EAlertSink to e_alert_sink_submit_alert().
Passing a random GtkWidget and then searching its ancestors for an
EAlertSink turned out to be not as useful as I thought.  Most of the
time we know about and have access to the widget that implements
EAlertSink, so just pass it directly as an EAlertSink.
2010-11-09 23:33:20 +01:00
c1d818a53f Bug 633471 - EAttachmentStore store folder name where uri is expected 2010-11-09 23:33:18 +01:00
d9d9d7f0ef Restore update method in ECanvasBackground
Restore the update() method in ECanvasBackground.  Without a redraw
request the draw() method is never called.  For some reason this isn't
noticeable on gtk+-3.0 -- ETable and ETree backgrounds are still white
-- but on gtk+-2.0 the backgrounds are grey.
2010-10-29 13:51:38 -04:00
df5ff95999 Adapt branch for building with GTK+ 2.22. 2010-10-29 13:51:38 -04:00
168b536e82 e-map: Take colormap and visual from the widget
No need to use magic visuals and colormaps anymore, we're all cairo
these days.
2010-10-29 13:50:04 -04:00
d6a0c006c1 e-map: Stuff tween duration into a macro so it's easier to change 2010-10-29 13:50:03 -04:00
5d73cd320f e-map: Add simplification API to zoom from a certain state 2010-10-29 13:50:03 -04:00
963d59c44a e-map: Zoom out smoothly, too 2010-10-29 13:50:03 -04:00
6c15378fc0 e-map: Redo zooming
Instead of hacky magic, we now use cairo and a naïve implementation of
tweening.
2010-10-29 13:50:03 -04:00
edb4b36b8d e-map: Make center_at() function take longitude/latitude
Way easier than to try to get the coordinates right.
Includes refactoring to introduce e_map_world_to_render_surface() that
computes coordinates on the background surface to make this stuff
easier.
2010-10-29 13:50:03 -04:00
eda95a9c33 e-map: Introduce e_map_get_current_location()
... and use it when zooming out
2010-10-29 13:50:03 -04:00
b5ee0e3e82 e-map: Use gtk_alignment_configure()
Nothing but a massive code cleanup
2010-10-29 13:50:03 -04:00
abe994285a e-map: Repaint points unconditionally
The in_view() check is broken because it doesn't repaint points that are
1px outside the window. The point take 2 extra pixels in every direction
after all. And gtk_widget_queue_draw_area() will automatically discard
out-of-range rects anyway.
2010-10-29 13:50:03 -04:00
f71506a5e0 e-map: Make cache a server-side surface
Doing performance optimizations on the client is not a good idea...
2010-10-29 13:50:03 -04:00
97739da7ca e-map: Query adjustment for size, not pixbuf 2010-10-29 13:50:02 -04:00
c52b0f748f e-map: pass width and height to set_scroll_area() directly 2010-10-29 13:50:02 -04:00
791b5f68a1 e-map: Draw with cairo 2010-10-29 13:50:02 -04:00
a21ae31d94 e-map: Update the xofs/yofs properties together with the adjustments 2010-10-29 13:50:02 -04:00
26c62ff150 e-map: Don't block signal handlers
The signal handler will no-op the operations anyway, because nothing
changed.
2010-10-29 13:50:02 -04:00
43f1c47f88 e-map: Move all rendering into the expose event
For the zoom, we now use the long-deprecated gtk_widget_draw() to force
repaints.
2010-10-29 13:50:02 -04:00
a171cf15e3 e-map: Always repaint the whole window on scrolls
We cannot move parts of the window with GTK3 APIs, so stop doing it.
2010-10-29 13:50:02 -04:00
00b6c62989 widgets: Don't use GdkGC in ECalendarItem 2010-10-29 13:50:02 -04:00
8811cd67d3 gnome-canvas: Convert canvas item transformation matrix to cairo
Also update the GnomeCanvasItem.update vfunc to take a cairo_matrix_t
and no longer pass the clip_path (what was it used for anyway?).
2010-10-29 13:50:01 -04:00
3fb0c763eb e-canvas: Simplify ECanvasBackground
It's used without specifying a clip rectangle every time, so remove that
property. Also do all drawing with Cairo.
2010-10-29 13:50:00 -04:00
b3a95d0299 gnome-canvas: Change GnomeCanvasItem->point vfunc
Previously the function returned the distance to the nearest item. Now
it only returns an item that is hit. This slightly changes semantics
(button events are no longer dispatched to the nearest item, but only to
the item actually clicked on), but makes the code way simpler and
actually does what one would expect.
2010-10-29 13:49:59 -04:00
6b75dd581c widgets: Remove stipple from ECanvasBackground 2010-10-29 13:49:58 -04:00
df70b76a55 gnome-canvas: Remove aa code
The anti-aliased code was never used, so remove it.
2010-10-29 13:49:57 -04:00
c7d7f88671 Bug #631982 - Hide Page properties in signature editor 2010-10-29 12:08:59 +02:00
2de2e7f12f Workaround GtkComboBoxText/GtkComboBoxEntry in .ui files 2010-10-27 21:43:25 +02:00
de12bb89a8 Bug #631956 - Reset renderer properties in action_combo_box_render_pixbuf 2010-10-26 12:35:32 +02:00
2ac302d4b2 Bug #631870 - Memory leak in e_week_view after GtkObject removal 2010-10-25 17:28:17 +02:00
535f3ef136 Bug 632870 - Cut and paste broken in ESignatureEditor 2010-10-23 00:01:04 -04:00
c881b5bc5e Simplify EActivity.
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.
2010-10-22 14:21:22 -04:00
18447890ff ESignatureList cleanups. 2010-10-21 00:24:46 -04:00
4a08257b83 Deal with GtkComboBoxEntry removal in gtk+-3.0. 2010-10-20 16:10:15 -04:00
8da37ea812 Bug 632641 - Handle combo box text API going away 2010-10-20 15:08:16 -04:00
689bb1148d Bug #630695 - Invalid read when enable/disable the account in preferences 2010-10-19 16:38:39 +02:00
35e55a8d6e Send errors to an EAlertSink instead of the task bar.
This marks the end of unintrusive error dialogs, which were too
unintrusive.  We now show errors directly in the main window using
the EAlert / EAlertSink framework.
2010-10-18 12:32:37 -04:00
51ebf20237 EAlert: Allow arbitrary actions to be added.
You can now amend the predefined actions in an EAlert by calling
e_alert_add_action().  Useful for adding actions from an existing
GtkUIManager.

Call e_alert_peek_actions() to obtain a combined list of predefined
and custom actions.  These will typically serve as "related" actions
for GtkButtons (cf. gtk_activatable_set_related_action()).

Also, both EShellWindow and EShellView now implement EAlertSink.  Use
EShellWindow for application-wide alerts, EShellView for view-specific
alerts.
2010-10-18 12:32:36 -04:00
1e663aa132 Replace EBinding with GBinding.
GObject now does property bindings itself.

Requires GLib >= 2.26.
2010-10-14 07:12:52 -04:00
9108b38d83 EAlertBar: Always show the most recent alert.
Make it work like a stack instead of a queue.
2010-10-13 16:03:37 -04:00
3c5f899f2d Adjust EAlertBar text attributes. 2010-10-12 17:41:52 -04:00
4118d671d4 Composer: Show cancellable operations and errors inline.
'Send' and 'Save Draft' are now asynchronous and run outside of
Evolution's MailMsg infrastructure.

Add an EActivityBar to the composer window so these asynchronous
operations can be tracked and cancelled even in the absense of a main
window.  Also add an EAlertBar to the composer window so error messages
can be shown directly in the window.

Instead of calling e_alert_dialog_run_for_args(), call e_alert_submit()
and pass the EMsgComposer as the widget argument.  The EMsgComposer will
decide whether to show an EAlertDialog or use the EAlertBar, depending
on the GtkMessageType of the alert.
2010-10-12 13:59:00 -04:00
1c6f2d154e Bug #631320 - GtkObject is gone in GTK3 2010-10-06 19:26:08 +02:00
a9fc19b195 Get rid of deprecated GtkObject in EMap widget
Remove GtkObject::destroy() handler. Move disconnecting
signal handlers to e_map_finalize().

https://bugzilla.gnome.org/show_bug.cgi?id=630766
2010-10-04 16:42:28 +02:00
90c70d0bc4 EAttachmentPaned: Use gtk_expander_set_label_fill()
Use the new GtkExpander:label-fill property in GTK+ 2.22, which was
added specifically to get rid of my evil hack in EAttachmentPaned.
2010-09-30 13:55:39 -04:00
0e4c54eddc Messin around with EAlerts.
Trying out a new interface called EAlertSink.  The idea is to centralize
how errors are shown to the user.  A GtkWindow subclass would implement
the EAlertSink interface, which consists of a single method:

    void  (*submit_alert)  (EAlertSink *alert_sink, EAlert *alert);

The subclass has complete control over what to do with the EAlert,
although I imagine we'll wind up implementing various alert-handling
policies as standalone widgets such as EAlertDialog.  I'd like to try
an EAlertInfoBar.

Code that would otherwise display an error dialog itself would instead
pass the EAlert to an appropriate EAlertSink and be done with it.

Nothing is final yet.  Still hacking on EAlert trying to find an API
that feels right for these use cases.
2010-09-29 21:11:44 -04:00
dc1344cd02 Bump gtk+-2.0 requirement to 2.22.0.
Remove backward-compatibility hacks for older GTK+ versions.
2010-09-28 21:32:15 -04:00
31b57ed038 Adapt to Camel API changes. 2010-09-28 11:35:55 -04:00