Commit Graph

2685 Commits

Author SHA1 Message Date
Wes Kocher
d8985b6e57 Merge inbound to central, a=merge
MozReview-Commit-ID: IUFdbLdYFhX
2017-10-04 16:37:59 -07:00
Masayuki Nakano
5726ada8a0 Bug 1404206 - Part 2: Make TSFTextStore and IMEHandler handle "mozAwesomebar" inputmode value. r=m_kato, r=gijs
When "mozAwesomebar" is set to inputmode value, that means that the Smart
Location Bar gets focus.  In that case, we should notify IME of input scopes
as "URL" because on-screen keyboard for URL has some useful additional keys
but they are not hindrances even when users want to type non-URL text.

On the other hand, MS-IME for Japanese and Google Japanese Input changes their
open state to "closed" if we notify them of URL input scope.  A lot of users
complain about this behavior.  Therefore, we should notify only them of
"Default" input scope even when "mozAwesomebar" has focus.

MozReview-Commit-ID: DIgqpR7TXQx
2017-09-29 15:15:14 +09:00
Tom Ritter
c6c164aef4 Bug 1404147 Make string index and lengths unsigned to resolve signed/unsigned comparison warning r=jimm
MozReview-Commit-ID: Cpo5Gd1puzd

--HG--
extra : rebase_source : 0f47604366d2cfd8356c4d76c6dccdb03a42b0fe
2017-09-28 18:01:58 -05:00
Tom Ritter
411be7e1c2 Bug 1403825 Resolve sequence-point warning in widget/windows/TSFTextStore.cpp r=jimm
This warning is saying the operation may be undefined because the value of
->left is not guarenteed to be the same because of undefined order of operations.

Fortunately, this seems like a typo and we actually meant to assign ->bottom

MozReview-Commit-ID: H5G8fnDwIJP

--HG--
extra : rebase_source : cd6a2463a90b6675b12bb8255fe605937771bee8
2017-09-28 00:33:11 -05:00
David Parks
0601f5b64f Bug 1339259 - Hold Windows AudioSession object while recycling registration. r=jimm
When we UnregisterAudioSessionNotification in response to an OnSessionDisconnected
message, we unintentionally decrement the refcount before restoring it. This KungFu
grips us for the duration of that operation.

--HG--
extra : rebase_source : 7c7e786064811d040d23741c143d9eef04edb5e0
2017-09-28 14:28:39 -07:00
David Anderson
8610b0c3b3 Block D3D11 when using Intel drivers on Windows 7 systems with partial AVX support. (bug 1403353, r=jrmuizel) 2017-09-28 10:51:59 -07:00
Nicholas Nethercote
dfd3b7e7aa Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam.
This patch merges nsAtom into nsIAtom. For the moment, both names can be used
interchangeably due to a typedef. The patch also devirtualizes nsIAtom, by
making it not inherit from nsISupports, removing NS_DECL_NSIATOM, and dropping
the use of NS_IMETHOD_. It also removes nsIAtom's IIDs.

These changes trigger knock-on changes throughout the codebase, changing the
types of lots of things as follows.

- nsCOMPtr<nsIAtom> --> RefPtr<nsIAtom>

- nsCOMArray<nsIAtom> --> nsTArray<RefPtr<nsIAtom>>
  - Count() --> Length()
  - ObjectAt() --> ElementAt()
  - AppendObject() --> AppendElement()
  - RemoveObjectAt() --> RemoveElementAt()

- ns*Hashtable<nsISupportsHashKey, ...> -->
  ns*Hashtable<nsRefPtrHashKey<nsIAtom>, ...>

- nsInterfaceHashtable<T, nsIAtom> --> nsRefPtrHashtable<T, nsIAtom>
  - This requires adding a Get() method to nsRefPtrHashtable that it lacks but
    nsInterfaceHashtable has.

- nsCOMPtr<nsIMutableArray> --> nsTArray<RefPtr<nsIAtom>>
  - nsArrayBase::Create() --> nsTArray()
  - GetLength() --> Length()
  - do_QueryElementAt() --> operator[]

The patch also has some changes to Rust code that manipulates nsIAtom.

MozReview-Commit-ID: DykOl8aEnUJ

--HG--
extra : rebase_source : 254404e318e94b4c93ec8d4081ff0f0fda8aa7d1
2017-09-26 08:33:21 +10:00
cku
db62fce416 Bug 1401888 - Part 3. Make EMFViaExtDLLHelper inherit from PDFViaEMFPrintHelper. r=fatseng
Reuse the code in PDFViaEMFPrintHelper.
MozReview-Commit-ID: 3NAVxuv2jJH

--HG--
extra : rebase_source : 059efda5fc232ec741557b32e6956a58dff76691
2017-09-21 15:43:34 +08:00
cku
80b1379b3e Bug 1401888 - Part 2. Implement PDFiumEngineShim::GetInstanceOrNull(const nsCString&) r=fatseng
With this change, we are able to load PDFium engine from different library.
MozReview-Commit-ID: ErAZCPRzRR5

--HG--
extra : rebase_source : f0421af9c70d69564ed8f96d32870314871aabef
2017-09-21 15:22:18 +08:00
cku
59db10f1d3 Bug 1401888 - Part 1. Move PDFiumEngineShim::Init to private section. r=fatseng
MozReview-Commit-ID: KK1wAv1KoPh

--HG--
extra : rebase_source : 7a7dfd78cec1356f607f1ee421388337aa03aaf2
2017-09-21 15:16:40 +08:00
Chris Peterson
45aa2a8e8e Bug 870698 - Part 2: Replace Append("") with AppendLiteral(""). r=erahm
MozReview-Commit-ID: CrkIP4iHP1U

--HG--
extra : rebase_source : 5dc4e91a3f1860773c199f1abf3f66479218834a
extra : intermediate-source : ba51cc79847f2b43ba616f4a5d2bbc6958ca9f6d
extra : source : 1fda2fa990cc918c748ffa14fcc5dbe13fe3bdc3
2017-09-03 22:14:11 -07:00
Chris Peterson
9f4c1f5278 Bug 870698 - Part 1: Replace Assign("") with AssignLiteral(""). r=erahm
MozReview-Commit-ID: A0u9PP49OW3

--HG--
extra : rebase_source : 7d5286959f510eb4b7df1b7e32d5b9b58719c48b
extra : intermediate-source : f552b4a78236c42bc09030b3eb008725a3edb9c8
extra : source : 26ac4a1014f6661a70e3bf9f552407e12c2c3981
2017-09-03 22:12:56 -07:00
sotaro
abf683608c Bug 1294788 - Disable AssumeThemePartAndStateAreTransparent() on high contrast mode since Win8.1 r=jrmuizel
The problem happened only on themed widget. The problem was triggered by Bug 888870. It just added Windows 8.1 support. When high contrast mode was enabled on Win 10, background color problem happend on themed widgets. There were 2 patterns.
- After hover the menu item, its background color remained highlighted
- After hover the menu item, its background color became black

From it, the problem seemed to be caused by background color drawing of themed widgets. nsNativeThemeWin::DrawWidgetBackground() does the background color drawing. AssumeThemePartAndStateAreTransparent() controls skipping background color drawing of themed widgets. If AssumeThemePartAndStateAreTransparent() was removed, the problem was addressed. From it, how DrawThemeBackground() works seems to be changed on high contrast mode since since Win8.1. To address the problem, the patch remove the skipping on high contrast mode since since Win8.1
2017-09-22 19:07:15 +09:00
cku
23d67624cd Bug 1401069 - Part 8. Give a detailed comment to explain how to react when hitting this assertion in OpenDocument(). r=fatseng
MozReview-Commit-ID: 74UkMV3ZOWm

--HG--
extra : rebase_source : 5fedf61f8a737ecac5668d372bff48b224859fdb
2017-09-18 23:55:54 +08:00
cku
24298df89b Bug 1401069 - Part 7. Declare GetPageCount as a const member function. r=fatseng
MozReview-Commit-ID: IRM8FikStJi

--HG--
extra : rebase_source : 5eb8658bc684054cc3084372cc5bf491d4db161c
2017-09-18 23:46:44 +08:00
cku
87185c9c9e Bug 1401069 - Part 6. Fine tune ComputeScaleFactor. r=fatseng
Make the implementation of it moew consice.
MozReview-Commit-ID: J7v98HBLhT

--HG--
extra : rebase_source : bc6e55c6cb0833c14eafd18338e79fc1a32c46c1
2017-09-18 23:40:05 +08:00
cku
daf81c865b Bug 1401069 - Part 5. Remove two local variables since we do not need them. r=fatseng
dcWidth and dcHieght are used only once, we do not need to define a local
variable for any of them.
MozReview-Commit-ID: Fw5rHqtUPQN

--HG--
extra : rebase_source : 52b5381319fc6626e7f1ec4111dad70482a092cd
2017-09-18 23:28:08 +08:00
cku
4ba0283028 Bug 1401069 - Part 4. Change argument type from 'const RECT *' to reference type in WindowsEMF::Playback. r=fatseng
MozReview-Commit-ID: 4StsIm9sqeC

--HG--
extra : rebase_source : b1602542ed4478304352457ea5bfa220aae1dac7
2017-09-18 23:25:34 +08:00
cku
cc1dccb273 Bug 1401069 - Part 3. Declare WindowsEMF::GetDC as const member function. r=fatseng
MozReview-Commit-ID: BX7ahnIok2T

--HG--
extra : rebase_source : f245814808a1714895dc7e83e38f357fbe29a168
2017-09-18 23:19:31 +08:00
cku
7a420a808c Bug 1401069 - Part 2. Implement ReleaseAllResource to make WindowsEMF::InitForDrawing reusable. r=fatseng
Currently, WindowsEMF::InitForDrawing can be used once. With the change in this
patch, we can call WindowsEMF::InitForDrawing and Playback/SaveToFile in pair
as many times as we want.

MozReview-Commit-ID: 4fbY4Q6i9v5

--HG--
extra : rebase_source : 4df3fc7d8663d7f552c96204a16d73261bfc9dd7
2017-09-18 23:16:08 +08:00
cku
cbacd9e2bd Bug 1401069 - Part 1. Check the value of mPDFDoc and early return if it's invalid in both RenderPageToDC and DrawPageToFile. r=fatseng
MozReview-Commit-ID: LQ9LTL8ZRKJ

--HG--
extra : rebase_source : c74f3c5f317677cb76aa4cce741c5be76421af13
2017-09-18 23:59:29 +08: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
Jean-Yves Avenard
21b23b41d6 Bug 1352016 - P2. Allow nsIGfxInfo service in GPU process on Windows. r=dvander
We'll need it to determine if NV12 D3D11 surface are operationals.

MozReview-Commit-ID: FvsxGhnv7H1

--HG--
extra : rebase_source : 4580819b19aa36d7d26ee7d05934eaaddd17206a
2017-09-13 16:35:14 +02:00
Masayuki Nakano
4b414a44a2 Bug 1395876 - Initialize TSF modules after we create first normal window r=m_kato
Currently, we initialize TSF modules when there is only message window (this
started from bug 1341915).  At this time, QQ Input (Simplified Chinese TIP)
fails to initialize itself.

Therefore, we should put off to initialize TSF modules after creating first
normal window.  Then, initialize its IMC and input context for the window.

IMEHandler::InitInputContext() should be called when each normal window is
created.  Therefore, calling Initialize() from it can guarantee there is
at least one normal window when Initialize() is called.

MozReview-Commit-ID: IfR4y3pYv6J

--HG--
extra : rebase_source : 3f36acfa65567f140eea9c7fc12d6268aadbd5ef
2017-09-08 16:26:54 +09:00
Adam Gashlin
d064e4ee67 Bug 1393685 - Cache the result of GetGutterSize to avoid expensive calls to GetThemeMargins(). r=jimm
--HG--
extra : amend_source : 040cddfc214b0d3ab57fc6644807395365275e1d
2017-09-05 17:40:00 -04:00
Sebastian Hengst
ec5336561d merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 3DvwIgw2ORU
2017-09-07 23:59:58 +02:00
Ryan VanderMeulen
4d504e0608 Backed out 3 changesets (bug 1393230) because it touches the servo directory.
Backed out changeset 9115364cd4aa (bug 1393230)
Backed out changeset f762f605dd83 (bug 1393230)
Backed out changeset c366bfc13e86 (bug 1393230)
2017-09-07 09:33:53 -04:00
Kirk Steuber
6e217001f8 Bug 1362382 - Move RegisterDragDrop to be called during idle time, if possible r=jimm
Additionally, do not call RegisterDragDrop for hidden windows.

MozReview-Commit-ID: Fv8j9FntGGT

--HG--
extra : rebase_source : fccbc576887d000805da8ac915d16fc4fddfeceb
2017-08-30 11:18:25 -07:00
Eric Rahm
70ece631cb Bug 1393230 - Part 2: Fix more improper string usages. r=njn
This fixes improper usages of Find where an offset was actually being use for
the boolean ignore case flag. It also fixes a few instances of passing in a
literal wchar_t to our functions where a NS_LITERAL_STRING or char16_t should
be used instead.
2017-08-31 15:52:30 -07:00
Will Wang
8955c23a64 Bug 1357114 - Move the taskbar refresh timer to idle dispatch. r=florian 2017-09-07 12:15:13 +08:00
Eric Rahm
0617c21c24 Bug 1393230 - Part 2: Fix more improper string usages. r=njn
This fixes improper usages of Find where an offset was actually being use for
the boolean ignore case flag. It also fixes a few instances of passing in a
literal wchar_t to our functions where a NS_LITERAL_STRING or char16_t should
be used instead.

--HG--
extra : rebase_source : 5de1e9335895d65e6db06c510e8887d27be3390f
extra : source : f762f605dd83fc6331161a33e1ef5d54cafbd08d
2017-08-31 15:52:30 -07:00
Alastor Wu
c599481d78 Bug 1373888 - part7 : modify platform wakelocks. r=cpearce,snorp,spohl
* OSX
Make the lock of the type kIOPMAssertionTypeNoDisplaySleep and kIOPMAssertionTypeNoIdleSleep
as a singleton. Won't need to require an extra lock.

* Windows
Add |mRequireForDisplay| to ensure the "audio-playing" won't overwrite the previous
display requirement.

* Android
Add "audio-playing" and "video-playing", and make sure the audio-lock won't be cancel
when receiving "WakeLockDelegate.STATE_LOCKED_BACKGROUND".

MozReview-Commit-ID: 97oNX7H2qij

--HG--
extra : rebase_source : 24fa8b267ad97d668fa55462d1f61ef5c92b632f
2017-08-29 15:28:23 +08:00
Alastor Wu
0be0a7c288 Bug 1373888 - part4 : request non-display wake lock for audio playing. r=cpearce,spohl
According to [1], kIOPMAssertionTypeNoDisplaySleep prevents display sleep and
kIOPMAssertionTypeNoIdleSleep prevents idle sleep.

We should use kIOPMAssertionTypeNoIdleSleep for audio playing, because it won't
need to block the display.

[1] https://developer.apple.com/library/content/qa/qa1340/_index.html

---

On Windows, ES_DISPLAY_REQUIRED forces display on, and ES_SYSTEM_REQUIRED forces
system on working state [2].

[2] https://msdn.microsoft.com/zh-tw/library/windows/desktop/aa373208(v=vs.85).aspx

MozReview-Commit-ID: Izs29PdzQOW

--HG--
extra : rebase_source : d0726131735b9cedf566f937204e585345b9d5e3
2017-08-29 15:25:34 +08: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
Tom Ritter
52deded719 Bug 1393536 Clean up unused variables in widget/ r=jimm
MozReview-Commit-ID: 9NBzIriF8NU

--HG--
extra : rebase_source : da185c4e55d066ec61b534d32a06d7d1819d35ca
2017-08-25 10:39:30 -05:00
Tom Ritter
74d0b2c8b2 Bug 1393528 Add parentheses to a confusing if statement r=jimm
MozReview-Commit-ID: rKnimtw55c

--HG--
extra : rebase_source : 7687a5e38803090ca56c18ffbff106fa50bef1b7
2017-08-24 12:34:09 -05:00
Wes Kocher
bd5fb0a92d Merge m-c to autoland, a=merge
MozReview-Commit-ID: AHOFLdPkEou
2017-08-23 18:08:30 -07:00
Makoto Kato
5251e6a945 Bug 1390097 - Revert a part of bug 1354020 changes. r=masayuki
Bug 1354020 causes that IMM-IME on Windows 7 doesn't work with --no-remote.  Although I think that this issue is OS or IME bug, when default window proceduce by RegisterClass is DefaultWindowProcW, Google Japanese IME doesn't work.

I am not sure why this issue occurs when lpfnWndProc is DefWidnowProcW and DDE isn't started.  But for workaround, we should revert a part of bug 1354020 changes.

MozReview-Commit-ID: BkxlZnm8mIh

--HG--
extra : rebase_source : 21c1d86fb5628dbd726a15e5057a536271cfb26d
2017-08-23 12:59:40 +09: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
Eric Rahm
a33f11e0f5 Bug 1391803 - Use nsStringFwd.h for forward declaring string classes. r=froydnj
We should not be declaring forward declarations for nsString classes directly,
instead we should use nsStringFwd.h. This will make changing the underlying
types easier.

--HG--
extra : rebase_source : b2c7554e8632f078167ff2f609392e63a136c299
2017-08-16 16:48:52 -07:00
Farmer Tseng
73894c8888 Bug 1382509 - Part2. Remove the code from PDFiumEngineShim that allows for linking PDFium.dll r=jwatt
MozReview-Commit-ID: IAdCznwCWBf

--HG--
extra : rebase_source : 8f0fc1be93fec1a61b732682fbc8449117042ca6
2017-08-20 22:45:17 +08:00
Farmer Tseng
3e79fc2fc8 Bug 1382509 - Part1. Align the calling convention with PDFium in PDFiumEngineShim. r=glandium
MozReview-Commit-ID: GSci8sIHnYE

--HG--
extra : rebase_source : c16704fce19bf4700f9a12f5251c292d8b03db39
2017-08-20 22:45:00 +08: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
peter chang
b4c4e94ce2 Bug 1382680 Only add extended style WS_EX_COMPOSITED when using OMTC, r=bas,jimm
MozReview-Commit-ID: 3jwGmJxE8zL

--HG--
extra : rebase_source : 7b588a017a85eb47e74a4b3352b95ad07b5084e6
2017-08-16 16:55:15 +08:00
Makoto Kato
a9fee9289d Bug 1391164 - Unnecessary to use GetProcAddress for gesture APIs since we already drop XP and Vista. r=jimm
Since our platform requirement is Windows 7+, we don't need GetProcAddress for gesture APIs.  But nsWinGesture still uses GetProcAddress for Win7+ API.

MozReview-Commit-ID: 1COJqM4NJTD

--HG--
extra : rebase_source : d915c1f74f6f3f10287ae6d08892499c3d3e8da6
2017-08-18 09:47:36 +09:00
Farmer Tseng
087ac8f9e7 Bug 1388951 - Add a gtest to compare the EMF output from our version of PDFium, to Chromium's. r=jwatt
Built pdfium_ref_x86.dll and pdfium_ref_x64.dll from google source tree. Use
them to generate an EMF as the reference.

MozReview-Commit-ID: GoaxU6nWXYM

--HG--
extra : rebase_source : 441d72cd409e105337eed7d763a29ef329ba2d58
2017-08-18 10:36:16 +08: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
Wes Kocher
936a9461f6 Merge inbound to m-c a=merge
MozReview-Commit-ID: KRQeIGmhAPA
2017-08-10 18:14:34 -07:00
Sebastian Hengst
51d351f567 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-08-10 17:41:11 +02:00
Masatoshi Kimura
6815cee2bd Bug 1387790 - Remove [deprecated] decodeImageData from imgITools. r=tnikkel
MozReview-Commit-ID: GZBYTPanHH6

--HG--
extra : rebase_source : f6ccc1a661533f7bdba8bb33bc9a85855b51ffae
2017-08-06 10:54:14 +09:00