Rewild Your Web
18
fork

Configure Feed

Select the types of activity you want to include in your feed.

chore: update Servo to 2dedd4087e69fbad21fcfb3ebce8fcfab9b58bba

Signed-off-by: webbeef <me@webbeef.org>

webbeef 70675f2a adc6f416

+77 -68
+31 -22
Cargo.lock
··· 805 805 806 806 [[package]] 807 807 name = "bitstream-io" 808 - version = "4.9.0" 808 + version = "4.10.0" 809 809 source = "registry+https://github.com/rust-lang/crates.io-index" 810 - checksum = "60d4bd9d1db2c6bdf285e223a7fa369d5ce98ec767dec949c6ca62863ce61757" 810 + checksum = "7eff00be299a18769011411c9def0d827e8f2d7bf0c3dbf53633147a8867fd1f" 811 811 dependencies = [ 812 - "core2", 812 + "no_std_io2 0.9.3", 813 813 ] 814 814 815 815 [[package]] ··· 1267 1267 1268 1268 [[package]] 1269 1269 name = "cid" 1270 - version = "0.11.1" 1270 + version = "0.11.2" 1271 1271 source = "registry+https://github.com/rust-lang/crates.io-index" 1272 - checksum = "3147d8272e8fa0ccd29ce51194dd98f79ddfb8191ba9e3409884e751798acf3a" 1272 + checksum = "cbb4913a732503de004e94ce7a4e7119ffc55d1727cc9979ac3b52f511e6578c" 1273 1273 dependencies = [ 1274 - "core2", 1275 1274 "multibase", 1276 1275 "multihash", 1276 + "no_std_io2 0.8.1", 1277 1277 "unsigned-varint", 1278 1278 ] 1279 1279 ··· 1587 1587 "core-graphics", 1588 1588 "foreign-types", 1589 1589 "libc", 1590 - ] 1591 - 1592 - [[package]] 1593 - name = "core2" 1594 - version = "0.4.0" 1595 - source = "registry+https://github.com/rust-lang/crates.io-index" 1596 - checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505" 1597 - dependencies = [ 1598 - "memchr", 1599 1590 ] 1600 1591 1601 1592 [[package]] ··· 4252 4243 4253 4244 [[package]] 4254 4245 name = "hyper-rustls" 4255 - version = "0.27.8" 4246 + version = "0.27.9" 4256 4247 source = "registry+https://github.com/rust-lang/crates.io-index" 4257 - checksum = "c2b52f86d1d4bc0d6b4e6826d960b1b333217e07d36b882dca570a5e1c48895b" 4248 + checksum = "33ca68d021ef39cf6463ab54c1d0f5daf03377b70561305bb89a8f83aab66e0f" 4258 4249 dependencies = [ 4259 4250 "http 1.4.0", 4260 4251 "hyper 1.9.0", ··· 6067 6058 6068 6059 [[package]] 6069 6060 name = "multihash" 6070 - version = "0.19.3" 6061 + version = "0.19.4" 6071 6062 source = "registry+https://github.com/rust-lang/crates.io-index" 6072 - checksum = "6b430e7953c29dd6a09afc29ff0bb69c6e306329ee6794700aee27b76a1aea8d" 6063 + checksum = "89ace881e3f514092ce9efbcb8f413d0ad9763860b828981c2de51ddc666936c" 6073 6064 dependencies = [ 6074 - "core2", 6065 + "no_std_io2 0.8.1", 6075 6066 "unsigned-varint", 6076 6067 ] 6077 6068 ··· 6306 6297 "cfg-if", 6307 6298 "cfg_aliases", 6308 6299 "libc", 6300 + ] 6301 + 6302 + [[package]] 6303 + name = "no_std_io2" 6304 + version = "0.8.1" 6305 + source = "registry+https://github.com/rust-lang/crates.io-index" 6306 + checksum = "8a3564ce7035b1e4778d8cb6cacebb5d766b5e8fe5a75b9e441e33fb61a872c6" 6307 + dependencies = [ 6308 + "memchr", 6309 + ] 6310 + 6311 + [[package]] 6312 + name = "no_std_io2" 6313 + version = "0.9.3" 6314 + source = "registry+https://github.com/rust-lang/crates.io-index" 6315 + checksum = "b51ed7824b6e07d354605f4abb3d9d300350701299da96642ee084f5ce631550" 6316 + dependencies = [ 6317 + "memchr", 6309 6318 ] 6310 6319 6311 6320 [[package]] ··· 11474 11483 11475 11484 [[package]] 11476 11485 name = "tokio" 11477 - version = "1.51.1" 11486 + version = "1.52.0" 11478 11487 source = "registry+https://github.com/rust-lang/crates.io-index" 11479 - checksum = "f66bf9585cda4b724d3e78ab34b73fb2bbaba9011b9bfdf69dc836382ea13b8c" 11488 + checksum = "a91135f59b1cbf38c91e73cf3386fca9bb77915c45ce2771460c9d92f0f3d776" 11480 11489 dependencies = [ 11481 11490 "bytes", 11482 11491 "libc",
+1 -1
forkme.lock
··· 1 - 316e6215a4a15723a05ec9d01017193800140e58 1 + 2dedd4087e69fbad21fcfb3ebce8fcfab9b58bba
+3 -3
patches/components/layout/layout_impl.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -213,6 +213,10 @@ 3 + @@ -216,6 +216,10 @@ 4 4 5 5 /// See [Layout::needs_accessibility_update()]. 6 6 needs_accessibility_update: Cell<bool>, ··· 11 11 } 12 12 13 13 pub struct LayoutFactoryImpl(); 14 - @@ -253,12 +257,25 @@ 14 + @@ -256,12 +260,25 @@ 15 15 fn set_viewport_details(&mut self, viewport_details: ViewportDetails) -> bool { 16 16 let device = self.stylist.device_mut(); 17 17 let device_pixel_ratio = Scale::new(viewport_details.hidpi_scale_factor.get()); ··· 41 41 device.set_viewport_size(viewport_details.size); 42 42 device.set_device_pixel_ratio(device_pixel_ratio); 43 43 self.device_has_changed = true; 44 - @@ -751,6 +768,7 @@ 44 + @@ -755,6 +772,7 @@ 45 45 user_stylesheets: config.user_stylesheets, 46 46 accessibility_tree: Default::default(), 47 47 needs_accessibility_update: Cell::new(false),
+30 -30
patches/components/script/dom/document/document_event_handler.rs.patch
··· 15 15 }; 16 16 #[cfg(feature = "gamepad")] 17 17 use embedder_traits::{ 18 - @@ -32,7 +32,9 @@ 18 + @@ -33,7 +33,9 @@ 19 19 use script_bindings::codegen::GenericBindings::HTMLElementBinding::HTMLElementMethods; 20 20 use script_bindings::codegen::GenericBindings::HTMLLabelElementBinding::HTMLLabelElementMethods; 21 21 use script_bindings::codegen::GenericBindings::KeyboardEventBinding::KeyboardEventMethods; ··· 25 25 use script_bindings::codegen::GenericBindings::PerformanceBinding::PerformanceMethods; 26 26 use script_bindings::codegen::GenericBindings::ShadowRootBinding::ShadowRootMethods; 27 27 use script_bindings::codegen::GenericBindings::TouchBinding::TouchMethods; 28 - @@ -46,8 +48,11 @@ 28 + @@ -47,8 +49,11 @@ 29 29 use script_bindings::str::DOMString; 30 30 use script_traits::ConstellationInputEvent; 31 31 use servo_base::generic_channel::GenericCallback; ··· 38 38 use style::Atom; 39 39 use style_traits::CSSPixel; 40 40 use webrender_api::ExternalScrollId; 41 - @@ -58,13 +63,14 @@ 41 + @@ -59,13 +64,14 @@ 42 42 use crate::dom::bindings::root::MutNullableDom; 43 43 use crate::dom::bindings::trace::NoTrace; 44 44 use crate::dom::clipboardevent::ClipboardEventType; ··· 54 54 use crate::dom::inputevent::HitTestResult; 55 55 use crate::dom::interactive_element_command::InteractiveElementCommand; 56 56 use crate::dom::keyboardevent::KeyboardEvent; 57 - @@ -78,6 +84,7 @@ 57 + @@ -79,6 +85,7 @@ 58 58 }; 59 59 use crate::drag_data_store::{DragDataStore, Kind, Mode}; 60 60 use crate::realms::enter_realm; ··· 62 62 63 63 /// A data structure used for tracking the current click count. This can be 64 64 /// reset to 0 if a mouse button event happens at a sufficient distance or time 65 - @@ -141,6 +148,56 @@ 65 + @@ -142,6 +149,56 @@ 66 66 } 67 67 } 68 68 ··· 119 119 /// The [`DocumentEventHandler`] is a structure responsible for handling input events for 120 120 /// the [`crate::Document`] and storing data related to event handling. It exists to 121 121 /// decrease the size of the [`crate::Document`] structure. 122 - @@ -199,6 +256,20 @@ 122 + @@ -200,6 +257,20 @@ 123 123 access_key_handlers: DomRefCell<FxHashMap<NoTrace<Code>, Dom<HTMLElement>>>, 124 124 /// <https://html.spec.whatwg.org/multipage/#sequential-focus-navigation-starting-point> 125 125 sequential_focus_navigation_starting_point: MutNullableDom<Node>, ··· 140 140 } 141 141 142 142 impl DocumentEventHandler { 143 - @@ -223,6 +294,9 @@ 143 + @@ -224,6 +295,9 @@ 144 144 next_touch_pointer_id: Cell::new(1), 145 145 access_key_handlers: Default::default(), 146 146 sequential_focus_navigation_starting_point: Default::default(), ··· 150 150 } 151 151 } 152 152 153 - @@ -562,6 +636,198 @@ 153 + @@ -563,6 +637,198 @@ 154 154 } 155 155 } 156 156 ··· 347 347 + } 348 348 + 349 349 /// <https://w3c.github.io/uievents/#handle-native-mouse-move> 350 - fn handle_native_mouse_move_event(&self, input_event: &ConstellationInputEvent, can_gc: CanGc) { 351 - // Ignore all incoming events without a hit test. 352 - @@ -576,6 +842,57 @@ 350 + fn handle_native_mouse_move_event( 351 + &self, 352 + @@ -581,6 +847,57 @@ 353 353 return; 354 354 } 355 355 ··· 372 372 + 373 373 + // Fire mouseout event on the old target 374 374 + MouseEvent::new_for_platform_motion_event( 375 + + cx, 375 376 + &self.window, 376 377 + FireMouseEventType::Out, 377 378 + &hit_test_result, 378 379 + input_event, 379 - + can_gc, 380 380 + ) 381 381 + .upcast::<Event>() 382 - + .fire(old_target.upcast(), can_gc); 382 + + .fire(old_target.upcast(), CanGc::from_cx(cx)); 383 383 + 384 384 + // Fire mouseleave events up the ancestor chain 385 385 + self.handle_mouse_enter_leave_event( 386 + + cx, 386 387 + DomRoot::from_ref(old_target.upcast::<Node>()), 387 388 + None, // No new target in the parent document 388 389 + FireMouseEventType::Leave, 389 390 + &hit_test_result, 390 391 + input_event, 391 - + can_gc, 392 392 + ); 393 393 + 394 394 + // Clear the hover target since mouse is now in embedded iframe ··· 407 407 // Update the cursor when the mouse moves, if it has changed. 408 408 self.set_cursor(Some(hit_test_result.cursor)); 409 409 410 - @@ -810,6 +1127,12 @@ 410 + @@ -818,6 +1135,12 @@ 411 411 return; 412 412 }; 413 413 ··· 420 420 debug!( 421 421 "{:?}: at {:?}", 422 422 event.action, hit_test_result.point_in_frame 423 - @@ -923,7 +1246,7 @@ 423 + @@ -933,7 +1256,7 @@ 424 424 self.maybe_show_context_menu( 425 425 node.upcast(), 426 426 &hit_test_result, 427 427 - input_event, 428 428 + ContextMenuSource::Mouse(input_event), 429 - can_gc, 429 + CanGc::from_cx(cx), 430 430 ); 431 431 } 432 - @@ -1052,9 +1375,30 @@ 432 + @@ -1064,9 +1387,30 @@ 433 433 &self, 434 434 target: &EventTarget, 435 435 hit_test_result: &HitTestResult, ··· 461 461 // <https://w3c.github.io/pointerevents/#contextmenu> 462 462 let menu_event = PointerEvent::new( 463 463 &self.window, // window 464 - @@ -1068,25 +1412,25 @@ 464 + @@ -1080,25 +1424,25 @@ 465 465 hit_test_result 466 466 .point_relative_to_initial_containing_block 467 467 .to_i32(), ··· 506 506 can_gc, 507 507 ); 508 508 menu_event.upcast::<Event>().set_composed(true); 509 - @@ -1103,6 +1447,89 @@ 509 + @@ -1115,6 +1459,89 @@ 510 510 }; 511 511 } 512 512 ··· 595 595 + 596 596 fn handle_touch_event( 597 597 &self, 598 + cx: &mut JSContext, 599 + @@ -1121,6 +1548,29 @@ 598 600 event: EmbedderTouchEvent, 599 - @@ -1109,6 +1536,29 @@ 600 601 input_event: &ConstellationInputEvent, 601 - can_gc: CanGc, 602 602 ) -> InputEventResult { 603 603 + // Check if this touch was previously forwarded to an embedded webview. 604 604 + // If so, continue forwarding to the same webview regardless of current hit test. ··· 626 626 // Ignore all incoming events without a hit test. 627 627 let Some(hit_test_result) = self.window.hit_test_from_input_event(input_event) else { 628 628 self.update_active_touch_points_when_early_return(event); 629 - @@ -1115,6 +1565,16 @@ 629 + @@ -1127,6 +1577,16 @@ 630 630 return Default::default(); 631 631 }; 632 632 ··· 643 643 let TouchId(identifier) = event.touch_id; 644 644 645 645 let Some(element) = hit_test_result 646 - @@ -1246,6 +1706,10 @@ 646 + @@ -1262,6 +1722,10 @@ 647 647 // <https://html.spec.whatwg.org/multipage/#selector-active> 648 648 // If the element is being actively pointed at the element is being activated. 649 649 self.element_for_activation(element).set_active_state(true); ··· 654 654 (current_target, pointer_touch) 655 655 }, 656 656 _ => { 657 - @@ -1278,10 +1742,31 @@ 658 - can_gc, 657 + @@ -1294,10 +1758,31 @@ 658 + CanGc::from_cx(cx), 659 659 ); 660 660 661 661 - // Update or remove the stored touch ··· 687 687 }, 688 688 TouchEventType::Up | TouchEventType::Cancel => { 689 689 active_touch_points.swap_remove(index); 690 - @@ -1289,6 +1774,17 @@ 690 + @@ -1305,6 +1790,17 @@ 691 691 // <https://html.spec.whatwg.org/multipage/#selector-active> 692 692 // If the element is being actively pointed at the element is being activated. 693 693 self.element_for_activation(element).set_active_state(false); ··· 705 705 }, 706 706 TouchEventType::Down => unreachable!("Should have been handled above"), 707 707 } 708 - @@ -1332,6 +1828,19 @@ 708 + @@ -1352,6 +1848,19 @@ 709 709 ); 710 710 let event = touch_event.upcast::<Event>(); 711 - event.fire(&touch_dispatch_target, can_gc); 711 + event.fire(&touch_dispatch_target, CanGc::from_cx(cx)); 712 712 + 713 713 + // If this touch triggered a context menu via long-press, prevent click synthesis 714 714 + if let InputEvent::Touch(ref touch_ev) = input_event.event.event { ··· 725 725 event.flags().into() 726 726 } 727 727 728 - @@ -1470,6 +1979,16 @@ 728 + @@ -1490,6 +1999,16 @@ 729 729 return Default::default(); 730 730 }; 731 731
+1 -1
patches/components/script/dom/globalscope.rs.patch
··· 61 61 /// Handle the transfer of a port in the current task. 62 62 pub(crate) fn mark_port_as_transferred(&self, port_id: &MessagePortId) -> MessagePortImpl { 63 63 if let MessagePortState::Managed(_id, message_ports) = 64 - @@ -3113,6 +3146,16 @@ 64 + @@ -3111,6 +3144,16 @@ 65 65 self.inherited_secure_context 66 66 } 67 67
+1 -1
patches/components/script/messaging.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -110,6 +110,13 @@ 3 + @@ -109,6 +109,13 @@ 4 4 ScriptThreadMessage::UpdatePinchZoomInfos(id, _) => Some(*id), 5 5 ScriptThreadMessage::SetAccessibilityActive(..) => None, 6 6 ScriptThreadMessage::TriggerGarbageCollection => None,
+5 -5
patches/components/script/script_thread.rs.patch
··· 56 56 use crate::dom::servoparser::{ParserContext, ServoParser}; 57 57 use crate::dom::types::DebuggerGlobalScope; 58 58 #[cfg(feature = "webgpu")] 59 - @@ -1938,12 +1946,51 @@ 59 + @@ -1942,12 +1950,51 @@ 60 60 self.handle_refresh_cursor(pipeline_id); 61 61 }, 62 62 ScriptThreadMessage::PreferencesUpdated(updates) => { ··· 112 112 ScriptThreadMessage::ForwardKeyboardScroll(pipeline_id, scroll) => { 113 113 if let Some(document) = self.documents.borrow().find_document(pipeline_id) { 114 114 document.event_handler().do_keyboard_scroll(scroll); 115 - @@ -1983,6 +2030,35 @@ 115 + @@ -1982,6 +2029,35 @@ 116 116 ScriptThreadMessage::TriggerGarbageCollection => unsafe { 117 117 JS_GC(*GlobalScope::get_cx(), GCReason::API); 118 118 }, ··· 148 148 } 149 149 } 150 150 151 - @@ -3010,6 +3086,9 @@ 151 + @@ -3009,6 +3085,9 @@ 152 152 .documents 153 153 .borrow() 154 154 .find_iframe(parent_pipeline_id, browsing_context_id); ··· 158 158 if let Some(frame_element) = frame_element { 159 159 frame_element.update_pipeline_id(new_pipeline_id, reason, cx); 160 160 } 161 - @@ -3029,6 +3108,7 @@ 161 + @@ -3028,6 +3107,7 @@ 162 162 // is no need to pass along existing opener information that 163 163 // will be discarded. 164 164 None, ··· 166 166 ); 167 167 } 168 168 } 169 - @@ -3313,6 +3393,155 @@ 169 + @@ -3312,6 +3392,155 @@ 170 170 } 171 171 } 172 172
+4 -4
patches/components/script_bindings/codegen/Bindings.conf.patch
··· 12 12 'Attr': { 13 13 'cx':['SetValue'], 14 14 }, 15 - @@ -300,6 +305,11 @@ 15 + @@ -302,6 +307,11 @@ 16 16 'cx': ['CheckValidity', 'ReportValidity'], 17 17 }, 18 18 ··· 24 24 'EventSource': { 25 25 'weakReferenceable': True, 26 26 }, 27 - @@ -698,9 +708,9 @@ 27 + @@ -708,9 +718,9 @@ 28 28 }, 29 29 30 30 'Navigator': { ··· 37 37 }, 38 38 39 39 'WakeLock': { 40 - @@ -737,6 +747,11 @@ 40 + @@ -747,6 +757,11 @@ 41 41 'cx': ['CreateLinearGradient', 'CreatePattern', 'CreateRadialGradient', 'GetTransform'], 42 42 }, 43 43 ··· 49 49 'PerformanceObserver': { 50 50 'canGc': ['SupportedEntryTypes'], 51 51 }, 52 - @@ -891,7 +906,8 @@ 52 + @@ -901,7 +916,8 @@ 53 53 }, 54 54 55 55 'Window': {
+1 -1
patches/components/shared/script/lib.rs.patch
··· 52 52 /// Notify the `ScriptThread` that the Servo renderer is no longer waiting on 53 53 /// asynchronous image uploads for the given `Pipeline`. These are mainly used 54 54 /// by canvas to perform uploads while the display list is being built. 55 - @@ -328,6 +346,24 @@ 55 + @@ -326,6 +344,24 @@ 56 56 SetAccessibilityActive(PipelineId, bool, Epoch), 57 57 /// Force a garbage collection in this script thread. 58 58 TriggerGarbageCollection,