Tk Source Code

Changes On Branch bug-ab839efc5f
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Changes In Branch bug-ab839efc5f Excluding Merge-Ins

This is equivalent to a diff from a155c7b4 to 9bbfa738

2024-04-21
11:03
Fix [ab839efc5f]: text edit undo: clearing text instead of restoring. check-in: d842b155 user: fvogel tags: core-8-6-branch
2024-04-20
10:17
Let this bugfix branch build and test at Github Actions. Closed-Leaf check-in: 9bbfa738 user: fvogel tags: bug-ab839efc5f
10:12
Fix [ab839efc5f]: text edit undo: clearing text instead of restoring. Test text-27.26 now passes. check-in: dca579ed user: fvogel tags: bug-ab839efc5f
10:04
Add (currently failing) test text-27.26 demonstrating bug [ab839efc5f]. check-in: 6e4d64bf user: fvogel tags: bug-ab839efc5f
2024-04-16
15:27
Merge 8.6 check-in: 07bb0e3a user: jan.nijtmans tags: core-8-branch
15:24
More internal "-encoding utf-8" check-in: a155c7b4 user: jan.nijtmans tags: core-8-6-branch
2024-03-23
19:16
re-generate internal stub tables check-in: 4869d6e5 user: jan.nijtmans tags: core-8-6-branch

Changes to .github/workflows/linux-build.yml.
1
2
3
4
5
6
7

8
9
10
11
12
13
14
name: Linux
on:
  push:
    branches:
    - "main"
    - "core-8-branch"
    - "core-8-6-branch"

    tags:
    - "core-**"
permissions:
  contents: read
defaults:
  run:
    shell: bash







>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
name: Linux
on:
  push:
    branches:
    - "main"
    - "core-8-branch"
    - "core-8-6-branch"
    - "bug-ab839efc5f"
    tags:
    - "core-**"
permissions:
  contents: read
defaults:
  run:
    shell: bash
Changes to .github/workflows/mac-build.yml.
1
2
3
4
5
6
7

8
9
10
11
12
13
14
name: macOS
on:
  push:
    branches:
    - "main"
    - "core-8-branch"
    - "core-8-6-branch"

    tags:
    - "core-**"
permissions:
  contents: read
env:
  ERROR_ON_FAILURES: 1
jobs:







>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
name: macOS
on:
  push:
    branches:
    - "main"
    - "core-8-branch"
    - "core-8-6-branch"
    - "bug-ab839efc5f"
    tags:
    - "core-**"
permissions:
  contents: read
env:
  ERROR_ON_FAILURES: 1
jobs:
Changes to .github/workflows/win-build.yml.
1
2
3
4
5
6
7

8
9
10
11
12
13
14
name: Windows
on:
  push:
    branches:
    - "main"
    - "core-8-branch"
    - "core-8-6-branch"

    tags:
    - "core-**"
permissions:
  contents: read
env:
  ERROR_ON_FAILURES: 1
jobs:







>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
name: Windows
on:
  push:
    branches:
    - "main"
    - "core-8-branch"
    - "core-8-6-branch"
    - "bug-ab839efc5f"
    tags:
    - "core-**"
permissions:
  contents: read
env:
  ERROR_ON_FAILURES: 1
jobs:
Changes to generic/tkText.c.
5054
5055
5056
5057
5058
5059
5060




5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078




5079
5080
5081
5082
5083
5084
5085
    TkText *textPtr)		/* Overall information about text widget. */
{
    int status;

    if (!textPtr->sharedTextPtr->undo) {
	return TCL_OK;
    }





    /*
     * Turn off the undo feature while we revert a compound action, setting
     * the dirty handling mode to undo for the duration (unless it is
     * 'fixed').
     */

    textPtr->sharedTextPtr->undo = 0;
    if (textPtr->sharedTextPtr->dirtyMode != TK_TEXT_DIRTY_FIXED) {
	textPtr->sharedTextPtr->dirtyMode = TK_TEXT_DIRTY_UNDO;
    }

    status = TkUndoRevert(textPtr->sharedTextPtr->undoStack);

    if (textPtr->sharedTextPtr->dirtyMode != TK_TEXT_DIRTY_FIXED) {
	textPtr->sharedTextPtr->dirtyMode = TK_TEXT_DIRTY_NORMAL;
    }
    textPtr->sharedTextPtr->undo = 1;





    return status;
}

/*
 *----------------------------------------------------------------------
 *







>
>
>
>


















>
>
>
>







5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
    TkText *textPtr)		/* Overall information about text widget. */
{
    int status;

    if (!textPtr->sharedTextPtr->undo) {
	return TCL_OK;
    }

    if (textPtr->sharedTextPtr->autoSeparators) {
	TkUndoInsertUndoSeparator(textPtr->sharedTextPtr->undoStack);
    }

    /*
     * Turn off the undo feature while we revert a compound action, setting
     * the dirty handling mode to undo for the duration (unless it is
     * 'fixed').
     */

    textPtr->sharedTextPtr->undo = 0;
    if (textPtr->sharedTextPtr->dirtyMode != TK_TEXT_DIRTY_FIXED) {
	textPtr->sharedTextPtr->dirtyMode = TK_TEXT_DIRTY_UNDO;
    }

    status = TkUndoRevert(textPtr->sharedTextPtr->undoStack);

    if (textPtr->sharedTextPtr->dirtyMode != TK_TEXT_DIRTY_FIXED) {
	textPtr->sharedTextPtr->dirtyMode = TK_TEXT_DIRTY_NORMAL;
    }
    textPtr->sharedTextPtr->undo = 1;

    if (textPtr->sharedTextPtr->autoSeparators) {
	TkUndoInsertUndoSeparator(textPtr->sharedTextPtr->undoStack);
    }

    return status;
}

/*
 *----------------------------------------------------------------------
 *
Changes to tests/text.test.
6963
6964
6965
6966
6967
6968
6969















6970
6971
6972
6973
6974
6975
6976
    .t edit undo
    update ; lappend res $nbUS
    .t edit reset
    update ; lappend res $nbUS
} -cleanup {
    destroy .t
} -result {0 0 1 2 3 4 4 5 6 6 7 8 8 9}

















test text-28.1 {bug fix - 624372, ControlUtfProc long lines} -body {
    pack [text .t -wrap none]
    .t insert end [string repeat "\1" 500]
} -cleanup {
    destroy .t







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991
    .t edit undo
    update ; lappend res $nbUS
    .t edit reset
    update ; lappend res $nbUS
} -cleanup {
    destroy .t
} -result {0 0 1 2 3 4 4 5 6 6 7 8 8 9}
test text-27.26 {bug ab839efc5f - .text edit undo inserts separators} -setup {
    destroy .t
} -body {
    text .t -undo 1
    .t insert 1.0 "1. 123 5 789012  LINE-1\n2.\n3. 123 5 789012  LINE-3\n"
    .t tag add sel 3.0 3.end
    .t delete sel.first sel.last
    .t edit undo
    .t tag add sel 3.0 3.end
    .t delete sel.first sel.last
    .t edit undo
    .t get 3.0 3.end
} -cleanup {
    destroy .t
} -result {3. 123 5 789012  LINE-3}


test text-28.1 {bug fix - 624372, ControlUtfProc long lines} -body {
    pack [text .t -wrap none]
    .t insert end [string repeat "\1" 500]
} -cleanup {
    destroy .t