Граф коммитов

25506 Коммитов

Автор SHA1 Сообщение Дата
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
Csoregi Natalia 5f86f24e67 Backed out changeset da311583ecc1 (bug 1583575) for gv-junit failures. CLOSED TREE 2019-11-01 11:27:17 +02:00
Nicholas Nethercote a518709339 Bug 1587162 - Fix UBSAN complaints about pref callbacks. r=erahm
Lots of these callbacks have a non-`void*` final parameter, which UBSAN
complains about. This commit changes them to have a `void*` parameter.

This requires undoing the machinery added in the first two commits of bug
1473631: `TypePrefChangeFunc` and `PREF_CHANGE_METHOD`. The resulting code is
simpler (which is good) and more boilerplate-y (which is bad) but avoids the
undefined behaviour (which is good).

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

--HG--
extra : moz-landing-system : lando
2019-11-01 02:57:20 +00:00
Martin Stransky 04afc29457 Bug 1592350 [Wayland] Call wl_surface_commit() on parent surface when subsurface position is updated, r=jhorak
Differential Revision: https://phabricator.services.mozilla.com/D51133

--HG--
extra : moz-landing-system : lando
2019-10-31 19:00:30 +00:00
Aaron Klotz 77bedb6124 Bug 1583575: Retain window size between instances and use it to set the size when opening a new window; r=snorp
This obviously only improves the situation when a subsequent window is the
same size as the last window that was opened.

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

--HG--
extra : moz-landing-system : lando
2019-10-25 22:16:15 +00:00
Lee Salzman d7ccbd0261 Bug 1591996 - miscellaneous Gecko fixes for Skia m79 update. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D50825

--HG--
extra : moz-landing-system : lando
2019-10-28 21:42:48 +00:00
Karl Tomlinson 28ea5a2234 Bug 1590965 store clipboard only once on shutdown r=stransky
Depends on D50538

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

--HG--
extra : moz-landing-system : lando
2019-10-29 21:47:35 +00:00
Karl Tomlinson 8a2f160728 bug 1590965 call gtk_clipboard_store() from an event r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D50538

--HG--
extra : moz-landing-system : lando
2019-10-29 21:47:25 +00:00
Karl Tomlinson 303818c484 Bug 1590965 call gtk_clipboard_store() regardless of whether Gecko is providing the clipboard r=stransky
This stores the clipboard even if it was set in a GTK dialog.

Depends on D50764

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

--HG--
extra : moz-landing-system : lando
2019-10-29 21:47:27 +00:00
Karl Tomlinson 3e16a1c556 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.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 08:59:36 +00:00
Daniel Varga e4a9bb6a6b Backed out changeset 1d8e31bd28db (bug 1577192) for geckoview failure org.mozilla.geckoview.test.ScreenshotTest... On a CLOSED TREE 2019-10-30 19:35:44 +02:00
Elliot Stirling abb32d1aeb 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-10-29 22:28:45 +00:00
Karl Tomlinson b733e3b3ac Bug 1592502 initialize all fields of GdkEvents r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D51051

--HG--
extra : moz-landing-system : lando
2019-10-30 07:36:23 +00:00
Daniel Varga b747b90cd8 Backed out changeset ec25a8482342 (bug 1592389) for mochitest failure at layout/style/test/test_value_computation.html. On a CLOSED TREE 2019-10-30 10:17:29 +02:00