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

1411 Коммитов

Автор SHA1 Сообщение Дата
Martin Stransky 3510d3872f Bug 1426384 - Don't use CSD_SUPPORT_FULL on Wayland unless it's overriden by MOZ_GTK_TITLEBAR_DECORATION, r=jhorak
Wayland compositors do not support GDK_DECOR_BORDER so use CSD decorations exclusively.

MozReview-Commit-ID: 8gzDcw2AumI

--HG--
extra : rebase_source : 4d319155d220420a768de619e7043dd56f6ee667
2017-12-20 16:32:51 +01:00
Martin Stransky 3f9d6ff25b Bug 1426384 - call gdk_window_set_decorations() on mShell GdkWindow only, r=jhorak
To have any effect we need to call gdk_window_set_decorations() on top-level GdkWindow only.
When rendering to mContainer the mGdkWindow belongs to mContainer so we need to get the window
from mShell explicitly.

MozReview-Commit-ID: KLKlVJbgg3

--HG--
extra : rebase_source : c17310949e067dca540bf269f12db135e6582ebc
2017-12-20 16:31:13 +01:00
Martin Stransky b07ea64a0d Bug 1424974 - Honor mShell as top-level window, r=jhorak
When drawing to mContainer we still need to honor mShell as top-level window.
It means we have to listen property-notify-event there (as it's window specific),
get _NET_FRAME_EXTENTS here and use at nsWindow::SetWindowClass().

MozReview-Commit-ID: HYbNS0Lfyjy

--HG--
extra : rebase_source : f03cb4657a36238fd93b47b94ace48a325648296
2017-12-20 11:10:36 +01:00
Martin Stransky ed49bfcfee Bug 1425820 - build fix of SetImageDataFromBackBuffer definition/call, r=jhorak
MozReview-Commit-ID: 7NJMCdhd400

--HG--
extra : rebase_source : bd72e00090af03c285cdd16b0a05106c3fd7e6c6
2017-12-18 11:53:30 +01:00
Martin Stransky d3bcca0b14 Bug 1422966 - Implement SurfaceWayland for Wayland, r=jhorak
WindowSurfaceWayland is Wayland implementation of WindowSurface class.
One WindowSurfaceWayland object manages drawing of one nsWindow so
those are tied 1:1. It implements base Lock() and Commit() interfaces
from WindowSurface. At Wayland side it represents one wl_surface object.

To perform visualiation of nsWindow, WindowSurfaceWayland contains
one wl_surface and two wl_buffer (by WindowBackBuffer) objects
(as we use double buffering). When nsWindow drawing is finished to
wl_buffer, the wl_buffer is attached to wl_surface and it's sent to
Wayland compositor.

MozReview-Commit-ID: 9NoamtF87e6

--HG--
extra : rebase_source : e942b28f1eaa4b1c24c6c4df6894db8d3d789e7e
2017-12-04 22:29:08 +01:00
Martin Stransky 8ca9561e71 Bug 1422966 - implemented WindowBackBuffer to encapsulate wl_buffer, r=jhorak
wl_buffer is a main Wayland object with graphics data. wl_buffer basically represent one complete window screen.
When double buffering is involved every window (GdkWindow in our case) utilises two wl_buffers which are cycled.
One is filed with data by application and one is rendered by compositor.

WindowBackBuffer class manages one wl_buffer. It owns wl_buffer object, owns WaylandShmPool (which provides shared memory)
and ties them together.

MozReview-Commit-ID: v8Hlezo7oD

--HG--
extra : rebase_source : 40bffbbae2ee0c8f67d442ee2c5a62be43fafb44
2017-12-04 22:25:26 +01:00
Martin Stransky b12d4609e7 Bug 1422966 - implement WaylandShmPool to manage shared memory for wl_buffer, r=jhorak
We allocate shared memory (shm) by mmap(..., MAP_SHARED,...) as an interface between wayland based application
and wayland compositor. We draw our graphics data to the shm and handle to wayland compositor by wl_buffer/wl_surface.

WaylandShmPool acts as a manager of the allocated memory. Allocates it, holds reference to it and releases it.

MozReview-Commit-ID: CY6oEIl4Vxa

--HG--
extra : rebase_source : c43da8728e11e133cb021b1832382c1a39695a1a
2017-12-04 22:22:04 +01:00
Martin Stransky 8431e12fba Bug 1422966 - Update mDisplay attribute initialization at nsWaylandDisplay::nsWaylandDisplay(), r=jhorak
MozReview-Commit-ID: GQrCtvKDjfF

--HG--
extra : rebase_source : 99ba7a2b843dc3600e046ddbb34c1d6446abcb57
2017-12-04 22:31:23 +01:00
Martin Stransky ee30a32467 Bug 1422966 - Comment Wayland rendering scheme, r=jhorak
MozReview-Commit-ID: 7ZV97xcRskV

--HG--
extra : rebase_source : c559433f18e60e782966660336576e7974da73a6
2017-12-05 10:12:37 +01:00
Martin Stransky 2a63de4110 Bug 1424661 - refactor ncClipboard::GetData(), allocate all memory by moz_xmalloc() and release by free(), r=jhorak
Refactor ncClipboard::GetData() for better readability, add nsClipboard::SetTransferableData()
to send clipboard data to nsITransferable.

According to Gtk people [1] we can't mix free()/g_free() and malloc()/g_malloc() calls.
Existing nsClipboard code mixes that on some places which can lead to issued on glib built
with specific flags (ENABLE_MEM_PROFILE or ENABLE_MEM_CHECK).

[1] https://mail.gnome.org/archives/gtk-list/2000-July/msg00002.html

MozReview-Commit-ID: GvkUGSttVGO

--HG--
extra : rebase_source : 99801e1dc97e24a8d68fe7f3585562bb541c6628
2017-12-11 11:59:57 +01:00
Martin Stransky 8e9792e4d7 Bug 1424926 - does not apply CSS padding to header bar buttons, r=dao
MozReview-Commit-ID: Hq86waEx1sg

--HG--
extra : rebase_source : 13b5c32d153603edd66082a9c298485cf119ddc9
2017-12-13 11:02:51 +01:00
Martin Stransky 3c3f7c4ce9 Bug 1423810 - Temporary disable CSD decoration as it breaks popup windows, r=jhorak
MozReview-Commit-ID: DCdbxvnfV9B

--HG--
extra : rebase_source : acd8f632d9a9e3a21f777d1520037497dff3bc54
2017-12-11 22:26:55 +01:00
Martin Stransky 5824a507e6 Bug 1423869 - don't draw to mContainer when decorations are rendered by window manager, r=jhorak
Bug 1421974 introduced new mechanism to hide system titlebar by enabling client-side decorations for main Firefox window. It also causes a regression when the CSD window setup is enabled when system titlebar is hidden by window manager.

This patch fixes that and enables the CSD window setup only for case when it's actualy used.

MozReview-Commit-ID: AqfHR2bGr3K

--HG--
extra : rebase_source : 625366530922872af82e182db10f5069ebfa7dc4
2017-12-11 11:07:48 +01:00
Martin Stransky e17f64f2b6 Bug 1423869 - force CSD_SUPPORT_NONE when XDG_CURRENT_DESKTOP is not set, r=jhorak
MozReview-Commit-ID: A4dz6ywrCsf

--HG--
extra : rebase_source : 3f3d99e9741e33e7fdd6bb69c2bc82f9b469c897
2017-12-11 11:05:27 +01:00
Martin Stransky b3c7669367 Bug 1417874 - Split clipboard implementation to shared (nsClipboard) and backend specific (nsClipboardX11) parts, r=jhorak
MozReview-Commit-ID: 5IebGayJl1

--HG--
extra : rebase_source : 7009a0f5a668895930280fc4426baa22abdc499c
2017-11-16 14:00:00 +01:00
Bogdan Tara e15c276db2 Backed out 1 changesets (bug 1423869)for causing frequent Linux chrome failure in toolkit/content/tests/chrome/test_chromemargin.xul r=backout on a CLOSED TREE
Backed out changeset 4960f30d91b2 (bug 1423869)
2017-12-07 19:58:24 +02:00
Bogdan Tara 9cee3dc42a Backed out 1 changesets (bug 1417874) for causing frequent Linux chrome failure in toolkit/content/tests/chrome/test_chromemargin.xul r=backout on a CLOSED TREE
Backed out changeset b35e86822732 (bug 1417874)
2017-12-07 19:55:49 +02:00
Martin Stransky 1c02893dc9 Bug 1423869 - don't draw to mContainer when decorations are rendered by window manager, r=jhorak
Bug 1421974 introduced new mechanism to hide system titlebar by enabling client-side decorations for main Firefox window. It also causes a regression when the CSD window setup is enabled when system titlebar is hidden by window manager.

This patch fixes that and enables the CSD window setup only for case when it's actualy used.

MozReview-Commit-ID: 6OzoPyxlhCp

--HG--
extra : rebase_source : 9bcfc96cd27cb088f8d9671780304c2ac3772fdf
2017-12-07 15:20:48 +01:00
Martin Stransky 53c4e3f117 Bug 1417874 - Split clipboard implementation to shared (nsClipboard) and backend specific (nsClipboardX11) parts, r=jhorak
MozReview-Commit-ID: 5IebGayJl1

--HG--
extra : rebase_source : 7009a0f5a668895930280fc4426baa22abdc499c
2017-11-16 14:00:00 +01:00
Martin Stransky c960be3742 Bug 1421974 - use gtk_window_set_titlebar() to hide titlebar on WM where GDK_DECOR_BORDER does not work, r=jhorak
This patch is based on Karl Tomlinson's (:karlt) demo from Bug 1419456. We use gtk_window_set_titlebar()
to set invisible widget. The widget takes place of GtkHeaderBar which leads Gtk+ to render CSD shadows
and handle window resizing, it does not render any titlebar.

gtk_window_set_titlebar() works on unrealized windows only and mShell is already realized at time
of nsWindow::SetDrawsInTitlebar() call so we need to update recent GtkWidget setup.

In that case we create GdkWindow for mContainer (instead of mShell), create a temporary GtkWindow,
reparent mContainer (which owns mGdkWindow) to it, unrealize mShell and set up the titlebar
for mShell toplevel window.

As a workaround for Gtk+ Bug 791081 we also allocate some valid size for mShell before it's newly realized
with the updated titlebar.

MozReview-Commit-ID: A3KwRoOzoko

--HG--
extra : rebase_source : ded644762d3be9e79e3d407f57b2f9098021fb96
2017-12-01 15:22:48 +01:00
Martin Stransky 034109dd85 Bug 1421974 - refactor nsWindow::HideWindowChrome() to nsWindow::SetWindowDecoration() and share it with nsWindow::SetDrawsInTitlebar, r=jhorak
MozReview-Commit-ID: 3xEdMXq9JvJ

--HG--
extra : rebase_source : 20a981ec562388337f826cbfcc5cdd5a4c6c37a8
2017-12-01 15:09:11 +01:00
Martin Stransky 51d1404cde Bug 1420820 - Added MOZ_GTK_TITLEBAR_DECORATION to override window manager detection and set window decoration type, r=jhorak
Enables override window manager default with those values:

MOZ_GTK_TITLEBAR_DECORATION=none - Firefox does not mess with decoration
MOZ_GTK_TITLEBAR_DECORATION=client - Firefox tries to disable titlebar rendering and draws shadows by client side decorations.
MOZ_GTK_TITLEBAR_DECORATION=system - Firefox tries to disable titlebar rendering and leave system (window manager) to draw window decorations.

MozReview-Commit-ID: G60QS3g1TD0

--HG--
extra : rebase_source : fd7b5d2b0282fbd54046947d210b1288a0610a23
2017-12-04 15:19:00 +01:00
Martin Stransky 91251dce14 Bug 1281425 - Implement wayland loop to process wl_display events for threads and bind wl_registry for wl_shm, r=jhorak
MozReview-Commit-ID: 1pS1wfOiOo4

--HG--
extra : rebase_source : cde165f1b79625eb807035ac01d50c53cff90bfc
2017-11-02 17:08:33 +01:00
Martin Stransky a6e8113393 Bug 1281425 - Added nsWaylandDisplay class to support access to Wayland display, r=jhorak
MozReview-Commit-ID: 6IU5hS15MmM

--HG--
extra : rebase_source : a4f8b13d2a95dbdeff315e1aea087712daece4fd
2017-10-26 20:19:36 +02:00
Martin Stransky 28829e9356 Bug 1419460 - search XDG_CURRENT_DESKTOP for desktop environment type substring, r=jhorak
We need apply various titlebar/border configuration which is based on active
window manager and desktop type. The XDG_CURRENT_DESKTOP shell variable contains active
desktop environment which we use at GetCSDSupportLevel().

Unfortunately Ubuntu adds "ubuntu:" prefix at XDG_CURRENT_DESKTOP so we can't do
plain string compare but rather search for DE substring at GetCSDSupportLevel().

MozReview-Commit-ID: GmAZ30p47eI

--HG--
extra : rebase_source : eeef51e7326bb8be6418554b07ce5791e988f02f
2017-11-23 14:01:35 +01:00
Dorel Luca 79499f4044 Merge mozilla-central to autoland r=merge on a CLOSED TREE 2017-11-29 12:31:25 +02:00
Martin Stransky f9a10ab56d Bug 1420110 - remove browser.tabs.drawInTitlebar check from nsLookAndFeel, r=jhorak
The browser.tabs.drawInTitlebar check at nsLookAndFeel is redundant, breaks Thunderbird and dynamic titlebar rendering change. Let's use browser.tabs.drawInTitlebar at browser level and when enabled configure titlebar visibility by moz_gtk* media atoms.

MozReview-Commit-ID: IhCYmXgVME7

--HG--
extra : rebase_source : 6f152e5c3d7d5abbb134c9f5adcb76fd6ed335cb
2017-11-23 21:00:12 +01:00
Bob Owen 0160e22eae Bug 1420171 Part 2: Remove some unused members from nsDeviceContextSpecG. r=karlt 2017-11-28 08:58:58 +00:00
Bob Owen 546d657b09 Bug 1420171 Part 1: Only default the print-to file name on Linux if not already set. r=karlt
This allows the web extension saveAsPDF function to work properly.
2017-11-28 08:58:43 +00:00
lochang e889dbe685 Bug 1417751 - Implement a new value inner-spin-button to -moz-appearance on all platforms except Android. r=mats
MozReview-Commit-ID: 7jpLCOWZA2x

--HG--
extra : rebase_source : d2a4d160d26e6f6996ed1cb3a673576236b8ef23
2017-11-29 10:43:13 +08:00
Cosmin Sabou 7d7b59dd0b Backed out changeset 423f4e43a975 (bug 1417751) for xpcshell failures at devtools/shared/tests/unit/test_css-properties-db.js r=backout on a CLOSED TREE 2017-11-28 13:50:59 +02:00
lochang 416f319bb8 Bug 1417751 - Implement a new value inner-spin-button to -moz-appearance on all platforms except Android. r=mats
MozReview-Commit-ID: 3I1LBLbCfmF

--HG--
extra : rebase_source : f9a356d592eac90d91a59de0c7ab0ded6ab80ab2
2017-11-28 10:39:50 +08:00
Martin Stransky 7916b9afd7 Bug 1419456 - Disable full CSD support for XFCE as it does not support GDK_DECOR_BORDER, r=jhorak
MozReview-Commit-ID: BFOgxJ3abrT

--HG--
extra : rebase_source : f17d0a8d1e64b09aa02f7c0b314980db0eacee84
2017-11-21 20:03:21 +01:00
Martin Stransky 26d40cc144 Bug 1418829 - Add MATE entry to GetCSDSupportLevel(), use GDK_DECOR_BORDER with CSD_SUPPORT_FULL only, r=jhorak
Adding MATE as FLAT as it does not support the shadow borders around the window.

GDK_DECOR_BORDER decoration mode means that the window manager renders borders around the window.
We want the border rendering for CSD_SUPPORT_FULL only which means the border looks like shadows. We don't wand WM to render solid/bold borders around main toplevel window.

MozReview-Commit-ID: BdwHi0LJRGC

--HG--
extra : rebase_source : 7b7d6733e62ae3188fe6cdeecca17de05b3d6873
2017-11-20 14:30:57 +01:00
Martin Stransky 7c5df586c4 Bug 1418829 - nsLookAndFeel enables rendering to the titlebar for supported window managers only, r=jhorak
MozReview-Commit-ID: JvqQuZenkWy

--HG--
extra : rebase_source : 11047d6bb3b85cd73aae7a8da9ac8124b2b9a5e7
2017-11-20 14:29:49 +01:00
Martin Stransky 5b47065c12 Bug 1418829 - Export GetCSDSupportLevel() as public from nsWindow, r=jhorak
We need that for nsLookAndFeel module.

MozReview-Commit-ID: 61YKeAUoKEu

--HG--
extra : rebase_source : 3587d39005fe8e6a63b527f55f377182bf1c69bd
2017-11-20 14:28:29 +01:00
Robin Grenet 34508b32f6 Bug 1360278 - Add preference to trigger context menu on mouse up for GTK+ and macOS, r=mstange,smaug
MozReview-Commit-ID: Bg60bD8jIg6

--HG--
extra : rebase_source : cc8bd5796096f49ad4fdab81885a426afd6117e4
2017-11-16 13:35:58 +01:00
lochang 9214b56b5a Bug 1406268 - Use rect width/height instead of minimum width/height and clamp the rect on Linux. r=mats
MozReview-Commit-ID: B7KjnO9uaef

--HG--
extra : rebase_source : c4647b31b650dddd90df528ff1ac48f72d92fed5
2017-11-17 14:20:42 +08:00
Martin Stransky 8eafc3d45b Bug 1414212 - Enable titlebar rendering on Gtk+ >= 3.10, r=jhorak
MozReview-Commit-ID: JFmpa8JyHEl

--HG--
extra : rebase_source : 311e1ac327b78e2fe5251a465e120e8aee4df152
2017-11-16 15:18:17 +01:00
Makoto Kato 639e6d2041 bug 1414881 - Detect more resolution icons. r=karlt
I add some resolution icons for HiDPI by bug 1415014.  So we should detect
these resolution icons.  Also, Thunderbird has default256.png, so we should
support it, too.

MozReview-Commit-ID: 6BEgV0usnE2

--HG--
extra : rebase_source : ec1b954e1ee4664f365376202fe6f9158c6a9e3b
2017-11-16 14:08:10 +09:00
Sylvestre Ledru 2fda79adb2 Bug 1416712 - Remove nsPaperPS as it seems to be dead code r=karlt
MozReview-Commit-ID: IWbo6cXDyiy

--HG--
extra : rebase_source : 32259c1324420a81ba18511366f44cd7a7deffb1
2017-11-13 11:24:47 +01:00
Chris Peterson 0e8425b401 Bug 1416164 - Replace NS_ABORT with MOZ_ASSERT_UNREACHABLE. r=froydnj
MozReview-Commit-ID: DRdYlOYqZpN

--HG--
extra : rebase_source : b20fb24abf0f2ce648c12a827532c0dbeefb6c63
2017-10-24 23:52:56 -07:00
Kartikaya Gupta 00ef028ed3 Bug 1416267 - Update gfxContext matrix functions to avoid flip-flopping between float and double matrices. r=jrmuizel
The core of this change is in gfxContext.*:
- change gfxContext::CurrentMatrix() and gfxContext::SetMatrix() to
  return and take a Matrix respectively, instead of converting to
  and from a gfxMatrix (which uses doubles). These functions therefore
  will now match the native representation of the transform in gfxContext.
- add two new functions CurrentMatrixDouble() and SetMatrixDouble() that
  do what the old CurrentMatrix() and SetMatrix() used to do, i.e.
  convert between the float matrix and the double matrix.

The rest of the change is just updating the call sites to avoid round-
tripping between floats and doubles where possible. Call sites that are
hard to fix are migrated to the new XXXDouble functions which preserves
the existing behaviour.

MozReview-Commit-ID: 5sbBpLUus3U
2017-11-10 21:14:09 -05:00
Martin Stransky 13cafd9d37 Bug 1415080 - Rename all 's' prefixed members of nsLookAndFeel as they're not static ones, r=jhorak
MozReview-Commit-ID: 9LHIewRnbAY

--HG--
extra : rebase_source : f0a9b3c7b51bbc21ed8ab4cb5ca419a25fdc2b2e
2017-11-07 10:14:52 +01:00
Martin Stransky 646ed8e303 Bug 1414272 - Implement SetNonClientMargins() for Gtk+, r=jhorak
Original patch author is Andrew Comminos [:acomminos] <andrew@comminos.com>

MozReview-Commit-ID: Jnqz35iNsQb

--HG--
extra : rebase_source : b3be56afc3330a98a981af0d8b85a28164953e1c
2017-11-03 15:38:29 +01:00
Martin Stransky 8d2317143c Bug 1414774 - Initialize sCSDCloseButton/sCSDMaximizeButton/sCSDMinimizeButton, r=jhorak
MozReview-Commit-ID: 10Yk1gFu0Vk

--HG--
extra : rebase_source : 2fbe514f920e85cb5a857a0f5293edd4f023db06
2017-11-06 11:41:38 +01:00
Lee Bousfield 8b33a0a29e Bug 1398539: Inhibit screensaver with XScreenSaverSuspend r=karlt
MozReview-Commit-ID: LhhpaDaPdaO

--HG--
extra : rebase_source : 6d53031ea8669b15cdf6fad4c55c58624bd54c38
2017-09-13 18:28:51 -06:00
Makoto Kato 18c5223126 Bug 1151753 - Set program class name when not using --class command line option. r=karlt
GTK bug: https://bugzilla.gnome.org/show_bug.cgi?id=747634

Before 3.16.3, GDK cannot override classname by --class command line option
when program uses gdk_set_program_class().  So if 3.16.3+, we should call
gdk_set_program_class() to set program class name of default.

MozReview-Commit-ID: KvNc3U6xHr7

--HG--
extra : rebase_source : aae14973022bb29eb89787b67323a845763c0650
2017-10-25 15:58:49 +09:00
Martin Stransky 79aef7f85b Bug 1348310 - Use CLOCK_MONOTONIC as a base for nsWindow::GetEventTimeStamp() on Wayland, r=karlt
We assume CLOCK_MONOTONIC as timebase for events on Wayland and use that to translates GDK event times to gecko timestamps.

MozReview-Commit-ID: LWd2KWTQeha

--HG--
extra : rebase_source : 1839d35989b9c29c60dd33d445db79afc75af9ab
2017-10-19 15:28:47 +02:00
Martin Stransky fcfeac2a70 Bug 1411018 - Rename shellHasCSD to drawToContainer and mark our rendering widget by gtk_widget_set_app_paintable(), r=jhorak
Rename shellHasCSD to drawToContainer for better understanding and always mark our rendering widget by gtk_widget_set_app_paintable() to make sure Gtk+ does not draw default background for it.

MozReview-Commit-ID: 4mhxrG7C34i

--HG--
extra : rebase_source : 312e956e317c85196d27213dd86bd30b73a25b02
2017-10-23 21:44:02 +02:00
Martin Stransky 78d7ec139e Bug 1409716 - Remove DetectDisplay() and use DISPLAY env variable or Gdk display manager to detect/open it, r=glandium
For X11 only builds get display from DISPLAY env variable or from command line argument. For Wayland enabled buils use standard gdk_display_manager_open_display() path which respects GDK_BACKEND.

When command line argument --display is given pass it to child process by MOZ_GDK_DISPLAY env variable.

MozReview-Commit-ID: F9jEaJ9SU1p

--HG--
extra : rebase_source : 31cf96bcdfe5c525625aa3742aa74ec674265fe1
2017-10-25 14:53:08 +02:00
Martin Stransky 18f750e4ed Bug 1337369 - [Wayland] Expose moz_container_get_wl_surface() to get MozContainer overlayfrom compositor widget, r=jhorak
MozReview-Commit-ID: 9Q4yJ1W0miE

--HG--
extra : rebase_source : 04371d5b2c71d0a443522a4961f67f41ffb8f6dc
2017-10-24 15:26:48 +02:00
Martin Stransky bb161ccf56 Bug 1337369 - [Wayland] map/unmap overlay MozContainer wl_surface when running on Wayland, r=jhorak
MozReview-Commit-ID: LewrZIXoPI4

--HG--
extra : rebase_source : 4da6712708a55b2ec32ccb9ee0c14afd56c19661
2017-10-24 14:54:17 +02:00
Martin Stransky 8f9da912c2 Bug 1337369 - [Wayland] add routines to map/unmap wl_surface as overlay for MozContainer, r=jhorak
MozReview-Commit-ID: Jn1fJSMlHnP

--HG--
extra : rebase_source : f89fa1dac6cce3c7bddc339bfd56563e811c30bc
2017-10-24 14:34:45 +02:00
Martin Stransky fc13010408 Bug 1337369 - [Wayland] query wayland registry to get wl_subcompositor for mozcontainer, r=jhorak
MozReview-Commit-ID: E04hqpFKFhk

--HG--
extra : rebase_source : 2a1a68b6ce3600377d89a8cde0651415ae77124a
2017-10-24 14:06:29 +02:00
Martin Stransky b64b69ebdb Bug 1412010 - Add missing includes to gtk(3)drawing files, r=jhorak
MozReview-Commit-ID: B1RiTldOenE

--HG--
extra : rebase_source : 195bd1ea9f5c5ee9b744bfadcbe2589d801abb18
2017-10-26 20:14:53 +02:00
Sebastian Hengst 841ee307e6 merge mozilla-central to autoland. r=merge a=merge 2017-10-27 23:32:15 +02:00
Sebastian Hengst 28b1c813ea merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: DasxLYlgq0N
2017-10-27 23:30:52 +02:00
Andrea Marchesini 1e90a67e4d Bug 1412258 - Get rid of ipc/dbus, r=smaug
--HG--
rename : ipc/dbus/DBusConnectionRefPtr.h => netwerk/wifi/DBusHelpers.h
2017-10-27 18:41:40 +02:00
Brad Werth a2d5d923ea Bug 1403690 Part 4: gtk rearrange header and implementation to keep init and refresh functions together. r=karlt
MozReview-Commit-ID: ERsI916e7zf

--HG--
extra : rebase_source : 970c4b7b482dd4bac9fed51e81f34c370671be3d
2017-10-10 14:12:47 -07:00
Martin Stransky c2b677a91d Bug 1410894 - Load CSD config from nsLookAndFeel, r=jhorak
Make CSD setup and titlebar drawing available when users enable it by preference and also it's available on running system.

MozReview-Commit-ID: 4BLgzVWwX1R

--HG--
extra : rebase_source : 15293821b9962bd9d0ee22331e7fad9027a47a7a
2017-10-23 21:28:47 +02:00
Martin Stransky 6a4c5abeaf Bug 1410894 - Add decoration drawing setup to nsWindow, r=jhorak
MozReview-Commit-ID: BHtqoOdfRpS

--HG--
extra : rebase_source : 4baaebff7e86d79de833e14c9284adc22a787180
2017-10-27 11:19:08 +02:00
Martin Stransky 617b41cac0 Bug 1410885 - Implement border/padding helpers, r=jhorak
MozReview-Commit-ID: 24WU58W43n6

--HG--
extra : rebase_source : efcb94b91790cd3fb4924ffcee2f33baa2c00826
2017-10-23 15:16:02 +02:00
Botond Ballo 02ae35c9e1 Bug 1400238 - Notify TabParent when the GTK client offset changes. r=karlt
MozReview-Commit-ID: 1TacAhl6c2M

--HG--
extra : rebase_source : 5641d417a6245cc2f8027fd91032119f1b36d461
2017-10-18 13:29:47 -04:00
Sebastian Hengst d341bac932 Backed out changeset 7636f668f84e (bug 1403690) 2017-10-23 22:05:05 +02:00
Brad Werth 6595065d11 Bug 1403690 Part 4: gtk rearrange header and implementation to keep init and refresh functions together. r=karlt
MozReview-Commit-ID: ERsI916e7zf

--HG--
extra : rebase_source : 6e01cb852a05db87ebe7961773703ead9aee8a57
2017-10-10 14:12:47 -07:00
Sebastian Hengst a994da18d5 Backed out changeset 349f51081127 (bug 1403690) 2017-10-23 18:21:09 +02:00
Brad Werth 6c5f60148b Bug 1403690 Part 4: gtk rearrange header and implementation to keep init and refresh functions together. r=karlt
MozReview-Commit-ID: ERsI916e7zf

--HG--
extra : rebase_source : 580f72faf7b748644b7d2e25872eb57b929a6be1
2017-10-10 14:12:47 -07:00
Martin Stransky 798f390d6b Bug 1409493 - Load actual CSD config from Gtk+, r=jhorak
MozReview-Commit-ID: GVHGXEk4IN

--HG--
extra : rebase_source : 349fd047f87db10aa3a83404e49552336022d009
2017-10-17 21:19:48 +02:00
Martin Stransky b8ceb20909 Bug 1409493 - Implement CSD entries for Gtk+ LookAndFeel module, r=jhorak
MozReview-Commit-ID: CXsy9dhgMB9

--HG--
extra : rebase_source : 09265a59b17c612652ac048328681a8098c86846
2017-10-17 21:17:32 +02:00
Martin Stransky 64bb4e051b Bug 1186967 - ignore double-click on WM without _NET_WM_MOVERESIZE support, r=jhorak
MozReview-Commit-ID: 2Vs6i5leero

--HG--
extra : rebase_source : d8f2bbaf9ef9b2025478f029a68ee7e87e07de79
2017-10-17 09:50:18 +02:00
Martin Stransky bfa8fde631 Bug 1364843 - Implement MOZ_GTK_HEADER_BAR* theme entries, r=jhorak,karlt
Based on patch by Andrew Comminos [:acomminos] <andrew@comminos.com>

MozReview-Commit-ID: DTVePe1R563

--HG--
extra : rebase_source : 23bea31b34ed95301f840726a1f70378764fdea4
2017-09-19 21:22:45 +02:00
Martin Stransky 984f2babc2 Bug 1364843 - Implement drawing and size query of MOZ_GTK_HEADER_BAR*, r=jhorak
Based on patch by Andrew Comminos [:acomminos] <andrew@comminos.com>

MozReview-Commit-ID: 2d8BgLyOS5u

--HG--
extra : rebase_source : ff4aa230b22a3ae478211330b09f239f36705e12
2017-09-19 21:15:12 +02:00
Martin Stransky 2c1a8317ac Bug 1364843 - Allow MOZ_GTK_HEADER_BAR* widget creation, r=jhorak
Based on patch by Andrew Comminos [:acomminos] <andrew@comminos.com>

MozReview-Commit-ID: 18U3GBrTyVW

--HG--
extra : rebase_source : 7a203d5c4d1856d24f08c2ea42ad4519d283ab73
2017-09-19 20:34:31 +02:00
Martin Stransky 089986546e Bug 1364843 - Implement GtkHeaderBar widgets at WidgetCache, r=jhorak
Based on patch by Andrew Comminos [:acomminos] <andrew@comminos.com>

MozReview-Commit-ID: HzzXDqE0s5n

--HG--
extra : rebase_source : d929e03d7ab84229101b9c11cdb35396547860e4
2017-09-19 18:20:48 +02:00
Martin Stransky 3af9407ecc Bug 1364843 - Added WidgetNodeType entries for GtkHeaderBar implementation, r=jhorak,jimm,karlt
Based on patch by Andrew Comminos [:acomminos] <andrew@comminos.com>

MozReview-Commit-ID: GA3CDhCeqfD

--HG--
extra : rebase_source : 0bdccafcfbd84475442503abb6b2e11b6670c37d
2017-09-19 18:24:13 +02:00
Jan Horak 165fab2f85 Bug 1381815 - fixing dimensions of radio and checkbox for GTK 3.20+; r=karlt
In the GTK < 3.20 the size of radio and checkbox toggle is determined by indicator
spacing and indicator size. By  GTK 3.20+ it is replaced by standard box model
(padding, margin, border). The patch fixes that while keeping the functionality
for older GTK. The values are also cached by similar way as scrollbar metrics
are cached now.

The focus is no longer rendered by GTK but by Mozilla code, so the extra
size for toggles has been removed from GetExtraSizeForWidget and toggles
no longer render focus indicator.

MozReview-Commit-ID: 1Wg5AgHy1Vz

--HG--
extra : rebase_source : 81437f45b7d32555942d21fccc9de4a561d85111
2017-10-10 13:35:56 +02:00
Brendan Dahl 72ed58e8b8 Bug 1399956 - Add basic hard coded GTK theme in headless. r=jrmuizel
Many tests rely on the minimum size of widgets to
be set. Also, the precise size seems to matter for some
tests that have hard coded offsets.

MozReview-Commit-ID: BglZD1cKdY9
2017-10-16 16:15:45 -07:00
Mantaroh Yoshinaga bea6d05b62 Bug 1185236 - Shorten print job name when GTK version is older than 3.18.2. r=karlt
Since GTK 3.18.2, GTK allows setting job name with more than 255 bytes.
As result, CUPS received the IPP error. (RFC 2911, Section 4.3.1)

This patch will shorten print job name, if runtime GTK version is older than 3.18.2.

MozReview-Commit-ID: EfB87Bvo6hX

--HG--
extra : rebase_source : a070e99c783c471a7bf7d00efb3cc997ff617a5e
2017-10-13 15:48:39 +09:00
Phil Ringnalda bcec55eabf Backed out 4 changesets (bug 1185236) for Windows build bustage
CLOSED TREE

Backed out changeset eda76603d637 (bug 1185236)
Backed out changeset 2cbe403d5c16 (bug 1185236)
Backed out changeset 0466471b9f67 (bug 1185236)
Backed out changeset 445f1e6fc862 (bug 1185236)

MozReview-Commit-ID: 2nL4nUNNhcs
2017-10-12 19:50:07 -07:00
Mantaroh Yoshinaga 0c17c70a15 Bug 1185236 - Shorten print job name when GTK version is older than 3.18.2. r=karlt
Since GTK 3.18.2, GTK allows setting job name with more than 255 bytes.
As result, CUPS received the IPP error. (RFC 2911, Section 4.3.1)

This patch will shorten print job name, if runtime GTK version is older than 3.18.2.

MozReview-Commit-ID: EfB87Bvo6hX

--HG--
extra : rebase_source : f502cd49b128aecce4d8268783377c46a63ad669
2017-10-13 09:46:39 +09:00
Sebastian Hengst f7efb5fc2c Merge mozilla-central to mozilla-inbound. r=merge a=merge on a CLOSED TREE 2017-10-12 12:03:15 +02:00
Nicholas Nethercote c0a1cf9b49 Bug 1407103 - Convert wstring attributes to AString in widget/nsIPrint*.idl. r=bobowen.
This avoids a lot of mismatches between nsAString and char16_t*, thus removing
many getter_Copies() and ToNewUnicode() and get() calls, and generally making
things simpler.

Note: the patch removes GetDefaultPrinterNameFromGlobalPrinters() by simply
inlining it at its two callsites, which is easy with the changed types.

--HG--
extra : rebase_source : 9ab9b3694f093fc9b22c7f8e2394a98674d76c11
2017-10-09 10:08:09 +11:00
Emilio Cobos Álvarez e808575ca4 Bug 1406631: Remove the color-picker-available system metric. r=xidorn
All our widgets support it with a constant true.

MozReview-Commit-ID: JMEItUsxYWq

--HG--
extra : rebase_source : e7e0a3f83001813239338bc5b3895252e1fb3ea6
2017-10-07 14:06:44 +02:00
Ryan Hunt 979b5671a6 Bug 1407001 - Don't reset compositors for composited changed callback when GPUProcessManager is null. r=lsalzman
MozReview-Commit-ID: 4E31bt3Rzkz

--HG--
extra : rebase_source : 84a18ffcc77f37220284679c1dbb916a25524d31
2017-10-09 12:49:53 -05:00
Sebastian Hengst aa78440a09 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: EE6DcCgHufi
2017-10-09 11:19:20 +02:00
Nicholas Nethercote 8a68e6fb83 Bug 1403868 (part 4) - Reduce tools/profiler/public/*.h to almost nothing in non-MOZ_GECKO_PROFILER builds. r=mstange.
Currently the Gecko Profiler defines a moderate amount of stuff when
MOZ_GECKO_PROFILER is undefined. It also #includes various headers, including
JS ones. This is making it difficult to separate Gecko's media stack for
inclusion in Servo.

This patch greatly simplifies how things are exposed. The starting point is:

- GeckoProfiler.h can be #included unconditionally;

- everything else from the profiler must be guarded by MOZ_GECKO_PROFILER.

In practice this introduces way too many #ifdefs, so the patch loosens it by
adding no-op macros for a number of the most common operations.

The net result is that #ifdefs and macros are used a bit more, but almost
nothing is exposed in non-MOZ_GECKO_PROFILER builds (including
ProfilerMarkerPayload.h and GeckoProfiler.h), and understanding what is exposed
is much simpler than before.

Note also that in BHR, ThreadStackHelper is now entirely absent in
non-MOZ_GECKO_PROFILER builds.
2017-10-04 09:11:18 +11:00
Nicholas Nethercote d225f7151b Bug 1400460 - Rename nsIAtom as nsAtom. r=hiro.
(Path is actually r=froydnj.)

Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.

MozReview-Commit-ID: 91U22X2NydP

--HG--
rename : xpcom/ds/nsIAtom.h => xpcom/ds/nsAtom.h
extra : rebase_source : ac3e904a21b8b48e74534fff964f1623ee937c67
2017-10-03 09:05:19 +11:00
Sebastian Hengst b29f365446 Backed out changeset f70d6fcdb760 (bug 1406631) for failing color related reftests like layout/reftests/writing-mode/ua-style-sheet-input-color-1.html on Android. r=backout 2017-10-07 20:08:12 +02:00
Emilio Cobos Álvarez b7befbe6b5 Bug 1406631: Remove the color-picker-available system metric. r=xidorn
All our widgets support it with a constant true.

MozReview-Commit-ID: JMEItUsxYWq

--HG--
extra : rebase_source : a2661dce1ac191fdf098e631cd7878f0215643d5
2017-10-07 14:06:44 +02:00
Chris Coulson 4bb5b5c2f6 Bug 1405267 - Don't stub gdk_window_get_window_type in mozgtk2. r=karlt
--HG--
extra : amend_source : 3be7b98361af506cbf1fc0febd0c7c431a520cd0
2017-10-03 04:58:00 -04:00
Lee Salzman 83b1549723 Bug 1404323 - limit WindowSurfaceX11Image::Commit to clip bounds. r=gankro
MozReview-Commit-ID: 55GbZ2EHdbQ
2017-09-29 23:59:40 -04:00
Brad Werth fb488ded4b Bug 1401063: Cache remaining gtk window and button colors to eliminate on-demand gtk calls in ::NativeGetColor. r=karlt
MozReview-Commit-ID: HbZqBUG0w7y

--HG--
extra : rebase_source : 0b26c22113c2cda49129006fe933f20719b7a679
2017-09-19 13:00:28 -07:00
Wes Kocher 519bb0922b Merge inbound to central, a=merge
MozReview-Commit-ID: EK8iFR1hSRp
2017-09-18 16:21:01 -07:00
Ryan Hunt 5823900855 Bug 1397083 - Don't use CopySurface when drawing theme with nsNativeThemeGTK. r=lsalzman
CopySurface doesn't respect any existing clips that are applied to the draw
target. It doesn't look like nsNativeThemeGTK uses CopySurface normally, but
when OMTP is enabled the draw target is a DrawTargetCapture which can't
LockBits() which causes us to use CopySurface. This can cause a reftest failure.

MozReview-Commit-ID: 1mYMhQB0r3M

--HG--
extra : rebase_source : d2683dee37ce32049d8daeee786cbb06ba624438
extra : amend_source : 59c48b66f733108636d52047a55889ee0c4e2746
2017-09-13 15:03:34 -04:00
Nicholas Nethercote ebf1cb320b Bug 1400148 - Don't use -1 to represent an unset nsCursor. r=karlt.
Because UBSan complains about casting -1:

> runtime error: load of value 4294967295, which is not a valid value for type 'nsCursor'

--HG--
extra : rebase_source : 037a96700228ea0d427afa7c25c40490c701cdc4
2017-09-15 14:34:37 +10:00
Karl Tomlinson 00beb33110 bug 1396722 remove no-op ReleaseStyleContext() r=stransky+263117
MozReview-Commit-ID: DgKM0wrStrk

--HG--
extra : rebase_source : a26fdc5e5d6c63e21bb98a19ee7bf58042f9b3ba
2017-09-05 09:16:01 +12:00
Karl Tomlinson 648484651d bug 1384701 get system fonts in EnsureInit() which is on main thread even with servo r=manishearth
GTK should be used only from the main thread, but the specific symptom before
this change was that creating a GtkEntry causes
pango_cairo_font_map_get_default() to be called.  This function returns a
different font map on each thread.  The font map is leaked when StyleThreads
are leaked at exit.

Font caches are usually expensive and so using the existing font map on the
main thread is preferable.

A GtkEntry already exists on the main thread, as well as style contexts for
most other system fonts, and so it is more efficient to create these on the
main thread while the style contexts exist.

Doing this also avoids the need for Gecko_nsFont_InitSystem() to hold a global
lock to avoid concurrently calling into GTK through LookAndFeel::GetColor().

MozReview-Commit-ID: DSOwEUeYmtV

--HG--
extra : rebase_source : 971bc565e465b2d2482308006f68451ecaa6e264
2017-09-04 18:29:04 +12:00
Karl Tomlinson 645192c7d9 bug 1384701 get system font name and size from widget style context instead of GtkSettings r=manishearth
gtk_widget_get_settings() returns the same settings for all widgets [1] but
GTK actually uses specific fonts for each widget [2].

[1] https://git.gnome.org/browse/gtk+/tree/gtk/gtkwidget.c?h=3.22.19#n11637
[2] https://git.gnome.org/browse/gtk+/tree/gtk/gtkwidget.c?h=3.22.19#n10334

Changing to GtkStyleContext* will also make this easier to use from code where
the GtkStyleContext exists but not the GtkWidget, such as EnsureInit() in a
future patch.

MozReview-Commit-ID: 3NuTL5wRzm5

--HG--
extra : rebase_source : 8ca2ae009bdf4b15a82106425c98b6be786ad27b
2017-09-04 21:33:21 +12:00
Karl Tomlinson f800034d87 bug 1384701 remove MOZ_WIDGET_GTK == 2 code from nsLookAndFeel r=manishearth
This old code no longer builds and is superseded by the GTK3 port.
See also bug 1278282.

MozReview-Commit-ID: 9KyrPuNAluv

--HG--
extra : rebase_source : 8d5de061743e0281bf4ed03c68286512e7b492e9
2017-09-04 17:36:17 +12:00
Masayuki Nakano 1166607c92 Bug 1387357 - IMContextWrapper::DispatchCompositionStart() should stop dispatching eCompositionStart if dispatching preceding eKeyDown event causes changing active IM context r=m_kato
If a keydown event handler moves focus like Ctrl+PageDown handler, IM context
may be changed to DISABLED or something.  In such case, native IME would stop
current composition because focus moving in Gecko causes making IME blurred.
However, IMContextWrapper::DispatchCompositionStart() always dispatches
eCompositionStart even in such case.

So, it should stop dispatching eCompositionStart if IME enabled state is
changed during dispatching the preceding keydown event.

Note that this patch moves the setter of mComposingContext from
OnStartCompositionNative() which is a signal listener of "preedit_start" to
DispatchCompositionStart() because if IME starts composition without
"preedit_start" signal, DispatchCompositionStart() will be called but
OnStartCompositionNative() isn't called.  However, this fix needs
mComposingContext.

MozReview-Commit-ID: F3F6NuCOrkJ

--HG--
extra : rebase_source : 513528eba0f29eb9b6ce8c5f47e4badbde9cbdb8
2017-09-04 20:18:43 +09:00
Alastor Wu 6a6ee2a0d7 Bug 1373888 - part3 : rename the topic of the wake lock. r=cpearce
For knowing the wake lock usage more clearly, we should use more specific topic name.

In OSX, you can use "$ pmset -g assertions" to check all the wakelock.
In Windows, using "$ powser -energy" to generate the energy report.

MozReview-Commit-ID: rAXnkxTvLc

--HG--
extra : rebase_source : 42ebf204673d3c913739f64c71c24af20d37c95d
2017-08-29 10:54:28 +08:00
Martin Stransky 4cb65b6801 Bug 1314928 - get link text color by GTK_STATE_FLAG_LINK on Gtk3 >= 3.12, r=karlt
MozReview-Commit-ID: BPR2AgoUx5H

--HG--
extra : rebase_source : c4670cd6b7df84dd00a4d04c3bfc582f917795da
2017-08-25 10:30:28 +02:00
Sebastian Hengst ef86d4676d Backed out changeset 1f349caf1814 (bug 1314928) for bustage at widget/gtk/nsLookAndFeel.cpp:47: invalid conversion from 'int' to 'GtkStateFlags'. r=backout on a CLOSED TREE 2017-08-25 10:51:20 +02:00
Martin Stransky 572cfb016f Bug 1314928 - get link text color by GTK_STATE_FLAG_LINK on Gtk3 >= 3.12, r=karlt
MozReview-Commit-ID: BPR2AgoUx5H

--HG--
extra : rebase_source : ad688e0f6cbabcc64ebb62f2386f8346b3860855
2017-08-25 10:30:28 +02:00
Nicholas Nethercote f582d96b98 Bug 1390428 (part 9) - Remove nsXPIDLCString. r=erahm.
This is straightforward, with only two notable things.

- `#include "nsXPIDLString.h" is replaced with `#include "nsString.h"`
  throughout, because all nsXPIDLString.h did was include nsString.h. The
  exception is for files which already include nsString.h, in which case the
  patch just removes the nsXPIDLString.h inclusion.

- The patch removes the |xpidl_string| gtest, but improves the |voided| test to
  cover some of its ground, e.g. testing Adopt(nullptr).

--HG--
extra : rebase_source : 452cc4a08046a1adb1a8099a7e85a1917de5add8
2017-08-17 15:29:03 +10:00
Nicholas Nethercote 8a72cf2251 Bug 1390428 (part 2, attempt 2) - Remove more nsXPIDLCString local variables. r=erahm.
--HG--
extra : rebase_source : 69d58b0cfb56efc6b03d8e2d7be2ce3c3e6cd843
2017-08-21 20:01:27 +10:00
Ryan Hunt 95c23d28b7 Bug 1377950 - Reset all compositors when GdkScreen "composited-changed" fires. r=karlt
MozReview-Commit-ID: 3vva2XgSa60

--HG--
extra : rebase_source : 099a54f38695a7a88d5ca3a0dfc8cb948bfffb63
2017-08-11 02:52:08 -05:00
Masatoshi Kimura 5b97708fef Bug 1387800 - Remove [deprecated] nsIFilePicker.show(). r=qdot
MozReview-Commit-ID: 81ZkeYdSPVW

--HG--
extra : rebase_source : 2f30565b8d5986ef6265027562f9842d0db2688e
2017-08-06 13:15:31 +09:00
Martin Stransky 9ed3f34e0f Bug 1389133 - don't invalidate style content for missing widgets, r=karlt
MozReview-Commit-ID: 2KfjYGvsiVv

--HG--
extra : rebase_source : 86984393bb22a7708089b5ed6da1201f9458e6e7
2017-08-10 18:07:41 +02:00
Brendan Dahl 02dc1567cd Bug 1387170 - Use custom clipboard constructor instead of singleton. r=jrmuizel
This allows instances of the clipboard to be created (like it
was pre-headless).
2017-08-09 09:49:50 -07:00
Sebastian Hengst 6b897a9aab merge mozilla-central to autoland. r=merge a=merge 2017-09-18 11:36:27 +02:00
Jan Steffens b9f5c3fac3 Bug 1400175 - Stub gdk_screen_get_monitor_workarea in mozgtk2; r=karlt
MozReview-Commit-ID: 72K6U17JuoK

--HG--
extra : rebase_source : aa07eae27b5c37b204c45237e47d511acf45e2d3
2017-09-15 13:44:14 +02:00
Nicholas Nethercote 1a6f1a62fa Bug 1387381 - Remove nsXPIDLString local variables. r=erahm.
nsXPIDLStrings are marked as VOIDED upon initialization. Most of these local
nsXPIDLString variables are immediately set via getter_Copies(), which will
either assign a string value (using Adopt()) or do SetIsVoid(). These can be
trivially converted to nsString, which will get the same treatment.

The patch suitably converts the remaining nsXPIDLString local variable as well.

--HG--
extra : rebase_source : 5fff9f2c6844559198f601853f8db08564add7d5
2017-08-08 16:07:55 +10:00
Carsten "Tomcat" Book e54b14cf9a merge mozilla-inbound to mozilla-central a=merge 2017-08-07 12:56:05 +02:00
Nicholas Nethercote f941156987 Bug 1386600 - Change nsIStringBundle methods to return |AString| instead of |wstring|. r=emk,sr=dbaron.
This removes about 2/3 of the occurrences of nsXPIDLString in the tree. The
places where nsXPIDLStrings are null-checked are replaced with |rv| checks.

The patch also removes a couple of unused declarations from
nsIStringBundle.idl.

Note that nsStringBundle::GetStringFromNameHelper() was merged into
GetStringFromName(), because they both would have had the same signature.

--HG--
extra : rebase_source : ac40bc31c2a4997f2db0bd5069cc008757a2df6d
2017-08-04 14:40:52 +10:00
Manish Goregaokar b74c4d0f69 Bug 1386915 - Add nsLookAndFeel::NativeInit() virtual call for initializing native-side state; r=jfkthame
MozReview-Commit-ID: 8XKSC1AOI0N
2017-08-06 15:41:08 -07:00
Manish Goregaokar 89df80e7d0 Bug 1386915 - Assert when nsLookAndFeel calls GTK off main thread; r=bholley
MozReview-Commit-ID: 9H9dE02bZel
2017-08-06 15:41:05 -07:00
Karl Tomlinson 7f6c7692a4 bug 1365556 invalidate widget style contexts after their ancestors are set r=stransky+263117
Although this is only known to affect buttons with builtin child widgets, it
is difficult to audit all GTK widgets for similar situations, and so the same
defense is applied to all widgets.

MozReview-Commit-ID: LMVXX3UYqR9

--HG--
extra : rebase_source : d327addad8d2b0e070c6ca86c6e38271c8431a23
2017-08-01 09:17:46 +12:00
Michael Smith 6fcebfbe5b Bug 1373739 - Make headless compositing Windows-compatible, in addition to Linux. r=dvander
To make the HeadlessCompositorWidget work under Windows as well as Linux, I had
to change the way that I hooked it into the existing CompositorWidget system.
Under GTK, the CompositorWidgetInitData and CompositorWidgetDelegate types
provided the information needed by the headless compositor widget already (the
widget client size). On Windows, however, the definitions of these types
differ, and the client size information is simply retrieved from the platform
APIs when needed.

After this patch, CompositorWidgetDelegate is renamed to
PlatformCompositorWidgetDelegate, and a new base class called
CompositorWidgetDelegate is added with "AsPlatformSpecificDelegate()" and
"AsHeadlessCompositorWidget()" methods. In non-headless mode, widgets use
AsPlatformSpecificDelegate() to access the Windows- and GTK-specific delegate
APIs. In headless mode, AsHeadlessCompositorWidget() is used to access the
singular CompositorWidget implementation for headless. Meanwhile, the
CompositorWidgetInitData IPDL type is made into a union which always contains a
headless-specific HeadlessCompositorWidgetInitData struct and under GTK and
Windows also contains an {X11,Win}CompositorWidgetInitData struct.

This also includes a small patch to ensure that the GPU process and
hardware-accelerated compositing are always disabled under headless mode. These
features weren't activated by default in the Linux environments I tested in, but
did end up activating (and then promptly crashing Firefox) when I tested on
Windows.

MozReview-Commit-ID: CocPoHBDV7H

--HG--
extra : rebase_source : 4581fa63aa3a9f32a8dc2672015a35b9be01b20f
2017-07-06 17:45:34 -07:00
Michael Smith 632f364e09 Bug 1373739 - Use ClientLayerManager in headless mode. r=dvander,jrmuizel
This fixes a series of issues uncovered by the Web Platform Tests.

The most immediately noticeable symptom was that, during shutdown, PuppetWidgets
on the client side attempted to delete shadow layers that were never created on
the compositor side. The usage of BasicLayerManager in all other widgets due to
headless mode meant that the PLayerTransactionParent was never initialized with
a layer manager, and thus discarded all transaction messages it received but not
delete layer messages.

The effects of only using BasicLayerManager in headless mode also showed up in
the web platform reftests, which ended up as blank white boxes in e10s mode as
the compositor thread never received paint instructions. Switching over to
using ClientLayerManager in headless mode causes these paint instructions to be
relayed.

In order to make ClientLayerManager work under headless mode, it was necessary
to implement a HeadlessCompositorWidget and hook that up to the CompositorWidget
creation function in widget/gtk. A follow-up patch will be necessary to hook up
the same for the other supported widget platforms.

MozReview-Commit-ID: 8vB3lrxP7iX

--HG--
extra : rebase_source : 4013aa856943c983b44266c4a83436b253bc7ab1
2017-06-21 08:50:02 -07:00
Nicholas Nethercote 72c884bf74 Bug 1384835 (part 3, attempt 2) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj.
--HG--
extra : rebase_source : d317b25be2ec21d1a60d25da3689e46cdce0b649
2017-07-31 14:28:48 +10:00
Masayuki Nakano 937a9124a5 Bug 1379797 - nsWindow::GetEditCommandsRemapped() should do nothing if given event wasn't created with a native event r=karlt
When aEvent.mNativeKeyEvent of nsWindow::GetEditCommandsRemapped() is nullptr, that means the event was created without a native event.  Typically, chrome script created the event.  In such case, we should not execute native key bindings because doing it exposes the OS settings to chrome script because that might cause some privacy issue.  Therefore, the method should do nothing with such event.

MozReview-Commit-ID: 7ZHZjZ3ligT
2017-07-20 06:42:09 -07:00
Kentaro Hayashi ef93e64d0d Bug 1382142 - Fix a typo about MOZ_CONTAINER_GET_CLASS definition. r=karlt
There is no side-effects by this commit because this macro definition is
not used in actual implementation.

--HG--
extra : amend_source : 6075bacf7c0e2c10dd66dcfda8e28f16786d58de
2017-07-19 17:01:59 +09:00
Samael Wang a4e6b1337a Bug 1350643 - Part 5.2: Use per-monitor gdkScaleFactor to set contentsScaleFactor & nsWindow::GetDesktopToDeviceScale if running in gtk/wayland. r=karlt
MozReview-Commit-ID: Grs4dUqvLew

--HG--
extra : rebase_source : a5524e08fea8fb3623a55c486b33e95c4212fa59
2017-06-16 11:13:59 +08:00
Samael Wang a4ddae112e Bug 1350643 - Part 5.1: Get per-monitor dpi in ScreenHelperGTK & use the same value in nsWindow::GetDPI. r=karlt
MozReview-Commit-ID: 9dOkUEzuUL8

--HG--
extra : rebase_source : 26fdbcc54edf8a3f4f0b166a88f85f98313bfe39
2017-06-16 10:58:11 +08:00
Samael Wang 3810bc3903 Bug 1350643 - Part 3: Add GetDPI to nsIScreen & ScreenDetails. r=kanru
MozReview-Commit-ID: HEFyuYV26Wy

--HG--
extra : rebase_source : fb172f4ba99ab7119036ddf4ec1b3eeeaead186c
2017-06-06 18:09:34 +08:00
Samael Wang 44adcfaeea Bug 1350643 - Part 2: Use gdk functions to enumerate monitors instead of Xinerama. r=karlt
MozReview-Commit-ID: D9f65oZMBuV

--HG--
extra : rebase_source : e4dfa2ee593b9e06433569aaa8f3ec965fca5f2d
2017-06-06 17:57:54 +08:00
Samael Wang c9d2b57f92 Bug 1350643 - Part 1: Rename gfxPlatformGtk::GetDPI/GetDPIScale to GetFontScaleDPI/GetFontScaleFactor to better distinguish from nsIWidget::GetDPI. r=karlt
MozReview-Commit-ID: 4fxMG1FBlM8

--HG--
extra : rebase_source : 767780c828b2a9914b5f3af3c2749568099bece1
2017-06-14 16:54:21 +08:00
Blake Kaplan 46f55c55cc Bug 1374862 - Avoid setting gHandled when we don't handle signals. r=masayuki
This avoids a fatal assertion for some key events when focus isn't on a text
input.

MozReview-Commit-ID: Hqr6LNW61Kn

--HG--
extra : rebase_source : adc954fc355044c91dc34e9e689a745da95e78c9
2017-06-20 17:03:09 -07:00
Nicholas Nethercote c86dc10505 Bug 1380227 - Avoid many UTF16toUTF8 and UTF8toUTF16 conversions in nsStringBundle. r=emk.
Most of the names passed to nsIStringBundle::{Get,Format}StringFromUTF8Name
have one of the two following forms:

- a 16-bit C string literal, which is then converted to an 8-bit string in
  order for the lookup to occur;

- an 8-bit C string literal converted to a 16-bit string, which is then
  converted back to an 8-bit string in order for the lookup to occur.

This patch introduces and uses alternative methods that can take an 8-bit C
string literal, which requires changing some signatures in other methods and
functions. It replaces all C++ uses of the old methods.

The patch also changes the existing {Get,Format}StringFromName() methods so
they take an AUTF8String argument for the name instead of a wstring, because
that's nicer for JS code.

Even though there is a method for C++ code and a different one for JS code,
|binaryname| is used so that the existing method names can be used for the
common case in both languages.

The change reduces the number of NS_ConvertUTF8toUTF16 and
NS_ConvertUTF16toUTF8 conversions while running Speedometer v2 from ~270,000 to
~160,000. (Most of these conversions involved the string
"deprecatedReferrerDirective" in nsCSPParser.cpp.)

--HG--
extra : rebase_source : 3bee57a501035f76a81230d95186f8c3f460ff8e
2017-07-12 15:13:37 +10:00
Martin Stransky fa30ab7210 Bug 1373249 - Enable OMTC for composited popups, r=karlt
MozReview-Commit-ID: 1G4P2B4CA3z

--HG--
extra : rebase_source : aad1dbbae6e589f8925c2224f242b878d44a3d64
2017-06-15 17:17:53 +02:00
Mats Palmgren 15925cc551 Bug 1377486 - Make nsWindow 'final' to possibly devirtualize some calls. r=tn
MozReview-Commit-ID: GrcIukJYmt6
2017-07-01 19:59:21 +02:00
Mats Palmgren 949cb19d0b Bug 1377348 - Make nsLookAndFeel final to allow the compiler to devirtualize some calls. r=tn
MozReview-Commit-ID: 7AoZKsTyb3O
2017-06-30 03:34:15 +02:00
Jed Davis 19ef5c3395 Bug 1360069 - Don't do unnecessary wakelock signaling from content processes. r=gcp
MozReview-Commit-ID: AqKGsWyHuXl

--HG--
extra : rebase_source : 36a30ee2e0ebdd3cfd180958d029d717b7449cd9
2017-04-24 21:19:33 -06:00
Jed Davis c8c7f64bf6 Bug 1360069 - Deal with the case where WakeLockListener is never instantiated. r=gcp
Otherwise, with the next patch, xpcshell tests crash because
WakeLockListener::Shutdown tries to Release() nullptr.

MozReview-Commit-ID: AmD5b6NUqnP

--HG--
extra : rebase_source : dd856ea37e793a8c40f2baf1eb001f96b4d0ee35
2017-06-27 14:44:39 -07:00
Masayuki Nakano a9fb7c2f23 Bug 1376407 - part2: Emulate selection when committing composition as collapsed to the end of composition r=m_kato
When you start new composition during converting with Mozc in e10s mode, the following things occur:

1. Mozc commits previous composition.
2. Gecko dispatches eCompositionCommit event.
3. Mozc sets new composition string (skipping composition start signal).
4. Gecko dispatches eCompositionStart and eCompositionChange event.
5. Selection is changed asynchronously.
6. Gecko sets position of IME windows.

At #4, Gecko stores start of composition as selection start, then, trying to adjust it at #5. However, new selection is caret position in new composition string. Therefore, it's not used for the adjustment. This causes that stored composition start offset is always the start of the previous composition (if the previous patch didn't change EnsureToCacheSelection() behavior). So, IMContextWrapper needs to compute proper composition start offset in this case.

The simplest fix is, modifying selection at #2 as which will be occurred in focused editor.  So, this patch makes the selection cache collapsed to the end of committing string.

Note that actual selection may be different if JS changes selection and/or the text in the focused editor. However, it doesn't matter. IMContextWrapper should behave as expected while current composition is active.

MozReview-Commit-ID: 221mDUd8yRP

--HG--
extra : rebase_source : 571b2de85ed6ea1fdadea73b7f95507937cc60e9
2017-06-27 03:11:25 -07:00
Masayuki Nakano b67cd28522 Bug 1376407 - part1: IMContextWrapper should cache selected string instead of length of selection r=m_kato
IMContextWrapper::EnsureToCacheSelection() always queries actual selection when the caller needs selected string.  However, this may be expensive and this is bad behavior for the following patch because it wants to emulate selection range until receiving next selection change notification.

Therefore, this patch makes IMContextWrapper::Selection store selected string instead of just its length like other native IME handlers

Additionally, this patch renames IMContextWrapper::mSelectedString to IMContextWrapper::mSelectedStringRemovedByComposition for making the difference between it and the new string in Selection clearer.

MozReview-Commit-ID: 3bygvW7sKf4

--HG--
extra : rebase_source : b0835b8c1607ecd647444a4d984980943a6fd570
2017-06-27 02:46:08 -07:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Nicholas Nethercote 58786e1ea7 Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
Carsten "Tomcat" Book 8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00
Bill McCloskey 6b3e84ed5f Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
David Anderson eda24ede27 Rename LayerManager::Composite to LayerManager::ScheduleComposite. (bug 1365879 part 17, r=mattwoodrow) 2017-06-20 01:17:21 -07:00
Carsten "Tomcat" Book ea1b86680c Backed out changeset 9846de3bd954 (bug 1372405)
--HG--
extra : rebase_source : 5d4a48e8ec394c329994689d938d2a6e9b2752b0
2017-06-20 08:27:02 +02:00
Bill McCloskey 4592152411 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
Alexis Beingessner adb013669b Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-13 11:00:10 -04:00
Henri Sivonen 432653453a Bug 1261841 part 2 - Use encoding_rs instead of uconv. r=emk,mystor.
MozReview-Commit-ID: 15Y5GTX98bv
2017-06-13 13:23:23 +03:00
Sebastian Hengst f3bf820bfd Backed out changeset 3d1ce85e6348 (bug 1088760) for bustage, at least on Android at layout/generic/nsPluginFrame.cpp:1612. r=backout 2017-06-13 00:30:03 +02:00
Alexis Beingessner c75211cb95 Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-12 17:32:48 -04:00
L. David Baron 88370e02d1 Bug 1367576 - Make IsWidgetStateSafe not truncate the bits that it needs to test. r=karlt
This fix a mistake that goes back to the original code from bug 174585
(gecko-dev 9611b23530, 2005-08-20).

(This makes me wonder how important the code is in the first place if it
didn't work correctly.)

MozReview-Commit-ID: B6q0o5n5hDw
2017-06-06 22:27:18 -07:00
L. David Baron e04a5a47c6 Bug 1367576 - Shrink existing caches to the size that's actually needed. r=karlt
Now that, thanks to bug 1367577, we have the theme constants in an enum,
we can make these arrays smaller rather than assuming that the constants
might use any valid uint8_t value.

MozReview-Commit-ID: A6GjTarVurc
2017-06-06 22:27:18 -07:00
L. David Baron d1ddf5e48e Bug 1367576 - Cache results of getting GTK widget borders. r=karlt
See comments in the header file.

This also clears out mSafeWidgetStates in ThemeChanged since that seems
like a good thing to do, and marks nsNativeThemeGTK as final.

MozReview-Commit-ID: 5Zne4eGbGlh
2017-06-06 22:27:18 -07:00
L. David Baron ee1674ecc5 Bug 1367576 - Refactor to allow for caching of some gtk widget padding/border results. r=karlt
This refactors the two nearly-identical callsites into a method so that
I can do caching in that method in the next patch.

Note that there was a slight difference between them in that the
aWidgetFlags parameter to GetGtkWidgetAndState was only passed from one
callsite.  However, given that the aState parameter is null, this
doesn't cause any behavior differences.  (Some controls in
GetGtkWidgetAndState null-check aWidgetFlags and some don't!)

Note also that this makes it always assign a result (often zero).  This
is fine for both callsites; GetWidgetPadding previously assigned zero
right before the call, and GetWidgetBorder did so at the start of the
function (and wasn't modified in between, since it was immediately
before the switch that the modified code is a case in).

MozReview-Commit-ID: IKurwry3UTi
2017-06-06 22:27:17 -07:00
L. David Baron 06ad92ffc6 Bug 1367576 - Remove unused ishtml parameter to moz_gtk_get_widget_border. r=karlt
This was needed for the (now-unused) GTK2 version of the code.

MozReview-Commit-ID: GocgC4OZ76p
2017-06-06 22:27:17 -07:00
Chris H-C c57d39227d bug 546387 - Don't try to set the GTK clipboard with null items r=karlt
It causes an assert failure in gtk which prints to the console.

MozReview-Commit-ID: A4106Z4rT36

--HG--
extra : rebase_source : 642c94a95cfa3939bc475e9139ee63caa78e3005
2017-05-26 11:50:13 -04:00
Karl Tomlinson 94ab0b4d5c Bug 1368597 label CompositorWidget and WindowSurface as Graphics BUG_COMPONENT r=rhunt
--HG--
extra : rebase_source : 5f2cf496030a5736424e66be1a3b8a53188d5e22
2017-05-30 14:29:22 +12:00
Martin Stransky 5f9fc84d1a Bug 1364355 - Implement UpdateOpaqueRegion() by gdk_window_set_opaque_region(), r=karlt
MozReview-Commit-ID: 50N99ZlvFUh

--HG--
extra : rebase_source : d095f93a858271c8a622f127724b06246e9f4bf9
2017-05-26 21:27:32 +02:00
Martin Stransky 0d7ee0c159 Bug 1364355 - Add support for using ARGB windows with OMTC when an X11 compositor is active. r=karlt
Authored by Andrew Comminos <andrew@comminos.com>

MozReview-Commit-ID: FIQBHSXgjMh

--HG--
extra : rebase_source : 1ae73bed3b2b933d11803ae3b93afbf3d1e1f570
2017-06-01 11:28:50 +02:00
Andrew Comminos 302c93427f Bug 1364355 - Enable argb visual for GTK window behind hidden preference mozilla.widget.use-argb-visuals, r=karlt
This preference is default to false and allows to experiment with transparent widgets on Gtk.
Original patch autor is Andrew Comminos <andrew@comminos.com>.

MozReview-Commit-ID: JZkCjBWny3m

--HG--
extra : rebase_source : 116c4977d7d7f3927e6a4df203584d8b9c9ad57b
2017-05-25 15:45:22 +02:00
Phil Ringnalda c3d89ab945 Backed out 3 changesets (bug 1364355) for timeouts in test_panel_anchoradjust.xul
Backed out changeset 7cc2790574dc (bug 1364355)
Backed out changeset 2ee6598089a3 (bug 1364355)
Backed out changeset c4c2645ca8b7 (bug 1364355)

MozReview-Commit-ID: 5JEGvHeCWIv
2017-05-26 20:30:45 -07:00
Martin Stransky eb881749c2 Bug 1364355 - Implement UpdateOpaqueRegion() by gdk_window_set_opaque_region(), r=karlt
MozReview-Commit-ID: 50N99ZlvFUh

--HG--
extra : rebase_source : 63bcdeaa5f7129a9f0d171d9826f33b8dc6bbe34
2017-05-26 21:27:32 +02:00
Martin Stransky 3d05b54851 Bug 1364355 - Add support for using ARGB windows with OMTC when an X11 compositor is active. r=karlt
Authored by Andrew Comminos <andrew@comminos.com>

MozReview-Commit-ID: FIQBHSXgjMh

--HG--
extra : rebase_source : 22885a2846ec0bc718196d6e16bacb37b0410b25
2017-05-25 15:55:20 +02:00
Andrew Comminos f2d7adfe22 Bug 1364355 - Enable argb visual for GTK window behind hidden preference mozilla.widget.use-argb-visuals, r=karlt
This preference is default to false and allows to experiment with transparent widgets on Gtk.
Original patch autor is Andrew Comminos <andrew@comminos.com>.

MozReview-Commit-ID: JZkCjBWny3m

--HG--
extra : rebase_source : 18a3dd1ecb2ef87910307e3085a343a4d75403af
2017-05-25 15:45:22 +02:00
Mats Palmgren 297b9d70e1 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz
MozReview-Commit-ID: IbwWM0FL6HF

--HG--
extra : source : bbb688fe1ba3f5201a190c6e25b693ef7272ea2d
2017-05-21 17:15:00 +08:00
Carsten "Tomcat" Book 00d4ea331d Backed out changeset bbb688fe1ba3 (bug 1365614) 2017-05-22 15:45:31 +02:00
Mats Palmgren e706869580 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz 2017-05-21 17:15:00 +08:00
Ryan VanderMeulen 96eca59299 Merge m-c to autoland. a=merge 2017-05-19 12:26:48 -04:00
Masayuki Nakano 872f694c63 Bug 1339543 part 4 Change nsIWidget::ExecuteNativeKeyBinding() to nsIWidget::GetEditCommands() which just retrieves edit commands for the type r=smaug
Now, nsIWidget::ExecuteNativeKeyBinding() isn't used by anybody for executing
edit commands.  Instead, they need array of edit commands for the key
combination.  So, the method should be renamed to GetEditCommands() and just
return edit commands as an array.

MozReview-Commit-ID: 4G0B1lJ8Lbe

--HG--
extra : rebase_source : 4a5829281d59677c773950c34d91a1cd8074d243
2017-05-19 17:49:41 +09:00
Karl Tomlinson 606fb957aa bug 1319650 draw tab gap with tabpanel style context r=stransky+263117
This is more consistent with moz_gtk_tabpanels_paint() and avoids
modifying the tab style context.

MozReview-Commit-ID: HpKSVrpvO9b

--HG--
extra : rebase_source : f4d4da5dc8419671c8c27586f7b370837311744b
2016-11-29 18:50:20 +13:00
Karl Tomlinson fb0c2feb3e bug 1319650 mimic gtk_style_context_save() in WidgetStyleCache with a new context r=stransky+263117
This makes balancing with gtk_style_context_restore()/ReleaseStyleContext()
unnecessary, and the style resolution cached in the style contexts is not
invalidated so frequently.

MozReview-Commit-ID: BKwyqoQsjv2

--HG--
extra : rebase_source : 4733d66f8265007555cc17568033ece09e6cb2dc
2016-12-02 12:39:23 +13:00
Karl Tomlinson ff46e3c8cb bug 1362170 force a style resolution on context creation to set GTK 3.4 theming_engine r=stransky+263117
This works around a GTK bug that led to the default engine being used instead
for the first draw.

MozReview-Commit-ID: 4r48HNUgVBE

--HG--
extra : rebase_source : 83a964e02dba97cb0b52acde6b692d241c03ed57
2016-12-14 19:22:28 +13:00
Brendan Dahl a071a0f003 Bug 1356681 - Expand headless mode support for linux. r=automatedtester,jrmuizel,kanru
Full Firefox on Linux can now be run with a --headless flag.
This includes seven parts:
1) Running all marionette tests in headless mode.
2) Prevents crashes where Firefox calls into GTK.
3) Adds a headless screen helper which supports changing the headless
screen size with the environment variables MOZ_HEADLESS_WIDTH and
MOZ_HEADLESS_HEIGHT.
4) Supports simulating moving a headless window.
5) Adds a stubbed out nsSound implementation.
6) Supports simulating size mode changes of headless windows.
7) Adds the --headless flag for Firefox.
2017-05-18 17:47:10 -07:00
Brendan Dahl 0dd2fb109f Bug 1353938 - Add a basic clipboard for headless.
Adds a headless clipboard that supports copying
and pasting text.
2017-04-21 15:21:51 -07:00
Sebastian Hengst d8496d0a1f merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: EjT9dcum69m
2017-04-14 23:56:10 +02:00
Joel Maher 99137683e9 Bug 1355089 - add BUG_COMPONENT to widget/* files. r=mstange,jimm
MozReview-Commit-ID: 49Ug2HTqHnf
2017-04-14 05:54:36 -04:00
Masatoshi Kimura 7e1158fd16 Bug 1356023 - Remove nsIScreenManager.systemDefaultScale. r=jfkthame
MozReview-Commit-ID: 6Ha8XrJBSiU

--HG--
extra : rebase_source : a83a64acf01dc9d1a0593c0ddbff76f74809a79b
2017-04-13 07:20:35 +09:00
Wes Kocher 514e230373 Merge inbound to central, a=merge 2017-04-13 17:24:01 -07:00
Kartikaya Gupta b4341d2689 Merge m-c to graphics
MozReview-Commit-ID: EGaA6e4loBM
2017-04-13 11:08:02 -04:00
Kartikaya Gupta aa20d100c1 Merge m-c to graphics
MozReview-Commit-ID: Ij5C7MUete4
2017-04-11 10:09:54 -04:00
sotaro 292e80ffe3 Bug 1354474 - Add FlushRendering() and Composite() support to WebRenderLayerManager r=mattwoodrow 2017-04-10 15:58:29 +09:00
Brendan Dahl b082e33320 Bug 1353939 - Disable drag service in headless mode. r=jrmuizel
Drag service calls into GTK causing a crash in headless mode.
2017-04-10 11:30:52 -07:00
Lee Salzman 2b00b214b7 Bug 1354619 - allow nsWindow::SetTransparencyMode when it preserves current mode. r=mconley
MozReview-Commit-ID: FEqPTGlpbjE
2017-04-12 16:36:20 -04:00
Masatoshi Kimura 6d0441a40a Bug 1352773 - Take into account DefaultScaleOverride in Screen::GetDefaultCSSScaleFactor. r=kanru
MozReview-Commit-ID: EJidy1NH3DX

--HG--
extra : rebase_source : d095c493de0acdd12cebc61b47d406a9547601ed
2017-04-05 22:11:34 +09:00
Masayuki Nakano 61ce5526c6 Bug 1296220 Rename nsIMEUpdatePreference to mozilla::widget::IMEUpdatePreference r=m_kato
MozReview-Commit-ID: 2rIXTlwA6my

--HG--
extra : rebase_source : a51be3edd717092738c2b5e8ccc4f60540712bfd
2017-04-11 21:24:55 +09:00
Martin Stransky 4e48986e78 Bug 1353147 - Allow Gtk+ theme override, r=karlt
Allow to override Gtk+ theme for content process when e10s is enabled.

MozReview-Commit-ID: 1Kd2jLpBavA

--HG--
extra : rebase_source : b45171954ed9168e9d46511d53800044d91e5558
2017-04-04 22:30:12 +02:00
Mike Conley 2a1794a4f5 Bug 1344839 - Don't allow transparent top-level windows on GTK. r=karlt
MozReview-Commit-ID: 9UP1UYcaF2F

--HG--
extra : rebase_source : 9a47973c5127561b82d2ec9dc19b86459f7c1936
2017-03-21 22:15:36 -04:00
Brendan Dahl a1f2e12af8 Bug 1338004 - Add headless browser mode. r=jrmuizel, r=ted
Supports creating a windowless browser on Linux without an X server. Most of the
changes are just adding branches to avoid calls in to GTK which calls
into X. Some of the bigger additions were adding a separate headless widget
which implements just enough to render a page. A headless look and
feel were also added since there are many calls into GTK in the platform
specific one.
2017-04-04 10:22:00 -04:00
Wes Kocher 734b25e05c Merge m-c to inbound, a=merge 2017-04-03 14:51:06 -07:00
Martin Stransky 5141ddceb3 Bug 1158076 - postpone nsLookAndFeel module initialization, r=karlt
MozReview-Commit-ID: JY83xiXT1xf

--HG--
extra : rebase_source : a936ca56024f4e5c75830e492038ac2ca1a218ae
2017-03-30 15:03:50 +02:00
Martin Stransky 55a8aace48 Bug 1158076 - add prefs to enable GTK dark themes in each process, r=karlt
Add two new prefs (widget.chrome.allow-gtk-dark-theme and widget.content.allow-gtk-dark-theme) to enable dark
themes in chrome and content when e10s is enabled.

When e10s is disabled then widget.chrome.allow-gtk-dark-theme controls both chrome and web content settings.

That may be a bit confusing but it's going to be here for two releases only (Firefox 57 is going to have e10s enabled by default) and actually matches recent state when only one ENV pref is used for both chrome and web content.

The existing MOZ_ALLOW_GTK_DARK_THEME environment variable is still considered, but, now is like widget.chrome.allow-gtk-dark-theme, no longer affecting separate content processes.

MozReview-Commit-ID: CCwriA66CNj

--HG--
extra : rebase_source : 93e9a504af3e7570f82ddaf0890e374fe939e919
2017-03-31 10:40:07 +02:00
Kan-Ru Chen 3fd811aea7 Bug 1351630 - Override BaseWidget::GetWidgetScreen r=karlt
GetScreenBounds() is slow for the GTK port so we override and use
mBounds directly in nsWindow::GetWidgetScreen()

MozReview-Commit-ID: ICElOCEzswf

--HG--
extra : rebase_source : 2fb450cc9d933346cebfdbff0b32ea4130550395
2017-03-30 09:51:44 -04:00
Kan-Ru Chen 21b3e0be8d Bug 1351246 - Check gdk_screen_get_default() for X. r=karlt
MozReview-Commit-ID: FJr7tdu1Rsp

--HG--
extra : rebase_source : 4daa2218f57b86a2fcb9f6b3f582bae7dd65b4a4
2017-03-29 08:29:58 -04:00
Sebastian Hengst 9ab0e7db64 Backed out changeset aaaf793a4dd0 (bug 1344839) for permafailing test_leaf_layers_partition_browser_window.xul on Windows 8 x64 debug. r=backout 2017-03-29 01:19:04 +02:00
Mike Conley 87f33a89ed Bug 1344839 - Don't allow transparent top-level windows on GTK. r=karlt
MozReview-Commit-ID: 9UP1UYcaF2F

--HG--
extra : rebase_source : 33b5aa13466e642e335a0653f9f436bb64648c42
2017-03-21 22:15:36 -04:00
Gaith aaaabee676 Bug 1219464 - Replace PRLogModuleInfo usage with LazyLogModule in widget/. r=erahm
MozReview-Commit-ID: Ge7I8YlNqgM
2016-05-18 22:55:42 +03:00
Karl Tomlinson a1f02152df bug 1343802 draw trough centered instead of filling the scrollbar r=jhorak+328198
to follow the behavior of version 3.20 GtkRange's contents_gadget.

MozReview-Commit-ID: BQE6mQqsan8
2017-03-27 20:32:55 +02:00
Karl Tomlinson a230b9ad53 bug 1343802 consider scrollbar trough min-width/min-height properties r=jhorak+328198
in determining breadth of trough and scrollbar.

MozReview-Commit-ID: 3orNXdv6uZh
2017-03-27 20:32:51 +02:00
Karl Tomlinson e9f17ddd35 bug 1343802 swap vertical scrollbar button dimensions for horizontal scrollbars r=jhorak+328198
MozReview-Commit-ID: 4fK0hFRWn1p
2017-03-27 20:32:47 +02:00
Karl Tomlinson a9e3d6db57 bug 1343802 adjust scrollbar track border to prevent thumb expanding to fill available breadth r=jhorak+328198+328198
MozReview-Commit-ID: 7KJGnds0ngL
2017-03-27 20:32:42 +02:00
Karl Tomlinson 35bae617b5 bug 1343802 update notebook_has_tab_gap and scrollbar metrics after theme changes r=jhorak+328198
MozReview-Commit-ID: IRPXNwLe5Ey
2017-03-27 20:32:38 +02:00
Karl Tomlinson b1ce163df0 bug 1343802 remove have_arrow_scaling, which was always true r=jhorak+328198
MozReview-Commit-ID: AeM2oKoPCTs
2017-03-27 20:32:33 +02:00
Karl Tomlinson 577cadd9fb bug 1343802 remove moz_gtk_get_scrollbar_widget() r=jhorak+328198
This was used with GTK2, but is now unnecessary as discussed in bug 1278282.

moz_gtk_init() is now called from only one place and so will be called only
once.

MozReview-Commit-ID: 2KwJop6qsV9
2017-03-27 20:32:29 +02:00
Karl Tomlinson 4a203a1408 bug 1343802 calculate scrollbar metrics in one place r=jhorak+328198
Changes in behavior are intended to be minimal, but this adds distinct
metrics for horizontal and vertical scrollbars even with GTK versions < 3.20.

Updates on theme changes will be restored in a subsequent patch.

MozReview-Commit-ID: 4vi2nKxCxW7
2017-03-27 20:32:25 +02:00
Karl Tomlinson 1703a0f492 bug 1343802 remove code for native scrollbar thumb border sizes r=jhorak+328198
There is no need to calculate thumb borders because thumb border-box sizes are
determined with GetMinimumWidgetSize, which includes GTK margin, border, and
padding, and the interior border width is irrelevant because thumbs have no
children.

MozReview-Commit-ID: K2N2RBJBRsB
2017-03-27 20:32:20 +02:00
Karl Tomlinson 2af68f54bd bug 1343802 remove unused moz_gtk_enable_style_props r=jhorak+328198
MozReview-Commit-ID: KbAIRCyqmJ8
2017-03-27 20:32:16 +02:00
Sebastian Hengst 334b8a2719 Backed out changeset bc81d40f3290 (bug 1343802) for likely causing bug 1350875 and reviving bug 1332040. r=backout 2017-03-27 18:01:58 +02:00
Sebastian Hengst b3e4da9f67 Backed out changeset 5dc7564d651b (bug 1343802) 2017-03-27 18:00:23 +02:00
Sebastian Hengst 579ea8c74c Backed out changeset 8c45140a2819 (bug 1343802) 2017-03-27 18:00:18 +02:00
Sebastian Hengst 9baf1aac8b Backed out changeset af279778b154 (bug 1343802) 2017-03-27 18:00:14 +02:00
Sebastian Hengst 2fe77fa5ac Backed out changeset 88ea23ae0627 (bug 1343802) 2017-03-27 18:00:10 +02:00
Sebastian Hengst 0dd66abf1e Backed out changeset 45330fa58671 (bug 1343802) 2017-03-27 18:00:05 +02:00
Sebastian Hengst 34f0350a5c Backed out changeset 9abd87cd2dff (bug 1343802) 2017-03-27 18:00:01 +02:00
Sebastian Hengst d2abc82e65 Backed out changeset 7abbf6d092eb (bug 1343802) 2017-03-27 17:59:56 +02:00
Sebastian Hengst 80796b26f5 Backed out changeset 22f4dc6bb4db (bug 1343802) 2017-03-27 17:59:52 +02:00
Sebastian Hengst 18de691a0f Backed out changeset db84a68eaaec (bug 1343802) 2017-03-27 17:59:48 +02:00
Kan-Ru Chen 824adc9354 Bug 1194751 - Part 5. Implement ScreenHelperGTK and delete old nsScreenManagerGtk/nsScreenGtk. r=karlt
ScreenHelperGTK is the platform dependent part of the original
nsScreenManagerGtk and nsScreenGtk. It registers monitors-changed
event listener from gtk and pushes updates to ScreenManager. See patch
part 4. for how ScreenManager works.

MozReview-Commit-ID: KBo7ZLFTjM3

--HG--
rename : widget/gtk/nsScreenManagerGtk.cpp => widget/gtk/ScreenHelperGTK.cpp
rename : widget/gtk/nsScreenManagerGtk.h => widget/gtk/ScreenHelperGTK.h
extra : rebase_source : 5607e31b62c928934cc45df7b2212428fbfd79c1
2017-03-09 19:29:44 +08:00
Kan-Ru Chen 841c421ce8 Bug 1194751 - Part 1. Remove nsIScreenManager::GetNumberOfScreens. r=jimm
It's not used anywhere. Remove it will make removing PScreenManager
easier.

MozReview-Commit-ID: 5dn8kDhTZVl

--HG--
extra : rebase_source : 96b8ddb18deee94ca256bfa118b60ceacfd2d677
2017-03-09 19:16:24 +08:00
Karl Tomlinson 4cf270684e bug 1343802 draw trough centered instead of filling the scrollbar r=jhorak+328198
to follow the behavior of version 3.20 GtkRange's contents_gadget.

MozReview-Commit-ID: BQE6mQqsan8

--HG--
extra : rebase_source : ee0f35da45f3da2248f50ee925fb7f8e9b848636
2017-03-23 18:17:49 +13:00
Karl Tomlinson 36050a07d8 bug 1343802 consider scrollbar trough min-width/min-height properties r=jhorak+328198
in determining breadth of trough and scrollbar.

MozReview-Commit-ID: 3orNXdv6uZh

--HG--
extra : rebase_source : ad840ac199569da2e2fed7aa5e37ecc48a022fe2
2017-03-22 15:53:49 +13:00
Karl Tomlinson cb62e93514 bug 1343802 swap vertical scrollbar button dimensions for horizontal scrollbars r=jhorak+328198
MozReview-Commit-ID: 4fK0hFRWn1p

--HG--
extra : rebase_source : 5342134f69a210f2afdcd835dbb4bbbde429b506
2017-03-21 20:50:36 +13:00
Karl Tomlinson 2e7cb463b0 bug 1343802 adjust scrollbar track border to prevent thumb expanding to fill available breadth r=jhorak+328198+328198
MozReview-Commit-ID: 7KJGnds0ngL

--HG--
extra : rebase_source : c14cb16e27423f2887348d392c7c37f1aa02082a
2017-03-23 18:31:16 +13:00
Karl Tomlinson d25338e822 bug 1343802 update notebook_has_tab_gap and scrollbar metrics after theme changes r=jhorak+328198
MozReview-Commit-ID: IRPXNwLe5Ey

--HG--
extra : rebase_source : 1b8a8691b793380421fc01e439050125fdfd71f2
2017-03-21 17:27:41 +13:00
Karl Tomlinson bf65720820 bug 1343802 remove have_arrow_scaling, which was always true r=jhorak+328198
MozReview-Commit-ID: AeM2oKoPCTs

--HG--
extra : rebase_source : f2013b07ff2f344107fac5e21ac491953f38ecc4
2017-03-21 17:12:34 +13:00
Karl Tomlinson 62cb3af124 bug 1343802 remove moz_gtk_get_scrollbar_widget() r=jhorak+328198
This was used with GTK2, but is now unnecessary as discussed in bug 1278282.

moz_gtk_init() is now called from only one place and so will be called only
once.

MozReview-Commit-ID: 2KwJop6qsV9

--HG--
extra : rebase_source : 5649f34914f03f8285eeaad7937d1ecab853649d
2017-03-21 17:14:55 +13:00
Karl Tomlinson 1acd8cdab1 bug 1343802 calculate scrollbar metrics in one place r=jhorak+328198
Changes in behavior are intended to be minimal, but this adds distinct
metrics for horizontal and vertical scrollbars even with GTK versions < 3.20.

Updates on theme changes will be restored in a subsequent patch.

MozReview-Commit-ID: 4vi2nKxCxW7

--HG--
extra : rebase_source : 5e968126af00a7c1ff0a45d2ba3b46a0a20424be
2017-03-23 18:23:26 +13:00
Karl Tomlinson 713232a30d bug 1343802 remove code for native scrollbar thumb border sizes r=jhorak+328198
There is no need to calculate thumb borders because thumb border-box sizes are
determined with GetMinimumWidgetSize, which includes GTK margin, border, and
padding, and the interior border width is irrelevant because thumbs have no
children.

MozReview-Commit-ID: K2N2RBJBRsB

--HG--
extra : rebase_source : c750cdf9c9722f7796c89b8083bf2bfd32fffcbb
2017-03-08 18:24:19 +13:00
Karl Tomlinson 8abe43df06 bug 1343802 remove unused moz_gtk_enable_style_props r=jhorak+328198
MozReview-Commit-ID: KbAIRCyqmJ8

--HG--
extra : rebase_source : 4b468d9b6bab63a69df389d1a7624272f9ec1a43
2017-03-06 17:19:26 +13:00
Mats Palmgren 2feec4025d Bug 1333482 part 5 - [css-ui] Enable '-moz-appearance' support for some tests. r=dholbert
* * *
[mq]: sssssssss

MozReview-Commit-ID: 4wgnjld1rDt
2017-03-23 22:11:23 -07:00
Karl Tomlinson b969855019 bug 1346961 draw opaque scrollbar background on outermost scrollbar element even for GTK versions >= 3.20 r=jhorak+328198
MozReview-Commit-ID: BHsD1h4UQbs

--HG--
extra : rebase_source : 56cb7f915cfe1237375e735ca4e41826ac890c82
2017-03-16 18:02:27 +13:00
Carsten "Tomcat" Book c1edc7067d merge mozilla-inbound to mozilla-central a=merge 2017-03-13 15:22:26 +01:00
Masayuki Nakano fee81e4718 Bug 1338369 part.2 nsWindow for GTK should consume Shift key state of eContextMenu event if it's caused by Shift+F10 r=karlt,smaug
Shift+F10 is also well-known shortcut key on Linux.  So, it should behave same as pressing ContextMenu key.  So, for allowing web page to prevent its default, nsWindow for GTK needs to consume Shift key state at dispatching eContextMenu key.

Additionally, we should allow to open context menu with Shift+ContextMenu because only ContextMenu key press can be prevented its default by web page.  Therefore, we should allow users to open context menu even with keyboard even if web content doesn't want it.

Note that Ctrl+Shift+F10 or Alt+Shift+F10 should behave same as Shift+ContextMenu key, but we should discuss later.

MozReview-Commit-ID: 1mPGKMTsrkv

--HG--
extra : rebase_source : 75dd8333b24f5e2f4ded4414b5e5ee85de253cc7
2017-03-09 18:53:24 +09:00
Stone Shih 229b4ba331 Bug 606885 - Fire drag events with keyboard modifiers. r=enn
--HG--
extra : rebase_source : c6e4ac37ea2397d86368cb59b0a68aa3a9f43d79
2017-02-17 11:29:42 +08:00
Andy Kluger be28304603 Use GTK cursors for zoom-in or zoom-out css cursors (bug 1328724) r=karlt
get_gtk_cursor attempts to use themed cursor icons for most css cursor types,
but left these two out. Now it will try to use the theme for these as well,
and fall back to the generic FF set used previously.

MozReview-Commit-ID: 9QHV0mc5AxK

--HG--
extra : rebase_source : c03d01f6dc3a30a8f16def9f95cee14d18f7a8a1
2017-03-08 01:28:47 -05:00
Carsten "Tomcat" Book 78ac0ceba9 merge mozilla-inbound to mozilla-central a=merge 2017-03-08 16:59:42 +01:00
Jim Chen 53a1107cd1 Bug 1343075 - Use GeckoEditableSupport from PuppetWidget; r=masayuki r=rbarker r=snorp r=esawin
Bug 1343075 - 1a. Add TextEventDispatcherListener::GetIMEUpdatePreference; r=masayuki

Add a GetIMEUpdatePreference method to TextEventDispatcherListener to
optionally control which IME notifications are received by NotifyIME.
This patch also makes nsBaseWidget forward its GetIMEUpdatePreference
call to the widget's native TextEventDispatcherListener.

Bug 1343075 - 1b. Implement GetIMEUpdatePreference for all TextEventDispatcherListener; r=masayuki

This patch implements GetIMEUpdatePreference for all
TextEventDispatcherListener implementations, by moving previous
implementations of nsIWidget::GetIMEUpdatePreference.

Bug 1343075 - 2. Allow setting a PuppetWidget's native TextEventDispatcherListener; r=masayuki

In PuppetWidget, add getter and setter for the widget's native
TextEventDispatcherListener. This allows overriding of PuppetWidget's
default IME handling. For example, on Android, the PuppetWidget's native
TextEventDispatcherListener will communicate directly with Java IME code
in the main process.

Bug 1343075 - 3. Add AIDL interface for main process; r=rbarker

Add AIDL definition and implementation for an interface for the main
process that child processes can access.

Bug 1343075 - 4. Set Gecko thread JNIEnv for child process; r=snorp

Add a JNIEnv* parameter to XRE_SetAndroidChildFds, which is used to set
the Gecko thread JNIEnv for child processes. XRE_SetAndroidChildFds is
the only Android-specific entry point for child processes, so I think
it's the most logical place to initialize JNI.

Bug 1343075 - 5. Support multiple remote GeckoEditableChild; r=esawin

Support remote GeckoEditableChild instances that are created in the
content processes and connect to the parent process GeckoEditableParent
through binders.

Support having multiple GeckoEditableChild instances in GeckoEditable by
keeping track of which child is currently focused, and only allow
calls to/from the focused child by using access tokens.

Bug 1343075 - 6. Add method to get GeckoEditableParent instance; r=esawin

Add IProcessManager.getEditableParent, which a content process can call
to get the GeckoEditableParent instance that corresponds to a given
content process tab, from the main process.

Bug 1343075 - 7. Support GeckoEditableSupport in content processes; r=esawin

Support creating and running GeckoEditableSupport attached to a
PuppetWidget in content processes.

Because we don't know PuppetWidget's lifetime as well as nsWindow's,
when attached to PuppetWidget, we need to attach/detach our native
object on focus/blur, respectively.

Bug 1343075 - 8. Connect GeckoEditableSupport on PuppetWidget creation; r=esawin

Listen to the "tab-child-created" notification and attach our content
process GeckoEditableSupport to the new PuppetWidget.

Bug 1343075 - 9. Update auto-generated bindings; r=me
2017-03-07 22:34:39 -05:00
Nitish 600629af0a Bug 1334795 - nsWindow.cpp: remove two redundant return statements at the ends of functions with void return type. r=karlt
MozReview-Commit-ID: G4X2vXT6Eam

--HG--
extra : rebase_source : 98833d7161e29711da6a7f4e60458eec9fa9f3b2
2017-01-29 14:33:14 +05:30
Wes Kocher e84fc624ff Merge inbound to central, a=merge
MozReview-Commit-ID: DpCZgRV1csS
2017-02-24 16:46:12 -08:00
Benjamin Smedberg e2482f716f Bug 1338172 part E - make all the PPluginWidget stuff Windows-only. Rip out the GTK-specific native widget support from widget/gtk/nsWindow and elsewhere, r=jimm
MozReview-Commit-ID: J6E8sYcyX4U

--HG--
extra : rebase_source : 63aa9d4a603a7cc56e068ce05434fb7faceac751
extra : source : 9ee6c6f4e59c7967108a727a80e46d686b983a0b
2017-02-09 11:53:50 -05:00
Martin Stransky c707dad541 Bug 1335705 - For Gtk > 3.20 determine scale trough size from trough CSS node and also add border/padding/margin, r=karlt
MozReview-Commit-ID: BhS9xkagvMp

--HG--
extra : amend_source : 9629956a6b06defb8275ee3ab36d2438968c0202
2017-02-22 11:56:28 +01:00
Martin Stransky c5b2ec652e Bug 1335705 - Consider also margin when determine range widget slider size, r=karlt
MozReview-Commit-ID: 49UgRJFjvns

--HG--
extra : rebase_source : 680b47b4a346b65ea3cc6c6652b36e5f5def6e9a
2017-02-23 10:52:55 +01:00
Martin Stransky b70e5069a9 Bug 1341296 - Move mozcontainer.c to cpp file, r=karlt
MozReview-Commit-ID: 2n18VlOMQod

--HG--
rename : widget/gtk/mozcontainer.c => widget/gtk/mozcontainer.cpp
extra : rebase_source : c463aff90a88c37c1fe5ba52b2b0c2a588df8f92
2017-02-22 09:49:54 +01:00
Lee Salzman 2f0c246fb8 Bug 1335827 - clean gtk window's surface provider before it gets destroyed. r=karlt
MozReview-Commit-ID: 5Aahub11ZRF
2017-02-21 10:16:14 -05:00
James Pearson 86efc730ec Bug 1333720 - Support Unknown/Unsupported widget type 13 and 17. r=karlt
--HG--
extra : rebase_source : 352781ae7ea9a890de752045923c86718abf763f
2017-02-17 09:58:00 -05:00
Tom Tromey 5f8f360823 Bug 1060419 - make log_print use Printf.h, r=froydnj
MozReview-Commit-ID: BIZ1GQEZ1vs

--HG--
extra : rebase_source : 2f1f0aa12493c44f352d9a7e8683e7bb72d2d75b
2016-12-15 20:16:31 -07:00
Nicholas Nethercote 334f89c567 Bug 1339327 (part 5) - Rename some profiler functions related to sleeping. r=mstange.
The new names make it clearer that these actions apply to just one thread.

- profiler_sleep_start() --> profiler_thread_sleep()
- profiler_sleep_end()   --> profiler_thread_wake()
- profiler_is_sleeping() --> profiler_thread_is_sleeping()
- GeckoProfilerSleepRAII --> GeckoProfilerThreadSleepRAII
- GeckoProfilerWakeRAII  --> GeckoProfilerThreadWakeRAII
2017-02-15 14:26:23 +11:00
Wes Kocher 4468d77e14 Backed out 5 changesets (bug 1338172) for linux crashtest failures a=backout
Backed out changeset 9ee6c6f4e59c (bug 1338172)
Backed out changeset 1c92fbfca20a (bug 1338172)
Backed out changeset 907d9c3d1043 (bug 1338172)
Backed out changeset e4994ab9d628 (bug 1338172)
Backed out changeset 6209f07e1f26 (bug 1338172)

MozReview-Commit-ID: 3f4xBRcGPqM
2017-02-14 14:31:54 -08:00
Benjamin Smedberg dc59402254 Bug 1338172 part E - make all the PPluginWidget stuff Windows-only. Rip out the GTK-specific native widget support from widget/gtk/nsWindow and elsewhere, r=jimm
MozReview-Commit-ID: J6E8sYcyX4U

--HG--
extra : rebase_source : 18a7bd7d5180606201d93a25c766df7285405094
extra : histedit_source : ae893f87b074a7a17a0e56f835977fea074f25e8
2017-02-09 11:53:50 -05:00
Kartikaya Gupta 96c394d70c Merge m-c to graphics
MozReview-Commit-ID: AXRXwXgkOTv
2017-02-10 13:57:53 -05:00
Masayuki Nakano 5442d350f3 Bug 1337739 Create an enum eKeyLocation* for avoiding to use nsIDOMKeyEvent::DOM_KEY_LOCATION_* r=smaug
Currently, we use alias NS_VK_* for WidgetKeyboardEvent::mKeyCode.  Similarly, we should create alias enum for nsIDOMKeyEvent::DOM_KEY_LOCATION_*.  Then, we can reduce the length and avoid to include nsIDOMKeyEvent in some cpp files.

MozReview-Commit-ID: 5cs4zQ061Lc

--HG--
extra : rebase_source : e6a6edd27718b9e3d4a40b07902d029791876999
2017-02-08 21:04:22 +09:00
Kartikaya Gupta ca041b7c5a Merge m-c to graphics
MozReview-Commit-ID: FOyS87VawTT
2017-01-25 08:52:04 -05:00