Chuyển đến nội dung chính

Bài đăng

Đang hiển thị bài đăng từ Tháng 8, 2026

macOS 26 Tahoe: Liquid Glass comes to the Mac — and it's the last stop for Intel

macOS 26, named Tahoe , is Apple’s current Mac operating system, and it carries two stories at once. The first is cosmetic and immediate: the Mac now wears Liquid Glass , its biggest design change since 2013. The second is structural and final: Tahoe is the last version of macOS to support Intel Macs . Together they make this a transitional release worth understanding whether you use a Mac or build software for one. Liquid Glass on the desktop Apple brought its new translucent material to the Mac, and it goes deep: desktop icons, folders, the Dock, in-app navigation, menus, toolbars, and Control Center all pick up the glass treatment. A transparent menu bar makes the display feel larger, and Liquid Glass sidebars and toolbars reflect and refract the content behind them. Apple also added personalization borrowed from iOS — light, dark, and clear icon tints, plus custom accent and text-highlight colors. A Phone app on the Mac One of the more genuinely useful additions is a Phone app ...

The fall 2026 iPhone: a foldable joins the iPhone 18 Pro, and Apple splits its launch calendar

Apple is reportedly about to do something it has not done in the modern iPhone era: split its flagship lineup across two seasons. According to widely reported supply-chain and analyst accounts, fall 2026 will bring the iPhone 18 Pro, iPhone 18 Pro Max, and Apple’s first foldable iPhone , while the standard iPhone 18, an iPhone 18e, and possibly an iPhone Air 2 slide to a spring 2027 launch. As always with unreleased hardware, treat the specifics as rumor — but the direction is consistent across sources. The first foldable iPhone The most significant part of this story is the foldable iPhone , often called the “iPhone Fold.” Reports point to roughly a 5.4-inch display when closed and around a 7.8-inch display when open, with a “nearly invisible” crease thanks to a high-quality hinge. Pricing is rumored to start near $2,500, positioning it as a halo device rather than a mainstream one. If accurate, this matters far beyond Apple’s lineup. A foldable from Apple would validate the form f...

iPhone 17 Pro review: the A19 Pro, an aluminum comeback, and an 8x telephoto

The iPhone 17 Pro, which Apple released in September 2025 starting at $1,099, is now the device most demanding iPhone users carry — and the reference target most mobile developers should be testing against. Nearly a year on, it is a clearer story than it looked at launch: a thermal and performance rethink wrapped in a material Apple abandoned two generations ago. Aluminum is back — and it is the point The headline hardware change is that Apple moved the Pro back to an aluminum unibody , away from the titanium of recent years. That sounds like a step down until you understand why: aluminum is lighter than titanium and disperses heat better. Apple laser-welded a vapor chamber into that aluminum frame, and the result is what the company calls its best-ever sustained performance and “an enormous leap in battery life.” For anyone who has watched an iPhone throttle during a long export, a heavy game, or an on-device AI task, this is the meaningful change. Peak benchmarks matter less than...

iOS 26 and Liquid Glass: What Apple's biggest redesign in a decade means for mobile developers

For nine years, the iPhone looked essentially the same. iOS 7 flattened Apple’s software in 2013, and every release since refined that flat, opaque aesthetic without fundamentally changing it. iOS 26, the version currently shipping to iPhones worldwide, ends that era. Its headline feature is Liquid Glass — a translucent material that Apple has threaded through the entire operating system, from the lock screen to app toolbars. What Liquid Glass actually is Liquid Glass is a rendering material, not just a color palette. Like real glass, it lets light and the color of whatever sits behind it shine through, refracting and reflecting as content scrolls underneath. Apple describes it as the foundation for “the next decade of iOS design,” which signals this is not a one-release experiment. It is the new baseline. For users, the effect is immediately visible: transparent toolbars, tab bars that pick up the color of the content behind them, and controls that feel like they are floating abov...

Flutter Widget Previews are stable: a practical guide to @Preview

Widget Previews shipped as experimental back in 3.35, and a lot of developers tried it once, found it slow, and went back to hot reload. Flutter 3.47 marks it stable , with local build caching and an abstract theming API that makes the feature worth a second look. If you build design systems, component libraries, or anything with more than three visual states, this changes your inner loop. The pitch is narrow and honest: the previewer renders individual widgets in isolation, without booting your app, navigating to the right screen, or faking the right state. That is a different job from hot reload, and it is the job hot reload has always been bad at. Starting the previewer From your IDE — Android Studio, IntelliJ, or VS Code — the previewer starts automatically; open the Flutter Widget Preview tab in the sidebar. From a terminal: flutter widget-preview start That launches a local server and opens a live preview environment in your browser. Builds are cached in a .widget_previe...

Shipping Flutter Web on WebAssembly: the migration, the browsers, the headers

WebAssembly is the largest single bet in Flutter’s 2026 roadmap, and 3.47 moves it forward again with experimental deferred loading. The Q2 2026 survey rates Web at 72% satisfaction — the second-lowest platform score — and load performance is a big part of why. Wasm is the intended fix. But shipping Wasm today is not a flag. It is a migration, a browser support matrix with a large hole in it, and two HTTP headers that most people forget. The build commands # Development flutter run -d chrome --wasm # Production flutter build web --wasm # Production, with symbolication for error monitoring flutter build web --wasm --source-maps # Staging/QA — readable stack traces, ~47% larger binary flutter build web --wasm --no-strip-wasm Use --source-maps for anything you point Sentry or a similar service at; it produces main.dart.wasm.map . Use --no-strip-wasm only in staging — the size cost is real. Flutter 3.47 also adds experimental deferred loading: flutter bui...

The UIScene migration: the iOS change that will crash unmigrated Flutter apps

Most Flutter migrations are optional until they are annoying. This one is different: once Apple enforces the requirement, apps that have not adopted the UIScene lifecycle will crash on startup . Not degrade. Crash. Apple requires UIKit apps built with the latest SDK to use the UIScene lifecycle starting in the release following iOS 26. Apple has not announced the exact enforcement date. Flutter has supported the migration since 3.38 , and 3.47 makes the surrounding platform changes concrete by raising the floors: iOS 13 → 15 and macOS 10.15 → 12 , to support Xcode 27. What UIScene actually changes The conceptual shift is a split of responsibilities that used to live in one object: AppDelegate now handles process events and overall application lifecycle UISceneDelegate handles UI lifecycle — foreground, background, active, resign Two consequences follow, and both break code: Plugin registration moves. Register in didInitializeImplicitFlutterEngine , not application:didFini...

Swift Package Manager is the default now — and CocoaPods has a deadline

Most Flutter developers have already migrated to Swift Package Manager without noticing. It has been enabled by default since Flutter 3.44 , and the tooling adds the integration to your Xcode project the first time you build after upgrading. The reason to pay attention now is a date: the CocoaPods registry becomes read-only on December 2, 2026 . After that, opting out stops being a supported escape hatch. Flutter 3.47 reports that 92 of the top 100 iOS plugins have migrated to Swift Package Manager . The long tail is what will bite you, not the head of the distribution. What actually changes in your project When SwiftPM is enabled and you build, Flutter modifies your Xcode project in three ways: Adds FlutterGeneratedPluginSwiftPackage as a package dependency of the Runner target. Adds a Run Prepare Flutter Framework Script pre-action to your build scheme. Resolves and downloads the Swift packages your Flutter plugins depend on. That generated package lives at ios/Flutter/ep...

Multi-window on Flutter desktop: what shipped in 3.47, and what to use today

Multi-window is the oldest item on the Flutter desktop wishlist. A desktop app that cannot open a second window is not really a desktop app — no detached inspector, no tear-off panel, no floating tool palette, no proper context menu that escapes the main window’s bounds. Flutter 3.41 shipped experimental multi-window APIs for desktop. Flutter 3.47 fills in a large amount of the plumbing underneath them. What it does not do is make them stable, and being clear about that distinction will save you a painful quarter. What actually landed in 3.47 The desktop work in this release is mostly engine-level, and it is substantial: Popup windows. Win32 and Linux both got popup window implementations. This is the foundation for menus, tooltips, and dropdowns that render outside the parent window’s bounds — a category of UI that Flutter desktop has faked with overlays until now. Sized-to-content windows. Regular and dialog windows can now size themselves to their content on Win32, and the de...

Migrating to material_ui and cupertino_ui: the design system leaves the SDK

For nine years, import 'package:flutter/material.dart'; has been the first line of almost every Flutter file ever written. Flutter 3.47 begins ending that. material_ui and cupertino_ui are now standalone packages on pub.dev , both at 1.0, both published by the verified flutter.dev publisher. The copies inside the SDK still work — and are scheduled for formal deprecation in the November stable release . This is a bigger change than the diff suggests, so it is worth understanding the reasoning before you run the migration tool. Why decouple at all The Q2 2026 survey answers this more clearly than any blog post. Across every focus area, satisfaction is high: Dart at 92%, Android at 91%, the core framework at 90% . One number breaks the pattern — Cupertino widgets at 61%, down 6 points , the lowest-rated area in the survey. The structural cause is release cadence. Bound to the SDK, Cupertino could only ship fixes on the quarterly stable train. Apple ships design changes whe...

Impeller is now the default on macOS, Windows and Linux

Impeller has been the only renderer on iOS for years and the default on Android API 29+ for a while. Flutter 3.47 finishes the job: Impeller is now the default on macOS, Windows and Linux . Only Flutter Web still runs on Skia. If you ship desktop apps, this is the change in 3.47 most likely to alter how your app actually looks and feels — and the one most likely to surface a rendering bug you have never seen before. The problem Impeller was built to solve Skia compiles shaders at runtime , on demand, the first time a particular drawing operation appears. That is why a Flutter app could stutter the first time you opened a specific screen, ran a specific animation, or applied a specific blur — and then run perfectly forever after. It was not your code. It was the renderer compiling a program mid-frame. Impeller compiles a smaller, simpler set of shaders offline, at engine build time . Pipeline state objects are built upfront rather than per frame. Caching is explicit and engine-contr...