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

17 Коммитов

Автор SHA1 Сообщение Дата
Simon Giesecke 61be6c6c35 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/events. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D63164

--HG--
extra : moz-landing-system : lando
2020-02-20 15:56:28 +00:00
Masayuki Nakano 25e931d406 Bug 1609603 - Optimize the callers of `DataTransfer::GetTypes()` r=smaug
In C++ code, `DataTransfer::GetTypes()` are used for checking whether the
`DataTransfer` instance has specific type `DataTransferItem` or not.  Therefore,
it does not make sense to retrieve all item types nor compare some types
looking for with the retrieved item types.

This patch adds `DataTransfer::HasType()` and `DataTransfer::HasFile()` for
the current C++ users.  They don't take `CallerType` since all C++ users use
`GetTypes()` as `CallertType::System`.  And they just call a corresponding
method of `DataTransferItemList`.

Then, `DataTransferItemList` methods compares given type with every items
simply.

Note that this patch moves `DataTransfer::GetTypes()` to `DataTransferItemList`
too because new methods and `GetTypes()` should be maintained at every logic
changes.

The reason why there is no `DataTransfer::HasAnyOfTypes()` method is,
`DataTransfer.h` cannot include `DataTransferItemList.h` due to their
dependency but parameter pack requires inline methods.

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

--HG--
extra : moz-landing-system : lando
2020-01-20 09:46:48 +00:00
Masayuki Nakano f8a317eb9a Bug 998941 - part 2-3: Create new constructors of DataTransfer to set only plain text or nsITransferable r=smaug
DataTransfer should have more 2 constructors.  One takes |const nsAString&| and
sets its data to the string.  The other takes |nsITransferable*| and stores only
its data with DataTransferItem.

If given data is external resource like the case of `HTMLEditor::PasteTransferable()`,
we should copy its data to each DataTransferItem because nsITransferable is not
cycle-collectable, but DataTransfer may be grabbed by JS.  Unfortunately, adding
new path to initialize DataTransfer with nsITransferable instance is too risky
because DataTransfer and DataTransferItem work together to initialize each of
them if DataTransfer is in external mode. Therefore, this patch makes the
new constructor temporarily sets it to in external mode, then, cache usable types
first, then, call `FillAllExternalData()` to  make each DataTransferItem initializes
its data by itself, finally, make the constructor set it to internal mode and release
nsITransferable instance.  This is ugly implementation but the most reasonable
way for now because:

- We don't need to change DataTransfer nor DataTransferItem a lot in this bug.
- We don't need to duplicate any code like a loop in `CacheExternalData()`.

In another bug, we should redesign DataTransfer and DataTransferItem to
make DataTransferable easier to be added new constructors.

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

--HG--
extra : moz-landing-system : lando
2019-02-19 07:13:20 +00:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Andrew McCreight 298aa82710 Bug 1412125, part 2 - Fix dom/ mode lines. r=qdot
This was automatically generated by the script modeline.py.

MozReview-Commit-ID: BgulzkGteAL

--HG--
extra : rebase_source : a4b9d16a4c06c4e85d7d85f485221b1e4ebdfede
2017-10-26 15:08:41 -07:00
Boris Zbarsky 3f10f5ed57 Bug 1308287 part 1. Change [NeedsSubjectPrincipal] to only do the Maybe thing for interfaces that can be exposed to workers. r=baku
The idea is to not make consumers think about whether the principal exists or
not when the caller knows for sure that it does.

The substantive changes are in dom/bindings, nsHTMLDocument::SetDesignMode, and
around the CanUseStorage bits.  Everything else is pretty mechanical.
2016-10-10 21:07:48 -04:00
Boris Zbarsky ee441d05fb Bug 1298243 part 4. Drop the pointless ErrorResult from the DataTransferItemList indexed getter. r=mystor 2016-10-10 21:07:47 -04:00
Boris Zbarsky 018d43c3c0 Bug 1298243 part 1. Add some more documentation to DataTransferItemList. r=mystor 2016-10-10 21:07:47 -04:00
Andrea Marchesini afce29a145 Bug 1297393 - Make passing of subject principals to webidl entry points explicit - part 3 - DataTransferItemList, r=ehsan 2016-09-29 08:55:20 +02:00
Michael Layzell e4a2ac3b82 Bug 1297186 - Correctly propagate principals when getting the files list in DataTransfer, r=enndeakin
MozReview-Commit-ID: 8LRBekaOUJR
2016-09-01 11:22:15 -04:00
Michael Layzell 6dbd9e26cb Bug 1296041 - Check subject principal in Data(), instead of IndexedGetter, r=baku
MozReview-Commit-ID: 4aeGjTejP3z
2016-08-18 15:54:21 -04:00
Michael Layzell e3f9006f22 Bug 906420 - Part 3: Either expose files or strings generated by system drag or clipboard events to content, not both, r=baku 2016-07-04 15:45:45 -04:00
Michael Layzell dde888ae28 Bug 906420 - Part 1: Implement DataTransferItem and DataTransferItemList, r=baku 2016-07-04 15:45:45 -04:00
Carsten "Tomcat" Book afff301b32 Backed out changeset 5c836acf3197 (bug 906420) on developer request by baku
--HG--
extra : rebase_source : 9f109cdb706feef6d2bcd9a2e71f8c4d3c17ebdf
2016-06-09 15:30:53 +02:00
Carsten "Tomcat" Book ed14bc0dce Backed out changeset 18b3c95f1a38 (bug 906420)
--HG--
extra : rebase_source : 2cb14884f71aa8a41e56c935abe93755b0b0d8db
2016-06-09 15:30:35 +02:00
Michael Layzell 5cb6cd1b79 Bug 906420 - Part 3: Either expose files or strings generated by system drag or clipboard events to content, not both, r=baku 2016-06-07 18:05:55 -04:00
Michael Layzell bd973fcaa4 Bug 906420 - Part 1: Implement DataTransferItem and DataTransferItemList, r=baku 2016-06-07 18:05:55 -04:00