From e40138c2ee064b1eac18a7adef0eeed4cf5776e2 Mon Sep 17 00:00:00 2001 From: Andrew Hankinson Date: Sat, 23 Feb 2013 17:20:38 -0500 Subject: [PATCH 1/4] Fixes #1685: CPToolbar calls incorrect notification method This fix corrects the call in CPToolbar _setWindow to `removeObserver:name:object`. Before, this was calling the non-existent `removeObserver:object`, which would raise an exception. This was fixed by @schipmolder. --- AppKit/CPToolbar.j | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AppKit/CPToolbar.j b/AppKit/CPToolbar.j index 21fbd788d..5ad5b16fb 100644 --- a/AppKit/CPToolbar.j +++ b/AppKit/CPToolbar.j @@ -230,7 +230,7 @@ var CPToolbarsByIdentifier = nil, - (void)_setWindow:(CPWindow)aWindow { if (_window) - [[CPNotificationCenter defaultCenter] removeObserver:self object:_window]; + [[CPNotificationCenter defaultCenter] removeObserver:self name:nil object:_window]; _window = aWindow; From 946b336e9222d277c5a833fa19c4d1a5e1fbd209 Mon Sep 17 00:00:00 2001 From: Andrew Hankinson Date: Sat, 23 Feb 2013 17:31:08 -0500 Subject: [PATCH 2/4] Added correct notification name. --- AppKit/CPToolbar.j | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AppKit/CPToolbar.j b/AppKit/CPToolbar.j index 5ad5b16fb..f81ee1d77 100644 --- a/AppKit/CPToolbar.j +++ b/AppKit/CPToolbar.j @@ -230,7 +230,7 @@ var CPToolbarsByIdentifier = nil, - (void)_setWindow:(CPWindow)aWindow { if (_window) - [[CPNotificationCenter defaultCenter] removeObserver:self name:nil object:_window]; + [[CPNotificationCenter defaultCenter] removeObserver:self name:_CPWindowDidChangeFirstResponderNotification object:_window]; _window = aWindow; From d2143844e3d0d6efc514291aa6d0db79d8c73fcc Mon Sep 17 00:00:00 2001 From: cacaodev Date: Sun, 24 Feb 2013 18:47:37 +0100 Subject: [PATCH 3/4] Fix for issue #1357 --- AppKit/CPView.j | 1 + .../AppController.j | 63 ++++++++++ .../Info.plist | 12 ++ .../Jakefile | 93 +++++++++++++++ .../Resources/spinner.gif | Bin 0 -> 1434 bytes .../index-debug.html | 112 ++++++++++++++++++ .../index.html | 83 +++++++++++++ .../main.j | 18 +++ 8 files changed, 382 insertions(+) create mode 100644 Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j create mode 100644 Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist create mode 100644 Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile create mode 100644 Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Resources/spinner.gif create mode 100644 Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html create mode 100644 Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index.html create mode 100644 Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/main.j diff --git a/AppKit/CPView.j b/AppKit/CPView.j index d309b0b4f..8bcbb6359 100644 --- a/AppKit/CPView.j +++ b/AppKit/CPView.j @@ -1365,6 +1365,7 @@ var CPViewFlags = { }, } else { + [self setNeedsDisplay:YES]; [self _notifyViewDidUnhide]; } } diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j new file mode 100644 index 000000000..e54f1bf3b --- /dev/null +++ b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j @@ -0,0 +1,63 @@ +/* + * AppController.j + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +@import + + +@implementation AppController : CPObject +{ + CPView view; +} + +- (void)applicationDidFinishLaunching:(CPNotification)aNotification +{ + var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMake(100,100,700,400) styleMask:CPResizableWindowMask], + contentView = [theWindow contentView]; + + var button = [[CPButton alloc] initWithFrame:CGRectMake(10, 10, 200, 28)]; + [button setTitle:@"Hide"]; + [button setAlternateTitle:@"Unhide"]; + [button setButtonType:CPToggleButton]; + [button setTarget:self]; + [button setAction:@selector(hide:)]; + + var textField = [[CPTextField alloc] initWithFrame:CGRectMake(230, 10, 500, 50)]; + [textField setStringValue:@"Test: 1/ Hide the red view, 2/ resize the window (and the red view), 3/ unhide the view.\n Expected: the red view should be visible and resized."]; + + view = [[CustomView alloc] initWithFrame:CGRectMake(100,100, 200,200)]; + [view setAutoresizingMask:CPViewWidthSizable | CPViewHeightSizable]; + + [contentView addSubview:button]; + [contentView addSubview:textField]; + [contentView addSubview:view]; + + [theWindow orderFront:self]; +} + +- (void)hide:(id)sender +{ + var state = [sender state]; + [view setHidden:(state == CPOnState)]; +} + +@end + +@implementation CustomView : CPView +{ +} + +- (void)drawRect:(CGRect)aRect +{ + var ctx = [[CPGraphicsContext currentContext] graphicsPort]; + + [[CPColor redColor] set]; + + CGContextFillRect(ctx, [self bounds]); +} + +@end \ No newline at end of file diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist new file mode 100644 index 000000000..55e6ab70e --- /dev/null +++ b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist @@ -0,0 +1,12 @@ + + + + + CPApplicationDelegateClass + AppController + CPBundleName + CPViewNoDisplayAfterHidingAndResizeBug + CPPrincipalClass + CPApplication + + diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile new file mode 100644 index 000000000..bb12b2e12 --- /dev/null +++ b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile @@ -0,0 +1,93 @@ +/* + * Jakefile + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +var ENV = require("system").env, + FILE = require("file"), + JAKE = require("jake"), + task = JAKE.task, + FileList = JAKE.FileList, + app = require("cappuccino/jake").app, + configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug", + OS = require("os"); + +app ("CPViewNoDisplayAfterHidingAndResizeBug", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "CPViewNoDisplayAfterHidingAndResizeBug.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("CPViewNoDisplayAfterHidingAndResizeBug"); + task.setIdentifier("com.yourcompany.CPViewNoDisplayAfterHidingAndResizeBug"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("CPViewNoDisplayAfterHidingAndResizeBug"); + task.setSources((new FileList("**/*.j")).exclude(FILE.join("Build", "**"))); + task.setResources(new FileList("Resources/**")); + task.setIndexFilePath("index.html"); + task.setInfoPlistPath("Info.plist"); + + if (configuration === "Debug") + task.setCompilerFlags("-DDEBUG -g"); + else + task.setCompilerFlags("-O"); +}); + +task ("default", ["CPViewNoDisplayAfterHidingAndResizeBug"], function() +{ + printResults(configuration); +}); + +task ("build", ["default"]); + +task ("debug", function() +{ + ENV["CONFIGURATION"] = "Debug"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("release", function() +{ + ENV["CONFIGURATION"] = "Release"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("run", ["debug"], function() +{ + OS.system(["open", FILE.join("Build", "Debug", "CPViewNoDisplayAfterHidingAndResizeBug", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "CPViewNoDisplayAfterHidingAndResizeBug")); + OS.system(["press", "-f", FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug"), FILE.join("Build", "Deployment", "CPViewNoDisplayAfterHidingAndResizeBug")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug"), FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug", "CPViewNoDisplayAfterHidingAndResizeBug.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug", "CPViewNoDisplayAfterHidingAndResizeBug.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "CPViewNoDisplayAfterHidingAndResizeBug")); + print("----------------------------"); +} diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Resources/spinner.gif b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Resources/spinner.gif new file mode 100644 index 0000000000000000000000000000000000000000..a5e705f6cbdf914e5e714c35a8dfef807f19e3c2 GIT binary patch literal 1434 zcmZvbdrVVj7{t$-UNOu86#VHu^|s&3rWfwHBbPG_8{SrlB{Tv1uvvj4t6zP!)#d!Ogc zP^62J^$0+~?-ZcXXpBaq%jFsw8L`=H2?+@R02Yg-*Xw;gACBV^i3CMahr>Z667S!? zk3LDe>VLEsU;sWo$Py~o!gWuaIAnaG3Sv``&tvc+8DJO!| zt4fcbQ8tW}a&xZfgtQ9BnFYLvGG|PvCNlg&uh@Q^w9Pz}+I^hCj`vu9JQADPqdkyk zR40xycD9geUgJu1e;$L`Fpa)?Wl-2&6hO@U*KrPqK(I1H=1h?2fce}6GhhP1oBZC# z1e@gt-qFa6lZrl%s1>bdxg*W)Ebt__O(4sj6(*2X@ciUClwHH#U(NRM7XAjS z+scDZ32J*PCoslsgS~#ZlCCGo`r>S6F)Ghw5wVlqHioFaw?ucD(XoLJ0j;28oPoPV z9A}dR$0SKn>uExfkl#j09o;v$BZ909R=*p{ATNq8BJW;YduX2QMOU7$a$_L5e!G^g zpbkx5G4&FZ%7m14rTN}5YB(;x7$5XOc_hf3E|Hw$TVg)P#qf~}nOn03uqsp>UG>vi zWThIoO)-1Q#@u#O;fMC#WAf@Xj70-0g9YZ;dA$HH1fW1q=9-c>>_yA0S$7M*5?}vi z)8MU`Q%P!7sEBBnd$DrKgFQ2?O%6LpdaC%F8Pn-)EC2t=j~ zoaLamla$FX!GQqWi!%s>sj-#5SJX0IF!TP=r21Z}s)k#btN0?=I7uD9C)Gb$fZ#sm zaVq7g`LwZ%PfNpN^_N-IGLHj@AV`s#4&va7_{Hw63G6BkSGXHdogTZ%QOiRb bDpZ@qYcJKM>x%b%*HX74c8MnqfHi*u-bC?g literal 0 HcmV?d00001 diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html new file mode 100644 index 000000000..636db06c8 --- /dev/null +++ b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html @@ -0,0 +1,112 @@ + + + + + + + + + + + + + + + + + + CPViewNoDisplayAfterHidingAndResizeBug + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index.html b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index.html new file mode 100644 index 000000000..f27a4cb8a --- /dev/null +++ b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index.html @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + CPViewNoDisplayAfterHidingAndResizeBug + + + + + + + + + + + + +
+
+ + + +
+
+ + + + diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/main.j b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/main.j new file mode 100644 index 000000000..ca820e685 --- /dev/null +++ b/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +} From c6a0e209adb7c5b4977fe86dc7a77f3353478ce9 Mon Sep 17 00:00:00 2001 From: Aparajita Fishman Date: Sun, 24 Feb 2013 18:51:22 -0500 Subject: [PATCH 4/4] Using a new naming scheme for tests --- .../AppController.j | 0 .../AppController.j | 63 ++++++++++ .../Info.plist | 0 .../Jakefile | 0 .../Resources/spinner.gif | Bin .../index-debug.html | 0 .../index.html | 0 .../main.j | 0 Tests/Manual/Issue-1357-fix/Info.plist | 12 ++ Tests/Manual/Issue-1357-fix/Jakefile | 93 +++++++++++++++ .../Issue-1357-fix/Resources/spinner.gif | Bin 0 -> 1434 bytes Tests/Manual/Issue-1357-fix/index-debug.html | 112 ++++++++++++++++++ Tests/Manual/Issue-1357-fix/index.html | 83 +++++++++++++ Tests/Manual/Issue-1357-fix/main.j | 18 +++ 14 files changed, 381 insertions(+) rename Tests/Manual/{CPViewNoDisplayAfterHidingAndResizeBug => Issue-1357-fix}/AppController.j (100%) create mode 100644 Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j rename Tests/Manual/{ => Issue-1357-fix}/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist (100%) rename Tests/Manual/{ => Issue-1357-fix}/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile (100%) rename Tests/Manual/{ => Issue-1357-fix}/CPViewNoDisplayAfterHidingAndResizeBug/Resources/spinner.gif (100%) rename Tests/Manual/{ => Issue-1357-fix}/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html (100%) rename Tests/Manual/{ => Issue-1357-fix}/CPViewNoDisplayAfterHidingAndResizeBug/index.html (100%) rename Tests/Manual/{ => Issue-1357-fix}/CPViewNoDisplayAfterHidingAndResizeBug/main.j (100%) create mode 100644 Tests/Manual/Issue-1357-fix/Info.plist create mode 100644 Tests/Manual/Issue-1357-fix/Jakefile create mode 100644 Tests/Manual/Issue-1357-fix/Resources/spinner.gif create mode 100644 Tests/Manual/Issue-1357-fix/index-debug.html create mode 100644 Tests/Manual/Issue-1357-fix/index.html create mode 100644 Tests/Manual/Issue-1357-fix/main.j diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j b/Tests/Manual/Issue-1357-fix/AppController.j similarity index 100% rename from Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j rename to Tests/Manual/Issue-1357-fix/AppController.j diff --git a/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j new file mode 100644 index 000000000..e54f1bf3b --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/AppController.j @@ -0,0 +1,63 @@ +/* + * AppController.j + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +@import + + +@implementation AppController : CPObject +{ + CPView view; +} + +- (void)applicationDidFinishLaunching:(CPNotification)aNotification +{ + var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMake(100,100,700,400) styleMask:CPResizableWindowMask], + contentView = [theWindow contentView]; + + var button = [[CPButton alloc] initWithFrame:CGRectMake(10, 10, 200, 28)]; + [button setTitle:@"Hide"]; + [button setAlternateTitle:@"Unhide"]; + [button setButtonType:CPToggleButton]; + [button setTarget:self]; + [button setAction:@selector(hide:)]; + + var textField = [[CPTextField alloc] initWithFrame:CGRectMake(230, 10, 500, 50)]; + [textField setStringValue:@"Test: 1/ Hide the red view, 2/ resize the window (and the red view), 3/ unhide the view.\n Expected: the red view should be visible and resized."]; + + view = [[CustomView alloc] initWithFrame:CGRectMake(100,100, 200,200)]; + [view setAutoresizingMask:CPViewWidthSizable | CPViewHeightSizable]; + + [contentView addSubview:button]; + [contentView addSubview:textField]; + [contentView addSubview:view]; + + [theWindow orderFront:self]; +} + +- (void)hide:(id)sender +{ + var state = [sender state]; + [view setHidden:(state == CPOnState)]; +} + +@end + +@implementation CustomView : CPView +{ +} + +- (void)drawRect:(CGRect)aRect +{ + var ctx = [[CPGraphicsContext currentContext] graphicsPort]; + + [[CPColor redColor] set]; + + CGContextFillRect(ctx, [self bounds]); +} + +@end \ No newline at end of file diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist similarity index 100% rename from Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist rename to Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Info.plist diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile similarity index 100% rename from Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile rename to Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Jakefile diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Resources/spinner.gif b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Resources/spinner.gif similarity index 100% rename from Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/Resources/spinner.gif rename to Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/Resources/spinner.gif diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html similarity index 100% rename from Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html rename to Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/index-debug.html diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index.html b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/index.html similarity index 100% rename from Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/index.html rename to Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/index.html diff --git a/Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/main.j b/Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/main.j similarity index 100% rename from Tests/Manual/CPViewNoDisplayAfterHidingAndResizeBug/main.j rename to Tests/Manual/Issue-1357-fix/CPViewNoDisplayAfterHidingAndResizeBug/main.j diff --git a/Tests/Manual/Issue-1357-fix/Info.plist b/Tests/Manual/Issue-1357-fix/Info.plist new file mode 100644 index 000000000..55e6ab70e --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/Info.plist @@ -0,0 +1,12 @@ + + + + + CPApplicationDelegateClass + AppController + CPBundleName + CPViewNoDisplayAfterHidingAndResizeBug + CPPrincipalClass + CPApplication + + diff --git a/Tests/Manual/Issue-1357-fix/Jakefile b/Tests/Manual/Issue-1357-fix/Jakefile new file mode 100644 index 000000000..bb12b2e12 --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/Jakefile @@ -0,0 +1,93 @@ +/* + * Jakefile + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +var ENV = require("system").env, + FILE = require("file"), + JAKE = require("jake"), + task = JAKE.task, + FileList = JAKE.FileList, + app = require("cappuccino/jake").app, + configuration = ENV["CONFIG"] || ENV["CONFIGURATION"] || ENV["c"] || "Debug", + OS = require("os"); + +app ("CPViewNoDisplayAfterHidingAndResizeBug", function(task) +{ + task.setBuildIntermediatesPath(FILE.join("Build", "CPViewNoDisplayAfterHidingAndResizeBug.build", configuration)); + task.setBuildPath(FILE.join("Build", configuration)); + + task.setProductName("CPViewNoDisplayAfterHidingAndResizeBug"); + task.setIdentifier("com.yourcompany.CPViewNoDisplayAfterHidingAndResizeBug"); + task.setVersion("1.0"); + task.setAuthor("Your Company"); + task.setEmail("feedback @nospam@ yourcompany.com"); + task.setSummary("CPViewNoDisplayAfterHidingAndResizeBug"); + task.setSources((new FileList("**/*.j")).exclude(FILE.join("Build", "**"))); + task.setResources(new FileList("Resources/**")); + task.setIndexFilePath("index.html"); + task.setInfoPlistPath("Info.plist"); + + if (configuration === "Debug") + task.setCompilerFlags("-DDEBUG -g"); + else + task.setCompilerFlags("-O"); +}); + +task ("default", ["CPViewNoDisplayAfterHidingAndResizeBug"], function() +{ + printResults(configuration); +}); + +task ("build", ["default"]); + +task ("debug", function() +{ + ENV["CONFIGURATION"] = "Debug"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("release", function() +{ + ENV["CONFIGURATION"] = "Release"; + JAKE.subjake(["."], "build", ENV); +}); + +task ("run", ["debug"], function() +{ + OS.system(["open", FILE.join("Build", "Debug", "CPViewNoDisplayAfterHidingAndResizeBug", "index.html")]); +}); + +task ("run-release", ["release"], function() +{ + OS.system(["open", FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug", "index.html")]); +}); + +task ("deploy", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Deployment", "CPViewNoDisplayAfterHidingAndResizeBug")); + OS.system(["press", "-f", FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug"), FILE.join("Build", "Deployment", "CPViewNoDisplayAfterHidingAndResizeBug")]); + printResults("Deployment") +}); + +task ("desktop", ["release"], function() +{ + FILE.mkdirs(FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug")); + require("cappuccino/nativehost").buildNativeHost(FILE.join("Build", "Release", "CPViewNoDisplayAfterHidingAndResizeBug"), FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug", "CPViewNoDisplayAfterHidingAndResizeBug.app")); + printResults("Desktop") +}); + +task ("run-desktop", ["desktop"], function() +{ + OS.system([FILE.join("Build", "Desktop", "CPViewNoDisplayAfterHidingAndResizeBug", "CPViewNoDisplayAfterHidingAndResizeBug.app", "Contents", "MacOS", "NativeHost"), "-i"]); +}); + +function printResults(configuration) +{ + print("----------------------------"); + print(configuration+" app built at path: "+FILE.join("Build", configuration, "CPViewNoDisplayAfterHidingAndResizeBug")); + print("----------------------------"); +} diff --git a/Tests/Manual/Issue-1357-fix/Resources/spinner.gif b/Tests/Manual/Issue-1357-fix/Resources/spinner.gif new file mode 100644 index 0000000000000000000000000000000000000000..a5e705f6cbdf914e5e714c35a8dfef807f19e3c2 GIT binary patch literal 1434 zcmZvbdrVVj7{t$-UNOu86#VHu^|s&3rWfwHBbPG_8{SrlB{Tv1uvvj4t6zP!)#d!Ogc zP^62J^$0+~?-ZcXXpBaq%jFsw8L`=H2?+@R02Yg-*Xw;gACBV^i3CMahr>Z667S!? zk3LDe>VLEsU;sWo$Py~o!gWuaIAnaG3Sv``&tvc+8DJO!| zt4fcbQ8tW}a&xZfgtQ9BnFYLvGG|PvCNlg&uh@Q^w9Pz}+I^hCj`vu9JQADPqdkyk zR40xycD9geUgJu1e;$L`Fpa)?Wl-2&6hO@U*KrPqK(I1H=1h?2fce}6GhhP1oBZC# z1e@gt-qFa6lZrl%s1>bdxg*W)Ebt__O(4sj6(*2X@ciUClwHH#U(NRM7XAjS z+scDZ32J*PCoslsgS~#ZlCCGo`r>S6F)Ghw5wVlqHioFaw?ucD(XoLJ0j;28oPoPV z9A}dR$0SKn>uExfkl#j09o;v$BZ909R=*p{ATNq8BJW;YduX2QMOU7$a$_L5e!G^g zpbkx5G4&FZ%7m14rTN}5YB(;x7$5XOc_hf3E|Hw$TVg)P#qf~}nOn03uqsp>UG>vi zWThIoO)-1Q#@u#O;fMC#WAf@Xj70-0g9YZ;dA$HH1fW1q=9-c>>_yA0S$7M*5?}vi z)8MU`Q%P!7sEBBnd$DrKgFQ2?O%6LpdaC%F8Pn-)EC2t=j~ zoaLamla$FX!GQqWi!%s>sj-#5SJX0IF!TP=r21Z}s)k#btN0?=I7uD9C)Gb$fZ#sm zaVq7g`LwZ%PfNpN^_N-IGLHj@AV`s#4&va7_{Hw63G6BkSGXHdogTZ%QOiRb bDpZ@qYcJKM>x%b%*HX74c8MnqfHi*u-bC?g literal 0 HcmV?d00001 diff --git a/Tests/Manual/Issue-1357-fix/index-debug.html b/Tests/Manual/Issue-1357-fix/index-debug.html new file mode 100644 index 000000000..636db06c8 --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/index-debug.html @@ -0,0 +1,112 @@ + + + + + + + + + + + + + + + + + + CPViewNoDisplayAfterHidingAndResizeBug + + + + + + + + + + + + + + +
+
+ + + +
+
+ + + diff --git a/Tests/Manual/Issue-1357-fix/index.html b/Tests/Manual/Issue-1357-fix/index.html new file mode 100644 index 000000000..f27a4cb8a --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/index.html @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + CPViewNoDisplayAfterHidingAndResizeBug + + + + + + + + + + + + +
+
+ + + +
+
+ + + + diff --git a/Tests/Manual/Issue-1357-fix/main.j b/Tests/Manual/Issue-1357-fix/main.j new file mode 100644 index 000000000..ca820e685 --- /dev/null +++ b/Tests/Manual/Issue-1357-fix/main.j @@ -0,0 +1,18 @@ +/* + * AppController.j + * CPViewNoDisplayAfterHidingAndResizeBug + * + * Created by You on February 24, 2013. + * Copyright 2013, Your Company All rights reserved. + */ + +@import +@import + +@import "AppController.j" + + +function main(args, namedArgs) +{ + CPApplicationMain(args, namedArgs); +}