Commit Graph

25519 Commits

Author SHA1 Message Date
Brendan Dahl
4c40b6b72a Bug 1595252 - Add look and feel defines for headless gtk. r=smaug
Default values taken from my Ubuntu desktop.

Differential Revision: https://phabricator.services.mozilla.com/D52437

--HG--
extra : moz-landing-system : lando
2019-11-11 11:04:31 +00:00
Karl Tomlinson
142c229418 bug 1590965 clear GtkClipboard on nsIClipboard::EmptyClipboard r=stransky
This notifies GTK that the data is no longer available for clipboard_get_cb(),
so that GTK will no longer advertise nor attempt to store the data.

The clipboard is not cleared immediately before it is set in case that might
trigger a system clipboard manager to take ownership of the selection, which
could lead to gtk_clipboard_set_with_data() failing to take ownership back due
to an older timestamp.

This also fixes a GtkTargetList leak.

Differential Revision: https://phabricator.services.mozilla.com/D50764

--HG--
extra : moz-landing-system : lando
2019-11-11 11:24:56 +00:00
Tom Ritter
525cd2f1c2 Bug 1592321 - Collect a sanitized path for files doing eval() on Windows in the same manner as untrusted modules r=aklotz
Differential Revision: https://phabricator.services.mozilla.com/D50957

--HG--
extra : moz-landing-system : lando
2019-11-11 15:39:21 +00:00
harry
6925183c6d Bug 1591839 - Close Touch Bar race condition. r=spohl
Differential Revision: https://phabricator.services.mozilla.com/D52361

--HG--
extra : moz-landing-system : lando
2019-11-10 19:39:12 +00:00
Gijs Kruitbosch
76124b05a3 Bug 1593725 - cache gfx information so we don't re-read prefs and re-search blocklists for each content process, r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D51644

--HG--
extra : moz-landing-system : lando
2019-11-09 02:21:18 +00:00
Bobby Holley
105c2ab943 Bug 1562761 - Add support for dispatching java runnables to Gecko event targets. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D52197

--HG--
extra : moz-landing-system : lando
2019-11-08 18:08:03 +00:00
Brindusan Cristian
98904c4e42 Backed out changeset efc82f89a7c7 (bug 1562761) for linting failure on XPCOMEventTarget.java. CLOSED TREE 2019-11-08 19:36:27 +02:00
Bobby Holley
58c5923eff Bug 1562761 - Add support for dispatching java runnables to Gecko event targets. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D52197

--HG--
extra : moz-landing-system : lando
2019-11-08 14:32:59 +00:00
Masayuki Nakano
0f9b3a05da Bug 1594215 - Make PuppetWidget::GetEditCommands() check mBrowserChild before using it r=smaug
The reason of the crash is, the window may have already been destroyed and
`PuppetWidget::mBrowserChild` was set to `nullptr` when synthesizing key event.

This patch makes `PuppetWidget::GetEditCommands()` check whether it's `nullptr`
and returns whether it's succeeded or not.  Therefore, `TextInputProcessor`
can throw exception in such case.

Differential Revision: https://phabricator.services.mozilla.com/D52308

--HG--
extra : moz-landing-system : lando
2019-11-08 11:32:51 +00:00
Martin Stransky
54ae606371 Bug 1593408 [Wayland] Position mozcontainer wayland subsurface at moz_container_move(), r=jhorak
WebRender does not call moz_container_get_wl_egl_window() before each frame so mozcontainer
is not positioned properly here.

As a fix position mozcontainer directly at moz_container_move() if there are resources
for it.

Also always call moz_container_get_wl_surface() at moz_container_get_wl_egl_window()
to make sure an underlying mozcontainer surface is properly positioned.

Differential Revision: https://phabricator.services.mozilla.com/D52362

--HG--
extra : moz-landing-system : lando
2019-11-08 14:28:39 +00:00
Sebastian Hengst
0341151d63 Bug 1594981 - update Core::DOM* and Core::Storage* bugzilla product and component meta data in moz.build files after reorganization in bug 1594717. r=annevk
Differential Revision: https://phabricator.services.mozilla.com/D52345

--HG--
extra : moz-landing-system : lando
2019-11-08 12:17:57 +00:00
Martin Stransky
f677c03233 Bug 1589642 - Use gfxPlatformGtk instead of GDK_IS_X11_DISPLAY(gdk_display_get_default() to check current dispay type, r=jhorak
Differential Revision: https://phabricator.services.mozilla.com/D49724

--HG--
extra : moz-landing-system : lando
2019-11-07 14:28:55 +00:00
Martin Stransky
17cc08c81c Bug 1594729 [Wayland] Mark mozcontainer as moved at moz_container_get_wl_surface(), r=jhorak
Also rename surface_position_update to surface_position_needs_update to make it more clear.

Differential Revision: https://phabricator.services.mozilla.com/D52171

--HG--
extra : moz-landing-system : lando
2019-11-07 15:41:24 +00:00
Masatoshi Kimura
2ee472c867 Bug 1569089 - Sync std handles after AttachConsole(). r=aklotz
AttachConsole() may change Win32 std handle values if Firefox is launched from
cmd.exe that makes discrepancy between Win32 and CRT. This patch synchronizes
both std handles.

Differential Revision: https://phabricator.services.mozilla.com/D51275

--HG--
extra : moz-landing-system : lando
2019-11-07 13:28:45 +00:00
Razvan Maries
67e6a22efa Backed out changeset e1e3835cafc7 (bug 1589642) for build bustages on nsClipboard.cpp. CLOSED TREE 2019-11-07 15:03:59 +02:00
Martin Stransky
a2d726855c Bug 1589642 - Use gfxPlatformGtk instead of GDK_IS_X11_DISPLAY(gdk_display_get_default() to check current dispay type, r=jhorak
Differential Revision: https://phabricator.services.mozilla.com/D49724

--HG--
extra : moz-landing-system : lando
2019-11-07 12:30:00 +00:00
Martin Stransky
d1e715dc78 Bug 1594688 [Wayland] Don't use mUseDMABuf directly, query UseDMABufBackend() instead as mUseDMABuf is initialized there, r=jhorak
Differential Revision: https://phabricator.services.mozilla.com/D52142

--HG--
extra : moz-landing-system : lando
2019-11-07 12:15:44 +00:00
Martin Stransky
48cfdc00e3 Bug 1594692 [Wayland] Keep texture for framebuffer object at dmabuf surface, r=jhorak
Differential Revision: https://phabricator.services.mozilla.com/D52143

--HG--
extra : moz-landing-system : lando
2019-11-07 12:29:56 +00:00
Jim Mason
1be2b74935 Bug 969322 - make :-moz-window-inactive state follow GDK_WINDOW_STATE_FOCUSED when drawing in titlebar r=karlt,stransky
This patch fixes activation of the :-moz-window-inactive pseudoclass in client side decoration during drag operations.  It depends on and complements the fixes provided in support of Bug 1491808.

Obsoletes D50445

Differential Revision: https://phabricator.services.mozilla.com/D51307

--HG--
extra : moz-landing-system : lando
2019-11-06 20:49:07 +00:00
thomasmo
c3ba51407b Bug 1570124 - Enable mouse scrolling in FxR window r=masayuki
This change addresses two issues with vrhost sending WM_MOUSEWHEEL events:
- The point from the message had an incorrect coordinate origin. Documentation specifices that it should be screen, rather than window/client, origin. Since vrhost only knows about a position in the window, it translates the point before sending the message.
- Gecko ignores the point passed in to the window message and instead uses the point from GetMessagePos. As warnings indicate, this can be incorrect, as is exposed with vrhost. This change now uses this point from the message when available.

Differential Revision: https://phabricator.services.mozilla.com/D51322

--HG--
extra : moz-landing-system : lando
2019-11-06 20:38:45 +00:00
Coroiu Cristina
27a753cc4a Backed out changeset 96048cce4b80 (bug 1571656) for xpcshell failures at toolkit/components/places/tests/unifiedcomplete/test_autofill_origins.js on a CLOSED TREE 2019-11-06 22:59:45 +02:00
Moritz Birghan
70c7a633fb Bug 1571656 - Use Assert.jsm numeric comparison functions in tests r=mixedpuppy,MattN
Differential Revision: https://phabricator.services.mozilla.com/D40614

--HG--
extra : moz-landing-system : lando
2019-11-06 18:07:54 +00:00
Martin Stransky
486a8209db Bug 1592933 - [Wayland] Cache scale factor for toplevel windows, r=jhorak
Differential Revision: https://phabricator.services.mozilla.com/D51253

--HG--
extra : moz-landing-system : lando
2019-11-06 13:18:55 +00:00
Martin Stransky
93728f0682 Bug 1592933 - [Wayland] Get scale factor from nsWindow::GdkScaleFactor() and set it when wl_surface/egl_window is used for rendering, r=jhorak
Remove moz_container_get_scale() and use only nsWindow::GdkScaleFactor() to get scale factor for wl_surface and wl_egl_window.
Always set the scale factor when wl_surface / wl_egl_window is queued for rendering.

Differential Revision: https://phabricator.services.mozilla.com/D51252

--HG--
extra : moz-landing-system : lando
2019-11-06 13:18:43 +00:00
Brindusan Cristian
817b88aae9 Backed out 4 changesets (bug 1590965) as requested by karlt on irc. CLOSED TREE
Backed out changeset f68c212c8b2a (bug 1590965)
Backed out changeset 1ced33f66353 (bug 1590965)
Backed out changeset 22f28d146e38 (bug 1590965)
Backed out changeset 70331e97107e (bug 1590965)
2019-11-06 02:32:29 +02:00
Bryce Seager van Dyk
3624dea67c Bug 1592826 - Expand Qualcom driver blacklist to cover new versions. r=mattwoodrow
Recent Qualcom drivers are exhibiting the same issues as seen in previous
versions when decoding video. Notably:
- Crashes.
- Green frames.

This patch expands our black list to avoid these problems.

Differential Revision: https://phabricator.services.mozilla.com/D51722

--HG--
extra : moz-landing-system : lando
2019-11-05 08:31:42 +00:00
Markus Stange
c0cdef1454 Bug 1592739 - Stop using the vibrant region as the transparent region. r=mattwoodrow
This code was assuming that the only non-opaque parts of compositor rendering would be the
parts of the window that had vibrancy. But now that the default window background is transparent,
we can have non-vibrant parts where we render into transparency. Dialog windows such as sheet
windows are an example of this.
So instead of using the non-vibrant region of the window as its opaque region, we now use
the region that is covered by opaque Gecko layers. This region is a lot more conservative:
For example, the main browser chrome is now entirely transparent, because the chrome's opaque
parts share a layer with its transparent parts.
As a result, this change slightly affects the CALayer partitioning in the main browser window:
The entire browser chrome is now transparent, not just the tab bar.
The web content area is still opaque.

I think this will be fine. The thing I'm most concerned about is that scrolling inside web
content might cause invalidations of pixels from the chrome, because then we'd recomposite
the CALayers that cover the vibrant tab bar. This doesn't seem to happen most of the time
though, from what I can tell.

Differential Revision: https://phabricator.services.mozilla.com/D51466

--HG--
extra : moz-landing-system : lando
2019-11-05 19:04:14 +00:00
Markus Stange
80992e260c Bug 1592739 - Stop clearing the background behind vibrant -moz-appearance items. r=mattwoodrow
Now that there is no Gecko-contributed background color in the window any more,
there's nothing that needs to be cleared away. This simplifies things.

Differential Revision: https://phabricator.services.mozilla.com/D51464

--HG--
extra : moz-landing-system : lando
2019-11-05 18:48:29 +00:00
Markus Stange
7bb6e93a25 Bug 1592739 - Remove vibrancy code for sheet windows. r=spohl
With -moz-appearance: dialog now always being transparent, setting up our own
vibrant views for sheet windows is no longer necessary. We now let the regular
sheet window background show through, and that background is already vibrant.

Differential Revision: https://phabricator.services.mozilla.com/D51462

--HG--
extra : moz-landing-system : lando
2019-11-05 18:48:15 +00:00
Markus Stange
41d42f6f41 Bug 1592739 - Make -moz-appearance: dialog render nothing. r=spohl
The window background will be contributed by the widget itself, which renders
them underneath Gecko's rendering.
As a result, -moz-appearance: dialog is now equivalent to the combination
-moz-appearance: none; background-color: transparent.

This change does not turn the widget itself transparent because nsCocoaWindow
does not allow top level windows to become transparent (ever since bug 1162649).
If we ever add support for top level widgets with transparent backgrounds again,
we will probably want to treat -moz-appearance: dialog differently from
-moz-appearance: none; background-color: transparent, but for now this is fine.

This change means that Gecko's rendering will go into transparent buffers. This
may result in some loss of subpixel AA in various cases.
In the main browser window, there are CSS backgound colors that cover all the
non-vibrant areas of the window, so in that window we still render mostly onto
opaque pixels.

Differential Revision: https://phabricator.services.mozilla.com/D51461

--HG--
extra : moz-landing-system : lando
2019-11-05 18:48:00 +00:00
Markus Stange
4c8859d2b4 Bug 1592739 - Make nsChildView::WidgetPaintsBackground() return true. r=tnikkel
On macOS, the OS window always comes with an opaque background for top level
windows. This is the case even if Gecko determines the root element of the
window to be transparent: Ever since bug 1162649, nsChildView/nsCocoaWindow
ignore calls to SetTransparencyMode for top level windows and always stay opaque.

Returning true from nsChildView::WidgetPaintsBackground() lets us indicate that
we do not need an opaque backstop color to be added at the bottom of the display
list. This backstop color would interfere with vibrant -moz-appearance rendering
under the new vibrancy model.
WidgetPaintsBackground() is only called in one place, in ComputeBackstopColor():

```
nscolor PresShell::ComputeBackstopColor(nsView* aDisplayRoot) {
  nsIWidget* widget = aDisplayRoot->GetWidget();
  if (widget && (widget->GetTransparencyMode() != eTransparencyOpaque ||
                 widget->WidgetPaintsBackground())) {
    // Within a transparent widget, so the backstop color must be
    // totally transparent.
    return NS_RGBA(0, 0, 0, 0);
  }
  // Within an opaque widget (or no widget at all), so the backstop
  // color must be totally opaque. The user's default background
  // as reported by the prescontext is guaranteed to be opaque.
  return GetDefaultBackgroundColorToDraw();
}
```

On Windows 7, the widget returns eTransparencyBorderlessGlass from
GetTransparencyMode(), which also avoids the backstop color.

Differential Revision: https://phabricator.services.mozilla.com/D51458

--HG--
extra : moz-landing-system : lando
2019-11-05 18:47:21 +00:00
Markus Stange
691e7d64a1 Bug 1593339 - Remove now-unused vibrancy fill color methods. r=spohl
Differential Revision: https://phabricator.services.mozilla.com/D51457

--HG--
extra : moz-landing-system : lando
2019-11-05 18:47:17 +00:00
Markus Stange
5586cc9eca Bug 1593339 - Stop drawing vibrancy background colors. r=spohl
Drawing vibrancy fill colors was necessary in the past because we were erasing
the fill color that was drawn by the system, through our override of the
drawRect method of our NSVisualEffectView subclass.

However, starting with changeset be263e3d8bdfc0b6c072ffad2736999b9652d036
(from bug 1491445), we no longer override drawRect. Moreover, since the switch
to Core Animation, there is no way to clear the system's vibrancy fill drawing.

So we don't need to draw the vibrancy fill color any more. In fact, we should
stop drawing it, because now we're double-drawing it.
The fill color is very translucent so the double-drawing is not visually obvious.

Differential Revision: https://phabricator.services.mozilla.com/D51456

--HG--
extra : moz-landing-system : lando
2019-11-05 18:59:36 +00:00
Markus Stange
e8d0a3ca81 Bug 1593325 - Use NextSurfaceAsDrawTarget in nsChildView. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D50876

--HG--
extra : moz-landing-system : lando
2019-11-05 18:59:36 +00:00
Brendan Dahl
eafc9e3293 Bug 1470510 - Rename nsXULWindow and nsIXULWindow to AppWindow and nsIAppWindow. r=smaug
nsXULWindow is no longer XUL specific and is somewhat confusing name.

Differential Revision: https://phabricator.services.mozilla.com/D51486

--HG--
rename : xpfe/appshell/nsXULWindow.cpp => xpfe/appshell/AppWindow.cpp
rename : xpfe/appshell/nsXULWindow.h => xpfe/appshell/AppWindow.h
rename : xpfe/appshell/nsIXULWindow.idl => xpfe/appshell/nsIAppWindow.idl
extra : moz-landing-system : lando
2019-11-05 17:56:28 +00:00
Elliot Stirling
1c3c845ad9 Bug 1577192 - Adds a screenshot api using ScreenshotBuilder. r=geckoview-reviewers,snorp,rbarker
Differential Revision: https://phabricator.services.mozilla.com/D49293

--HG--
extra : moz-landing-system : lando
2019-11-05 16:15:09 +00:00
Mike de Boer
3bb8690c88 Bug 1554761 - Notify with a 'mac_app_activate' topic when the App has been activated, capturing Command-Tabbing behavior. OSX only. r=spohl
Differential Revision: https://phabricator.services.mozilla.com/D39936

--HG--
extra : moz-landing-system : lando
2019-11-05 12:37:02 +00:00
harry
8b9e6c9faf Bug 1593001 - Add more stringent Touch Bar null-checks. r=mikedeboer
Differential Revision: https://phabricator.services.mozilla.com/D51645

--HG--
extra : moz-landing-system : lando
2019-11-05 10:02:34 +00:00
Jan Horak
3f10c3b905 Bug 1589601 - Return the fallback to primary monitor on Wayland to not break PIP; r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D51600

--HG--
extra : moz-landing-system : lando
2019-11-05 08:14:18 +00:00
Mihai Alexandru Michis
b819bd25aa Backed out 2 changesets (bug 1470510) for causing bustages in widget/cocoa/nsChildView.mm CLOSED TREE
Backed out changeset a343f30c34a3 (bug 1470510)
Backed out changeset 4da64790094d (bug 1470510)

--HG--
rename : xpfe/appshell/nsIAppWindow.idl => xpfe/appshell/nsIXULWindow.idl
rename : xpfe/appshell/AppWindow.cpp => xpfe/appshell/nsXULWindow.cpp
rename : xpfe/appshell/AppWindow.h => xpfe/appshell/nsXULWindow.h
2019-11-05 09:24:26 +02:00
Brendan Dahl
0c0da7791e Bug 1470510 - Rename nsXULWindow and nsIXULWindow to AppWindow and nsIAppWindow. r=smaug
nsXULWindow is no longer XUL specific and is somewhat confusing name.

Differential Revision: https://phabricator.services.mozilla.com/D51486

--HG--
rename : xpfe/appshell/nsXULWindow.cpp => xpfe/appshell/AppWindow.cpp
rename : xpfe/appshell/nsXULWindow.h => xpfe/appshell/AppWindow.h
rename : xpfe/appshell/nsIXULWindow.idl => xpfe/appshell/nsIAppWindow.idl
extra : moz-landing-system : lando
2019-11-04 23:37:31 +00:00
Emma Malysz
0bc1b5a9c6 Bug 1519517, ensure that restoring a session doesn't animate and resize the window r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D50839

--HG--
extra : moz-landing-system : lando
2019-11-04 21:13:06 +00:00
Dorel Luca
0207ce5451 Backed out 2 changesets (bug 1470510) for build bustage on /build/src/widget/cocoa/nsChildView.mm. CLOSED TREE
Backed out changeset 5967bf633574 (bug 1470510)
Backed out changeset 067a556bb614 (bug 1470510)

--HG--
rename : xpfe/appshell/nsIAppWindow.idl => xpfe/appshell/nsIXULWindow.idl
rename : xpfe/appshell/AppWindow.cpp => xpfe/appshell/nsXULWindow.cpp
rename : xpfe/appshell/AppWindow.h => xpfe/appshell/nsXULWindow.h
extra : amend_source : 752d828c6a0726c3f2df57a25741e38b36b75d6b
2019-11-04 19:18:56 +02:00
Brendan Dahl
247b257cfa Bug 1470510 - Rename nsXULWindow and nsIXULWindow to AppWindow and nsIAppWindow. r=smaug
nsXULWindow is no longer XUL specific and is somewhat confusing name.

Differential Revision: https://phabricator.services.mozilla.com/D51486

--HG--
rename : xpfe/appshell/nsXULWindow.cpp => xpfe/appshell/AppWindow.cpp
rename : xpfe/appshell/nsXULWindow.h => xpfe/appshell/AppWindow.h
rename : xpfe/appshell/nsIXULWindow.idl => xpfe/appshell/nsIAppWindow.idl
extra : moz-landing-system : lando
2019-11-04 16:52:35 +00:00
Emilio Cobos Álvarez
5949af2c3b Bug 1591717 - Add a pref to notify of unvisited uris in the history service. r=mak,lina
Behind a pref to ensure that we can turn this off pretty easily if it has perf
impact.

I want to leave the repainting stuff to another bug to land separately, to track
potential (though I hope not!) perf regressions more easily.

Differential Revision: https://phabricator.services.mozilla.com/D50704

--HG--
extra : moz-landing-system : lando
2019-11-04 13:28:58 +00:00
Sam Mauldin
16993481ab Bug 1592389 - Rename Mozfield / Mozfieldtext to Field and Fieldtext r=emilio
Split off of Bug 1590894
Rename these to support unprefixed version
Also add alias to keep compatibility

Differential Revision: https://phabricator.services.mozilla.com/D50989

--HG--
extra : moz-landing-system : lando
2019-11-02 21:28:49 +00:00
Martin Stransky
724a9d7e4f Bug 1583732 [Wayland] Use DMABUF for fullscreen updates only, r=jhorak
Add IsDMABufBuffer identification to WindowBackBuffer

Use two sets of wayland buffers (shm and dmabuf) and use dmabuf for fullscreen updates only
when dmabuf is enabled.

Split GetWaylandBufferToDraw() to GetWaylandBufferRecent() and GetWaylandBufferWithSwitch()
to better reflect actual function.

Add CreateWaylandBuffer() to create and store Wayland buffer and use it at SetNewWaylandBuffer()
to change an active wayland buffer or create a new one.

When CACHE_MISSING image cache is selected we draw directly to wayland buffer if it's available
and cache drawing when wayland buffer is missing only. That produces flickering when small buffer parts are
sent to compositor early and the buffer is blocked for further rendering.

This patch enables direct rendering of bigger screen parts only (like page scrolling) to eliminate small
buffer updates.

Differential Revision: https://phabricator.services.mozilla.com/D50055

--HG--
extra : moz-landing-system : lando
2019-11-01 21:11:06 +00:00
Cosmin Sabou
9e72c49d49 Backed out changeset bb34b6826ada (bug 1577192) for geckoview failures on VerticalClippingTest. 2019-11-01 23:27:41 +02:00
Elliot Stirling
92d1839a67 Bug 1577192 - Adds a screenshot api using ScreenshotBuilder. r=geckoview-reviewers,snorp,rbarker
Differential Revision: https://phabricator.services.mozilla.com/D49293

--HG--
extra : moz-landing-system : lando
2019-11-01 20:31:18 +00:00
sotaro
253cc9eb1e Bug 1573710 - Trigger composite after SetParent() r=Gankro
The patch permits to resize compositor window's size after ::SetParent() call to prevent a conflict between ::SetParent() and ::SetWindowPos(). Then it triggers a composite after SetParent() call to resize compositor window correctly.

Differential Revision: https://phabricator.services.mozilla.com/D49884

--HG--
extra : moz-landing-system : lando
2019-11-01 11:01:34 +00:00