aboutsummaryrefslogtreecommitdiffstats
path: root/e-util
Commit message (Collapse)AuthorAgeFilesLines
* Bug 732609 - Cannot decrease indentationTomas Popela2014-07-021-225/+407
| | | | | Don't use WebKit indent/unindent commands. Make our indentation/undentation code (that was used when there was no selection) selection aware.
* When setting some content into the composer body we have to specify if it is ↵Tomas Popela2014-07-011-3/+12
| | | | | | | | | a HTML content Code paths for HTML content and plain text content are different. When we will try to load plain text content as a HTML content we will lose the new line characters. In the opposite case when HTML content is load as a plain text at least the whole structure is lost.
* EHTMLEditorView - Create new paragraph in body if body is empty and save ↵Tomas Popela2014-07-011-0/+8
| | | | caret there
* EHTMLEditorSelection - Try to move with the caret only when it is possible ↵Tomas Popela2014-07-011-0/+2
| | | | to save it
* EHTMLEditorView - Fix quoting of the lines with anchorsTomas Popela2014-06-301-7/+4
| | | | | Remove bogus new line character insertion and don't quote the anchor element if it has caret/selection inside.
* EHTMLEditorView - Refactor the code that triggers the surround of links with ↵Tomas Popela2014-06-301-6/+9
| | | | | | anchor elements And add www to patterns.
* EHTMLEditorView - Correctly replace tabulators with spacesTomas Popela2014-06-301-18/+96
| | | | | Don't replace them with 8 spaces, but count the right amount of spaces to relace the tab character with.
* EHTMLEditorSelection - Fix wrapping of the anchor elementsTomas Popela2014-06-301-1/+11
| | | | | When there is a whitespace after the link leave it after the link and don't try to wrap before it.
* Bug 731416 - [webkit-composer] Busy-loop when replying to an emailTomas Popela2014-06-301-1/+6
| | | | | | When wrapping lines with really long words (more that is defined in Composer settings) the maximal length for wrap could be less than zero. For proper functionality we have to set it to the right value.
* EHTMLEditorSelection - Correctly find the element's parent node when ↵Tomas Popela2014-06-301-19/+46
| | | | changing the block's format
* EHTMLEditorSelection - When removing the elements use by composer for quoted ↵Tomas Popela2014-06-301-0/+6
| | | | content remove all of them
* EHTMLEditorSelection - Fix detection of the paragraph format inside the ↵Tomas Popela2014-06-301-18/+11
| | | | quoted content
* Bug 732180 - Excessive CPU usage due to GtkSpinnerMilan Crha2014-06-276-10/+338
| | | | | Let's use our own spinner-like widget, which doesn't need as that much of CPU as GtkSpinner.
* Reply to selection in text-highlight part loses white-spacesMilan Crha2014-06-271-1/+33
| | | | | | | | | | text-highlight module encloses the generated text into <pre/> tags, thus the preview panel shows white-spaces correctly, but once a reply is done to a selected text the returned HTML portion had missing <pre/> tags, which led to lose of the white-spaces in the generated content (in UI), while the white-spaces were there in the raw HTML code. Enclosing selected HTML portion into <pre/> tags in case the original text is also enclosed it them fixes it.
* EHTMLEditorView - Fix clipboard paste into quoted contentTomas Popela2014-06-251-628/+665
| | | | | When pasting the text from clipboard into the quoted content in the composer paste it into it and not into the body.
* EHTMLEditorActions - Hide HTML actions in plain text mode instead of making ↵Tomas Popela2014-06-251-1/+1
| | | | them insensitible
* Bug 731508 - [webkit-composer] no option to paste as text (without formatting)Tomas Popela2014-06-256-3/+88
|
* Bug 732202 - [webkit-composer] Paste scrolls viewTomas Popela2014-06-251-1/+24
| | | | | We have to check if the caret is inside the viewport when we are trying to scroll to it. If it is in the viewport we won't scroll.
* Bug 731507 - [webkit-composer] paste does not work, shift-ins or CTRL-V worksTomas Popela2014-06-251-11/+9
| | | | | | | Together with previous commit that removes the usage of deprecated gtk-stock items and unregistering the Ctrl+v shorcut this solves the issue. When the action is triggered and WebView doesn't have focus we have to focus it to insert the clipboard content there.
* EHTMLEditor - Stop using deprecated gtk-stock itemsTomas Popela2014-06-2511-77/+65
|
* EHTMLEditorView - Process the element only if it has childrenTomas Popela2014-06-251-11/+12
|
* EHTMLEditorView - Preserve empty lines when processing the text in convertorTomas Popela2014-06-251-3/+7
| | | | | Also insert the BR elements instead of the non-breaking space as a content to empty paragraphs to avoid unwanted character there.
* EHTMLEditorView - Preserve spaces and create anchors for the links in the ↵Tomas Popela2014-06-241-14/+36
| | | | text after the last BR element
* Drop the last references to GtkHTMLMilan Crha2014-06-241-3/+1
| | | | | | | There still left some references to GtkHTML in the "active code", which should be dropped. There still can be found couple "GtkHTML" strings in the code, but mostly in disabled code or comments only. These are to be fixed separately.
* EHTMLEditor - Process text in convertor when pasting plain text from clipboardTomas Popela2014-06-233-6/+16
|
* EHTMLEditorView - Insert quote symbols before HTML element when it has no ↵Tomas Popela2014-06-231-0/+4
| | | | | | | previous sibling This fixes the situation when the paragraphs with just i.e. anchor were not properly quoted.
* EHTMLEditorView - Replace 2+ spaces with non-breaking spaces and create ↵Tomas Popela2014-06-231-8/+106
| | | | | | | | | | | | | anchors for links when processing data from convertor When converting text we want to preserve spaces from original text. For this we have to use the non-breaking spaces for it as two and more normal spaces is WebKit replacing with just one. But we want the text from convertor to be wrapped (non-breaking space is preventing from it) so we will replace 2+ spaces with non-breaking spaces and leave the space of length one as it is. Also when we are going through the text from the convertor we will surround the links with anchor element to make them clickable.
* EHTMLEditorView - Generate new line into plain text version even when ↵Tomas Popela2014-06-231-0/+3
| | | | paragraph has no children
* Bug 731872 - EWebView: Use named colors from themesSebastian Keller2014-06-231-20/+20
|
* EHTMLEditorView - Improve the writing into quoted contentTomas Popela2014-06-191-77/+341
| | | | | | | | After this change when we start writing into quoted content it will automatically rewrap the paragraph and reinserts the quote marks if the block format is set to Normal. Also when the caret is in the beginning of the quoted line and BackSpace is pressed the quoted content is tooked out from the quote and inserted into body.
* EHTMLEditorView - When quoting the elements correctly skip the selection markersTomas Popela2014-06-191-3/+28
|
* Bug 731766 - [webkit-composer] Emoticon cannot be inserted at the end of the ↵Tomas Popela2014-06-191-40/+137
| | | | | | | | | | email Rework how the emoticons are inserted into composer. There were certain situations where the previous version failed from various reasons like wrongly saved caret position. Together with previous commits (preventing the selection markers to be saved into body) this change fixes the insertion of emoticons.
* EHTMLEditor - Make functions that remove quote and wrap elements publicTomas Popela2014-06-193-44/+21
| | | | Use them whenever it's possible and remove their duplicates from EHTMLEditorView.
* EHTMLEditorSelection - Fix caret position when changing block formatTomas Popela2014-06-191-0/+14
|
* EHTMLEditorSelection - Don't try to save selection markers straight into bodyTomas Popela2014-06-191-0/+72
| | | | | | This caused unpredictable behavior in functions, which relies on the position of caret/selection. We won't save the selection markers and handle the situation (no selection markers) in those functions.
* EHTMLEditorSelection - When changing the format of block set EHTMLEditorView ↵Tomas Popela2014-06-191-0/+2
| | | | as changed
* EHTMLEditorView - Activate inline image resize just when hovering over imageTomas Popela2014-06-191-8/+2
| | | | | When we will leave the CSS "display: inline-block" on inline images they will break the caret move with Home/End keys.
* EHTMLEditor - When setting the body background image set it as its base64 ↵Tomas Popela2014-06-183-13/+26
| | | | data instead of uri
* Bug 731767 - [webkit-composer] Inline images not attached to the emailTomas Popela2014-06-171-36/+26
| | | | Change image's source value immediately after creating the Camel part for it.
* Crash in client_selector_allow_auth_prompt_done_cb() on errorMilan Crha2014-06-171-2/+1
| | | | | | Actually, g_simple_async_result_take_error() means take, not copy, thus the later g_clear_error() was incorrect, possibly freeing already freed memory.
* Bug 702703 - Be able to overwrite domain in Message IDsMilan Crha2014-06-172-6/+9
|
* EHTMLEditor: Move remove_node and remove_node_if_empty to EWebViewTomas Popela2014-06-164-150/+75
| | | | And use them in EHTMLEditorView if possible.
* EHTMLEditorView: Remove unused functionTomas Popela2014-06-161-21/+0
|
* EHTMLEditor - Fix block format change with selection in quoted contentTomas Popela2014-06-132-33/+66
|
* EHTMLEditorView - When changing from html to plain text mode adjust ↵Tomas Popela2014-06-131-8/+11
| | | | | | composer's content Apply width limits to paragraphs, remove images and replace smileys with its text version.
* Bug 731551 - [webkit-composer] Whitespace lost on message reply (plain text)Tomas Popela2014-06-131-1/+18
| | | | | | Replace whitespace with non breaking space (&nbsp;) to avoid its lost. Also when generating the plain text version of final message replace non breaking space with normal space.
* EWebView - Check if the link has fragmentTomas Popela2014-06-131-1/+1
| | | | Some links doesn't have the framegment so check for it before accessing it.
* EHTMLEditorSelection - Return the format of list that we determined for ↵Tomas Popela2014-06-131-1/+3
| | | | ordered list
* EClientSelector: Do not check connection for empty or "localhost" hostMilan Crha2014-06-131-1/+1
| | | | Related to bug 731585
* Check whether value really changed in callbacks of GSettings::changed signalMilan Crha2014-06-121-6/+37
| | | | | Just two more places, which are new after a merge of the webkit-composer branch changes.
* EHTMLEditor: Set right width to paragraphs that are quotedTomas Popela2014-06-112-6/+5
|
* EHTMLEditorView: Introduce is_return_key and use it where possibleTomas Popela2014-06-111-20/+14
|
* EHTMLEditorView: Rename quote_character class to -x-evo-quote-characterTomas Popela2014-06-111-16/+16
|
* EHTMLEditor: Fix various bugs in block in/undentTomas Popela2014-06-102-14/+24
| | | | | | Fix the wrong position of caret when in/undenting empty block and don't lose spell checked words when in/undenting. Also don't insert unnecessary empty lines into plain text version of message when processing indented block.
* EHTMLEditorView: Skip BR on the end of HTML that's parsed into paragraphsTomas Popela2014-06-101-1/+1
| | | | Do that to avoid unnecessary empty paragraph element.
* EHTMLEditorView: Replace Tab character with 8 spaces instead of 4Tomas Popela2014-06-101-3/+3
|
* Bug 731416 - [webkit-composer] Busy-loop when replying to an emailTomas Popela2014-06-101-1/+4
| | | | | Don't try to wrap words that are longer than defined word wrap length, otherwise we will end in busy loop.
* Bug 540362: [webkit-composer] Use webkit for composerTomas Popela2014-06-0976-2968/+29457
| | | | Merge wip/webkit-composer branch into master.
* Bug 668006 - Crash when dragging column headers of Tasks listMilan Crha2014-06-061-8/+7
|
* Ignore false GSettings key change notificationsMilan Crha2014-06-051-3/+34
| | | | | | | Similar to GObject::notify, the GSettings::changed can be emitted even if a key didn't change. It's up to the user (aka evolution) to test for real changes, thus let's do it. It may have certain performance positive impact too.
* Properly disconnect signal handlers added with e_signal_connect_notify*()Milan Crha2014-06-059-11/+86
| | | | | | | | | | | This is a follow-up for the previous commit, where e_signal_connect_notify*() functions had been added. Due to a different callback and user data being attached to the 'notify' signal, the g_signal_handlers_*() functions do not work properly, thus these e_signal_connect_notify*() functions need a different way for a signal handler disconnect. A side-change was done in e-settings-web-view-gtkhtml.c, checking for a real key change from GSettings.
* Ignore false GObject property change notificationsMilan Crha2014-06-0528-52/+374
| | | | | | | | | | | | | | | | | | | | | | 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 729303 - Default width of Message Filters window is too smallMilan Crha2014-05-301-0/+1
|
* Bug #730199 - [MessageList] Support dates with value larger than 2^32Milan Crha2014-05-243-4/+39
|
* Bug #678843 - May re-prompt password on account re-enableMilan Crha2014-05-135-12/+184
|
* EWebView: Rework how link with fragment is detected, use SoupURI for itTomas Popela2014-05-071-7/+55
| | | | | Also when hovering over the link with fragment that points to message don't show the whole URI in status bar, but just the fragment.
* Bug #653892 - Allow to enter more than four email addressesChristian Schaarschmidt2014-05-063-40/+72
|
* EWebView: Allow navigation in page through HTML anchor elementsTomas Popela2014-05-051-3/+14
|
* EFileRequest: Fix build with additional debug messages enabledTomas Popela2014-05-051-1/+7
|
* Bug #729084 - Use tel: URI instead of callto: for phone numbersMilan Crha2014-04-304-12/+23
| | | | | | | | | This change does a bit more, actually: - learn the code of "tel" URI, being handler similar to "sip", "callto", "h323" - generate tel: URIs for phone numbers, but only if the leading character of the phone number is a plus ("+") sign - always remove spaces in href part in the e_text_to_html() when E_TEXT_TO_HTML_URL_IS_WHOLE_TEXT flag is set
* Bug 729256: Busy loop under replace_local_image_links()Tomas Popela2014-04-301-39/+28
| | | | | Rework replace_local_image_links to use CSS selectors to avoid iterating through the DOM tree.
* Bug #685323 - Provide SIP field for contactsMilan Crha2014-04-292-6/+37
|
* Fix regressions after commit fdde3339619Milan Crha2014-04-282-3/+5
| | | | | The commit fixed few memory leaks, but also caused several crashes due to those changes, thus this fixes the introduces issues.
* Fix various memory leaksMilan Crha2014-04-2510-10/+35
|
* [EActivityBar] Reset priv->timeout_id when the timeout is reachedMilan Crha2014-04-241-2/+39
| | | | | | | Since GLib begun to claim about incorrect ids being passed to g_source_remove(), a problem with EActivityBar had been discovered, it doesn't unset its priv->timeout_id when the timeout is reached, which leads to the new runtime warnings from GLib.
* Make 'Copy Link Location' copy into both primary and selection clipboardsMilan Crha2014-04-221-1/+5
| | | | | | | It used to copy the link into both buffers, same as the 'Copy Email Address" does, but it seems, after a move to WebKit based message preview, this changed and the link had been copied only to the selection clipboard. Make the function consistent and copy the link into to both clipboards.
* Bug #684425 - Do not pass NULL text to gtk_entry_set_text()Milan Crha2014-04-113-3/+98
|
* Fix few more memory leaksMilan Crha2014-04-041-1/+3
|
* e-util: Port to thread-safe ECategories APIPhilip Withnall2014-03-287-26/+39
| | | | | | | | | | | | | | This ports the following two function calls throughout Evolution: • e_categories_get_list() to e_categories_dup_list() • e_categories_get_icon_file_for() to e_categories_dup_icon_file_for() It necessarily changes some internal e-util API: • e_util_get_searchable_categories() to e_util_dup_searchable_categories() This bumps the EDS requirement to 3.13.1. https://bugzilla.gnome.org/show_bug.cgi?id=727221
* Bug #726542 - Unpadded black border on various mail account settings pagesMilan Crha2014-03-284-0/+4
|
* Fix two memory leaksMilan Crha2014-03-261-1/+1
| | | | | | | a) ETableColumnSpecification: the 'title' property is always overwritten during the spec file loading, thus no need to allocate it here b) the 'uids' are leaked on message move, because the GPtrArray is supposed to be always unreffed
* EPhotoCache: Fix a memory leakMilan Crha2014-03-251-2/+3
|
* Add an --enable-code-coverage configure option to enable gcov supportMilan Crha2014-03-251-1/+2
| | | | | When enabled, this will compile all libraries/binaries with the necessary gcc and ld flags to enable code coverage support using gcov.
* Bug #726110 - Use gtk_drag_check_threshold() instead of hard-coded valuesMilan Crha2014-03-243-10/+9
|
* Bug #710337 - Define ETree/ETable "alternating-row-colors" style propertyMilan Crha2014-03-142-2/+43
|
* EWebView/EMailDisplay: Setup custom CSS styles to DOM right after document loadsMilan Crha2014-03-131-0/+4
| | | | | | | | | | | | | The custom styles, those which are added on-the-fly directly to DOM, were added only after whole document was completely loaded, which included also sub-frames content, thus when these were slow to download for any reason, the main frame content, like the top header bar, was shown with a default style, which is white background and black text color. The WebKitWebView's document-load-finished signal is emitted whenever the actual HTML content is loaded, and the DOM is available as well, for each frame, including the main frame of the WebView, thus updating/setting custom CSS styles in this signal handler makes the loaded frames look as expected, without waiting for other frames in the document to finish their load.
* Bug #722938 - Adapt a11y code for newest gtkMike Gorse2014-03-1310-176/+50
| | | | | As of gtk+ 3.2, AtkObjectFactories are no longer used to generate accessibles for gtk widgets, so our custom atk classes need refactoring.
* Bug #711658 - Time zone for new events sometimes defaults to UTCMilan Crha2014-03-062-1/+32
|
* Bug #446659 - Message view can scroll away after message deletionMilan Crha2014-03-062-0/+21
|
* Miscellaneous cleanups.Matthew Barnes2014-03-0393-973/+1042
|
* EWebView: Limit zoom-in/zoom-out to 0.1 .. 5.0 valuesMilan Crha2014-02-281-4/+11
| | | | | It doesn't make much sense to zoom below 0.1, same as zoom 5.0 is quite large, thus no need to zoom indefinitely in both directions.
* Replace 'interface' with 'iface' in the codeTarnyko2014-02-2626-450/+450
| | | | | | Win32 headers have a #define for 'interface', which breaks the build when this word is used in the code, thus replace it to 'iface', the same way as GLib or GTK+ code use to have it. (See bug #722068.)
* ETree/ETable: Allow easier adding of columns for sortingMilan Crha2014-02-255-12/+92
| | | | | | | | | This extends behaviour of left-clicking column header which is not used for sorting yet in an ETree/ETable in a way: a) alone left-click behaves like before, all current sorting is dropped and the ETree/ETable is sorted only by that column b) left-click with pressed Ctrl key adds the column as the first to sort by c) left-click with pressed Ctrl+Shift adds the column as the last to sort by
* Add missing action captions after gtk-stock replacementMilan Crha2014-02-253-7/+7
|
* Fix few more memory leaksMilan Crha2014-02-211-0/+20
|
* Forgotten chunk from the previous commit (shortcuts from gtk-stock definitions)Milan Crha2014-02-171-1/+1
|
* Add shortcuts previously defined by gtk-stock item definitionsMilan Crha2014-02-172-8/+8
|
* e_menu_tool_action_new: Remove unused stock_id parameterMilan Crha2014-02-142-5/+3
|
* Do not use "dialog-apply" icon and make EStockRequest fool-proofMilan Crha2014-02-131-23/+26
| | | | | | | | | The "dialog-apply" icon is not from a set of standard icons, thus it cannot be used, which I overlooked yesterday. With its drop are also dropped other button icons in itip-formatter. The missing icon made EStockRequest "panic" which effectively broke page rendering for WebKit - the rendering was never finished.
* Stop using deprecated gtk-stock itemsMilan Crha2014-02-1346-224/+272
|
* Fix a runtime warning on startup.Matthew Barnes2014-02-111-2/+6
| | | | | Calling g_source_remove() on a saved source ID but not resetting the source ID to zero.
* e_table_sort_info_duplicate: Missing ref of a 'column_spec' memberMilan Crha2014-02-111-0/+17
| | | | | | Both 'groupings' and 'sortings' arrays unref the 'column_spec' on removal, but the 'duplicate' function didn't ref them, which caused use-after-free at the end of the application.
* Bug #721639 - Cannot overwrite builtin mail view definitionsMilan Crha2014-02-041-0/+10
|
* Bug #722951 - Check for empty rule valuesMilan Crha2014-01-294-3/+54
|
* Bug #721213 - Character encoding combo opened emptyMilan Crha2014-01-282-11/+30
|
* Bug #707518 - Deleting a local address book triggers error "Unable to open ↵Milan Crha2014-01-271-0/+16
| | | | address book"
* [ESourceSelector] Fix a memory leak on a mouse button press eventMilan Crha2014-01-251-1/+4
|
* [ESourceSelector] A performance improvementMilan Crha2014-01-251-0/+30
| | | | | | | A simple performance improvement to ignore ESourceRegistry notifications on source changes for sources which do not belong to the ESourceSelector. Such notifications could cause whole model rebuild, which has other side effects, like a bug #722399.
* Replace usage of __FUNCTION__ with G_STRFUNCMilan Crha2014-01-235-43/+43
|
* Fix return values in a few functionsKjartan Maraas2014-01-225-11/+11
|
* Fix duplicate #includesKjartan Maraas2014-01-222-3/+0
|
* Bug #721427 - Alert about missing condition in a filter rule editorMilan Crha2014-01-222-0/+8
|
* [evolution-source-viewer] Make identity label selectableMilan Crha2014-01-181-0/+1
| | | | Easier to copy&paste than write the generate UID letter by letter.
* Bug #702958 - Crash on attachment add or removeMilan Crha2014-01-171-3/+6
|
* EDateEdit: Force 24 hour format for locales without am/pm equivalentsMilan Crha2014-01-141-27/+47
| | | | | | | | Some locales do not provide equivalents for am/pm (the "%p" of strftime), thus when the user has set 12 hour format in Preferences, then the am and pm times are the same, which confuses the widget, especially in the appointment editor, making it hard (like impossible) to enter pm times by selection in the time combo. An example locale is de_DE.
* Bug #333184 - Add Undo support to component editorsMilan Crha2014-01-118-20/+1325
|
* Bug 721545 - License text contains obsolete FSF postal addressMatthew Barnes2014-01-08470-4739/+4233
|
* Coding style and whitespace cleanup.Matthew Barnes2013-12-071-50/+121
|
* Bug #329616 - Spell checking for Event/Task/Memo editorsMilan Crha2013-11-294-0/+159
| | | | | This is based on the work of Jan-Michael Brummer from bug #705338, just a little extended to be reusable across whole evolution.
* Extend test-source-selector test programMilan Crha2013-11-291-59/+226
| | | | | | | | | | | Added features: - show all four selectors (for Calendars/Memos/Tasks/Books) - be able to open/close selected source Especially the later can be used for testing the factories easily, without running evolution or other client. There can be added more actions on an opened EClient descendant in the future, if it'll be found useful.
* e-utils: replacing g_memmove with memmoveAlberto Ruiz2013-11-271-2/+2
| | | | | glib has removed g_memmove, since it was a macro there is no ABI break but sources have to be adapted to switch to memmove See glib commit 6e4a7fca431f53fdfd89afbe956212229cf52200 for further reference.
* Use SoupSession's request API instead of SoupRequester.Matthew Barnes2013-11-271-23/+2
| | | | SoupRequester functionality is built directly into SoupSession now.
* Fix/mute issues found by Coverity scanMilan Crha2013-11-1522-82/+112
| | | | | | | | | | | | This makes the code free of Coverity scan issues. It is sometimes quite pedantic and expects/suggests some coding habits, thus certain changes may look weird, but for a good thing, I hope. The code is also tagged with Coverity scan suppressions, to keep the code as is and hide the warning too. Also note that Coverity treats g_return_if_fail(), g_assert() and similar macros as unreliable, and it's true these can be disabled during the compile time, thus it brings in other set of 'weird' changes.
* Make e_attachment_set_file_info() thread-safe.Matthew Barnes2013-11-071-4/+9
| | | | Missed this one in commit 9058c6f85dc49f9500e7e67819acfd8c0d2d369c.
* Bug 707112 - Replace webkit_dom_html_element_get_id usageKerrick Staley2013-11-051-0/+6
| | | | | | | | | | | | | | | | webkit_dom_element_get_id() was introduced for WebKitGTK+ 2.2 and deprecates webkit_dom_html_element_get_id(). But Evolution only requires WebKitGTK+ 2.0.1. Ordinarily this would sit on a shelf until we require WebKitGTK+ 2.2, however WebKitGTK+ has now started issuing deprecation warnings about webkit_dom_html_element_get_id() at *runtime*, which is pointless and only fills up users' .xsession-errors file. To put a stop to this, we'll call the new function subject to a pre- processor WebKit version check, with a fallback to the old function. The build requirement remains at WebKitGTK+ 2.0.1.
* EMailIdentityComboBox: Document and clean up.Matthew Barnes2013-11-012-33/+139
|
* Bug 710797 - Name all the timeouts added with g_timeout_add()Bastien Nocera2013-10-3019-79/+108
|
* EProxyEditor: Save on "Method" combo box change.Matthew Barnes2013-10-261-4/+13
|
* EAutocompleteSelector: Show icons.Matthew Barnes2013-10-261-0/+2
| | | | Just a nice touch, I think.
* Document EProxyLinkSelector.Matthew Barnes2013-10-262-0/+53
|
* EProxyEditor: Add an "Open Desktop Settings" button.Matthew Barnes2013-10-261-11/+59
| | | | | | | Shown for the "Defer to Desktop Settings" choice if gnome-control-center is available. The button opens gnome-control-center's "Network" panel, but unfortunately the "Network proxy" item cannot be selected from the command line.
* Add EProxyPreferences.Matthew Barnes2013-10-265-0/+872
|
* Add EProxyLinkSelector.Matthew Barnes2013-10-264-0/+366
|
* Add EProxyEditor.Matthew Barnes2013-10-264-0/+834
|
* Add EProxySelector.Matthew Barnes2013-10-264-0/+930
|
* Add EProxyComboBox.Matthew Barnes2013-10-264-0/+469
| | | | | EProxyComboBox is a combo box of available proxy profiles, as described by ESource instances with an ESourceProxy extension.
* Remove e_source_selector_set_select_new().Matthew Barnes2013-10-262-21/+0
| | | | Sets a flag that's no longer used internally by ESourceSelector.
* ESourceSelector: Fix a reference leak in text_cell_edited_cb().Matthew Barnes2013-10-251-7/+9
| | | | We were leaking the ESource reference.
* ESourceSelector: Add a "show-icons" property.Matthew Barnes2013-10-253-2/+154
| | | | | | | | ESourceSelector can now optionally display an icon next to each ESource matching the selector's "extension-name". Intended for non-homogeneous use cases where a variety of account types are shown in the selector. The icon set is hard-coded, but we could change that if the need arises.
* ESourceSelector cleanups.Matthew Barnes2013-10-253-57/+90
|
* ESourceSelector: Fix a potential runtime warning.Matthew Barnes2013-10-231-1/+3
| | | | | | | When (re)building the tree model, ESourceSelector may fall back to e_source_registry_ref_default_for_extension_name() to help initialize the primary selection. Depending on the selector's "extension-name" property, that function may return NULL. Handle it gracefully.
* Miscellaeous cleanups.Matthew Barnes2013-10-201-6/+6
|
* EMailIdentityComboBox cleanups.Matthew Barnes2013-10-112-37/+37
|
* Bug #215115 - Per-folder From: email addressMilan Crha2013-10-082-2/+76
| | | | | | The change also allows setting accounts for certain recipients (based on a part of the recipient address). The option can be found in Folder Properties and in Edit->Preferences->Composer Preferences->Send Account.
* Bug #708682 - Move with 'End' key with collapsed threads failsMilan Crha2013-10-011-6/+1
| | | | This reverts part of commit 452638466217dbfef0c0954c90aa7cb03cf91452
* Bug #708347 - Memory leak from EWebView/webkitTomas Popela2013-09-231-2/+5
|
* Update API documentation.Matthew Barnes2013-09-152-3/+3
|
* EClientSelector: Show an initial icon based on host name.Matthew Barnes2013-09-151-1/+150
| | | | | | | | Have GNetworkMonitor make an initial guess at the online state of backends by evaluating the reachability of their host name. This will show an initial status icon for all displayed ESources without actually opening a connection, since some backends are expensive to start unnecssarily.
* Bug #706008 - Workaround gnome-shell style change on focus changeTomas Popela2013-09-122-21/+249
| | | | | | | Avoid redrawing (thus loosing the selection and scroll position) of preview window on style change by defining the colors through CSS styles. On style change we just update the CSS color definitions and preview will update itself without redraw.
* EClientSelector: Do not prefetch EClient instancesMilan Crha2013-09-121-51/+0
| | | | | Let the open for a user, when respective source in the selector is selected.
* Miscellaneous cleanups.Matthew Barnes2013-09-0814-121/+165
|
* Bug #706901 - Large default book slows down composer openMilan Crha2013-08-301-4/+15
|
* Skip evolution from 'Open with' list of applications on attachmentsMilan Crha2013-08-291-0/+26
|
* EAlertBar: Mention Escape binding in close button tooltip.Matthew Barnes2013-08-111-1/+2
|
* Add e_alert_bar_close_alert().Matthew Barnes2013-08-112-0/+41
| | | | | Closes the active EAlert and returns TRUE, or else returns FALSE if there is no active EAlert.
* Bug #704207 - Dragged column's arrow indicator oversizedMilan Crha2013-08-091-0/+3
|
* Bug #699603 - Message list scrolls to cursor on style changeMilan Crha2013-08-013-0/+63
|
* [workaround] Bug #695633 - Attachments disappear after opening oneMilan Crha2013-07-312-4/+4
|
* EPreviewPane: Handle "new-activity" signals from EWebView.Matthew Barnes2013-07-281-0/+25
| | | | Configures the EActivity to submit alerts to the EPreviewPane.
* EPreviewPane cleanups.Matthew Barnes2013-07-282-25/+5
|
* EWebView: Add an "image-save" action.Matthew Barnes2013-07-282-1/+21
| | | | | | There's now enough hooks in EWebView that it can take over image saving from EMailDisplay / EMailReader, with the added perk that a "Save Image" pop-up menu item now appears for images in ALL preview panes.
* Add e_web_view_cursor_image_save().Matthew Barnes2013-07-282-0/+236
| | | | | Prompts the user to choose a destination file and then asynchronously saves the image under the cursor to the destination file.
* Add e_web_view_cursor_image_copy().Matthew Barnes2013-07-283-157/+153
| | | | | | | | | | | | | | | | | | | | | | | | | | | Asynchronously copies the image under the cursor to the clipboard. This replaces the "cursor-image" property, which attempts to match the image URI to a subresource from WebKitWebDataSource. The problem with that approach is EMailDisplay redirects several URI schemes to its own custom request handlers which further mutate the URI. So for example, a text/html message may use a "cid:" URI to refer to an embedded image, which EMailDisplay transforms to a "mail:" URI and finally to a "data:" URI. The final image URI might not be derivable from the original URI without retracing the SoupRequest. The "image-copy" action now calls e_web_view_cursor_image_copy(). This also adds an explicit requirement on gdk-pixbuf-2.0 >= 2.24 for gdk_pixbuf_new_from_stream_async() / finish(). New functions: e_web_view_cursor_image_copy() Removed functions: e_web_view_get_cursor_image() e_web_view_set_cursor_image()
* Add e_web_view_new_activity().Matthew Barnes2013-07-282-0/+51
| | | | | | | | | Returns a new EActivity for an EWebView-related asynchronous operation, and emits a "new-activity" signal. By default the EActivity comes loaded with a GCancellable and sets the EWebView itself as the alert sink (which means alerts are displayed directly in the content area). The signal emission allows the EActivity to be further customized and/or tracked by the application.
* Add e_web_view_request().Matthew Barnes2013-07-282-0/+160
| | | | | | | | | | | Asynchronously requests data at a URI by way of a SoupRequest to WebKit's default SoupSession, incorporating both e_web_view_redirect_uri() and the custom request handlers installed via e_web_view_install_request_handler(). New functions: e_web_view_request() e_web_view_request_finish()
* Add e_web_view_suggest_filename().Matthew Barnes2013-07-282-0/+65
| | | | | | | | | | | Attempts to derive a suggested filename from the given URI for use in a "Save As" dialog. By default the suggested filename is the last path segment of the given URI (the unless the given URI looks like a query), but subclasses can use other mechanisms for custom URI schemes. For example, "cid:" URIs in an email message may refer to a MIME part with a suggested filename in its Content-Disposition header.
* Add e_web_view_redirect_uri().Matthew Barnes2013-07-272-0/+43
| | | | | | | | | | Replaces the given URI with a redirected URI as necessary, primarily for use with custom SoupRequest handlers. Typically this function would be called just prior to handing a request off to a SoupSession, such as from a WebKitWebView "resource-request-starting" signal handler. Case in point: EMailDisplay now implements the redirect_uri() method, and calls it from its own "resource-request-starting" signal handler.
* Remove e_web_view_get_uri().Matthew Barnes2013-07-272-9/+0
| | | | | | | Trivial wrapper for webkit_web_view_get_uri(). Probably made sense while we were transitioning from GtkHTML to WebKit, but we don't need it anymore.
* Remove unused e_web_view_set_enable_frame_flattening().Matthew Barnes2013-07-272-19/+0
|
* Remove unused e_web_view_get_enable_frame_flattening().Matthew Barnes2013-07-272-21/+0
|
* Remove unused e_web_view_frame_get_uri().Matthew Barnes2013-07-272-24/+0
|
* Remove unused e_web_view_frame_load_uri().Matthew Barnes2013-07-272-44/+0
|
* Remove unused e_web_view_frame_load_string().Matthew Barnes2013-07-272-46/+0
|
* Remove unused e_web_view_extract_uri().Matthew Barnes2013-07-272-41/+0
|
* EWebView: Initialize WebKitWebSettings internally.Matthew Barnes2013-07-272-63/+43
| | | | | | | | | | | | Don't expose public API for this. Even though it's still possible through the WebKitWebView API, we don't want to encourage setting an arbitrary WebKitWebSettings on an EWebView. Removed functions: e_web_view_set_settings() e_web_view_get_default_settings()
* EWebView cleanups.Matthew Barnes2013-07-271-188/+208
|
* Bug 697575 - ESourceConfig: Avoid calling check_complete() too soonMatthew Barnes2013-07-211-4/+11
| | | | | | | | | | Connect to the GtkComboBox::changed signal after all candidates are added, to avoid calling e_source_config_check_complete() before the candidate has been told to insert widgets. This can cause run-time warnings such as: (evolution:7106): evolution-cal-config-webcal-CRITICAL **: cal_config_webcal_check_complete: assertion `context != NULL' failed
* Bug 704494 - EStockRequest calls into GTK+ from worker threadMatthew Barnes2013-07-201-16/+31
|
* EStockRequest cleanups.Matthew Barnes2013-07-201-91/+91
|
* Bug 704558 - Crash when using -fstack-protector-strongMatthew Barnes2013-07-201-1/+3
| | | | Same issue as in bug 703991, just in a different place.
* EContactStore: Stop book views in a dedicated threadMilan Crha2013-07-171-1/+18
| | | | | | I've got UI freeze in a call of e_book_client_view_stop() on contact store dispose, caused by synchronous D-Bus call. Doing the call in a dedicated thread makes no UI freeze here.
* Remove tree-expanded.xpm and tree-unexpanded.xpm.Matthew Barnes2013-07-133-48/+0
| | | | No longer used.
* ERuleEditor: Remove dead code.Matthew Barnes2013-07-092-161/+0
| | | | | | Unfinished undo framework from ages past. Nice idea I guess, but not worth the complexity.
* Remove nautilus-sendto integration.Matthew Barnes2013-07-085-300/+0
| | | | | | | | nautilus-sendto has been stripped of its usefulness in GNOME 3.8. It no longer has a UI of its own, it just immediately spawns a mail client with a set of files as attachment arguments for a new message. There's no reason for Evolution to be invoking it anymore.
* Miscellaneous cleanups.Matthew Barnes2013-07-076-19/+21
|
* Add e_activity_get_last_known_text().Matthew Barnes2013-07-062-0/+33
| | | | | | | | | | | | | | | | | | | | | | | Evolution is still occasionally getting stuck on shutdown, and although the evolution-shell log domain shows debug messages for activities that are preventing shutdown, they frequently look like this: (evolution:13534): evolution-shell-DEBUG: 5 active 'mail' activities: (evolution:13534): evolution-shell-DEBUG: * (no description) (evolution:13534): evolution-shell-DEBUG: * (no description) (evolution:13534): evolution-shell-DEBUG: * (no description) (evolution:13534): evolution-shell-DEBUG: * (no description) (evolution:13534): evolution-shell-DEBUG: * (no description) I think the lack of descriptions is from CamelOperations popping all their pushed messages, which is correct behavior but doesn't help us debug the problem. e_activity_get_last_known_text() returns the most recent _non-empty_ text value set on the EActivity. So our debug message can fall back to that if the EActivity has no description at shutdown: (evolution:13534): evolution-shell-DEBUG: * (was "blah, blah, blah")
* Remove GalViewFactory.Matthew Barnes2013-07-064-170/+0
| | | | No longer used.
* Remove GalViewFactoryEtable.Matthew Barnes2013-07-064-140/+0
| | | | No longer used.
* GalViewCollection: Load files during instance initialization.Matthew Barnes2013-07-063-249/+249
| | | | | | | | | | | gal_view_collection_new() now takes system and user directory arguments and loads GalViews during instance initialization. Removed functions: gal_view_collection_set_storage_directories() gal_view_collection_load() gal_view_collection_loaded()
* Remove gal_view_collection_add_factory().Matthew Barnes2013-07-062-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.
* GalViewCollection: We don't need no stinkin' factories!Matthew Barnes2013-07-061-15/+37
| | | | | | | | | Given a type code string from an XML file, find the appropriate GType by traversing the GType hierarchy from GAL_TYPE_VIEW and checking the class structures for a matching type code string. This completely eliminates the need for what's left of GalViewFactory. Now it's just a matter of cleaning up the remains.
* GalViewCollection: Move public members into private section.Matthew Barnes2013-07-063-121/+140
|
* GalViewCollection: Add a private section.Matthew Barnes2013-07-062-0/+14
|
* Use gal_view_collection_get_user_directory() where needed.Matthew Barnes2013-07-061-2/+8
| | | | | | GalViewInstance and EMailPanedView need access. Currently they're just using the public GalViewCollection members directly, but those are about to be sealed up.
* GalViewCollection: Add a "user-directory" property.Matthew Barnes2013-07-062-1/+39
| | | | | | | | | | Just readable for now, but I plan to make it also construct-only. (Despite the precendence, I prefer "user" over "local" for the name.) New functions: gal_view_collection_get_user_directory()
* GalViewCollection: Add a "system-directory" property.Matthew Barnes2013-07-062-0/+55
| | | | | | | | Just readable for now, but I plan to make it also construct-only. New functions: gal_view_collection_get_system_directory()
* GalViewCollection cleanups.Matthew Barnes2013-07-062-71/+52
|
* Remove unused gal_view_collection_set_default_view().Matthew Barnes2013-07-062-13/+0
|
* Remove unused gal_view_collection_copy_view().Matthew Barnes2013-07-062-38/+0
|
* Remove unused gal_view_collection_append().Matthew Barnes2013-07-062-37/+0
|
* Remove unused gal_view_collection_get_view_id_by_index().Matthew Barnes2013-07-062-14/+0
|
* GalViewCollection: Remove "title" member.Matthew Barnes2013-07-062-17/+0
| | | | | | | | It's set by EShellView but not actually used for anything. Removed functions: gal_view_collection_set_title()
* GalViewCollection: Remove unused "display-view" signal.Matthew Barnes2013-07-062-38/+0
| | | | | | Removed functions: gal_view_collection_display_view()
* GalViewFactoryClass: Remove the new_view() method.Matthew Barnes2013-07-063-17/+4
| | | | | GalViewFactory can now use its "gal_view_type" class member to instantiate an appropriate GalView without help from subclasses.
* GalViewFactoryClass: Remove the get_type_code() method.Matthew Barnes2013-07-063-10/+8
| | | | | GalViewFactory can now use its "gal_view_type" class member to peek at the appropriate GalViewClass and return its static "type_code" string.
* GalViewFactoryClass: Add a "gal_view_type" member.Matthew Barnes2013-07-062-0/+3
| | | | | | | This is the GType of the GalView instances the factory creates. Having this information will allow GalViewFactoryClass to do more itself and be less reliant on subclasses.
* GalViewClass: Replace get_type_code() with "type_code" string.Matthew Barnes2013-07-065-52/+24
| | | | | | All GalView subclasses return a static string in their get_type_code() methods, so replace the method with a static string pointer directly in the class structure, and remove the "type-code" GalView property.
* GalViewFactoryEtable: Remove "specification" property.Matthew Barnes2013-07-062-112/+3
| | | | | | | | No longer needed. Removed functions: gal_view_factory_etable_get_specification()
* GalViewEtable: Remove ETableState member.Matthew Barnes2013-07-061-31/+39
| | | | Obtain the ETableState from the attached ETable or ETree as needed.
* Remove gal_view_etable_set_state().Matthew Barnes2013-07-062-15/+0
| | | | No longer used.
* GalViewEtable: Remove ETableSpecification member.Matthew Barnes2013-07-063-57/+59
| | | | | | | Instead, lazily load the state file once an ETable or ETree is attached, since we need its ETableSpecification to create an ETableState instance. This means GalViewFactoryEtable can lose its ETableSpecification too.
* GalViewEtable: Add a private section.Matthew Barnes2013-07-062-45/+60
|
* GalView: Store the title string internally.Matthew Barnes2013-07-065-47/+32
| | | | | This replaces the get_title() and set_title() class methods, since it's silly to defer to subclasses to track a simple string property.
* GalView: Add a private section.Matthew Barnes2013-07-062-0/+13
|
* GalView-related cleanups.Matthew Barnes2013-07-066-97/+76
|
* GalViewFactory: Remove get_title() method.Matthew Barnes2013-07-063-28/+0
| | | | | | | | No longer used. Removed functions: gal_view_factory_get_title()
* GalView: Remove edit() method.Matthew Barnes2013-07-063-62/+0
| | | | | | | | No longer used. Removed functions: gal_view_edit()
* Remove GalViewNewDialog.Matthew Barnes2013-07-066-555/+0
| | | | No longer user.
* Remove GalDefineViewsModel.Matthew Barnes2013-07-066-456/+0
| | | | No longer used.
* Remove GalDefineViewsDialog.Matthew Barnes2013-07-066-710/+0
| | | | No longer used.
* Update evolution-util API docs.Matthew Barnes2013-07-022-3/+2
|
* ETableSpecification: Implement GInitable.Matthew Barnes2013-07-022-61/+154
| | | | | | | | | | | | | | | | 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()
* Remove e_tree_set_state().Matthew Barnes2013-07-022-28/+0
| | | | No longer used.
* Remove e_tree_get_state().Matthew Barnes2013-07-022-23/+0
| | | | No longer used.
* Remove e_table_set_state().Matthew Barnes2013-07-022-28/+0
| | | | No longer used.
* Remove e_table_get_state().Matthew Barnes2013-07-022-22/+0
| | | | No longer used.
* ETableHeaderItem: Avoid e_table_set_state().Matthew Barnes2013-07-021-6/+9
| | | | | | Use e_table_state_duplicate() and e_table_set_state_object(). Similarly for e_tree_set_state().
* Remove e_table_specification_load_from_string().Matthew Barnes2013-07-022-36/+7
| | | | | | | No longer used outside of e-table-specification.c. Its logic is merged into e_table_specification_load_from_file(), but that too will be removed momentarily.
* Remove e_tree_new_from_spec_file().Matthew Barnes2013-07-022-94/+0
| | | | | | Also remove e_tree_construct_from_spec_file(). Use e_tree_new() or e_tree_construct() instead.
* Remove e_table_new_from_spec_file().Matthew Barnes2013-07-022-87/+0
| | | | | | Also remove e_table_construct_from_spec_file(). Use e_table_new() or e_table_construct() instead.
* e_tree_new: Take an ETableSpecification parameter.Matthew Barnes2013-07-022-27/+15
| | | | | Creating an ETableSpecification is failable, so it's now up to the caller to do that and handle errors before calling e_tree_new().
* e_table_new: Take an ETableSpecification parameter.Matthew Barnes2013-07-022-22/+13
| | | | | Creating an ETableSpecification is failable, so it's now up to the caller to do that and handle errors before calling e_table_new().
* Remove ETableWithout.Matthew Barnes2013-07-024-530/+0
| | | | No longer used.
* Remove ETableMemory.Matthew Barnes2013-07-024-360/+0
| | | | No longer used.
* Remove ETableMemoryStore.Matthew Barnes2013-07-024-778/+0
| | | | No longer used.
* ETableConfig: Use ETableColumnSelector.Matthew Barnes2013-07-023-1091/+475
| | | | | The other parts of this UI still look ancient, but this is a good first step. Plus we can remove a number of now-unused ETable-related classes.
* Add ETableColumnSelector.Matthew Barnes2013-07-024-0/+547
| | | | | A new ETable column selection and ordering widget that looks like it was written in the 21st century. Derives from ETreeViewFrame.
* ETreeViewFrame: Fix runtime warning during dispose.Matthew Barnes2013-07-021-6/+2
|
* e_tree_new_from_spec_file: Remove unused "state_fn" parameter.Matthew Barnes2013-07-022-31/+7
|
* e_tree_new: Remove unused "state_str" parameter.Matthew Barnes2013-07-022-23/+7
|
* e_table_new_from_spec_file: Remove unused "state_fn" parameter.Matthew Barnes2013-07-022-31/+6
|
* e_table_new: Remove unused "state_str" parameter.Matthew Barnes2013-07-023-26/+8
|
* Remove e_table_column_specification_load_from_node().Matthew Barnes2013-07-022-35/+0
| | | | No longer used.
* Remove e_table_specification_load_from_node().Matthew Barnes2013-07-022-96/+0
| | | | No longer used.
* Reimplement e_table_specification_load_from_file().Matthew Barnes2013-07-021-7/+8
| | | | Use g_file_get_contents() and e_table_specification_load_from_string().
* Reimplement e_table_specification_load_from_string().Matthew Barnes2013-07-022-18/+392
| | | | New parser implementation that uses GMarkupParser instead of libxml2.
* Add e_table_state_parse_context_push/pop().Matthew Barnes2013-07-022-0/+234
| | | | New parser implementation that uses GMarkupParser instead of libxml2.
* Add e_table_sort_info_parse_context_push/pop().Matthew Barnes2013-07-022-0/+216
| | | | New parser implementation that uses GMarkupParser instead of libxml2.
* ETableSortInfo: Rework API to avoid exposing ETableSortColumn.Matthew Barnes2013-07-028-386/+536
| | | | | | | | Replace ETableSortColumn with separate ETableColumnSpecification and GtkSortType parameters in the "get_nth" and "set_nth" functions. Makes some other parts of the code simpler since it no longer has to translate a column number to a column specification.
* Add e_table_sort_info_sorting_remove().Matthew Barnes2013-07-023-10/+24
|