Commit graph

24 commits

Author SHA1 Message Date
Manish Goregaokar
dc0e467945 Upgrade to rustc 1.6.0-nightly (d5fde83ae 2015-11-12)
… and libc 0.2 and many other dependencies
2015-11-27 00:15:29 -05:00
João Oliveira
067a22a868 Replace uses of for foo in bar.iter(),
and `for foo in bar.iter_mut(), and for foo in bar.into_iter()
(continuation of #7197)
2015-08-18 01:46:11 +01:00
João Oliveira
9c11781880 replace .len() == 0 with is_empty()
closes #7198
2015-08-14 04:00:33 +01:00
Ms2ger
f8ae884ab5 Stop using deprecated boxed::into_raw in cef. 2015-06-26 23:00:07 +02:00
Ms2ger
6ee8a1e476 Use pop() better in cef_string_multimap_clear. 2015-06-15 18:09:40 +02:00
Ms2ger
ccc38ef5a1 Use the Box/boxed APIs to handle cef_string_multimap_t memory management. 2015-06-15 18:09:38 +02:00
Ms2ger
cb2f7c7496 Make cef_string_multimap_t an alias for its real type. 2015-06-15 18:09:36 +02:00
Simon Sapin
5428226e04 Remove usage of String::from_str, deprecated in #6377 2015-06-15 15:37:14 +02:00
Simon Sapin
ef8edd4e87 Upgrade to rustc 551a74dddd84cf01440ee84148ebd18bc68bd7c8. 2015-05-05 10:07:34 -04:00
Ms2ger
de94e39ff7 Stop using int/uint in CEF. 2015-04-13 14:11:17 +02:00
Josh Matthews
95fc29fa0d Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev. 2015-01-28 10:16:49 +10:00
Patrick Walton
8b2aadc30b ports/cef: Implement accelerated compositing for the CEF port. 2014-12-10 08:35:47 -08:00
Patrick Walton
3bf779cd21 ports/cef: Use the CEF translator tool to generate the full set of CEF
bindings.

This replaces hand-implemented CEF bindings with proper Rust wrappers
automatically generated from the C++ headers. This means that, whenever
CEF's C++ headers change, we can easily generate both the appropriate C
API and the appropriate Rust API. It eliminates much of the hand-written
unsafe code within the CEF port, because the CEF translator tool now
knows how to generate Rust smart pointer wrappers for each class that
corrently perform reference counting.

Additionally, this commit adds utility macros (located in `macros.rs`)
that make it easier to correctly expose Rust objects as CEF objects.
They handle the marshaling of objects between Rust and CEF properly.
The net result of this is that you can write mostly-natural-looking Rust
in the CEF port and interact with it with a natural-looking C++ API on
the embedding side.

This setup relies on the branch of CEF located here:

    https://github.com/pcwalton/chromium-embedded-framework

To regenerate, follow the instructions in `ports/cef/README.md`. For
convenience, and because I don't anticipate the API to change much, I
have vendored in all of the appropriate interfaces.
2014-11-27 10:31:32 -06:00
Mike Blumenkrantz
4ae5c88acc address review comments 2014-11-18 14:43:59 -05:00
Mike Blumenkrantz
8a4d2949e8 embedding: replace usage of deprecated find*() with get*() 2014-11-17 14:41:23 -05:00
Mike Blumenkrantz
8b231a26e4 embedding: cef_string_multimap_free() 2014-11-17 14:41:23 -05:00
Mike Blumenkrantz
32d6cff440 embedding: cef_string_multimap_clear() 2014-11-17 14:41:23 -05:00
Mike Blumenkrantz
ef288f1195 embedding: cef_string_multimap_value() 2014-11-17 14:41:22 -05:00
Mike Blumenkrantz
ce3e9fb511 embedding: cef_string_multimap_key() 2014-11-17 14:41:22 -05:00
Mike Blumenkrantz
85a099719e embedding: cef_string_multimap_enumerate() 2014-11-17 14:41:22 -05:00
Mike Blumenkrantz
7758a4427d embedding: cef_string_multimap_append() 2014-11-17 14:41:22 -05:00
Mike Blumenkrantz
f1f8c65de7 embedding: cef_string_multimap_find_count() 2014-11-17 14:41:22 -05:00
Mike Blumenkrantz
cc55f88496 embedding: cef_string_multimap_size() 2014-11-17 14:41:22 -05:00
Mike Blumenkrantz
89fa3bb99a embedding: begin cef string_multimap api
cef_string_multimap_alloc()
2014-11-17 14:41:22 -05:00