Re: Poor font rendering..

2014-03-11 Thread Robert Fisher
Hi Felipe,

thanks for the detailed reply, that Firefox blog post is interesting.

I guess sub-pixel positioning is the crucial point here. If a black, 1-pixel 
wide vertical stroke is positioned between two pixels, you'll get a dimmer, 
2-pixel wide stroke instead. 

Suppose I want to see what GDI, SWT-like text looks like in JavaFX. I should 
set -Djavafx.text=t2k. But looking at the picture 
(http://i.imgur.com/CGyckge.png) it still seems there is some additional 
blurring in JavaFX. Some additional sub-pixel positioning logic, perhaps?

But I concede that there has to be a compromise between positioning and 
'vibrancy' for small text.

Cheers,
Rob


-Ursprüngliche Nachricht-
Von: openjfx-dev [mailto:openjfx-dev-boun...@openjdk.java.net] Im Auftrag von 
Felipe Heidrich
Gesendet: Montag, 10. März 2014 18:46
An: OpenJFX Mailing List
Betreff: Re: Poor font rendering..

Thank you Rob,


DirectWrite is the engine JavaFX uses to produces glyph masks (white on black), 
therefore JavaFX text should resemble that of DirectWrite (it is not exactly 
the same, as JavaFX does its own color blending and gamma correction).

We decided to use DirectWrite for JavaFX because it is the most modern native 
technology on Windows that we can use.
In particular, we were interested on sub pixel positioned text. GDI, for 
example, all glyph positioning are expressed as integer, and glyphs are 
(usually) aggressively hinted.

Interesting FIreFox had all the same trouble when they switched from GDI to 
DirectWrite.
Please read 
https://blog.mozilla.org/nattokirai/2011/08/11/directwrite-text-rendering-in-firefox-6/
 
JavaFX always uses DirectWrite natural mode rendering. We too can provided 
switches for GDI Classic rendering mode, cleartype level, enhanced contrast, 
gamma, etc.
It is all defined here
http://msdn.microsoft.com/en-us/library/windows/desktop/dd371285(v=vs.85).aspx

Maybe that would help ?

Notes:
SWT uses GDI to render text (I know, I implemented it). 
JavaFX with -Djavafx.text=t2k uses GDI to render LCD text, SWT and JavaFX with 
-Djavafx.text=t2k are not same, but similar, likely again because JavaFX does 
its own color blending and gamma correction.

Felipe



Re: Build Errors on Windows 8.1 / VS2012 Pro / JDK 1.8.0-b132 [was: Build Errors on Windows 8.1 / VS2010 Pro / JDK 1.8.0-b132]

2014-03-11 Thread Kevin Rushforth

Thanks, Artem.

Yes, the version of Visual Studio that we build JavaFX with must be tied 
to that of the JDK. VS 2010 SP1 for JDK 8 and 8u. Probably VS 2013 for 
JDK 9.


Prior to that, we may want to fix any issues that prevent developers 
from building on VS 2012 or 2013.


-- Kevin


Artem Ananiev wrote:


On 3/8/2014 1:04 AM, Kevin Rushforth wrote:

Hi Kay,

It looks like you are using VS2012 not 2010. We build JavaFX with VS
2010, and have some issues with 2012. However, we will need to resolve
them at some point.

Maybe someone else on the list has had luck building with VS 2012?


I was able to build FX with VS 2012 some time ago. The changes were 
mostly cosmetic (caused by different Visual Studio and Platform SDK 
directory layouts), except static C++ runtime linkage. And, of course, 
FX should be aligned with JDK, which is shipped with VS 2010 runtime 
(will it be changed in JDK9?), otherwise FX will have to ship with its 
own runtime libraries.


Thanks,

Artem


-- Kevin


Kay McCormick wrote:

Here is what I see as the relevant portions of the build log. This is
beyond my ability to fix easily at this point. I would attach the 
entire

compile log but I compiled with --debug and its 4mb. Let me know if I
should provide more information, file a bug, or direct my problem to
another forum.

Kay

12:35:16.275 [INFO] [org.gradle.process.internal.DefaultExecHandle]
Successfully started process 'command 'C:/Program Files (x86)/Microsoft
Visual Studio 12.0/VC/BIN/amd64/link.exe''
12:35:16.329 [QUIET] [system.out] libcpmt.lib(xthrow.obj) : error
LNK2038:
mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' 
doesn't

match value 'MD_DynamicRelease' in directwrite.obj
12:35:16.332 [QUIET] [system.out] libcpmt.lib(syserror.obj) : error
LNK2038: mismatch detected for 'RuntimeLibrary': value 
'MT_StaticRelease'

doesn't match value 'MD_DynamicRelease' in directwrite.obj
12:35:16.336 [QUIET] [system.out]Creating library
C:\Users\kay\Documents\current\openjfx\rt\modules\graphics\build\libs\font\win\javafx_font.lib 



and object
C:\Users\kay\Documents\current\openjfx\rt\modules\graphics\build\libs\font\win\javafx_font.exp 



12:35:16.362 [QUIET] [system.out]
C:\Users\kay\Documents\current\openjfx\rt\modules\graphics\build\libs\font\win\javafx_font.dll 



: fatal error LNK1319: 2 mismatches detected
12:35:16.368 [DEBUG] [org.gradle.process.internal.DefaultExecHandle]
Changing state to: FAILED
12:35:16.368 [INFO] [org.gradle.process.internal.DefaultExecHandle]
Process
'command 'C:/Program Files (x86)/Microsoft Visual Studio
12.0/VC/BIN/amd64/link.exe'' finished with exit value 1319 (state:
FAILED)
12:35:16.368 [DEBUG]
[org.gradle.logging.internal.DefaultLoggingConfigurer]
Finished configuring with level: DEBUG, configurers:
[org.gradle.logging.internal.OutputEventRenderer@1593948d,
org.gradle.logging.internal.logback.LogbackLoggingConfigurer@1b604f19,
org.gradle.logging.internal.JavaUtilLoggingConfigurer@7823a2f9]
12:35:16.369 [DEBUG]
[org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter]
Finished executing task ':graphics:linkWinFont'
12:35:16.369 [LIFECYCLE] [org.gradle.TaskExecutionLogger]
:graphics:linkWinFont FAILED
12:35:16.369 [INFO]
[org.gradle.execution.taskgraph.AbstractTaskPlanExecutor]
:graphics:linkWinFont (Thread[main,5,main]) completed. Took 0.104 secs.
12:35:16.369 [DEBUG]
[org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] Task worker
[Thread[main,5,main]] finished, busy: 3 mins 14.44 secs, idle: 0.017 
secs

12:35:16.390 [LIFECYCLE] [org.gradle.BuildResultLogger]
12:35:16.390 [LIFECYCLE] [org.gradle.BuildResultLogger] BUILD FAILED
12:35:16.390 [LIFECYCLE] [org.gradle.BuildResultLogger]
12:35:16.390 [LIFECYCLE] [org.gradle.BuildResultLogger] Total time: 3
mins
29.213 secs


hg: openjfx/8u-dev/rt: RT-36065 [ScrollPane] Focus traversal to the first or last item does not make the ScrollPane to scroll to that item

2014-03-11 Thread hang . vo
Changeset: b7dbbad9c9bd
Author:Martin Sladecek martin.slade...@oracle.com
Date:  2014-03-11 15:48 +0100
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/b7dbbad9c9bd

RT-36065 [ScrollPane] Focus traversal to the first or last item does not make 
the ScrollPane to scroll to that item
Reviewed by: dgrieve

! modules/builders/src/main/java/javafx/scene/ParentBuilder.java
! 
modules/controls/src/main/java/com/sun/javafx/scene/control/skin/MenuBarSkin.java
! 
modules/controls/src/main/java/com/sun/javafx/scene/control/skin/ScrollPaneSkin.java
! 
modules/controls/src/main/java/com/sun/javafx/scene/control/skin/ToolBarSkin.java
! modules/graphics/src/main/java/com/sun/javafx/scene/traversal/Algorithm.java
! 
modules/graphics/src/main/java/com/sun/javafx/scene/traversal/ContainerTabOrder.java
! modules/graphics/src/main/java/com/sun/javafx/scene/traversal/Direction.java
! modules/graphics/src/main/java/com/sun/javafx/scene/traversal/Hueristic2D.java
+ 
modules/graphics/src/main/java/com/sun/javafx/scene/traversal/ParentTraversalEngine.java
+ 
modules/graphics/src/main/java/com/sun/javafx/scene/traversal/SceneTraversalEngine.java
+ 
modules/graphics/src/main/java/com/sun/javafx/scene/traversal/SubSceneTraversalEngine.java
! 
modules/graphics/src/main/java/com/sun/javafx/scene/traversal/TabOrderHelper.java
+ 
modules/graphics/src/main/java/com/sun/javafx/scene/traversal/TopMostTraversalEngine.java
! 
modules/graphics/src/main/java/com/sun/javafx/scene/traversal/TraversalEngine.java
! 
modules/graphics/src/main/java/com/sun/javafx/scene/traversal/WeightedClosestCorner.java
! modules/graphics/src/main/java/javafx/scene/Node.java
! modules/graphics/src/main/java/javafx/scene/Parent.java
! modules/graphics/src/main/java/javafx/scene/Scene.java
! modules/graphics/src/main/java/javafx/scene/SubScene.java
! 
modules/graphics/src/test/java/com/sun/javafx/scene/traversal/TraversalTest.java
! 
modules/graphics/src/test/java/com/sun/javafx/scene/traversal/TraverseInvisibleTest.java
- modules/graphics/src/test/java/javafx/scene/RegistrationTest.java
! 
modules/web/src/main/java/com/sun/javafx/scene/web/behavior/HTMLEditorBehavior.java
! modules/web/src/main/java/com/sun/javafx/scene/web/skin/HTMLEditorSkin.java



hg: openjfx/8u-dev/rt: 2 new changesets

2014-03-11 Thread hang . vo
Changeset: a4ee872a75bb
Author:Martin Sladecek martin.slade...@oracle.com
Date:  2014-03-11 16:14 +0100
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/a4ee872a75bb

RT-35831 XYChart Series: NullPointerException when changing Series which is not 
assigned to a chart
Reviewed by: jgiles

! modules/controls/src/main/java/javafx/scene/chart/XYChart.java
! modules/controls/src/test/java/javafx/scene/chart/XYChartTest.java

Changeset: 685651bc38c2
Author:Martin Sladecek martin.slade...@oracle.com
Date:  2014-03-11 16:15 +0100
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/685651bc38c2

RT-36151 Custom XYChart Memory-Leak
Reviewed by: jgiles

! modules/controls/src/main/java/javafx/scene/chart/AreaChart.java
! modules/controls/src/main/java/javafx/scene/chart/BarChart.java
! modules/controls/src/main/java/javafx/scene/chart/LineChart.java
! modules/controls/src/main/java/javafx/scene/chart/XYChart.java



hg: openjfx/8u-dev/rt: RT-35619 : IMX6-SDP / Yocto hard float : crash while running hello.HelloComboBox

2014-03-11 Thread hang . vo
Changeset: d550116b8d71
Author:Rafi Tayar rafi.ta...@oracle.com
Date:  2014-03-11 17:54 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/d550116b8d71

RT-35619 : IMX6-SDP / Yocto hard float : crash while running hello.HelloComboBox
Reviewed-by : kselle, dblaukopf

! modules/graphics/src/main/native-glass/lens/LensCommon.h
! modules/graphics/src/main/native-glass/lens/LensWindow.c
! modules/graphics/src/main/native-glass/lens/wm/LensWindowManager.c



Re: No split-cursor inside JFXPanel

2014-03-11 Thread Anthony Petrov

Hi Werner,

I've re-targeted this bug to 8u20.

--
best regards,
Anthony

On 3/7/2014 9:27 PM, Werner Lehmann wrote:

Hi,

inside a JFXPanel we don't see the split-cursors (e.g. east/west). This
is a known issue:

[#RT-26235] SplitPane in JFXPanel: Mouse cursor not changed
https://javafx-jira.kenai.com/browse/RT-26235

This affects regular splitpanes as well as custom nodes which just use
those cursors. The fix version for this is 9. This is going to be a
highly visible issue in our application when we convert more parts to
JFXPanels this year. Can this fix be done for one of the upcoming 8uXX
releases instead?

Thanks,
Werner


hg: openjfx/8u-dev/rt: RT-26235: SplitPane in JFXPanel: Mouse cursor not changed

2014-03-11 Thread hang . vo
Changeset: 0e800351fd4b
Author:Anthony Petrov anthony.pet...@oracle.com
Date:  2014-03-11 22:16 +0400
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/0e800351fd4b

RT-26235: SplitPane in JFXPanel: Mouse cursor not changed
Summary: Use N_ and W_RESIZE AWT cursors for V_ and H_RESIZE FX cursors in 
JFXPanel

! modules/swing/src/main/java/javafx/embed/swing/SwingCursors.java



hg: openjfx/8u-dev/rt: [TEST-ONLY] fix compilation error in builder tests after change to TraversalEngine

2014-03-11 Thread hang . vo
Changeset: e256204869fb
Author:kcr
Date:  2014-03-11 11:39 -0700
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/e256204869fb

[TEST-ONLY] fix compilation error in builder tests after change to 
TraversalEngine

! modules/builders/src/test/java/javafx/scene/Group_builder_Test.java



hg: openjfx/8u-dev/rt: RT-36163: Cannot build JavaFX using JDK 8u20 or JDK 9

2014-03-11 Thread hang . vo
Changeset: 4f508b0b661f
Author:kcr
Date:  2014-03-11 15:29 -0700
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/4f508b0b661f

RT-36163: Cannot build JavaFX using JDK 8u20 or JDK 9
Reviewed-by: ddhill

! build.gradle