Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: electron/electron
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v41.0.3
Choose a base ref
...
head repository: electron/electron
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v41.1.0
Choose a head ref
  • 20 commits
  • 50 files changed
  • 19 contributors

Commits on Mar 18, 2026

  1. docs: fix markdown formatting in fuses.md (#50333)

    * docs: fix markdown formatting in fuses.md
    
    * Use bulleted list (was being run together on one line)
    * Wrap ASCII diagram in code block
    
    Co-authored-by: Ryan Zimmerman <ryan@exodus.io>
    
    * docs: apply suggestions from code review
    
    Co-authored-by: John Kleinschmidt <kleinschmidtorama@gmail.com>
    Co-authored-by: Erick Zhao <erick@hotmail.ca>
    
    Co-authored-by: Ryan Zimmerman <ryan@exodus.io>
    
    * docs: fix misapplied suggestion
    
    Co-authored-by: Ryan Zimmerman <ryan@exodus.io>
    
    ---------
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Ryan Zimmerman <ryan@exodus.io>
    trop[bot] and RyanZim-exo authored Mar 18, 2026
    Configuration menu
    Copy the full SHA
    4a98b4e View commit details
    Browse the repository at this point in the history
  2. fix: ensure WebContents::WasShown runs when window is shown (#50343)

    Avoids a freeze when failing to enter fullscreen on macOS.
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: John Beutner <beutner.john@gmail.com>
    trop[bot] and cptpcrd authored Mar 18, 2026
    Configuration menu
    Copy the full SHA
    a0f0133 View commit details
    Browse the repository at this point in the history
  3. fix: correctly track BaseWindow::IsActive() on MacOS (#50340)

    fix: correctly set IsActive() in BaseWindow on MacOS
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Kyle Cutler <kycutler@microsoft.com>
    trop[bot] and kycutler authored Mar 18, 2026
    Configuration menu
    Copy the full SHA
    aba01d3 View commit details
    Browse the repository at this point in the history
  4. chore: bump chromium to 146.0.7680.153 (41-x-y) (#50346)

    * chore: bump chromium in DEPS to 146.0.7680.153
    
    * chore: update patches
    
    ---------
    
    Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
    Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
    electron-roller[bot] and patchup[bot] authored Mar 18, 2026
    Configuration menu
    Copy the full SHA
    3d8105a View commit details
    Browse the repository at this point in the history

Commits on Mar 19, 2026

  1. chore: Respect HTTP(S) proxy env variable for Yarn (#50350)

    Respect HTTP(S) proxy env variable for Yarn
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Filip Mösner <filip.mosner@seznam.cz>
    trop[bot] and panther7 authored Mar 19, 2026
    Configuration menu
    Copy the full SHA
    99d879b View commit details
    Browse the repository at this point in the history
  2. fix: always call the original impl in swizzled mousedown impls (#50354)

    fix: always call the original implementation in swizzled mousedown implementations
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Noah Gregory <noahmgregory@gmail.com>
    trop[bot] and nmggithub authored Mar 19, 2026
    Configuration menu
    Copy the full SHA
    af3e0fc View commit details
    Browse the repository at this point in the history
  3. ci: output build cache hit rate as GHA annotation (#50370)

    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
    trop[bot] and dsanders11 authored Mar 19, 2026
    Configuration menu
    Copy the full SHA
    9a7381a View commit details
    Browse the repository at this point in the history
  4. fix: improved the appearance of shadows and borders on frameless wind…

    …ows on Wayland (#50213)
    
    fix: improved the appearance of shadows and borders on frameless windows on Wayland (#50007)
    
    * remove painting from linux frame layout
    
    * use chromium csd strategy for frameless windows
    
    * Apply suggestions from code review
    
    Remove unneeded virtual methods
    
    
    
    * removed inline destructors
    
    ---------
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Mitchell Cohen <mitch.cohen@me.com>
    trop[bot] and mitchchn authored Mar 19, 2026
    Configuration menu
    Copy the full SHA
    b0055e0 View commit details
    Browse the repository at this point in the history

Commits on Mar 20, 2026

  1. fix: correct utility process exit code on Windows (#50386)

    * fix: correct utility process exit code on Windows
    
    On Windows, process exit codes are 32-bit unsigned integers (DWORD).
    When passed from Chromium to Electron as a signed int and then
    implicitly converted to uint64_t, values with the high bit set
    (e.g., NTSTATUS codes) undergo sign extension, producing incorrect
    values.
    
    Cast the exit code to uint32_t before widening to uint64_t to
    prevent sign extension and preserve the original Windows exit code.
    
    Fixes #49455
    
    Co-authored-by: João Silva <joaomrsilva@tecnico.ulisboa.pt>
    
    * fix: narrow HandleTermination and Shutdown to uint32_t, add tests
    
    Co-authored-by: João Silva <joaomrsilva@tecnico.ulisboa.pt>
    
    ---------
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: João Silva <joaomrsilva@tecnico.ulisboa.pt>
    trop[bot] and Jomy2323 authored Mar 20, 2026
    Configuration menu
    Copy the full SHA
    43bb939 View commit details
    Browse the repository at this point in the history
  2. fix: don't re-parse URL unnecessarily when handling dialogs (#50399)

    * fix: fallback to opaque URL when needed inside dialog callback
    
    Co-authored-by: Noah Gregory <noahmgregory@gmail.com>
    
    * refactor: remove additional URL parsing entirely when showing dialogs
    
    Co-authored-by: Noah Gregory <noahmgregory@gmail.com>
    
    * test: add crash test case for URL-less dialogs
    
    Co-authored-by: Noah Gregory <noahmgregory@gmail.com>
    
    * refactor: exit on events instead of on timeout for dialog crash test
    
    Co-authored-by: Robo <hop2deep@gmail.com>
    
    Co-authored-by: Noah Gregory <noahmgregory@gmail.com>
    
    * style: make linter happy
    
    Co-authored-by: Noah Gregory <noahmgregory@gmail.com>
    
    * style: make linter actually happy
    
    Co-authored-by: Noah Gregory <noahmgregory@gmail.com>
    
    * fix: address failing `safeDialogs` tests
    
    Co-authored-by: Noah Gregory <noahmgregory@gmail.com>
    
    ---------
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Noah Gregory <noahmgregory@gmail.com>
    trop[bot] and nmggithub authored Mar 20, 2026
    Configuration menu
    Copy the full SHA
    8b9e721 View commit details
    Browse the repository at this point in the history

Commits on Mar 25, 2026

  1. feat: support notification priority on Windows (#50382)

    * feat: support notification priority on Windows
    
    Add Windows notifications support urgency/priority levels.
    This maps the existing `urgency` option (previously Linux-only) to
    Windows toast notification priorities:
    
    - 'critical' maps to ToastNotificationPriority_High, which sorts the
      notification above default-priority items in Action Center.
    - 'normal' and 'low' both map to ToastNotificationPriority_Default.
    
    Note that on Windows, 'critical' priority does not prevent the toast
    from being auto-dismissed. Users should additionally set `timeoutType`
    to 'never' for that behavior.
    
    Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
    
    * chore: make linter happy
    
    Co-authored-by: Charles Kerr <charles@charleskerr.com>
    
    ---------
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
    Co-authored-by: Charles Kerr <charles@charleskerr.com>
    3 people authored Mar 25, 2026
    Configuration menu
    Copy the full SHA
    2962293 View commit details
    Browse the repository at this point in the history
  2. feat: add accessibilityDisplayShouldDifferentiateWithoutColor on macOS (

    #50408)
    
    feat: add nativeTheme.shouldDifferentiateWithoutColor on macOS
    
    Adds nativeTheme.shouldDifferentiateWithoutColor on macOS that maps to
    NSWorkspace.accessibilityDisplayShouldDifferentiateWithoutColor. If true,
    the user has indicated that they prefer UI that differentiates items with
    something other than color alone. This is useful for users with color
    vision deficiency.
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Robert Böhnke <robb@robb.is>
    trop[bot] and robb authored Mar 25, 2026
    Configuration menu
    Copy the full SHA
    6a8d187 View commit details
    Browse the repository at this point in the history

Commits on Mar 26, 2026

  1. fix: crash in clipboard.readImage() on malformed image data (#50492)

    gfx::PNGCodec::Decode() returns a null SkBitmap when it fails to decode
    the clipboard contents as a PNG. Passing that null bitmap to
    gfx::Image::CreateFrom1xBitmap() triggers a crash.
    
    Return an empty gfx::Image instead, matching the existing null-check
    pattern in skia_util.cc.
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Sam Attard <sattard@anthropic.com>
    trop[bot] and MarshallOfSound authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    878a763 View commit details
    Browse the repository at this point in the history
  2. fix: crash calling OSR shared texture release() after texture GC'd (#…

    …50501)
    
    The weak persistent tracking the OffscreenReleaseHolderMonitor was tied
    to the texture object, but the release() closure holds a raw pointer to
    the monitor via its v8::External data. If JS retained texture.release
    while dropping the texture itself, the monitor would be freed on GC and
    a later release() call would crash.
    
    Track the release function instead of the texture object. Since the
    texture holds release as a property, this keeps the monitor alive as
    long as either is reachable.
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Sam Attard <sattard@anthropic.com>
    trop[bot] and MarshallOfSound authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    3dcb641 View commit details
    Browse the repository at this point in the history
  3. fix: fall back to default DPI when GTK returns 0 on Linux (#50489)

    GetDefaultPrinterDPI() creates a blank GtkPrintSettings and reads
    its resolution, which returns 0 for uninitialized settings. With
    DPI=0, SetPrintableAreaIfValid() computes a zero scale factor,
    producing empty page dimensions that fail PrintMsgPrintParamsIsValid().
    
    Fall back to kDefaultPdfDpi (72) when GTK returns 0, matching the
    existing Windows fallback pattern when CreateDC fails.
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
    trop[bot] and codebytere authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    707541d View commit details
    Browse the repository at this point in the history
  4. fix: hex-encode Windows notification icon temp filenames (#50483)

    * fix: hex-encode Windows notification icon temp filenames
    
    NotificationPresenterWin was using SHA1HashString(origin.spec()) directly
    as the basename for the temporary PNG written for toast icons.
    
    SHA1HashString returns raw digest bytes, so the generated filename could
    contain invalid path characters on Windows. That caused WriteFile to fail
    when saving notification icons, which left toast XML without the expected
    icon path.
    
    Hex-encode the digest before appending .png so the temporary filename is
    filesystem-safe while keeping deterministic naming for a given origin.
    
    Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
    
    * Update shell/browser/notifications/win/notification_presenter_win.cc
    
    Co-authored-by: Robo <hop2deep@gmail.com>
    
    Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
    
    ---------
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
    trop[bot] and codebytere authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    aedea57 View commit details
    Browse the repository at this point in the history
  5. refactor: remove dead named-window lookup from guest-window-manager (#…

    …50497)
    
    The frameNamesToWindow map was a holdover from the BrowserWindowProxy
    IPC shim. Since nativeWindowOpen became the only code path, Blink's
    FrameTree::FindOrCreateFrameForNavigation resolves named window targets
    directly in the renderer, scoped to the opener's browsing context
    group. When a matching named window exists, Blink navigates it without
    ever sending a CreateNewWindow IPC to the browser, so this map was
    never consulted in the legitimate same-opener case.
    
    The only time the map found a match was when two unrelated renderers
    happened to use the same target name, in which case openGuestWindow
    would short-circuit before consuming the guest WebContents that
    Chromium had already created for the new window, leaking it.
    
    Adds a test verifying Blink handles same-opener named-target reuse
    end-to-end without any browser-side tracking.
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Sam Attard <sattard@anthropic.com>
    trop[bot] and MarshallOfSound authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    880b1e0 View commit details
    Browse the repository at this point in the history
  6. fix: [a11y] fire AXMenuOpened event when ARIA menu is added to DOM (#…

    …50506)
    
    * fix: fire AXMenuOpened event when a visible ARIA menu instance is added to the DOM
    
    Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
    
    * fix: remove redundent FireMenuPopupEndForDeletedMenus
    
    MENU_POPUP_END for deleted menus is already handled by
    AXTreeManager::OnNodeWillBeDeleted, which
    fires the event directly on the menu node before destruction.
    
    Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
    
    * chore: add feature flag (kDynamicMenuPopupEvents)
    
    Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
    
    * chore: update patches
    
    Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
    
    * chore: update patches after trop
    
    ---------
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
    Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
    Co-authored-by: John Kleinschmidt <kleinschmidtorama@gmail.com>
    4 people authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    cbae32a View commit details
    Browse the repository at this point in the history
  7. chore: bump chromium to 146.0.7680.166 (41-x-y) (#50458)

    * chore: bump chromium in DEPS to 146.0.7680.164
    
    * chore: update patches
    
    * chore: bump chromium in DEPS to 146.0.7680.166
    
    ---------
    
    Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
    Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
    electron-roller[bot] and patchup[bot] authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    7e36ac6 View commit details
    Browse the repository at this point in the history
  8. fix: outdated execution path for COM activation (#50519)

    * fix: outdated execution path
    
    Co-authored-by: Jan Hannemann <jan.hannemann@outlook.com>
    
    * fix: use stub exe when detected
    
    Co-authored-by: Jan Hannemann <jan.hannemann@outlook.com>
    
    ---------
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Jan Hannemann <jan.hannemann@outlook.com>
    trop[bot] and bitdisaster authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    eb49ed9 View commit details
    Browse the repository at this point in the history
Loading