On Wed, 8 Jul 2026 06:17:27 GMT, Ambarish Rapte <[email protected]> wrote:

> Update Webkit to v625.1
> Build and sanity testing on Mac, Linux and Windows platforms is all green.
> 
> Please note that this PR will be integrated after the fork of jfx27.
> 
> 
> 
> 
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

My testing looks good, but while reviewing the code changes specific to the 
Java port (including files with `#if PLATFORM(JAVA)` or similar), I spotted a 
few thing:

1. `WebPage.cpp`:

For printing, `m_printContext` is now initialized in the constructor, so the 
following two lines are wrong:

In `WebPage::beginPrinting` (line 755)


>     ASSERT(!m_printContext);


In `WebPage::endPrinting` (line 768)


    m_printContext = nullptr;


In `Java_com_sun_webkit_WebPage_twkDoJSCGarbageCollection` (line 2617):


JNIEXPORT void JNICALL Java_com_sun_webkit_WebPage_twkDoJSCGarbageCollection
  (JNIEnv*, jclass)
{
   // GCController::singleton().garbageCollectNow(); // it has been removed // 
recheck


The call to `GCController::singleton().garbageCollectNow()` has been commented 
out so this method is now a no-op. This will cause memory leaks or similar 
problems. WebKit replaced `GCController` with `GarbageCollectionController`



2. `WebKitLogging.cpp`:

This looks like the result of a bad merge, since the added code doesn't look 
like logging.


3. `JavaNodeFilterCondition.(h|cpp)`:

Also looks like a bad merge (I see Skia and IOS references, which look 
suspicious).


`RenderThemeJava.cpp`:

A. Line 121 :


-    Color bgColor = object.style().visitedDependentColor(
-        widgetIndex == JNI_EXPAND(MENU_LIST_BUTTON)
-            ? CSSPropertyColor
-            : CSSPropertyBackgroundColor
-    );
+    Color bgColor = widgetIndex == JNI_EXPAND(MENU_LIST_BUTTON)
+        ? object.selectionForegroundColor()
+        : object.selectionBackgroundColor();


I presume you've tested these changes?


B. Line 548:


+RefPtr<FragmentedSharedBuffer> 
RenderThemeJava::mediaControlsImageDataForIconNameAndType(const String& 
iconName, const String& iconType)
+{
+     if (iconType != "svg") {
+             return nullptr;
+     }


Is this sufficient? Will we ever see an iconType other than `svg` (e.g., `png`)?

-------------

PR Review: https://git.openjdk.org/jfx/pull/2207#pullrequestreview-4687523741

Reply via email to