commit 516d6e584bf93569b13657f45c8fc8f2bc56b44f
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Tue Dec 27 18:27:29 2016 -0600

    Prepare 3.22.4

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 5124ed62930a5d0ac52f9aefcd7b208d0e18354b
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Sun Dec 18 10:56:07 2016 -0600

    window: fix alt-left/right keyboard shortcuts
    
    The call to gdk_keymap_translate_keyboard_state doesn't seem to really
    do much here, except change the way we have to test for Ctrl+Shift+T by
    consuming GDK_SHIFT_MASK. In particular, the keyval returned is already
    the keyval in the key event, so that's not really doing anything for us.
    But this is what the GDK documentation tells us to do, so why not. The
    important change here, as shown in the GDK documentation, is to mask out
    all the modifiers except Ctrl/Shift/Mod1 so that we ignore virtual
    modifiers like Meta that we really don't want to see.
    
    This mostly but not completely fixes the bug where the alt-left/right
    shortcuts for back/forward stop working. It fixes the regression where
    these shortcuts stopped working after I introduced key event filtering.
    It *does not* fix the issue that was originally reported, which is that
    the shortcuts mysteriously stop working sometimes; it cannot fix that
    original bug, because the key event filtering was not added until a
    month after that bug was reported. Hence, I am not closing the issue
    here. Something seems to be wrong in either GTK+ or in mutter, as
    sometimes GTK+ apps stop receiving any input at all; it might or might
    not be related.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=772437

 src/ephy-window.c | 69 ++++++++++++++++++++++++++++++++++++-------------------
 1 file changed, 45 insertions(+), 24 deletions(-)

commit fa782911a4fbfaaedf77e007e9de6072eaf285c7
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Sun Dec 4 21:03:11 2016 -0600

    embed-shell: Schedule thumbnail updates after updating overview
    
    Otherwise we do not display a thumbnail for new overview items when a
    previous overview item is removed, even if we have a snapshot in the
    snapshot database. This doesn't and cannot fix the case where no
    snapshot exists -- sometimes we just really don't have a usable snapshot
    -- but usually we do have a snapshot and this fixes the general case.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=775612

 embed/ephy-embed-shell.c | 3 +++
 1 file changed, 3 insertions(+)

commit df2efbe89b803c6c8b7dad3b0b438322d9ce3a2e
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Sun Dec 4 20:56:00 2016 -0600

    Refactor delayed overview thumbnail update handling
    
    Move this logic to EphyEmbedShell. It will be needed there in the next
    commit and I don't want to duplicate the code in two different places.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=775612

 embed/ephy-about-handler.c | 46 ++++++++----------------------------------
 embed/ephy-embed-shell.c   | 50 ++++++++++++++++++++++++++++++++++++++++++++++
 embed/ephy-embed-shell.h   |  3 +++
 3 files changed, 61 insertions(+), 38 deletions(-)

commit 39a1c7fb4e866241855b7cbfdfd68a654ef72b94
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Sun Dec 4 14:04:12 2016 -0600

    Move some duplicate code into ephy_history_query_new_for_overview
    
    https://bugzilla.gnome.org/show_bug.cgi?id=775612

 embed/ephy-about-handler.c | 27 ++++++++++++++++++++-------
 embed/ephy-about-handler.h |  6 +++++-
 embed/ephy-embed-shell.c   |  7 +------
 3 files changed, 26 insertions(+), 14 deletions(-)

commit 0ff60f6fe7a6bd69fd1301233df1fdb190ded904
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Fri Dec 16 21:20:31 2016 -0600

    uri-tester: process patterns synchronously at startup
    
    Currently the URI tester loads filters and patterns asynchronously,
    which is racy as it means ads will sometimes not be blocked when a new
    web process is loading its first page. Filter processing must always
    complete before the first resource is requested, so do it synchronously.
    
    This is already fixed in a better way on the master branch, so this
    commit is for GNOME 3.22 only.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=775736

 embed/web-extension/ephy-uri-tester.c | 110 +++++++++++-----------------------
 1 file changed, 34 insertions(+), 76 deletions(-)

commit a97da19e6da9d9271fad96359f7c671b6d30b045
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Fri Dec 16 21:07:58 2016 -0600

    uri-tester: Remove commented code
    
    It's gone from master branch, no point in keeping it around on
    gnome-3-22 either.

 embed/web-extension/ephy-uri-tester.c | 26 --------------------------
 1 file changed, 26 deletions(-)

commit be97937e5f966e4671a50fa774780ab9d664cb2c
Author: Fabio Tomat <f.t.public@gmail.com>
Date:   Fri Dec 9 22:38:12 2016 +0000

    Update Friulian translation

 po/fur.po | 180 +++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 90 insertions(+), 90 deletions(-)

commit 67e940a747550648e64acc3ca6bc3e6efb194e01
Author: Carlos Garcia Campos <cgarcia@igalia.com>
Date:   Wed Dec 7 15:43:00 2016 +0100

    Do not show the lock icon in the location entry for about:blank pages

 embed/ephy-web-view.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 8b3001c9a6d6948d44081c1eacd6a9cc3a3dd58c
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Sun Dec 4 13:46:23 2016 -0600

    web-overview: Properly show new overview item after removing one
    
    This has been broken since I got rid of the list that was previously
    used to hold overview items. The style class now lives on the anchor
    itself and not its parent element.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=775604

 embed/web-extension/ephy-web-overview.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fe2cc4b7995bba1c6c3cbba5752c48a8660acee3
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Mon Nov 28 19:43:00 2016 -0600

    location-entry: Remove stale comment

 lib/widgets/ephy-location-entry.c | 1 -
 1 file changed, 1 deletion(-)

commit 1ac6d9348c7664be6910c3bb6748c3cbfdef47c3
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Mon Nov 28 14:09:16 2016 -0600

    location-entry: Be robust to paste translation issues
    
    Don't crash if Epiphany has a different translation than GTK+, just get
    the translation from GTK+ instead.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=772994

 lib/widgets/ephy-location-entry.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

commit dc7a399b32b87d683bc5dcd162cef79859ec4ad3
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Sun Oct 23 09:20:18 2016 -0500

    location-entry: Crash nicer if paste menuitem can't be found
    
    This is really unfortunate design, but I don't see any better way to
    implement the code, so we'll have to crash if the translation is wrong.
    
    Let's give a nice error message at least, and add a warning for the
    translators, since this is quite a trap otherwise.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=772994

 lib/widgets/ephy-location-entry.c | 4 ++++
 1 file changed, 4 insertions(+)

commit ff8f20c55849084fa430011d6a49f32a4314e58f
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Tue Nov 22 18:38:01 2016 -0600

    window: Fix key event state comparisons
    
    GDK can set random bits in the state to indicate internal stuff. We have
    to use GDK_MODIFIER_MASK to mask out its reserved values before trying
    to look at the state.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=772437

 src/ephy-window.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 5712d1ce3f3dddf7c6a317d7b3c8a6eb9725d948
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Tue Nov 22 07:53:32 2016 -0600

    window: Add alt-left/right to key event blacklist
    
    Seems WebKit always handles these key combinations, breaking our
    back/forward shortcuts.

 src/ephy-window.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 23dfed3c28a6c658d487bb5a87d0fdbd212f93fd
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Mon Nov 21 17:55:16 2016 -0600

    Really handle focus stealing prevention properly"
    
    This reverts commit 0283906a4ba772d447bde4a9c5b738a6e027edaa and also
    fixes the bug, all in one!
    
    The original commit was not correct: it conflated UNIX time
    (g_get_real_time) with X11 time (gtk_get_current_event_time). The
    easiest way to fix it would be to simply call the later instead of the
    former, but I also want to revert to using the more explicit API where
    the caller must pass the user time manually, so do that too.

 embed/ephy-download.c                | 54 ++++++++++++++++--------------------
 embed/ephy-download.h                |  5 ++--
 lib/widgets/ephy-download-widget.c   |  3 +-
 lib/widgets/ephy-downloads-popover.c |  4 ++-
 4 files changed, 32 insertions(+), 34 deletions(-)