Commit graph

216 commits

Author SHA1 Message Date
goat
f5d93fb08e
Add MinimumDalamudVersion to manifest, validate at install, update and load (#2248) 2025-04-28 21:09:40 +02:00
goaaats
731d7e0f6e Un-whether-or-not the codebase 2025-04-25 22:49:05 +02:00
Haselnussbomber
39ac9f9dad
Make ItemUtil public (#2252) 2025-04-21 14:01:59 +02:00
goaaats
b810154125 Add MinimumDalamudVersion to manifest, validate at install, update and load 2025-04-15 21:29:18 +02:00
goaaats
2f0c57d5ad Reassign leftover Api12ToDo to Api13ToDo 2025-04-15 19:12:07 +02:00
Haselnussbomber
499952b3d2
SeStringEvaluator: Fix HeadAll not capitalizing correctly (#2240)
* Fix obsoletes

* Fix HeadAll not capitalizing correctly

* Fix incorrect denoun cases in SeString Creator

* Implement Utf8String.ToUpper in C#

* Handle characters with accents too

* Add remarks to ToUpper functions
2025-04-09 22:13:11 +02:00
goaaats
34679d085b Extract plugin to temp directory before copying to final location, some minor cleanup 2025-04-01 18:55:27 +02:00
Kaz Wolfe
67561af32f
fix: Lumina updates 2025-03-25 09:28:57 -07:00
Kaz Wolfe
27dc659561
chore: Convert AsLuminaSeString to AsReadOnlySeString
- Somewhat more useful, or so one would hope.
2025-03-24 18:32:44 -07:00
Kaz Wolfe
a7509ef77d
feat: More utilities!
- Also document that CStringExtensions only works with bundled CS.
2025-03-24 18:16:39 -07:00
Kaz Wolfe
314c046ec9
feat: Add CStringPointer#ExtractText
- Move CString extensions to their own class.
- Add some words to our dictionary.
2025-03-24 17:45:17 -07:00
Kaz Wolfe
5dcd1cc52f
chore: fix angry compiler 2025-03-24 13:36:01 -07:00
Kaz Wolfe
2176b32219
chore: Bump ClientStructs and make it build again 2025-03-24 13:25:13 -07:00
goaaats
f209ac087a SeStringEvaluator: Throw if not on main thread 2025-03-24 20:24:34 +01:00
goaaats
c0c61c66be Fix warnings 2025-03-24 19:21:04 +01:00
Haselnussbomber
fdbfdbb2cd
Add SeStringEvaluator service (#2188)
* Add SeStringEvaluator service

* Move DrawCopyableText into WidgetUtil

* Use Icon2RemapTable in SeStringRenderer

* Beautify some code

* Make sure to use the correct language

* Add SeString Creator widget

* Fix getting local parameters

* Update expressionNames

* misc changes

* Use InvariantCulture in TryResolveSheet

* Add SeStringEvaluatorAgingStep

* Fix item id comparisons

* Add SheetRedirectResolverAgingStep

* Add NounProcessorAgingStep

* Update SeString.CreateItemLink

This also adds the internal ItemUtil class.

* Fix name of SeStringCreator widget

* Add Global Parameters tab to SeStringCreatorWidget

* Load widgets on demand

* Update SeStringCreatorWidget

* Resizable SeStringCreatorWidget panels

* Update GamepadStateAgingStep

* Experimental status was removed in #2144

* Update SheetRedirectResolver, rewrite Noun params

* Fixes for 4 am code

* Remove incorrect column offset

I have no idea how that happened.

* Draw names of linked things

---------

Co-authored-by: Soreepeong <3614868+Soreepeong@users.noreply.github.com>
Co-authored-by: KazWolfe <KazWolfe@users.noreply.github.com>
2025-03-24 09:00:27 -07:00
marzent
7cac19ce81
Implement dalamud-platform launch argument (#1452)
* implement dalamud platform launch arg
* implement cross-platform gamePath fallback
* refactor platform detection heuristic
* add cross platform dalamud runtime detection
2025-03-24 08:42:24 -07:00
Kaz Wolfe
3074115b34
chore: Add api 13 tracker 2025-03-23 18:27:48 -07:00
Kaz Wolfe
6a1cea731f
chore: remove obsoleted AppendMacroString methods 2025-03-23 18:11:03 -07:00
KazWolfe
a2124bb73d fix: Attempt to better handle hook disposal (#1803)
- Use a Weak Concurrent Collection to track scoped hooks
- Make `Hook`s remove themselves from the Tracked Hook list.
2025-03-13 22:42:09 +01:00
KazWolfe
bed591d890
fix: Forcefully load stacktrace if assert UI is shown (#2164)
- Add DiagnosticUtil to automatically filter out the "boring" stack entries.

Co-authored-by: goat <16760685+goaaats@users.noreply.github.com>
2025-01-09 21:11:41 +00:00
goat
49a18e3c1e Api11ToDo -> Api12ToDo 2024-12-30 14:01:50 +01:00
goat
6dd85c9e3e remove some unused stuff in Util, fix warnings 2024-12-29 16:56:31 +01:00
goat
0a3e88efca clone culture to apply fixes
The default cultures are read-only
2024-12-26 15:26:22 +01:00
goat
2e2feb144f fix some warnings 2024-12-26 14:11:14 +01:00
goat
ce5ee71c91 patch NNBSP number separator out of cultures that use it (fixes #2157) 2024-12-26 13:48:28 +01:00
nebel
7a52cb85db
Fix ShowStructInternal ImGui crash (#2127) 2024-11-27 21:30:24 +01:00
ItsBexy
c950b15a22
Minor interface adjustments (#2121)
- Further ImRaii safety in UiDebug2
- Set some mistakenly internal methods in ImGuiComponents to public
- Added SpanFullWidth flag to trees in Util.ShowStruct
2024-11-24 21:37:39 +01:00
ItsBexy
192dc9c3c3
Update Util.ShowStruct() (#2104)
- Now prints field offsets, if/when they are defined.
- Fixed a bug wherein Boolean fields were being printed with incorrect values (now tries reading the value as a byte, which seems to do the trick)
2024-11-18 17:30:12 -08:00
Kaz Wolfe
6052469976
bumpy da cs 2024-11-13 08:23:57 -08:00
Kaz Wolfe
720b1676e5
Merge branch 'master' into api11
# Conflicts:
#	Dalamud/Game/ClientState/Fates/Fate.cs
#	Dalamud/Game/Gui/NamePlate/NamePlateUpdateContext.cs
#	Dalamud/Interface/Internal/DalamudInterface.cs
#	Dalamud/Interface/Windowing/Window.cs
#	Dalamud/Utility/StringExtensions.cs
#	lib/FFXIVClientStructs
2024-11-11 08:38:20 -08:00
wolfcomp
30d56e4d11
fix all warnings and breaking changes for CS (#2061) 2024-11-04 21:14:51 -08:00
goat
8956bd54a9 fix some warnings 2024-11-04 15:01:09 +01:00
Asriel Camora
0b9af0e3f4
Update to Lumina 5 (new Excel parsing) (#2022)
* Refactor and upgrade to new excel design

* Obsolete ExcelResolver<T> and use only RowRef<T>

* Better benchmarking for Lumina

* Add custom game-supported RSV provider

* Refactor and move Lazy<T> and nullable/cached row objects to RowRefs

* Convert IRSVProvider to delegate, resolve strings by default

* Split IExcelRow into IExcelSubrow

* Extra lumina documentation

* Minor RSV CS fixes

* Fix UIGlowPayload warning

* Fix rebase

* Update to Lumina 5
2024-10-20 19:59:03 -07:00
Kaz Wolfe
4d6b8e59ef
apply low-hanging fruit for api11todos 2024-09-29 10:51:00 -07:00
srkizer
1f74293de4
Update Lumina and use MacroStringParser (#2033)
No longer requires hook and main thread requirements on compiling macro
strings.

Needs lookup table fixing on Lumina; using reflection to fix for the
time being.
2024-09-14 10:23:24 -07:00
KazWolfe
0fb7585973
feat: Use Debug Command Handler for Dalamud Commands (#2018)
* feat: new command handler that works off a hook

* cr comment

* Use ClientStructs for sig
2024-08-28 13:23:39 -07:00
Soreepeong
27ef053252 Update docs 2024-08-25 22:23:58 +09:00
Soreepeong
0a8f9b73fb Make ServiceScope IAsyncDisposable
ServiceScope.Dispose was not waiting for scoped services to complete
disposing. This had an effect of letting a new plugin instance register
a DtrBar entry before previous plugin instance's entry got unregistered.

This change also cleans up unloading procedure in LocalPlugin.
2024-08-18 07:58:45 +09:00
srkizer
b6eb18d550
SeString renderer: fix colors, add link support (#1983)
* Add coloring options

* Add link support

* simplify

* fixes

* Prevent EncodeString from causing crashes

* Fix link range application and add link example

* Fix test widget

* Make DalamudLinkPayload backward compatible

* make it better to use

* make it better to use

* Mark SeString rendering functions experimental via comments

* rename

* Simplify

* Make sestring draw functions take in draw params

* Improvements
2024-08-01 10:36:11 -07:00
srkizer
c25f13261d
Make DtrBar more threadsafe (#1978)
* Changed DtrBar to use ReaderWriterLockSlim so that there exists only one storage of entries, preventing possible desync.
* DtrBarEntry will now hold a reference to the LocalPlugin that created the entry, so that DtrBarPluginScoped can defer plugin related handling to the main service.
* Marked DtrBarEntry class itself to be turned internal in API 11.
* Made IDtrBar.Entries return an immutable copy of underlying list of DtrBar entries, that will be freshly created whenever the list changes.
2024-07-28 14:14:37 +02:00
goat
bd170ee74a
Merge pull request #1945 from KazWolfe/fixed-versioning
feat: Use new versioning strategy
2024-07-25 01:01:50 +02:00
Soreepeong
6c8ec0ab4d Fix random typo 2024-07-22 20:34:43 +09:00
Soreepeong
1be5cd452d Make all TCS RunContinuationsAsynchronously 2024-07-21 20:49:41 +09:00
goat
3584f2cf3d fix warning 2024-07-20 02:17:04 +02:00
srkizer
7707da079c
Add separate handler for process modules (#1947) 2024-07-19 00:03:53 -07:00
Kaz Wolfe
2b96f2187c
feat: Use new versioning strategy
- Rename BuildHash to SCMVersion
- Expose the actual commit hash as a new `commit_hash.txt`
- Update GetGitHash() to actually return the git hash
2024-07-18 14:51:03 -07:00
srkizer
1109e64552
Describe address for debugging, change PresentDetour viewport handling (#1943)
* Describe memory address when printed in log/debug utilities

* PresentDetour: Compare against game's internal copy of IDXGISwapChain

* Handle ReShade on_present function signature properly
2024-07-18 21:28:25 +02:00
Sabine Lim
c57cc5c41f
Fix incorrect GetMapCoordinates() within housing ward subdivisions (#1917)
Co-authored-by: Sabine Lim <thesabinelim@gmail.com>
2024-07-16 19:00:08 +00:00
goat
577f17eb1b add solution-wide code analysis config
Disabled for now, since it'll be a bit of a refactor to enable them
2024-07-11 00:14:15 +02:00