Skip to content

Commit 760a8cf

Browse files
committed
Merge remote-tracking branch 'upstream/develop-8.0' into merge-develop-8.0_19.07.2016
2 parents e905a0f + 456b3c0 commit 760a8cf

22 files changed

Lines changed: 286 additions & 133 deletions

builder/builder_utilities.livecodescript

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
script "BuilderUtilities"
2-
constant kMergExtVersion = "2016-7-4"
2+
3+
constant kMergExtVersion = "2016-7-11"
34
constant kTSNetVersion = "1.2"
45

56
local sEngineDir

builder/tools_builder.livecodescript

Lines changed: 19 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -89,9 +89,19 @@ private command toolsBuilderFilterExternals pFolder, pPlatform
8989
-- Don't remove lcext files ith Android externals in them
9090
local tLCExt
9191
repeat for each line tLCExt in tFiles
92-
get shell(merge("unzip -l '[[ tLCExt ]]'"))
93-
if "Android/External-" is not in it then
94-
get shell(merge("rm -rf '[[ tLCExt ]]'"))
92+
revZipOpenArchive pFolder & slash & tLCExt, "read"
93+
if the result is not empty then
94+
builderLog "error", "Cannot open lcext file" && tLCExt
95+
exit toolsBuilderFilterExternals
96+
end if
97+
98+
local tArchiveFiles
99+
put revZipEnumerateItems(pFolder & slash & tLCExt) into tArchiveFiles
100+
filter tArchiveFiles with "Android/External-*"
101+
revZipCloseArchive pFolder & slash & tLCExt
102+
103+
if tArchiveFiles is not empty then
104+
get shell(merge("rm -f '[[ tLCExt ]]'"))
95105
end if
96106
end repeat
97107
end if
@@ -103,27 +113,12 @@ private command toolsBuilderFilterExternals pFolder, pPlatform
103113
return tFiles is not empty
104114
end toolsBuilderFilterExternals
105115

106-
private command toolsBuilderPrepareExt pEdition, pPlatform
107-
builderExtUnpack pEdition
108-
109-
-- Remove un-needed files from the unpacked Ext collection
110-
local tOldFolder
111-
local tCollectionFolder
112-
put builderUnpackFolder() & slash & "Ext" into tCollectionFolder
113-
put the defaultFolder into tOldFolder
114-
set the defaultFolder to tCollectionFolder
115-
repeat for each line tExtension in the folders
116-
-- Skip special names
117-
if tExtension is empty or tExtension is "." or tExtension is ".." then next repeat
118-
119-
toolsBuilderFilterExternals tCollectionFolder & "/" & tExtension, pPlatform
120-
if the result is false then
121-
set the defaultFolder to tCollectionFolder
122-
get shell(merge("rm -rf '[[tExtension]]'"))
123-
end if
124-
end repeat
125-
set the defaultFolder to tOldFolder
126-
end toolsBuilderPrepareExt
116+
private command toolsBuilderPrepareMergExt pMergExtVersion, pEdition, pPlatform
117+
-- Ensure that the MergExt bundle is downloaded and unpacked
118+
builderMergExtUnpack pMergExtVersion, (toUpper(char 1 of pEdition) & toLower(char 2 to -1 of pEdition))
119+
120+
toolsBuilderFilterExternals builderMergExtFolder() & "/" & "MergExt", pPlatform
121+
end toolsBuilderPrepareMergExt
127122

128123
////////////////////////////////////////////////////////////////////////////////
129124

@@ -856,4 +851,3 @@ function loadTextFile pFile
856851
replace numToChar(13) with return in it
857852
return it
858853
end loadTextFile
859-

docs/dictionary/message/resizeStack.lcdoc

Lines changed: 36 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -28,18 +28,41 @@ oldWidth: The stack's original width in pixels.
2828
oldHeight: The stack's original height in pixels.
2929

3030
Description:
31-
Handle the <resizeStack> <message> if you want to update the position of <object|objects> or do other tasks when the <stack window> changes size.
32-
33-
The <resizeStack> <message> is sent when the user resizes the <stack> by dragging its size box. It is also sent if a <handler> changes the size of the <stack> by changing its <properties> (<width>, <height>, and so on).
34-
35-
The <resizeStack> <message> is sent after the resizing is finished. This means that you cannot prevent a <stack|stack's> size from being changed by <trap|trapping> this <message>. If the <stack|stack's> <liveResizing> <property> is true, <resizeStack> <message|messages> are sent continuously during resizing, but you still cannot prevent resizing by trapping the <message>.
36-
37-
On Mac OS X systems when the <liveResizing> <property> is true and on all other systems, the <oldWidth> and <oldHeight> for each <resizeStack> <message> is the same as the <newWidth> and <newHeight> for the previous <resizeStack>. The <stack|stack's> original <width> and <height> are passed only with the first <resizeStack> <message> sent during a resize operation.
38-
39-
The screen is locked while a <resizeStack> <handler> is running, so it is not necessary to use the <lock screen> <command> to prevent changes from being seen. (However, the <lockScreen> <property> is not set to true.)
40-
41-
>*Note:* If the <stack's vScroll property> is nonzero, the amount of scroll is not included in the <newHeight> and <oldHeight>. This means that the <parameter|parameters> of the <resizeStack> < message(keyword)> are always equal to the <stack's height> before and after resizing, regardless of the <vScroll> setting.
42-
43-
References: maxWidth (property), width (property), height (property), minHeight (property), resizable (property), lockScreen (property), properties (property), vScroll (property), liveResizing (property), moveStack (message), resizeControl (message), unIconifyStack (message), revChangeWindowSize (command), lock screen (command), stack's vScroll property (object), stack's height (object), stack (object), object (glossary), property (glossary), current card (glossary), stack window (glossary), handler (glossary), message (glossary), parameter (glossary), command (glossary), trap (glossary)
31+
Handle the <resizeStack> <message> if you want to update the position of
32+
<object|objects> or do other tasks when the <stack window> changes size.
33+
34+
The <resizeStack> <message> is sent when the user resizes the <stack> by
35+
dragging its size box. It is also sent if a <handler> changes the size
36+
of the <stack> by changing its <properties> (<width>, <height>, and so
37+
on).
38+
39+
The <resizeStack> <message> is sent after the resizing is finished. This
40+
means that you cannot prevent a <stack|stack's> size from being changed
41+
by <trap|trapping> this <message>.
42+
43+
The <oldWidth> and <oldHeight> for each <resizeStack> <message> is the
44+
same as the <newWidth> and <newHeight> for the previous <resizeStack>.
45+
The <stack|stack's> original <width> and <height> are passed only with
46+
the first <resizeStack> <message> sent during a resize operation.
47+
48+
The screen is locked while a <resizeStack> <handler> is running, so it
49+
is not necessary to use the <lock screen> <command> to prevent changes
50+
from being seen. (However, the <lockScreen> <property> is not set to
51+
true.)
52+
53+
>*Note:* If the stack's <vScroll> property is nonzero, the amount of
54+
> scroll is not included in the <newHeight> and <oldHeight>. This means
55+
> that the <parameter|parameters> of the <resizeStack>
56+
> <message(keyword)> are always equal to the stack's <height> before and
57+
> after resizing, regardless of the <vScroll> setting.
58+
59+
References: maxWidth (property), width (property), height (property),
60+
minHeight (property), resizable (property), lockScreen (property),
61+
properties (property), vScroll (property), moveStack (message),
62+
resizeControl (message), unIconifyStack (message),
63+
revChangeWindowSize (command), lock screen (command), stack (object),
64+
object (glossary), property (glossary), current card (glossary),
65+
stack window (glossary), handler (glossary), message (glossary),
66+
parameter (glossary), command (glossary), trap (glossary)
4467

4568
Tags: windowing

docs/dictionary/property/rectangle.lcdoc

Lines changed: 71 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -24,37 +24,80 @@ set the rectangle of button "Tangle" to 20,20,45,200
2424
Example:
2525
set the rectangle of group 1 to the rectangle of this card
2626

27-
Value: The <rectangle> of an <object(glossary)> consists of four <integer|integers> separated by commas.
27+
Value: The <rectangle> of an <object(glossary)> consists of four
28+
<integer|integers> separated by commas.
2829

2930
Description:
30-
Use the <rectangle> <property> to find out how far an <object(glossary)> extends, to move it, or to resize it.
31-
32-
The four items of an object's <rectangle> describe the <object|object's> left, top, right, and bottom edges:
33-
34-
* The <left> is the number of <pixels> between the left edge of the <stack window> and the leftmost pixel of the <object(glossary)>.
35-
36-
* The <top> is the number of <pixels> between the top edge of the <stack window> and the topmost pixel of the <object(glossary)>.
37-
38-
* The <right> is the horizontal distance in <pixels> between the left edge of the <stack window> and the rightmost pixel of the <object(glossary)>.
39-
40-
* The <bottom> is the vertical distance in <pixels> between the top edge of the <stack window> and the bottommost pixel of the <object(glossary)>.
41-
42-
>*Note:* The sides of an <object|object's> <rectangle> specify the lines between <pixels>, not the <pixels> themselves. For example, if an <object|object's> <rectangle> is "0,0,2,2", the <object(glossary)> includes four <pixels>, starting at the top left corner of the <card>. In the case of a line or curve <graphic(keyword)>, the <graphic(object)|graphic's> <rectangle> encloses all the <pixels> in the <graphic(object)|graphic's> <points> <property> without touching any of them.
43-
44-
If the object is a stack, its <rectangle> is relative to the left and top of the screen, rather than the left and top of the <stack window>.
45-
46-
The first two items of a card's <rectangle> are always zero. The third <item> is the <height> of the <card>, and the fourth is the <width> of the <card>.
47-
48-
>*Note:* The <rectangle> of a <graphic(keyword)> is drawn around all its <points> without touching them. (Usually, this makes no difference, but in some circumstances where you need to place a <graphic(object)|graphic's> <vertex> precisely with respect to another <object|object's> <rectangle>, you may need to take this into account.)
49-
50-
If you specify the effective <keyword>, the rectangle includes the outline added by the <showFocusBorder> <property>. It also includes the heavy outline added to the <defaultButton>. If the <showFocusBorder> of the <object(glossary)> is false, or the <object(glossary)> is not currently <focus|focused>, the effective rectangle is the same as the rectangle.
51-
52-
>*Note:*As of version 6.0 the effective rect property of stacks returns the rect of the given stack with its decorations and
53-
frame taken into account. The effective rect of a stack can also be set. Here, the rect of the frame of the stack will be set appropriately before setting the rect of the stack.
31+
Use the <rectangle> <property> to find out how far an <object(glossary)>
32+
extends, to move it, or to resize it.
33+
34+
The four items of an object's <rectangle> describe the <object|object's>
35+
left, top, right, and bottom edges:
36+
37+
* The <left> is the number of <pixels> between the left edge of the
38+
<stack window> and the leftmost pixel of the <object(glossary)>.
39+
40+
* The <top> is the number of <pixels> between the top edge of the
41+
<stack window> and the topmost pixel of the <object(glossary)>.
42+
43+
* The <right> is the horizontal distance in <pixels> between the left
44+
edge of the <stack window> and the rightmost pixel of the
45+
<object(glossary)>.
46+
47+
* The <bottom> is the vertical distance in <pixels> between the top edge
48+
of the <stack window> and the bottommost pixel of the
49+
<object(glossary)>.
50+
51+
>*Note:* The sides of an <object|object's> <rectangle> specify the lines
52+
> between <pixels>, not the <pixels> themselves. For example, if an
53+
> <object|object's> <rectangle> is "0,0,2,2", the <object(glossary)>
54+
> includes four <pixels>, starting at the top left corner of the <card>.
55+
> In the case of a line or curve <graphic(keyword)>, the
56+
> <graphic(object)|graphic's> <rectangle> encloses all the <pixels> in
57+
> the <graphic(object)|graphic's> <points> <property> without touching
58+
> any of them.
59+
60+
If the object is a stack, its <rectangle> is relative to the left and
61+
top of the screen, rather than the left and top of the <stack window>.
62+
63+
The first two items of a card's <rectangle> are always zero. The third
64+
<item> is the <height> of the <card>, and the fourth is the <width> of
65+
the <card>.
66+
67+
>*Note:* The <rectangle> of a <graphic(keyword)> is drawn around all its
68+
> <points> without touching them. (Usually, this makes no difference,
69+
> but in some circumstances where you need to place a
70+
> <graphic(object)|graphic's> <vertex> precisely with respect to another
71+
> <object|object's> <rectangle>, you may need to take this into
72+
> account.)
73+
74+
If you specify the effective <keyword>, the rectangle includes the
75+
outline added by the <showFocusBorder> <property>. It also includes the
76+
heavy outline added to the <defaultButton>. If the <showFocusBorder> of
77+
the <object(glossary)> is false, or the <object(glossary)> is not
78+
currently <focus|focused>, the effective rectangle is the same as the
79+
rectangle.
80+
81+
>*Note:*As of version 6.0 the effective rect property of stacks returns
82+
> the rect of the given stack with its decorations and frame taken into
83+
> account. The effective rect of a stack can also be set. Here, the rect
84+
> of the frame of the stack will be set appropriately before setting the
85+
> rect of the stack.
5486

5587
Changes:
56-
The use of the effective keyword with the rectangle property was introduced in version 1.1. In previous versions, the rectangle of the defaultButton included the heavy outline.
57-
58-
References: bottom (property), topRight (property), pixels (property), liveResizing (property), points (property), defaultButton (property), width (property), showFocusBorder (property), height (property), backSize (property), orientation (property), margins (property), windowManagerPlace (property), card (keyword), item (keyword), graphic (keyword), moveStack (message), revChangeWindowSize (command), export snapshot (command), crop (command), object (glossary), graphic (object), property (glossary), keyword (glossary), focus (glossary), vertex (glossary), stack window (glossary), integer (glossary)
88+
The use of the effective keyword with the rectangle property was
89+
introduced in version 1.1. In previous versions, the rectangle of the
90+
defaultButton included the heavy outline.
91+
92+
References: bottom (property), topRight (property), pixels (property),
93+
points (property), defaultButton (property), width (property),
94+
showFocusBorder (property), height (property), backSize (property),
95+
orientation (property), margins (property),
96+
windowManagerPlace (property), card (keyword), item (keyword),
97+
graphic (keyword), moveStack (message), revChangeWindowSize (command),
98+
export snapshot (command), crop (command), object (glossary),
99+
graphic (object), property (glossary), keyword (glossary),
100+
focus (glossary), vertex (glossary), stack window (glossary),
101+
integer (glossary)
59102

60103
Tags: ui

docs/dictionary/property/resizable.lcdoc

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,27 @@ Example:
1818
set the resizable of this stack to false
1919

2020
Value (bool):The <resizable> of a <stack> is true or false.
21-
By default, the <resizable> <property> of newly created <stacks> is set to true.
21+
By default, the <resizable> <property> of newly created <stacks> is set
22+
to true.
2223

2324
Value:
24-
The <resizable> <property> <control|controls> only whether the user can change the <stack|stack's> size. Even if the <resizable> is false, you can use the <rectangle> <property> (and related <properties>) to change the <stack|stack's> size in a <handler>.
25+
The <resizable> <property> <control|controls> only whether the user can
26+
change the <stack|stack's> size. Even if the <resizable> is false, you
27+
can use the <rectangle> <property> (and related <properties>) to change
28+
the <stack|stack's> size in a <handler>.
2529

26-
If the stack's style is "modal", or if is has been opened with the <modal> <command>, the setting of the <resizable> <property> has no effect, and the <stack window> cannot be resized.
30+
If the stack's style is "modal", or if is has been opened with the
31+
<modal> <command>, the setting of the <resizable> <property> has no
32+
effect, and the <stack window> cannot be resized.
2733

2834
Description:
29-
Use the <resizable> <property> to control whether the user can change a window's size.
30-
31-
References: minHeight (property), liveResizing (property), properties (property), maxWidth (property), resizeStack (message), rectangle (keyword), property (glossary), handler (glossary), command (glossary), stack window (glossary), stacks (function), modal (command), stack (object), control (object)
35+
Use the <resizable> <property> to control whether the user can change a
36+
window's size.
37+
38+
References: minHeight (property), properties (property),
39+
maxWidth (property), resizeStack (message), rectangle (keyword),
40+
property (glossary), handler (glossary), command (glossary),
41+
stack window (glossary), stacks (function), modal (command),
42+
stack (object), control (object)
3243

3344
Tags: windowing

docs/notes/bugfix-17953.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Fix regression to Mac window moveStack handling

docs/notes/bugfix-17962.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Ensure the defaultStack hasn't been deleted before resetting it

docs/notes/bugfix-17971.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Fix formatting of resizeStack message docs entry

docs/notes/bugfix-18041.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Ensure codeunitOffset and codepointOffset return 1 indexed offset

docs/notes/platforms.md

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,23 +21,18 @@ LiveCode supports Linux installations which meet the following requirements:
2121

2222
* Supported CPU architectures:
2323
* 32-bit or 64-bit Intel/AMD or compatible processor
24-
* 32-bit ARMv6 with hardware floating-point (e.g. RaspberryPi)
2524

26-
* Common requirements for GUI functionality:
25+
* Required dependencies for core functionality:
26+
* glibc 2.13 or later
27+
28+
* Optional requirements for GUI functionality:
2729
* GTK/GDK/Glib 2.24 or later
2830
* Pango with Xft support
2931
* esd (optional, needed for audio output)
3032
* mplayer (optional, needed for media player functionality)
3133
* lcms (optional, required for color profile support in images)
3234
* gksu (optional, required for privilege elevation support)
3335

34-
* Requirements for 32-bit Intel/AMD:
35-
* glibc 2.11 or later
36-
* Requirements for 64-bit Intel/AMD:
37-
* glibc 2.13 or later
38-
* Requirements for ARMv6:
39-
* glibc 2.7 or later
40-
4136
**Note:** If the optional requirements are not present then LiveCode will still run but the specified features will be disabled.
4237

4338
**Note:** The requirements for GUI functionality are also required by Firefox and Chrome, so if your Linux distribution runs one of those, it will run LiveCode.

0 commit comments

Comments
 (0)