Commit Graph

13 Commits

Author SHA1 Message Date
hjk
5c7b4d66c5 Android: Use FilePath in JavaLanguageServer
Change-Id: Ifaaf95c7463db634a08072e5c988bfc75237f8eb
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2021-09-27 14:11:58 +00:00
hjk
0061555213 LanguangeClient: Use more FilePath
Change-Id: Ic849da11da646feb804717550d2a8a60d61f332d
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-08-31 15:16:42 +00:00
hjk
7c28c4f744 Utils: Introduce a FilePath constructor from char arrays
Similar to QT_RESTRICTED_CAST_FROM_ASCII to avoid the need for
decorations in user code.

At the same time, drop some convenience constructors and functions
in CommandLine and Icon essentially serving the same purpose.

Change-Id: Ida4e5ac19c2da0a4298a97b2a8e1511d56bbb79d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-08-17 05:34:10 +00:00
hjk
a58dd22f2d Utils: Use FilePath in TemporaryDirectory API
This helps to lower impedance in the using code.

Even though TemporaryDirectory will very likely always stay on the local
host, this is one of the entry points into path related string
manipulation
that we want to base on FilePath nowadays.

Change-Id: I302016b8d65e54df94296659a54a93935d9e4627
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-07-02 05:05:12 +00:00
David Schulz
439bb9c4ae LanguageClient: manually track document version
Using the document revision causes issues for some servers.

Task-number: QTCREATORBUG-25766
Change-Id: Ic858e19c6fe39e57c9d3124913887aafee0a3cd0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-06-15 13:01:05 +00:00
hjk
2f593d9db9 LanguageServer: Use Utils::CommandLine in StdIOClientInterface
Change-Id: Ic2516387d7308bfad05cef54467c417cc47a7655
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-05-03 11:31:17 +00:00
David Schulz
d17277b546 LSP: reduce error handling complexity
Instead of checking recursively every possible object just check the
required keys for an object and validate it on construction or
assignment from json.

This will reduce the implementation effort for protocol extensions and
also reduce the false positives we might get if the protocol gets
updated.

Change-Id: I3df24e62430d2c7575d26c1581e6a9606e7da4c1
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-03-02 12:51:47 +00:00
David Schulz
925c4a3198 Android: Add path to Qt java bindings to project files
Change-Id: Ia3ee35732bece5870659cac338f26f815e3ce566
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-02-23 14:46:02 +00:00
David Schulz
3c80f1bd9d Android: Add 3rdparty jars to classpaths
Change-Id: Ibc645e2377d4cb6d5eddd86d77cbb7f8ca294f1f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-02-23 14:41:01 +00:00
David Schulz
65d977ed93 Android: generate .project and .classpath
These files are needed by the java language server to operate properly.

Change-Id: Ie96a1fe32fefeea7333c7fa752557f79796a1478
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-02-23 08:52:04 +00:00
David Schulz
605df0c4b6 Java: use a temporary directory for the workspace
Change-Id: Ie8fc01f680393f141f099f57b98eb16a10b37d7e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-02-23 08:48:49 +00:00
David Schulz
94ee80b222 JLS: add special java client that can execute jls commands
the java language server uses special "java.apply.workspaceEdit"
commands that already contain the workspace edit that should be applied
when triggering the command.

Change-Id: If7c53b9b097aaeca289e3958a39be37a9725d395
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-02-19 11:42:59 +00:00
David Schulz
acd33a45d8 Java: add java language server settings
Change-Id: Ic8e8ce5833052fcbb3acb004ae577722e2ef8fc3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-02-18 13:56:42 +00:00