Commit graph

1207 commits

Author SHA1 Message Date
leo
bb41fcea3e
fix: DisplayRange is not updated when text diff view is opened for the first time
Some checks are pending
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Continuous Integration / Package (push) Blocked by required conditions
2024-11-26 19:52:13 +08:00
leo
78fcc0117e
ux: style for tooltip
Some checks failed
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Continuous Integration / Package (push) Blocked by required conditions
Localization Check / localization-check (push) Has been cancelled
Signed-off-by: leo <longshuang@msn.cn>
2024-11-25 11:42:48 +08:00
Nils van Rijsinge
bf4080b773
fix: crash on goto to SHA, NullReferenceException (#741) 2024-11-25 09:24:16 +08:00
leo
4160f8ab9c
fix: only set tooltip if commit exists
Some checks are pending
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Continuous Integration / Package (push) Blocked by required conditions
Localization Check / localization-check (push) Waiting to run
Signed-off-by: leo <longshuang@msn.cn>
2024-11-24 21:43:31 +08:00
leo
b2e01f0d3e
feature: add tooltip for SHA in commit message presenter (#734)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-24 21:22:04 +08:00
leo
637f138d63
code_style: remove Rider warning
Signed-off-by: leo <longshuang@msn.cn>
2024-11-24 20:28:32 +08:00
leo
457a1e79c7
code_review: PR #734
* remove unnecessary namespace using
* do NOT set tooltip currently, because CommitDetail.GetParent may cause UI lags and the tooltip DataTemplate is not provided.
* add translations for zh_CN and zh_TW

Signed-off-by: leo <longshuang@msn.cn>
2024-11-24 11:05:55 +08:00
Dmitrij D. Czarkoff
12f75315bd
feat: context menu for a commit in commit message (#734)
* feat: context menu for a commit in commit message

When a commit message happens to contain a commit link and the user elects to right-click it, instead of navigating them to the commit,  present a menu with options to navigate to it or to copy SHA.

* feat: show commit tooltip as well

`_lastHover` in the `if` is also swapped for `match`for consistency with the block body
2024-11-24 10:53:16 +08:00
leo
cd96a28545
fix: typo in English (#731)
Some checks failed
Continuous Integration / Build (push) Has been cancelled
Continuous Integration / Prepare version string (push) Has been cancelled
Localization Check / localization-check (push) Has been cancelled
Continuous Integration / Package (push) Has been cancelled
Signed-off-by: leo <longshuang@msn.cn>
2024-11-22 18:47:06 +08:00
leo
153a1f30b2
feature: supports toggle --force option for git fetch command (#721)
* Background auto fetch will always disable this option
* This option is not add to pull operation

Signed-off-by: leo <longshuang@msn.cn>
2024-11-22 09:39:50 +08:00
leo
22157a5c98
fix: tooltip of parent SHA textblock is not closed properly (#727)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-21 10:06:16 +08:00
leo
839dab494b
ux: expand height of commit message box in commit template settings (#720)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-20 14:39:53 +08:00
leo
ab2156bfc2
code_review: PR #710
* SourceGit.Commands.* should not reference SourceGit.ViewModels.*
* remove unused namespace using
* update translations for zh_CN and zh_TW
* use WrapPanel instead of inner ScrollViewer
* some other UI/UX changes

Signed-off-by: leo <longshuang@msn.cn>
2024-11-20 09:42:48 +08:00
Dmitrij D. Czarkoff
cc5bb5f6d4
Show the list of children in the commit details (#710)
* feature: add children list to the commit base info view

Useful for navigation between the commits.

* feature: use repository filters to limit children search
* feature: execute children search asynchronously
* feature: respect global commit limit for a good measure
* fix: input lines may contain several commits

The first commit is always the immediate child, so take only 40 initial characters of the line

* fix: hide children behind the preference
* feature: make parents and children scrollable
2024-11-20 09:17:36 +08:00
leo
7a9c8d7444
ux: enable TextTrimming for author name in FileHistories
Some checks are pending
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Continuous Integration / Package (push) Blocked by required conditions
Localization Check / localization-check (push) Waiting to run
Signed-off-by: leo <longshuang@msn.cn>
2024-11-19 20:07:49 +08:00
leo
73687689ce
ux: min height of change block in minimap
Signed-off-by: leo <longshuang@msn.cn>
2024-11-19 16:45:07 +08:00
leo
814529a690
feature: add hotkeys to stage/unstage/discard block or selected lines in text diff view (#718)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-19 12:12:54 +08:00
leo
b25f9bdb6c
feature: supports switch histories order mode (#705)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-19 11:32:13 +08:00
leo
f45bed6f92
fix: avoid NRE
Signed-off-by: leo <longshuang@msn.cn>
2024-11-19 10:31:17 +08:00
leo
5b55e3530d
ux: better drop shadow effect for notifications
Signed-off-by: leo <longshuang@msn.cn>
2024-11-19 09:34:09 +08:00
leo
d07a664166
code_review: PR #714
* remove `string.ToLower` warning
* override `OnLoaded` method directly
* clean namespace using

Signed-off-by: leo <longshuang@msn.cn>
2024-11-19 09:27:31 +08:00
Enner Pérez
ea1d966d27
feat: Reset Mode Hotkey (#714) 2024-11-19 09:14:53 +08:00
leo
3b09ea45f5
feature: add change minimap for text diff view
Some checks failed
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Continuous Integration / Package (push) Blocked by required conditions
Localization Check / localization-check (push) Has been cancelled
Signed-off-by: leo <longshuang@msn.cn>
2024-11-17 21:49:33 +08:00
leo
882878dbe5
refactor: text diff view go to next/prev change
Some checks are pending
Continuous Integration / Package (push) Blocked by required conditions
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Signed-off-by: leo <longshuang@msn.cn>
2024-11-16 18:24:37 +08:00
leo
134c71064e
feature: add buttons to go to prev/next change in text diff view (#616)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-16 15:17:29 +08:00
leo
4b6bb70f20
fix: parent commit's tooltip does not close when move mouse out of bound fast
Some checks failed
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Continuous Integration / Package (push) Blocked by required conditions
Localization Check / localization-check (push) Has been cancelled
Signed-off-by: leo <longshuang@msn.cn>
2024-11-15 16:04:42 +08:00
leo
bd85b41da7
ux: clear histories filter button style
Signed-off-by: leo <longshuang@msn.cn>
2024-11-15 14:50:18 +08:00
leo
a5f37800f6
code_style: remove unused var
Signed-off-by: leo <longshuang@msn.cn>
2024-11-15 10:52:39 +08:00
leo
4835c3f1e9
enhance: do NOT trigger double clicking events when user click the blank area of ListBox
Signed-off-by: leo <longshuang@msn.cn>
2024-11-15 10:50:52 +08:00
leo
a5606e80d4
refactor: move codes from Views.FilterModeSwitchButton to ViewModels.Repository
Signed-off-by: leo <longshuang@msn.cn>
2024-11-15 10:19:39 +08:00
leo
a824adf6d3
code_style: run dotnet format
Some checks are pending
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Continuous Integration / Package (push) Blocked by required conditions
Localization Check / localization-check (push) Waiting to run
Signed-off-by: leo <longshuang@msn.cn>
2024-11-14 21:15:40 +08:00
leo
28c93da73b
ux: show Unset menu item only if it is necessary (#690)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-14 21:12:18 +08:00
leo
1298a22b00
ux: use dynamic icon for filter tips.
Signed-off-by: leo <longshuang@msn.cn>
2024-11-14 20:53:59 +08:00
leo
44557c066c
enhance: clear histories filter if there's a filter that has different modes with the new one (#690)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-14 20:22:08 +08:00
leo
a53787c754
fix: git rebase --continue fail (#693)
* fix the exit code when start `SourceGit` as core editor (rebasing).
* redesign the layout of working copy page for in-progress states.

Signed-off-by: leo <longshuang@msn.cn>
2024-11-14 19:19:58 +08:00
leo
ca5bc4b4df
refactor: rewrite the histories filter function to supports both include and exclude modes (#690)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-14 15:15:48 +08:00
leo
ea4e968404
ux: repository left panel layout
Signed-off-by: leo <longshuang@msn.cn>
2024-11-13 11:35:48 +08:00
leo
f66e9c828a
ux: layout for parent commit tooltip
Signed-off-by: leo <longshuang@msn.cn>
2024-11-12 18:14:00 +08:00
leo
6e4f971733
feature: show tooltip of parent commit when hover the parent SHA
Signed-off-by: leo <longshuang@msn.cn>
2024-11-12 17:59:50 +08:00
leo
050b1d1188
enhance: supports issue link in keywords (#678)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-11 12:16:29 +08:00
leo
774ec65ef6
ux: layout for font size settings
Signed-off-by: leo <longshuang@msn.cn>
2024-11-11 11:01:02 +08:00
leo
82320f3494
revert: PR #673
* the `Commands.QueryCommitChildren` takes too much time when executes in a large repo

Signed-off-by: leo <longshuang@msn.cn>
2024-11-11 10:26:34 +08:00
leo
bbac6c1478
code_review: PR #673
* add translations for zh_CN and zh_TW
* hide `CHILDREN` line if it is empty

Signed-off-by: leo <longshuang@msn.cn>
2024-11-11 09:31:04 +08:00
Dmitrij D. Czarkoff
03f96cc9f8
feature: add children list to the commit base info view (#673) 2024-11-11 09:24:49 +08:00
leo
ef84891df1
feature: add new Editor Font Size configuration for all text editors (#661)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-07 17:52:23 +08:00
leo
45f4a5a4b1
ux: layout of floating panels (commands and notifications) (#659)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-07 11:07:47 +08:00
leo
9cb85081ab
feature: saving as patch supports multiple commits (#658)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-06 12:35:55 +08:00
leo
c72506d939
code_style: simplify the way detacting system preferred command key
Signed-off-by: leo <longshuang@msn.cn>
2024-11-06 10:36:10 +08:00
leo
d50b2c0298
code_review: PR #657
* add hotkey `Ctrl+Down/⌘+Down` to fetch directly
* keep translation keys of en_US in order
* add translations for zh_CN and zh_TW
* do NOT using namespace under `SourceGit`
* use `⇧` instead of `Shift` in hotkey tips
* hotkey mismatch on macOS
* hotkeys to start fetch/pull/push directly not work on macOS
* remove the hotkey of `Create Branch` context menu item
   - there are other objects (such as branch and tag) also have the `Create Branch` context menu item without hotkeys
   - on macOS, we already use `⌘+B` to create branch with selected commit, not `Ctrl + B`

Signed-off-by: leo <longshuang@msn.cn>
2024-11-06 10:25:44 +08:00
Fernando Medeiros
2e6eca26f7
Adding hotkeys for creating branch, pushing and pulling (#657) 2024-11-06 09:14:56 +08:00
leo
9d2c2df6b3
ux: issue link tooltip max width
Signed-off-by: leo <longshuang@msn.cn>
2024-11-05 11:00:04 +08:00
leo
6209326fe0
code_review: PR #652
* update localization for zh_CN and zh_TW
* change the icon for `Icons.Lines.All`
* reorder diff view toolbar buttons
* move private methods after protected

Signed-off-by: leo <longshuang@msn.cn>
2024-11-04 16:49:15 +08:00
Göran W
1a8acbf934
feature: diff - toggle show all lines (#615) (#652)
* Renamed 1 of 2 SyncScrollOffset props, for clarity

The property "SyncScrollOffset" in TextDiff is distinct from the one with the same name in TwoSideTextDiff. These two properties are used in separate (though slightly related) ways and are not really connected.

The one in TwoSideTextDiff is mainly used to keep the scroll-pos of the two SingleSideTextDiffPresenter views in sync (aligned), while the one in TextDiff is used only to preserve/reset the scroll-pos in the single CombinedTextDiffPresenter view when (re)loading Diff Content (so not really syncing anything).

To clarify this and to make the two properties more distinguishable, I renamed the one in TextDiff to simply "ScrollOffset".

* Added icon and string for "Show All Lines"

New StreamGeometry "Icons.Lines.All" using SVG path from "text_line_spacing_regular" at https://avaloniaui.github.io/icons.html.
New String "Text.Diff.VisualLines.All" for en_US locale (no translations yet).

* Implemented new TextDiff feature "Show All Lines" (toggle)

* Added new ToggleButton in DiffView toolbar, visible when IsTextDiff, disabling the buttons "Increase/Decrease Number of Visible Lines" when on.

* Added new Preference property "UseFullTextDiff".

* Added StyledProperty "UseFullTextDiffProperty" in TextDiffView, with a DataTemplate binding to the corresponding preference property.

* When changed, UseFullTextDiffProperty is handled identically as UseSideBySideDiffProperty (via new helper method RefreshContent(), for unification with OnDataContextChanged()).

* Added new method DiffContext.ToggleFullTextDiff() for changing the preference property and reloading the diff content.

* Implemented the new feature by overriding the "unified" (number of context lines) for Commands.Diff() with a very high number.

NOTE: The number used (~1 billion) is supposed to be the highest one working on Mac, according to this forum comment: https://stackoverflow.com/questions/28727424/for-git-diff-is-there-a-uinfinity-option-to-show-the-whole-file#comment135202820_28846576
2024-11-04 16:32:51 +08:00
leo
635396008d
fix: clicking Open in Browser context menu item of issue link does not work (#651)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-04 15:48:28 +08:00
leo
163e8cc0a4
feature: add context menu for issue link in commit details panel (#651)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-04 15:31:55 +08:00
leo
58fbb16347
code_review: PR #644
- use `AutoFocusBehaviour.IsEnable` instead of toggle focus by code in `OnOpened `

Signed-off-by: leo <longshuang@msn.cn>
2024-11-03 10:58:50 +08:00
Aliaksandr Liakhavets
794163fe1c
Set default focus on password text box (#644)
Co-authored-by: AleksandrLiakhavetsEPAM <97155822+AleksandrLiakhavetsEPAM@users.noreply.github.com>
2024-11-03 09:25:32 +08:00
leo
a36058ec51
feature: supports custom actions (#638)
Signed-off-by: leo <longshuang@msn.cn>
2024-11-01 17:23:31 +08:00
leo
7c5de7e48c
enhance: do NOT restore fullscreen window on macOS
Signed-off-by: leo <longshuang@msn.cn>
2024-11-01 12:22:47 +08:00
leo
98612b0024
code_style: remove unused code
Signed-off-by: leo <longshuang@msn.cn>
2024-11-01 10:00:37 +08:00
leo
e3c0f7d496
refactor: rewrite chromeless window (#634)
* use system chrome instead of custom caption button on macOS
* move `BeginMoveWindow` and `MaximizeOrRestoreWindow` to `ChromelessWindow`
* better supports for fullscreen mode on macOS
* redesign the layout of title bar for all windows

Signed-off-by: leo <longshuang@msn.cn>
2024-11-01 09:38:42 +08:00
leo
1999e4bf47
ux: remove button padding and use content alignment to center text
Some checks are pending
Continuous Integration / Package (push) Blocked by required conditions
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Localization Check / localization-check (push) Waiting to run
Signed-off-by: leo <longshuang@msn.cn>
2024-10-31 20:02:31 +08:00
leo
3cbffa6ff9
feature: add an option in repository configuration to enable --prune on fetch (#590)
Signed-off-by: leo <longshuang@msn.cn>
2024-10-30 18:39:38 +08:00
leo
a4befd010a
code_review: PR #627
* add minimal height for both unstaged and staged changes view

Signed-off-by: leo <longshuang@msn.cn>
2024-10-30 18:10:53 +08:00
yindf
2d7ea561e2
fix bug that stuck auto fetch when pull failed & make stage area resizeable (#627)
* fix watcher stuck by pull
* make stage area resizeable

---------

Co-authored-by: yindf <yindf@mail.jj.cn>
(cherry picked from commit a842aca042a73cb5fa3995794aae2a2e3540b37f)
2024-10-30 17:59:59 +08:00
leo
fe03512c5c
ux: tooltip of commit signing status icon
Signed-off-by: leo <longshuang@msn.cn>
2024-10-30 15:10:26 +08:00
leo
195325187d
ux: tooltip of commit signing status icon
* do NOT show signer if it is not available
* new tooltip style

Signed-off-by: leo <longshuang@msn.cn>
2024-10-30 15:01:08 +08:00
leo
9abda2c6ab
ux: move the commit signing status icon to the last
Signed-off-by: leo <longshuang@msn.cn>
2024-10-30 10:27:14 +08:00
leo
279b1819a3
feature: show commit gpg sign status (#614)
Some checks are pending
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Continuous Integration / Package (push) Blocked by required conditions
Localization Check / localization-check (push) Waiting to run
Signed-off-by: leo <longshuang@msn.cn>
2024-10-29 21:03:45 +08:00
leo
5c92fbdb37
fix: MinWidth not work while manually resizing window (#619)
Signed-off-by: leo <longshuang@msn.cn>
2024-10-29 19:59:22 +08:00
leo
ee20eba047
ux: limit the minimal width/height of resizable panels (#619)
Signed-off-by: leo <longshuang@msn.cn>
2024-10-29 16:51:54 +08:00
leo
1442dcfe00
feature: allow fetch the latest remote changes into local branch which is not current branch (#617)
Signed-off-by: leo <longshuang@msn.cn>
2024-10-29 09:59:13 +08:00
leo
498d2b54ae
feature: add per-repository setting for prefered OpenAI service
* If there is only one OpenAI service available, discard the setting of prefered OpenAI service. Instead, use it directly
* If there are multiple OpenAI service available, try to find the prefered one or show a context menu for users to choose the one they want to use

Signed-off-by: leo <longshuang@msn.cn>
2024-10-28 21:36:10 +08:00
leo
6c390d2f04
ux: layout of stage page
Signed-off-by: leo <longshuang@msn.cn>
2024-10-28 18:06:27 +08:00
leo
566d36ca59
feature: add option to enable --keep-index option of git stash push command (#610)
Signed-off-by: leo <longshuang@msn.cn>
2024-10-28 16:51:42 +08:00
leo
1044915be1
refactor: OpenAI integration
* supports configure multiple services
* supports select service when generate commit message by OpenAI

Signed-off-by: leo <longshuang@msn.cn>
2024-10-28 11:00:11 +08:00
leo
fa4f0a6bd4
ux: move prompt settings to advanced
Signed-off-by: leo <longshuang@msn.cn>
2024-10-25 09:51:51 +08:00
Douglas Cunha
63f75dc589
refactor: improve pt_BR localization clarity and consistency
- Refactor pt_BR localization strings for improved clarity and consistency in UI text across various components.
- Add password masking to the API key input field.
2024-10-24 10:17:35 -03:00
GadflyFang
c08c307c7a
enhance: add GitLab Issue/MR sample rules (#598)
Some checks are pending
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Continuous Integration / Package (push) Blocked by required conditions
* enhance: add GitLab Issue/MR sample rules
* fix: remove blank in zh_CN

---------

Signed-off-by: Gadfly <gadfly@gadfly.vip>
2024-10-24 18:07:04 +08:00
leo
76a7a2228f
feature: use numeric sorting for all trees (#597)
Signed-off-by: leo <longshuang@msn.cn>
2024-10-24 15:11:10 +08:00
leo
12bb915bd8
code_review: PR #596
- Add `ViewModels.Preference.PrepareOpenAIPrompt()` method to generate default prompt instead of a const fallback value. Therefore, it is more convenient for us to modify the default value in the Preference dialog.
- Modify the default prompts. Rename `SubjectPrompt` to `GenerateSubjectPrompt`. Rename `SummaryPrompt` to `AnalyzeDiffPrompt`.
- Rewrite the way to build OpenAI user content for subject generation

Signed-off-by: leo <longshuang@msn.cn>
2024-10-24 10:22:06 +08:00
Douglas Cunha
2f68aed817
feat: improve commit message generation with AI prompts (#596)
- Refactor the commit message generation process to utilize default prompts and enhance clarity while eliminating redundancy.
- Added new properties for subject and summary prompts, while improving cancellation support in async task handling.
- feat: add AI prompts for commit message generation.
- Updated the formatting of the package reference for consistency in the project file.
- Add properties for managing OpenAI subject and summary prompts in the Preference view model.
- Refactor layout and add new input fields for AI subject and summary prompts in the preferences view.
2024-10-24 09:31:05 +08:00
leo
a5594130ed
code_style: run dotnet format
Signed-off-by: leo <longshuang@msn.cn>
2024-10-23 15:28:09 +08:00
leo
d4302b4faa
refactor: render +/- marks after line number
Signed-off-by: leo <longshuang@msn.cn>
2024-10-23 15:19:59 +08:00
leo
d21a8f2449
refactor: rewrite OpenAI integration
Signed-off-by: leo <longshuang@msn.cn>
2024-10-23 14:05:40 +08:00
leo
f6e1e65a53
feature: add +/- in line number to indicate type of change (#593) 2024-10-23 12:03:22 +08:00
leo
06fd49ba92
feature: support --signoff for git commit command (#591)
Signed-off-by: leo <longshuang@msn.cn>
2024-10-23 09:46:27 +08:00
leo
b9d7f908c9
refactor: do NOT use the --prune parameter for git fetch command (#590)
Some checks are pending
Continuous Integration / Build (push) Waiting to run
Continuous Integration / Prepare version string (push) Waiting to run
Continuous Integration / Package (push) Blocked by required conditions
2024-10-22 16:54:21 +08:00
leo
1855b43750
feature: allow empty commit (#587) 2024-10-22 10:03:43 +08:00
Luis Frey
a8a7775b83
feature: add ${branch_name} option to commit templates (#589) 2024-10-22 09:44:53 +08:00
leo
6dac26d525
refactor: since there is a hotkey to stage and commit, remove the unsafe auto-stage configure 2024-10-22 09:29:49 +08:00
leo
bb45a5af8e
enhance: use \S instead of \w to supports emoji character 2024-10-21 17:07:56 +08:00
leo
3296f90feb
enhance: only show two chars when they are all ascii letters or digits (#585) 2024-10-21 16:58:15 +08:00
Antony David
3804b0a828
fix(histories): handle commits with breaking changes (#584) 2024-10-21 15:41:31 +08:00
leo
0539a94cbe
feature: mark deleted repository and auto remove it after scan default clone dir (#576) 2024-10-20 20:42:14 +08:00
leo
9668efbd8c
code_style: remove Rider warnings 2024-10-20 20:16:54 +08:00
leo
d3bca20034
ux: using Grid instead of StackPanel to layout convertional commit change type 2024-10-18 16:33:13 +08:00
leo
72b46a6e16
ux: use the same icon for conventional commit message generator (#574) 2024-10-18 16:28:07 +08:00
leo
9153bbe07f
feature: add conventional commit message generator (#574) 2024-10-18 16:20:45 +08:00
leo
2821bab77c
ux: layout of histories toggle buttons 2024-10-18 14:48:15 +08:00