Commit Graph

2082 Commits

Author SHA1 Message Date
Masayuki Nakano
bcaaf6d927 Bug 1284422 part.3 Remove "IMM: " from log of IMMHandler.cpp r=m_kato
MozReview-Commit-ID: IfPneGddBfR

--HG--
extra : rebase_source : 9fb203ef7666f77894d49b77c946379e88fc43e8
2016-07-05 18:35:43 +09:00
Masayuki Nakano
912efc351d Bug 1284422 part.2 Fix odd indent of MOZ_LOG() in TSFTextStore.cpp (mainly caused by replacing from PR_LOG()) r=m_kato
MozReview-Commit-ID: 88EW9lN1DMD

--HG--
extra : rebase_source : 94da64ebe79a83143484c88882974e42cc4f9661
2016-07-05 18:33:20 +09:00
Masayuki Nakano
08581a1122 Bug 1284422 part.1 Remove "TSF: " from log of TSFTextStore.cpp r=m_kato
MozReview-Commit-ID: D2lgQxFWWVB

--HG--
extra : rebase_source : 1e9ba25907def5cee23462ceda3842739819f025
2016-07-05 18:06:39 +09:00
Kartikaya Gupta
570f040947 Bug 1256339 - Fix up handling for touch-derived contextmenu events on desktop. r=mconley,jimm
This patch stops the widget code from passing along touch-derived contextmenu
events straight from Windows to Gecko, and instead lets the APZ gesture
detection code handle it. This allows the contextmenu event to be prevented
according to web standards, e.g. if the touchstart event is cancelled.

This changes to browser.js will affect both Linux and Windows, but the behaviour
implemented is in line with native Windows touch behaviour. We may want to
add an alternate codepath for Linux to better simulate "native" Linux behavior,
if there is such a thing for touch-derived contextmenu.

MozReview-Commit-ID: 18qzK15ic8E
2016-07-05 13:24:54 -04:00
Masayuki Nakano
326a823176 Bug 1224994 part.13 Fix some comments which say "locked content" in TSFTextStore.cpp r=m_kato
MozReview-Commit-ID: Jze8WtPx82G

--HG--
extra : rebase_source : ba2692201135168f8910ea5f72d13292e01b777c
2016-07-04 15:53:58 +09:00
Masayuki Nakano
889fd517e3 Bug 1224994 part.12 Rename the variable names for the result of TSFTextStore::SelectionForTSF() to selectionForTSF r=m_kato
MozReview-Commit-ID: 9gYiIKVohQl

--HG--
extra : rebase_source : 1e932afcf45d32b40e802c8e233eee016a4d903e
2016-07-01 14:13:46 +09:00
Masayuki Nakano
c960d127a3 Bug 1224994 part.11 Rename TSFTextStore::CurrentSelection() to TSFTextStore::SelectionForTSF() r=m_kato
MozReview-Commit-ID: 9KVLN63NL9Z

--HG--
extra : rebase_source : 1976385d19fbdd2f0beb6de4b1bf745a35a06015
2016-07-01 14:09:52 +09:00
Masayuki Nakano
5a696fa2b9 Bug 1224994 part.10 Rename TSFTextStore::mSelection to TSFTextStore::mSelectionForTSF for making its meaning clearer r=m_kato
MozReview-Commit-ID: K9tVAw9aCaN

--HG--
extra : rebase_source : fcd8ef087e5f66f1698eb4dc65bc9668ae818a7f
2016-07-01 14:01:26 +09:00
Masayuki Nakano
5a22169d73 Bug 1224994 part.9 TSFTextStore shouldn't set selection when there is unknown pending text changes r=m_kato
I'm still not sure what we should do in this case, though.

If mContentForTSF is initialized and there are some unknown changes in actual contents, i.e., not caused by composition of the active TIP itself, we cannot set selection range properly in some cases.

For example, if TSF tires to set non-empty selection range but the range has been removed by web apps.

For now, let's try to return E_FAIL in such case because that should occur at reconversion or something immediately after previous content change not caused by previous composition.  If TIP does nothing in this case, user can retry with same operation after all pending text changes are notified to TSF.

MozReview-Commit-ID: 9unrNVeC1tW

--HG--
extra : rebase_source : 061e48e014a38b2a442bf736031febfe0b1e333d
2016-06-30 17:55:01 +09:00
Masayuki Nakano
52dc580a74 Bug 1224994 part.8 Don't notify TSF of text changes while there is cached content r=m_kato
Same as selection change notification, text change notification shouldn't be notified to TSF while there is cachec content because neither TSF nor TIP may allow to change text by web applications during keeping storing cached content.

This patch makes TSFTextStore stores and merges text changes until MaybeFlushPendingNotifications() is called and there is no cached content.

MozReview-Commit-ID: 9fj0GREbX18

--HG--
extra : rebase_source : 71db6b4b9f0ab979313398a8014bde992183e019
2016-06-30 15:04:02 +09:00
Masayuki Nakano
7bde7206c2 Bug 1224994 part.7 Don't notify TSF of selection changes while there is a cached content r=m_kato
TSFTextStore shouldn't notify TSF of selection change until MaybeFlushPendingNotifications() is called and there is no cached content because while there is cached content, neither TSF nor TIP may allow to change selection by web applications.  Therefore, ITextStoreACP::GetSelection() and similar methods need to use mSelection instead of actual selection in the focused editor.  Therefore, TSFTextStore should store selection change data during keeping storing content cache and notify it when the cache is cleared. So, when TSFTextStore notifies TSF of selection change, TSFTextStore needs to update mSelection to the actual selection which is stored in mPendingSelectionChangeData.

MozReview-Commit-ID: 8ZWASzu7Znv

--HG--
extra : rebase_source : 0bfaef0bbffd72d661c84992cc8c842215e3407a
2016-06-30 16:17:11 +09:00
Masayuki Nakano
0ce8b30a41 Bug 1224994 part.6 Don't clear TSFTextStore::mContentForTSF until active composition is committed r=m_kato
This patch stop clearing mContentForTSF at unlocking the document because we should keep it until active composition is committed.  If so, TSF/TIP won't be confused by content changes by JS.  So, this is important for a11y of TIP users in some complicated websites like GoogleDocs, Facebook, etc.

Note that this patch doesn't work well without following patches.  We need to stop notifying TSF of selection changes and text changed while mContentForTSF is valid.

MozReview-Commit-ID: 9QOGZxdYU3I

--HG--
extra : rebase_source : 19a6eeb2357825643497caf5a5298c55f08a0670
2016-06-29 18:24:10 +09:00
Masayuki Nakano
c7b1162cd6 Bug 1224994 part.5 Implement TSFTextStore::IsComposingInContent() to check if the focused editor has composition r=m_kato
MozReview-Commit-ID: 2bmGeaxUpUU

--HG--
extra : rebase_source : 950febee0572bb8ff47b6640980a9e9a45211214
2016-06-29 17:39:59 +09:00
Masayuki Nakano
c67a1779d1 Bug 1224994 part.4 Rename the variable name which is for storing the result of TSFTextStore::ContentForTSFRef() to contentForTSF r=m_kato
MozReview-Commit-ID: 3wWMrpSWW6b

--HG--
extra : rebase_source : c359e70a3869a151fe4e1596677e8174222c1d88
2016-06-29 17:26:35 +09:00
Masayuki Nakano
bee80a0a51 Bug 1224994 part.3 Rename TSFTextStore::mDeferClearingLockedContent to TSFTextStore::mDeferClearingContentForTSF r=m_kato
MozReview-Commit-ID: 9cZ3Itx2zb4

--HG--
extra : rebase_source : e6af75e2190e55e18592b2ebe90d01f27b53f845
2016-06-29 17:22:09 +09:00
Masayuki Nakano
74ae5264af Bug 1224994 part.2 Rename TSFTextStore::LockedContent() to TSFTextStore::ContentForTSFRef() r=m_kato
MozReview-Commit-ID: JC4lgZu38e9

--HG--
extra : rebase_source : 4e643d8728a05f2c1550395a4a29b0c1718fa7a7
2016-06-29 17:18:44 +09:00
Masayuki Nakano
1a8bd9d18d Bug 1224994 part.1 Rename TSFTextStore::mLockedContent to TSFTextStore::mContentForTSF r=m_kato
MozReview-Commit-ID: 5K0zPW1Mx4b

--HG--
extra : rebase_source : 7ba0c30dba75c57310976f8ad9fc0a2aa04bf4f4
2016-06-29 17:15:40 +09:00
Carsten "Tomcat" Book
5f79b99ba6 Merge mozilla-central to autoland 2016-07-04 13:09:12 +02:00
Bob Owen
d17a3dbfa9 Bug 1280159: Let paper type drive page size units on Windows. r=jimm
Also, changed the other paper size conversion code to be similar, as I think it is easier to follow.

MozReview-Commit-ID: 2PzzxevnQSz

--HG--
extra : rebase_source : 45d20a714a05425b9010b2f390cd417617243682
2016-06-30 10:01:10 +01:00
Carsten "Tomcat" Book
eec8b2656e Merge mozilla-central to autoland 2016-07-02 11:16:11 +02:00
Jeff Gilbert
96dc6afb76 Bug 1268638 - Bitrot.
MozReview-Commit-ID: QJjb2PW5C4
2016-07-01 13:15:31 -07:00
Jeff Gilbert
5a27646a69 Bug 1268638 - Add good driver versions to blocklist for webgl+native-gl. - r=jrmuizel
MozReview-Commit-ID: IAalsSiuTiL
2016-07-01 13:14:46 -07:00
David Anderson
98133d3c0a Implement remote CompositorWidgets on Windows. (bug 1281998 part 7, r=billm) 2016-07-01 01:15:16 -07:00
David Anderson
97a92d5d5e Extract a delegate interface out of WinCompositorWidget. (bug 1281998 part 6, r=jimm) 2016-07-01 01:15:16 -07:00
David Anderson
6562af780a Move CompositorWidget construction out of nsIWidget. (bug 1281998 part 5, r=jimm) 2016-07-01 01:15:16 -07:00
David Anderson
f0edea202e Move CompositorWidget ownership from nsWindow to CompositorSession. (bug 1281998 part 4, r=jimm) 2016-07-01 01:15:16 -07:00
David Anderson
3f0ea0572d Rename CompositorWidgetProxy files to CompositorWidget. (bug 1281998 part 2, r=jimm)
--HG--
rename : widget/CompositorWidgetProxy.cpp => widget/CompositorWidget.cpp
rename : widget/CompositorWidgetProxy.h => widget/CompositorWidget.h
rename : widget/windows/WinCompositorWidgetProxy.cpp => widget/windows/WinCompositorWidget.cpp
rename : widget/windows/WinCompositorWidgetProxy.h => widget/windows/WinCompositorWidget.h
2016-07-01 01:15:16 -07:00
David Anderson
b36fb329b1 Allow creating WinCompositorWidgetProxy without an nsWindow. (bug 1281998 part 1, r=jimm) 2016-07-01 01:15:15 -07:00
Bill McCloskey
b8ababd5ee Bug 1282153 - Remove retaining outparam to GetLayerManager (r=dvander) 2016-06-30 14:30:30 -07:00
Carsten "Tomcat" Book
fcff88e7a8 Merge mozilla-central to autoland 2016-07-01 11:20:25 +02:00
Phil Ringnalda
0d0d24bccc Back out 7 changesets (bug 1281998) for Windows Marionette crashes
Backed out changeset d806fac2c856 (bug 1281998)
Backed out changeset b8d4fedfd7eb (bug 1281998)
Backed out changeset a72929c0c3ec (bug 1281998)
Backed out changeset 74198f88fa37 (bug 1281998)
Backed out changeset 54a0e73f6906 (bug 1281998)
Backed out changeset 99d1da1293b7 (bug 1281998)
Backed out changeset a5a9585754b1 (bug 1281998)

--HG--
rename : widget/CompositorWidget.cpp => widget/CompositorWidgetProxy.cpp
rename : widget/CompositorWidget.h => widget/CompositorWidgetProxy.h
rename : widget/windows/WinCompositorWidget.cpp => widget/windows/WinCompositorWidgetProxy.cpp
rename : widget/windows/WinCompositorWidget.h => widget/windows/WinCompositorWidgetProxy.h
2016-06-29 19:35:24 -07:00
David Anderson
faac928c5a Implement remote CompositorWidgets on Windows. (bug 1281998 part 7, r=billm)
--HG--
extra : rebase_source : 7027c4477e5f7432779e1b8389255b8a808f42b8
2016-06-29 16:47:23 -04:00
David Anderson
4853817add Extract a delegate interface out of WinCompositorWidget. (bug 1281998 part 6, r=jimm)
--HG--
extra : rebase_source : 66e23a6efd766341a97ab46f1c52b368f145d849
2016-06-29 16:47:23 -04:00
David Anderson
358a567c70 Move CompositorWidget construction out of nsIWidget. (bug 1281998 part 5, r=jimm)
--HG--
extra : rebase_source : 881a2fac4447de3f1aeae3f34f21f9e76a79e0a3
2016-06-29 16:47:22 -04:00
David Anderson
80600779fc Move CompositorWidget ownership from nsWindow to CompositorSession. (bug 1281998 part 4, r=jimm)
--HG--
extra : rebase_source : ff35830b0ca727e03366ebcd9cf069d7772de591
2016-06-29 16:47:22 -04:00
David Anderson
804c1ee06f Rename CompositorWidgetProxy files to CompositorWidget. (bug 1281998 part 2, r=jimm)
--HG--
rename : widget/CompositorWidgetProxy.cpp => widget/CompositorWidget.cpp
rename : widget/CompositorWidgetProxy.h => widget/CompositorWidget.h
rename : widget/windows/WinCompositorWidgetProxy.cpp => widget/windows/WinCompositorWidget.cpp
rename : widget/windows/WinCompositorWidgetProxy.h => widget/windows/WinCompositorWidget.h
extra : rebase_source : 8ecf59ad6039f0d0d2a51008aef53ef37aa2ce0e
2016-06-29 16:47:22 -04:00
David Anderson
63d9d438a0 Allow creating WinCompositorWidgetProxy without an nsWindow. (bug 1281998 part 1, r=jimm)
--HG--
extra : rebase_source : e91fe5aa3c3c7bddb0c47a8cba8eb53ce9be2ebc
2016-06-29 16:47:22 -04:00
Jonathan Kew
b1d6a7194b Bug 1254026 - When Win10 dpi-awareness-context APIs are available, run the Open File and Save As dialogs as system-dpi-aware windows, so that they are auto-scaled by the system appropriately for any secondary display's resolution. r=emk 2016-07-01 23:42:32 +01:00
eyim
ec60e64569 Bug 1277314 - Add ogl compositing feature in gfxplatform r=BenWa,dvander
MozReview-Commit-ID: HMfvXtKV0Yk

--HG--
extra : rebase_source : 3cc6008b4655726fd740fb011ae4c152e3baf865
2016-06-20 12:29:47 -04:00
Masayuki Nakano
ef2fb8753d Bug 1282669 Get rid of nsIMEUpdatePreference::DontNotifyChangesCausedByComposition() r=m_kato
I think that we can drop nsIMEUpdatePreference::DontNotifyChangesCausedByComposition(), i.e., nsIMEUpdatePreference::NOTIFY_CHANGES_CAUSED_BY_COMPOSITION because it's now used only by TSFTextStore but TSFTextStore ignores if SelectionChangeDataBase::mCausedByComposition or TextChangeDataBase::mCausedOnlyByComposition is true (for supporting async changes in e10s mode).  So, only issue is, dropping the flag might cause increasing computing TextChangeData cost during composition in TSF mode.  However, now, it's already enough fast and even if it'd cause performance regression, we could add a hack with TextComposition's offset information.  Therefore, we don't need to worry about the performance regression so seriously.

MozReview-Commit-ID: HNT3G4isONj

--HG--
extra : rebase_source : 164231023aa2a17ceab94d92fb49ba0a00dab429
2016-06-28 16:51:59 +09:00
Masayuki Nakano
e1d8dafcd9 Bug 1282668 Get rid of nsIMEUpdatePreference::NOTIFY_SELECTION_CHANGE r=m_kato
Currently, all widgets request selection change notifications to IMEContentObserver.  Additionally, IMEContentObserver needs to listen selection changes for caching latest selection for eQuerySelectedText.  Therefore, it doesn't make sense to keep defining nsIMEUpdatePreference::NOTIFY_SELECTION_CHANGE.

If widgets didn't need selection change notifications, they could just ignore the unnecessary notifications.

Note that all widgets don't need selection change notifications if a plugin has focus and IMEContentObserver cannot observe selection changes in the plugin.  Therefore, if IMEContentObserver is initialized with a plugin, it shouldn't listen selection changes (and doesn't need to notify widgets of selection changes).

MozReview-Commit-ID: FOVFFgA2nOz

--HG--
extra : rebase_source : 3e16d5023835f99f82934e754d2e7db70474f9ee
2016-06-28 15:23:12 +09:00
Gerald Squelart
7dfe2a4721 Bug 1277526 - Blacklist ATI win7 drivers 8.850.0.0 - r=nical
MozReview-Commit-ID: 3qvWviFXQMt

--HG--
extra : rebase_source : 6e8bab399152fdfbce011c40d8a4bc866ca335fe
2016-06-23 15:14:04 +10:00
Carsten "Tomcat" Book
fdb5ee5d63 Backed out changeset 34aa8f1f134f (bug 1268638) for assertion failures in Assertion failure: !mLockedForGL, at SharedSurfaceD3D11Interop.cpp:302
--HG--
extra : rebase_source : 12cc2c6e812d19438112acf568a034fb36249c67
2016-06-23 09:47:57 +02:00
Carsten "Tomcat" Book
60a9e9ce21 Backed out changeset 4171ff387666 (bug 1268638)
--HG--
extra : rebase_source : c57ffe49af64d35f69a5b186b2edef66b3223319
2016-06-23 09:47:20 +02:00
Masayuki Nakano
adabe1afd9 Bug 1281387 KeyboardLayout.cpp should use LazyLogModule instead of PR_NewLogModule() for making aware of MOZ_LOG* r=m_kato
MozReview-Commit-ID: LADKYU7uPcq

--HG--
extra : rebase_source : 5863bfa4fa3983740465d2ea745ca6b8a485b7e3
2016-06-22 15:39:58 +09:00
Jeff Gilbert
619c297be6 Bug 1268638 - Bitrot.
MozReview-Commit-ID: QJjb2PW5C4
2016-06-22 17:47:41 -07:00
Jeff Gilbert
d392c3d6b4 Bug 1268638 - Add good driver versions to blocklist for webgl+native-gl. - r=jrmuizel
MozReview-Commit-ID: IAalsSiuTiL
2016-06-22 17:47:41 -07:00
Masayuki Nakano
d829b3effe Bug 1275528 part.5 TSFTextStore should use insertion point relative query for getting character rect and caret rect only while there is a composition r=m_kato
TSFTextStore should use insertion point relative query for getting character rect and caret rect while there is a composition because in such case, TSF must want to query a part of or around the composition.  Therefore, it makes sense to use insertion point relative query since it adjusts the offset with the latest content information.

MozReview-Commit-ID: IVjZ4zqFUkr

--HG--
extra : rebase_source : e535ffa2c7649f16ffe7f761a9ed01b061848aa7
2016-06-15 17:10:38 +09:00
Masayuki Nakano
b04303d171 Bug 1275528 part.4 IMMHandler should use insertion point relative query for getting character rect and caret rect r=m_kato
IMM always queries character rect or caret rect relative to insertion point.  Therefore, it makes sense to use the new feature, insertion point relative query content events for them.  Then, IMMHandler doesn't need to care mismatch between its cache and actual content information.

MozReview-Commit-ID: LCCrJkR77I8

--HG--
extra : rebase_source : c75f1b29e34e13df397de351909f07e2a95b6c5f
2016-06-15 13:52:03 +09:00
Wes Kocher
8e4ef7176d Backed out 8 changesets (bug 1268638) for build bustage CLOSED TREE
Backed out changeset 1a2db6efc575 (bug 1268638)
Backed out changeset ad38e0439b62 (bug 1268638)
Backed out changeset 0078605c6974 (bug 1268638)
Backed out changeset 8ed7ed6c57db (bug 1268638)
Backed out changeset 69116551e4b9 (bug 1268638)
Backed out changeset 002f87a61edf (bug 1268638)
Backed out changeset 8b0db9b0f87c (bug 1268638)
Backed out changeset 5d1285d0c221 (bug 1268638)
2016-06-21 14:53:22 -07:00