From 590e31d90a5cd1b5c2db2fd2ebf9e34479810908 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Tue, 6 Jan 2015 23:38:03 +0100 Subject: [PATCH 01/65] Update Readme --- README.adoc | 37 ++----------------------------------- 1 file changed, 2 insertions(+), 35 deletions(-) diff --git a/README.adoc b/README.adoc index 54006bb..3cc8805 100644 --- a/README.adoc +++ b/README.adoc @@ -1,36 +1,3 @@ -== _Learning Spring Boot_ Contest +== Polaromatic -This is a contest based on _Learning Spring Boot_. The idea is to submit a small, pithy, cool Spring Boot application to win a prize. We will soon announce the prizes. - -=== Calling all Spring Boot apps - -Years ago, the http://www.ioccc.org/years.html[The International Obfuscated C Code Contest] was invented. Seeing http://blog.aerojockey.com/post/iocccsim[Carl Banks' flight simulator] forever impressed me as a neat, pithy little app. - -Well, we aren't looking for obfuscated, complex, impossible to read apps. But we *ARE* looking for slick, cool apps that show off the power/coolness/wicked abilities of Spring Boot mixed with your hackable creativity. Characteristics the judges evaluate include: - -* Stylish -* Short and sweet -* Custom auto-configurations are welcome -* Custom health indicators, metrics, and fancy usage thereof -* Nice on the server side OR cool frontends (You don't have to build a web frontend to have a slick, elegeant, and original UI.) -* Popularity. Tweet things up while you work on your submission. We will definitely look at stars on your forked repo of this contest, volume of traffic your generate, and other evidence of popularity. - -=== How/when to submit - -IMPORANT: Deadline is 11:59pm January 17th CST (UTC-6). (I hate midnight deadlines, since they're so ambiguous.) - -To submit an entery: - -. Fork this repo. -. Code your solution inside your fork. -. Tweet/blog/reddit/facebook your efforts and gather evidence of your apps popularity (stars on your repo, total hits on your blog entry, total number of registered userse for your slick app, etc.) -. Replace this README.adoc with your own documentation (cuteness rewarded!). -. Submit a pull request (before the deadline!!!) -. Wait to see the announcement. -. Collect your prize! - -Those of you that can't wait, use the holiday time as you wish. Those of you that are enjoying time with family and friends, we included enough time so you can still get into the contest. - -NOTE: No member of Pivotal Inc. is permitted to enter this contest. Only one submission per person or team. If there is evidence of multiple "sock puppet" entries coming from the same group of people, the judges reserve the right to disqualify anyone involved. All decisions are final. - -Good luck! +Please read the documentation here: http://lmivan.github.io/contest/ From 0f5b826ca7a5e6c30ea5dc4bafaabdcd40197a71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Tue, 30 Dec 2014 12:08:17 +0100 Subject: [PATCH 02/65] Initial commit :baby: --- .gitignore | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3e1424a --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +build/ +*.iml +*.ipr +*.ips +.gradle/ +.idea/ +work From 94f98907256121dcdf96a3aa5c8c17355f933b0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Tue, 30 Dec 2014 12:45:48 +0100 Subject: [PATCH 03/65] Spring Boot application skeleton --- polaromatic-back/build.gradle | 40 +++++++++++++++++++ .../polaromatic/PolaromaticApplication.groovy | 13 ++++++ .../src/main/resources/application.yml | 1 + 3 files changed, 54 insertions(+) create mode 100644 polaromatic-back/build.gradle create mode 100644 polaromatic-back/src/main/groovy/polaromatic/PolaromaticApplication.groovy create mode 100644 polaromatic-back/src/main/resources/application.yml diff --git a/polaromatic-back/build.gradle b/polaromatic-back/build.gradle new file mode 100644 index 0000000..c679ea9 --- /dev/null +++ b/polaromatic-back/build.gradle @@ -0,0 +1,40 @@ +buildscript { + ext { + springBootVersion = '1.2.0.RELEASE' + } + repositories { + jcenter() + } + dependencies { + classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") + } +} + +apply plugin: 'groovy' +apply plugin: 'idea' +apply plugin: 'spring-boot' + +jar { + baseName = 'polaromatic' + version = '0.0.1-SNAPSHOT' +} + +sourceCompatibility = 1.8 +targetCompatibility = 1.8 + +repositories { + jcenter() +} + +dependencies { + compile 'org.springframework.boot:spring-boot-starter-integration' + compile 'org.springframework.boot:spring-boot-starter-web' + compile 'org.springframework.boot:spring-boot-starter-websocket' + compile "org.codehaus.groovy:groovy-all:2.4.0-rc-1" + + testCompile 'org.springframework.boot:spring-boot-starter-test' +} + +task wrapper(type: Wrapper) { + gradleVersion = '2.2.1' +} diff --git a/polaromatic-back/src/main/groovy/polaromatic/PolaromaticApplication.groovy b/polaromatic-back/src/main/groovy/polaromatic/PolaromaticApplication.groovy new file mode 100644 index 0000000..9c5bbdd --- /dev/null +++ b/polaromatic-back/src/main/groovy/polaromatic/PolaromaticApplication.groovy @@ -0,0 +1,13 @@ +package polaromatic + +import org.springframework.boot.SpringApplication +import org.springframework.boot.autoconfigure.SpringBootApplication + +@SpringBootApplication +class PolaromaticApplication { + + static void main(String[] args) { + SpringApplication.run PolaromaticApplication, args + } + +} \ No newline at end of file diff --git a/polaromatic-back/src/main/resources/application.yml b/polaromatic-back/src/main/resources/application.yml new file mode 100644 index 0000000..b5a94d9 --- /dev/null +++ b/polaromatic-back/src/main/resources/application.yml @@ -0,0 +1 @@ +logging.level.polaromatic: DEBUG \ No newline at end of file From 38bace24a83fac72c805ba20590fc3a8e152eae5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Tue, 30 Dec 2014 13:19:17 +0100 Subject: [PATCH 04/65] Add photo conversion Spring Integration flow --- .../polaromatic/PolaromaticApplication.groovy | 2 ++ .../src/main/resources/resources.xml | 30 +++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 polaromatic-back/src/main/resources/resources.xml diff --git a/polaromatic-back/src/main/groovy/polaromatic/PolaromaticApplication.groovy b/polaromatic-back/src/main/groovy/polaromatic/PolaromaticApplication.groovy index 9c5bbdd..af7ad6f 100644 --- a/polaromatic-back/src/main/groovy/polaromatic/PolaromaticApplication.groovy +++ b/polaromatic-back/src/main/groovy/polaromatic/PolaromaticApplication.groovy @@ -2,8 +2,10 @@ package polaromatic import org.springframework.boot.SpringApplication import org.springframework.boot.autoconfigure.SpringBootApplication +import org.springframework.context.annotation.ImportResource @SpringBootApplication +@ImportResource("classpath:resources.xml") class PolaromaticApplication { static void main(String[] args) { diff --git a/polaromatic-back/src/main/resources/resources.xml b/polaromatic-back/src/main/resources/resources.xml new file mode 100644 index 0000000..7824f81 --- /dev/null +++ b/polaromatic-back/src/main/resources/resources.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file From b520819aeb26f93fdee7ef00ddc3b1de5bd89d02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Tue, 30 Dec 2014 15:03:15 +0100 Subject: [PATCH 05/65] Generate Photo object with the input and output files --- polaromatic-back/build.gradle | 2 ++ .../groovy/polaromatic/domain/Photo.groovy | 9 +++++++ .../polaromatic/service/FileService.groovy | 24 +++++++++++++++++++ 3 files changed, 35 insertions(+) create mode 100644 polaromatic-back/src/main/groovy/polaromatic/domain/Photo.groovy create mode 100644 polaromatic-back/src/main/groovy/polaromatic/service/FileService.groovy diff --git a/polaromatic-back/build.gradle b/polaromatic-back/build.gradle index c679ea9..15123c5 100644 --- a/polaromatic-back/build.gradle +++ b/polaromatic-back/build.gradle @@ -32,6 +32,8 @@ dependencies { compile 'org.springframework.boot:spring-boot-starter-websocket' compile "org.codehaus.groovy:groovy-all:2.4.0-rc-1" + compile 'commons-lang:commons-lang:2.6' + testCompile 'org.springframework.boot:spring-boot-starter-test' } diff --git a/polaromatic-back/src/main/groovy/polaromatic/domain/Photo.groovy b/polaromatic-back/src/main/groovy/polaromatic/domain/Photo.groovy new file mode 100644 index 0000000..95e366e --- /dev/null +++ b/polaromatic-back/src/main/groovy/polaromatic/domain/Photo.groovy @@ -0,0 +1,9 @@ +package polaromatic.domain + +import groovy.transform.Immutable + +@Immutable +class Photo { + String input + String output +} diff --git a/polaromatic-back/src/main/groovy/polaromatic/service/FileService.groovy b/polaromatic-back/src/main/groovy/polaromatic/service/FileService.groovy new file mode 100644 index 0000000..408f530 --- /dev/null +++ b/polaromatic-back/src/main/groovy/polaromatic/service/FileService.groovy @@ -0,0 +1,24 @@ +package polaromatic.service + +import groovy.util.logging.Slf4j +import org.apache.commons.lang.RandomStringUtils +import org.springframework.stereotype.Service +import polaromatic.domain.Photo + +import java.nio.file.Paths + +@Slf4j +@Service +class FileService { + + Photo preprocessFile(File file) { + String filename = RandomStringUtils.randomAlphanumeric(10) + + String outputPath = File.createTempDir() + String outputFilename = "${new Date().time}_${filename}.png" + def outputFile = Paths.get(outputPath, outputFilename) + + return new Photo(input: file.absolutePath, output: outputFile) + } + +} \ No newline at end of file From e76154ccc4b2884453cc4855ce3f78898c40961a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Wed, 31 Dec 2014 15:43:50 +0100 Subject: [PATCH 06/65] Apply polaroid effect to photos --- polaromatic-back/build.gradle | 1 + .../service/ImageConverterService.groovy | 43 +++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 polaromatic-back/src/main/groovy/polaromatic/service/ImageConverterService.groovy diff --git a/polaromatic-back/build.gradle b/polaromatic-back/build.gradle index 15123c5..43197a1 100644 --- a/polaromatic-back/build.gradle +++ b/polaromatic-back/build.gradle @@ -33,6 +33,7 @@ dependencies { compile "org.codehaus.groovy:groovy-all:2.4.0-rc-1" compile 'commons-lang:commons-lang:2.6' + compile 'org.im4java:im4java:1.4.0' testCompile 'org.springframework.boot:spring-boot-starter-test' } diff --git a/polaromatic-back/src/main/groovy/polaromatic/service/ImageConverterService.groovy b/polaromatic-back/src/main/groovy/polaromatic/service/ImageConverterService.groovy new file mode 100644 index 0000000..f379caa --- /dev/null +++ b/polaromatic-back/src/main/groovy/polaromatic/service/ImageConverterService.groovy @@ -0,0 +1,43 @@ +package polaromatic.service + +import groovy.util.logging.Slf4j +import org.im4java.core.ConvertCmd +import org.im4java.core.IMOperation +import org.springframework.stereotype.Service +import polaromatic.domain.Photo + +@Slf4j +@Service +class ImageConverterService { + + def rnd = new Random() + private static final String DEFAULT_CAPTION = "#LearningSpringBoot with Polaromatic\\n" + + Photo applyEffect(Photo photo) { + log.debug "Applying effect to file: ${photo.input}..." + + def inputFile = photo.input + def outputFile = photo.output + + int polaroidRotation = rnd.nextInt(6) + + def op = new IMOperation() + op.addImage(inputFile) + op.thumbnail(300, 300) + .set("caption", DEFAULT_CAPTION) + .gravity("center") + .pointsize(20) + .background("black") + .polaroid(rnd.nextBoolean() ? polaroidRotation : -polaroidRotation) + .addImage(outputFile) + + def command = new ConvertCmd() + command.run(op) + + photo + } +} + + + + From 013db64cdf8b21d165f1f4e49acf7a27e99924f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Wed, 31 Dec 2014 15:51:12 +0100 Subject: [PATCH 07/65] Add websocket support and push photo to browser --- .../polaromatic/config/WebsocketConfig.groovy | 22 ++++++++++++++++ .../service/BrowserPushService.groovy | 25 +++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 polaromatic-back/src/main/groovy/polaromatic/config/WebsocketConfig.groovy create mode 100644 polaromatic-back/src/main/groovy/polaromatic/service/BrowserPushService.groovy diff --git a/polaromatic-back/src/main/groovy/polaromatic/config/WebsocketConfig.groovy b/polaromatic-back/src/main/groovy/polaromatic/config/WebsocketConfig.groovy new file mode 100644 index 0000000..6f45196 --- /dev/null +++ b/polaromatic-back/src/main/groovy/polaromatic/config/WebsocketConfig.groovy @@ -0,0 +1,22 @@ +package polaromatic.config + +import org.springframework.context.annotation.Configuration +import org.springframework.messaging.simp.config.MessageBrokerRegistry +import org.springframework.web.socket.config.annotation.AbstractWebSocketMessageBrokerConfigurer +import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker +import org.springframework.web.socket.config.annotation.StompEndpointRegistry + +@Configuration +@EnableWebSocketMessageBroker +class WebsocketConfig extends AbstractWebSocketMessageBrokerConfigurer { + + @Override + void configureMessageBroker(MessageBrokerRegistry config) { + config.enableSimpleBroker '/notifications' + } + + @Override + void registerStompEndpoints(StompEndpointRegistry registry) { + registry.addEndpoint('/polaromatic').withSockJS() + } +} \ No newline at end of file diff --git a/polaromatic-back/src/main/groovy/polaromatic/service/BrowserPushService.groovy b/polaromatic-back/src/main/groovy/polaromatic/service/BrowserPushService.groovy new file mode 100644 index 0000000..6316801 --- /dev/null +++ b/polaromatic-back/src/main/groovy/polaromatic/service/BrowserPushService.groovy @@ -0,0 +1,25 @@ +package polaromatic.service + +import groovy.util.logging.Slf4j +import org.springframework.beans.factory.annotation.Autowired +import org.springframework.messaging.simp.SimpMessagingTemplate +import org.springframework.stereotype.Service +import polaromatic.domain.Photo + +@Slf4j +@Service +class BrowserPushService { + + @Autowired + SimpMessagingTemplate template + + Photo pushToBrowser(Photo photo) { + log.debug "Pushing file to browser: ${photo.output}" + + String imageB64 = new File(photo.output).bytes.encodeBase64().toString() + + template.convertAndSend "/notifications/photo", imageB64 + + return photo + } +} \ No newline at end of file From dda6c83efef6fe588d5a1e180ed3d93c48cbe56b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Wed, 31 Dec 2014 17:24:50 +0100 Subject: [PATCH 08/65] Receive polaroid photos using websockets --- polaromatic-back/build.gradle | 6 ++ .../controller/PolaromaticController.groovy | 14 ++++ .../src/main/resources/static/css/app.css | 62 ++++++++++++++++++ .../static/images/spring-boot-logo.png | Bin 0 -> 2850 bytes .../src/main/resources/static/js/app.js | 30 +++++++++ .../src/main/resources/templates/home.tpl | 41 ++++++++++++ 6 files changed, 153 insertions(+) create mode 100644 polaromatic-back/src/main/groovy/polaromatic/controller/PolaromaticController.groovy create mode 100644 polaromatic-back/src/main/resources/static/css/app.css create mode 100644 polaromatic-back/src/main/resources/static/images/spring-boot-logo.png create mode 100644 polaromatic-back/src/main/resources/static/js/app.js create mode 100644 polaromatic-back/src/main/resources/templates/home.tpl diff --git a/polaromatic-back/build.gradle b/polaromatic-back/build.gradle index 43197a1..e2a55c8 100644 --- a/polaromatic-back/build.gradle +++ b/polaromatic-back/build.gradle @@ -35,6 +35,12 @@ dependencies { compile 'commons-lang:commons-lang:2.6' compile 'org.im4java:im4java:1.4.0' + compile 'org.webjars:sockjs-client:0.3.4-1' + compile 'org.webjars:stomp-websocket:2.3.1-1' + compile 'org.webjars:jquery:2.1.3' + compile 'org.webjars:handlebars:2.0.0-1' + compile 'org.codehaus.groovy:groovy-templates:2.4.0-rc-1' + testCompile 'org.springframework.boot:spring-boot-starter-test' } diff --git a/polaromatic-back/src/main/groovy/polaromatic/controller/PolaromaticController.groovy b/polaromatic-back/src/main/groovy/polaromatic/controller/PolaromaticController.groovy new file mode 100644 index 0000000..40985b5 --- /dev/null +++ b/polaromatic-back/src/main/groovy/polaromatic/controller/PolaromaticController.groovy @@ -0,0 +1,14 @@ +package polaromatic.controller + +import org.springframework.stereotype.Controller +import org.springframework.web.bind.annotation.RequestMapping +import org.springframework.web.servlet.ModelAndView + +@Controller +class PolaromaticController { + + @RequestMapping("/") + def home() { + new ModelAndView('home') + } +} \ No newline at end of file diff --git a/polaromatic-back/src/main/resources/static/css/app.css b/polaromatic-back/src/main/resources/static/css/app.css new file mode 100644 index 0000000..1312cac --- /dev/null +++ b/polaromatic-back/src/main/resources/static/css/app.css @@ -0,0 +1,62 @@ +@import url(http://fonts.googleapis.com/css?family=Montserrat); + +body { + overflow: auto; + margin: 0; + padding: 0; + font-family: 'Montserrat', sans-serif; +} + +.center { + width: 1280px; + margin: 0 auto; +} + +#header { + background-image: none; + background-color: #34302d; + border: 0; + border-top: 4px solid #6db33f; + padding: 0; + position: fixed; + width: 100%; +} + +#header a { + display: inline-block; +} + +#header p { + background-color: #6db33f; + color: #fff; + display: inline-block; + font-family: 'Montserrat', sans-serif; + font-size: 48px; + margin: 22px 0 0 25px; + padding: 0 15px; + vertical-align: top; + letter-spacing: -2px; +} +#header span { + background-color: #6db33f; + color: #fff; + display: inline-block; + font-family: 'Montserrat', sans-serif; + font-size: 24px; + margin-top: 51px; + padding: 0 15px; + vertical-align: top; + letter-spacing: -2px; + font-style: italic; +} + +#timeline { + padding: 125px 10px 20px 10px; +} + +.photo-cover { + width: 30%; + height: 350px; + float: left; + margin: 0 10px 20px 0; +} \ No newline at end of file diff --git a/polaromatic-back/src/main/resources/static/images/spring-boot-logo.png b/polaromatic-back/src/main/resources/static/images/spring-boot-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..65ad6d736e19a4fb5c437e8cb68069107fd43d11 GIT binary patch literal 2850 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' + +html { + head { + title "Polaromatic" + + link(rel: 'stylesheet', href: '/css/app.css') + + ['webjars/sockjs-client/0.3.4-1/sockjs.min.js', + 'webjars/stomp-websocket/2.3.1-1/stomp.min.js', + 'webjars/jquery/2.1.3/jquery.min.js', + 'webjars/handlebars/2.0.0-1/handlebars.min.js', + 'js/app.js'] + .each { + yieldUnescaped "" + } + } + + body { + div(id: 'header') { + div(class: 'center') { + a(href: 'https://github.com/lmivan/contest', target: 'blank') { + img(src: 'images/spring-boot-logo.png') + } + p('Polaromatic') + span('Powered by Spring Boot') + } + } + div(id: 'timeline', class: 'center') + } + + script(id: 'photo-template', type: 'text/x-handlebars-template') { + div(class: 'photo-cover') { + div(class: 'photo', style: 'visibility:hidden; height:0') { + img(src: '{{image}}') + } + } + } + + yieldUnescaped "" +} \ No newline at end of file From eabcf53d6fa64d069df9ae30bf5bae2f2f58e9ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Wed, 31 Dec 2014 17:43:33 +0100 Subject: [PATCH 09/65] Delete temporal pictures --- .../main/groovy/polaromatic/service/FileService.groovy | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/polaromatic-back/src/main/groovy/polaromatic/service/FileService.groovy b/polaromatic-back/src/main/groovy/polaromatic/service/FileService.groovy index 408f530..06f3d1a 100644 --- a/polaromatic-back/src/main/groovy/polaromatic/service/FileService.groovy +++ b/polaromatic-back/src/main/groovy/polaromatic/service/FileService.groovy @@ -21,4 +21,11 @@ class FileService { return new Photo(input: file.absolutePath, output: outputFile) } -} \ No newline at end of file + void deleteTempFiles(Photo photo) { + [photo.input, photo.output].each { file -> + log.debug "Deleting file: ${file}" + new File(file).delete() + } + } + +} From 7e8e3598ae0e46d5469cda8e75cfc868cf892efc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Thu, 1 Jan 2015 19:26:47 +0100 Subject: [PATCH 10/65] Change Spring Boot application logo --- .gitignore | 2 ++ .../src/main/resources/static/css/app.css | 13 ++++++++----- .../resources/static/images/polaromatic-logo.png | Bin 0 -> 4363 bytes .../resources/static/images/spring-boot-logo.png | Bin 2850 -> 0 bytes .../src/main/resources/templates/home.tpl | 2 +- 5 files changed, 11 insertions(+), 6 deletions(-) create mode 100644 polaromatic-back/src/main/resources/static/images/polaromatic-logo.png delete mode 100644 polaromatic-back/src/main/resources/static/images/spring-boot-logo.png diff --git a/.gitignore b/.gitignore index 3e1424a..217a99d 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,5 @@ build/ .gradle/ .idea/ work +.lazybones/ +local.properties diff --git a/polaromatic-back/src/main/resources/static/css/app.css b/polaromatic-back/src/main/resources/static/css/app.css index 1312cac..c96586c 100644 --- a/polaromatic-back/src/main/resources/static/css/app.css +++ b/polaromatic-back/src/main/resources/static/css/app.css @@ -32,24 +32,27 @@ body { display: inline-block; font-family: 'Montserrat', sans-serif; font-size: 48px; - margin: 22px 0 0 25px; + margin: 26px 0 0 25px; padding: 0 15px; vertical-align: top; letter-spacing: -2px; } #header span { - background-color: #6db33f; - color: #fff; + color: #6db33f; display: inline-block; font-family: 'Montserrat', sans-serif; font-size: 24px; - margin-top: 51px; + margin-top: 55px; padding: 0 15px; vertical-align: top; letter-spacing: -2px; font-style: italic; } +#header img { + margin: 4px 0 0 10px; +} + #timeline { padding: 125px 10px 20px 10px; } @@ -58,5 +61,5 @@ body { width: 30%; height: 350px; float: left; - margin: 0 10px 20px 0; + margin: 0 0 20px 20px; } \ No newline at end of file diff --git a/polaromatic-back/src/main/resources/static/images/polaromatic-logo.png b/polaromatic-back/src/main/resources/static/images/polaromatic-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..7046b230d387a9671938b6a2a4b54121b6be268b GIT binary patch literal 4363 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 FV1kK7L7M;o literal 0 HcmV?d00001 diff --git a/polaromatic-back/src/main/resources/static/images/spring-boot-logo.png b/polaromatic-back/src/main/resources/static/images/spring-boot-logo.png deleted file mode 100644 index 65ad6d736e19a4fb5c437e8cb68069107fd43d11..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2850 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 Date: Thu, 1 Jan 2015 20:06:55 +0100 Subject: [PATCH 11/65] Grooid application skeleton --- polaromatic-grooid/build.gradle | 70 ++++++++ .../gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 51017 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + polaromatic-grooid/gradlew | 164 ++++++++++++++++++ polaromatic-grooid/gradlew.bat | 90 ++++++++++ polaromatic-grooid/proguard-rules.txt | 29 ++++ .../src/main/AndroidManifest.xml | 24 +++ .../polaromatic/app/MainActivity.groovy | 48 +++++ .../app/SplashScreenActivity.groovy | 29 ++++ .../res/drawable-hdpi-v9/splash_screen.png | Bin 0 -> 39373 bytes .../main/res/drawable-hdpi/ic_launcher.png | Bin 0 -> 2229 bytes .../main/res/drawable-mdpi/ic_launcher.png | Bin 0 -> 1332 bytes .../main/res/drawable-xhdpi/ic_launcher.png | Bin 0 -> 3173 bytes .../main/res/drawable-xxhdpi/ic_launcher.png | Bin 0 -> 5080 bytes .../src/main/res/layout/about.xml | 22 +++ .../src/main/res/layout/main.xml | 12 ++ .../src/main/res/layout/splash_screen.xml | 12 ++ .../src/main/res/menu/menu_main.xml | 9 + .../src/main/res/values/dimens.xml | 5 + .../src/main/res/values/strings.xml | 10 ++ .../src/main/res/values/styles.xml | 8 + 21 files changed, 538 insertions(+) create mode 100644 polaromatic-grooid/build.gradle create mode 100644 polaromatic-grooid/gradle/wrapper/gradle-wrapper.jar create mode 100644 polaromatic-grooid/gradle/wrapper/gradle-wrapper.properties create mode 100755 polaromatic-grooid/gradlew create mode 100644 polaromatic-grooid/gradlew.bat create mode 100644 polaromatic-grooid/proguard-rules.txt create mode 100644 polaromatic-grooid/src/main/AndroidManifest.xml create mode 100644 polaromatic-grooid/src/main/groovy/polaromatic/app/MainActivity.groovy create mode 100644 polaromatic-grooid/src/main/groovy/polaromatic/app/SplashScreenActivity.groovy create mode 100644 polaromatic-grooid/src/main/res/drawable-hdpi-v9/splash_screen.png create mode 100644 polaromatic-grooid/src/main/res/drawable-hdpi/ic_launcher.png create mode 100644 polaromatic-grooid/src/main/res/drawable-mdpi/ic_launcher.png create mode 100644 polaromatic-grooid/src/main/res/drawable-xhdpi/ic_launcher.png create mode 100644 polaromatic-grooid/src/main/res/drawable-xxhdpi/ic_launcher.png create mode 100644 polaromatic-grooid/src/main/res/layout/about.xml create mode 100644 polaromatic-grooid/src/main/res/layout/main.xml create mode 100644 polaromatic-grooid/src/main/res/layout/splash_screen.xml create mode 100644 polaromatic-grooid/src/main/res/menu/menu_main.xml create mode 100644 polaromatic-grooid/src/main/res/values/dimens.xml create mode 100644 polaromatic-grooid/src/main/res/values/strings.xml create mode 100644 polaromatic-grooid/src/main/res/values/styles.xml diff --git a/polaromatic-grooid/build.gradle b/polaromatic-grooid/build.gradle new file mode 100644 index 0000000..1f7d7c8 --- /dev/null +++ b/polaromatic-grooid/build.gradle @@ -0,0 +1,70 @@ +buildscript { + repositories { + jcenter() + mavenLocal() + } + dependencies { + classpath 'com.android.tools.build:gradle:1.0.0' + classpath 'me.champeau.gradle:gradle-groovy-android-plugin:0.3.4' + } +} + +apply plugin: 'com.android.application' +apply plugin: 'me.champeau.gradle.groovy-android' + +android { + + compileSdkVersion 21 + buildToolsVersion "21.0.0" + + defaultConfig { + minSdkVersion 16 + targetSdkVersion 21 + versionCode 1 + versionName "1.0" + } + + lintOptions { + abortOnError false + } + + buildTypes { + debug { + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' + } + } + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_7 + targetCompatibility JavaVersion.VERSION_1_7 + } + +} + +repositories { + jcenter() + mavenLocal() + maven { url = 'https://oss.jfrog.org/oss-snapshot-local/' } + maven { url = 'http://repository.codehaus.org' } +} + +dependencies { + + // Android tools + compile 'com.android.support:support-v4:21.0.0' + // Groovy version + compile 'org.codehaus.groovy:groovy:2.4.0-beta-4:grooid' + // Groovy Json handling + compile ('org.codehaus.groovy:groovy-json:2.4.0-beta-1') { + transitive = false + } + + // Rest handling + compile 'com.squareup.retrofit:retrofit:1.8.0' + // Getting rid of boiler plate code + compile 'com.arasthel:swissknife:1.1.4' + // Imaging + compile 'com.squareup.picasso:picasso:2.4.0' + // Tasks + compile 'com.parse.bolts:bolts-android:1.1.4' +} diff --git a/polaromatic-grooid/gradle/wrapper/gradle-wrapper.jar b/polaromatic-grooid/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..3d0dee6e8edfecc92e04653ec780de06f7b34f8b GIT binary patch literal 51017 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 H-~Rf4?cF@p literal 0 HcmV?d00001 diff --git a/polaromatic-grooid/gradle/wrapper/gradle-wrapper.properties b/polaromatic-grooid/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..cdb23cd --- /dev/null +++ b/polaromatic-grooid/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Sat Dec 13 17:43:34 GMT 2014 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip diff --git a/polaromatic-grooid/gradlew b/polaromatic-grooid/gradlew new file mode 100755 index 0000000..91a7e26 --- /dev/null +++ b/polaromatic-grooid/gradlew @@ -0,0 +1,164 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# For Cygwin, ensure paths are in UNIX format before anything is touched. +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` +fi + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >&- +APP_HOME="`pwd -P`" +cd "$SAVED" >&- + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/polaromatic-grooid/gradlew.bat b/polaromatic-grooid/gradlew.bat new file mode 100644 index 0000000..8a0b282 --- /dev/null +++ b/polaromatic-grooid/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/polaromatic-grooid/proguard-rules.txt b/polaromatic-grooid/proguard-rules.txt new file mode 100644 index 0000000..5d688ca --- /dev/null +++ b/polaromatic-grooid/proguard-rules.txt @@ -0,0 +1,29 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in /home/cchampeau/DEV/ANDROID/android/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the ProGuard +# include property in project.properties. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +-dontobfuscate +-keep class org.codehaus.groovy.vmplugin.** +-keep class org.codehaus.groovy.runtime.dgm* +-keepclassmembers class org.codehaus.groovy.runtime.dgm* { + *; +} +-keepclassmembers class ** implements org.codehaus.groovy.runtime.GeneratedClosure { + *; +} +-dontwarn org.codehaus.groovy.** +-dontwarn groovy** \ No newline at end of file diff --git a/polaromatic-grooid/src/main/AndroidManifest.xml b/polaromatic-grooid/src/main/AndroidManifest.xml new file mode 100644 index 0000000..2a121f8 --- /dev/null +++ b/polaromatic-grooid/src/main/AndroidManifest.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + diff --git a/polaromatic-grooid/src/main/groovy/polaromatic/app/MainActivity.groovy b/polaromatic-grooid/src/main/groovy/polaromatic/app/MainActivity.groovy new file mode 100644 index 0000000..2eb2393 --- /dev/null +++ b/polaromatic-grooid/src/main/groovy/polaromatic/app/MainActivity.groovy @@ -0,0 +1,48 @@ +package polaromatic.app + +import android.app.Activity +import android.app.AlertDialog +import android.os.Bundle +import android.view.Menu +import android.view.MenuItem +import groovy.transform.CompileStatic +import com.arasthel.swissknife.annotations.OnUIThread + +@CompileStatic +class MainActivity extends Activity { + + @Override + void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState) + setContentView(R.layout.main) + } + + @Override + boolean onCreateOptionsMenu(Menu menu) { + menuInflater.inflate(R.menu.menu_main, menu) + return true + } + + @Override + boolean onOptionsItemSelected(MenuItem item) { + int id = item.itemId + + if (id == R.id.action_about) { + showAbout() + return true + } + + return super.onOptionsItemSelected(item) + } + + @OnUIThread + void showAbout() { + new AlertDialog.Builder(this) + .setIcon(R.drawable.ic_launcher) + .setTitle(R.string.app_name) + .setView(layoutInflater.inflate(R.layout.about, null, false)) + .create() + .show() + } + +} diff --git a/polaromatic-grooid/src/main/groovy/polaromatic/app/SplashScreenActivity.groovy b/polaromatic-grooid/src/main/groovy/polaromatic/app/SplashScreenActivity.groovy new file mode 100644 index 0000000..7652325 --- /dev/null +++ b/polaromatic-grooid/src/main/groovy/polaromatic/app/SplashScreenActivity.groovy @@ -0,0 +1,29 @@ +package polaromatic.app + +import android.app.Activity +import android.content.Intent +import android.os.Bundle +import com.arasthel.swissknife.annotations.OnBackground + +import groovy.transform.CompileStatic + +@CompileStatic +class SplashScreenActivity extends Activity { + + static final long DELAY = 3000 + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState) + setContentView(R.layout.splash_screen) + startSomethingElse() + } + + @OnBackground + void startSomethingElse() { + Thread.sleep(DELAY) + startActivity(new Intent(this, MainActivity)) + finish() + } + +} diff --git a/polaromatic-grooid/src/main/res/drawable-hdpi-v9/splash_screen.png b/polaromatic-grooid/src/main/res/drawable-hdpi-v9/splash_screen.png new file mode 100644 index 0000000000000000000000000000000000000000..9fa99109cae4257a3029de241ff9a504768195b4 GIT binary patch literal 39373 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 t{lz4 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 b^!JJdfQZ#njsjl14>X3lruV8~E|~uT&r$~H literal 0 HcmV?d00001 diff --git a/polaromatic-grooid/src/main/res/drawable-xxhdpi/ic_launcher.png b/polaromatic-grooid/src/main/res/drawable-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..379484975b8239317357cddbc4449ab0e0058c48 GIT binary patch literal 5080 zcmb_gWm^;s(*=R0yL(vy326!Glu&XBX^_sPd#R-a#HAaS5EdkbC8QLj>jsuC5s*&l ze0l!E`(b82&Y3u8u4_K(XsHqtFc4s1U=XXTDeFB&`2P$K@Z`7N{At0!pe$5ZR?rVv zI55WzFz9Vs*}>n5j!G$z7o<)J4=2kxTfxC*(Jb}njs&$LCeehEKd_#S#}nUDC&yl$ z$x`=j8PrR+jRzUjh2xk*9$p7uWH&Tur(l@@?eABcJ2&z~+VZl)#w$ho1?h+Yu%A}{ ze_>raN}BCoD}T~0UgARS)|hdBXvyRQryfCrCG2I!get{GQP^HaLi=jer!s1j2y<=H zQ+a~FH5`u!E0yBxC36(zgd!*2Jm-cMTNrtYXT}&*V1S&7S(`7ztwI^7w$2Zuis+=A zjEgO~0R9Ns?W%8`fv+omFIc+{#=FMa8fFmcNtTBHae2&FTxUe?t&H{PNx^}(g<3gv zb%GjdYX7NYf8Z$id)*V&4*RDp&UdQ8!lBtWLOJ^n4DfxyQb5Q!uef5MjOirizNBUe zJ*Uo>^o<`H9`>c+lOA<3OIWvFr5dp?=ZgT=w|?2pc@&fp@59k3(56xt8X9suTIoO+ zDd7?j6MvC9Y=MP7Tsy=kB^ko5o2T0Q@R?STQ{fEBxOx&0nQPowK%K6<0ZKqMYzoNCD>J8p3hD z=-B;kg*5o{crF+&X&DY7%^b1A?rK*TyN<4Ia?lYLYpuxpeBRsB*Rsj|!br-Oupm;> z#prc6nJPe&%WO@f?I4BMal7M4mQaekX3i_!qmIKKUr=;N)H)gPEM2+)fNB?$ZgH0m z*<$6TRuF7h@|n`y*xFKk>PV$B;>+92$)m1Et@`@<-43X%nFGpBV%*q!0Xv0!cZtIH zzC=+m5O19ICZ|S-gM(wj+<#exjg74_;N*j(=O1hpW#s^}?ZdXCvT?b`yu17R>0m~e zfc$4{T`fdg4-U#K^hGq-XM}kAmvvFGCwCZckX2m~MRz~2NOhc@dCvFe!DGT0t}OZT zPY`5fF6L}*g2B!n%=+{!DKXxz&_ZGdRbyQRAzJFM!B@I!lB8R$H~`-+Q1>VC6}9JY z5)sG89yi-1pVf*iyFzJ|fL2fiY`*HC4={X+_b8`vz)mV@+ri)y#*&`?mETiCJir*#R#5{G) z@G<+YZ3`#J)bWw4Bm)s8SbxiZZ{`zA=#};Lqk)mRUGi2htz~I=IED+nru|gowTPXa z-8?Sjd*GO@NL|Z&HOeUoRh2cNM#7}{k`4DBq{6L5nn-AJtS%EB&7otX(jNj-@X0qm z^oJccs`UILRKAn`szVD!W5cxXXji$bTkrWSL}vuN1v+b-q%o_%OR? zMfkkKbG9f=)=K*Nx=o#6o%sXAveud*T70a|0v7<#%j7pNjdxpUthmnt8^A~SwcIR) z^Ztd|hL(pfyqddKTp-*5mX>HrW)-3+y*|E|7ha3JyD4OKdn&yJ9FsIpa#oUU` z+x!L}73iX$_BzPN%-){!{$de=ZuNGEPe@3ea2!pSv)8Y&yD*L+W_$zbx)+1qpU?VS z9b22AoYPrOny`Qy^IJmfA6O)`fR$ZTfO#hX@7n=E! z>ATZkwvW>`XZg!2_iPzUgkwFOZQ`Nr zV?ptpLyc???phNpmjB5~=)c>;nM5ep;E5@_hVo|q4m)9yRq7TN7RihREnz*&WG-#l zNO`-lce37ZioMVt*wF9W6WzsY0l3}pLY?OJgls0YPzXc=!Nl5rY#LmV{&VJ99djt;Ay37&9^3qI<|481#1 zy)OMDTJSEqpEYdBS=@GjtYSe>Euh19&u|{lzjvvtqa!bOf0mjzZL3O19s3gi*M6F7 zPWwuW=Q>ErKCF*pW@XhbgkEG96tgYAx%-<7sY)Xux|%$VX9!H-m^~=v zEZHIerEgo~3M(-LM-vH-DSeO_I3u~(j$v^pa~)@SouH8c@qdSfv}KpP%(M(GB9*=R zVdFt%g>^7j4?FC7481v<(ypkh(`ouSl~{H6R-i+^dxt`dJ;CLZ*}-dxAtcDbJS@L15A`@T*8HCPxZBg(a>^mD?~?>TGV z?MpUw+W1dYkRbgqBTNM++Za_{yyPTt;fzG^lB~ku)>�!?h@ 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 literal 0 HcmV?d00001 diff --git a/polaromatic-grooid/src/main/res/layout/about.xml b/polaromatic-grooid/src/main/res/layout/about.xml new file mode 100644 index 0000000..38c34b8 --- /dev/null +++ b/polaromatic-grooid/src/main/res/layout/about.xml @@ -0,0 +1,22 @@ + + + + + diff --git a/polaromatic-grooid/src/main/res/layout/main.xml b/polaromatic-grooid/src/main/res/layout/main.xml new file mode 100644 index 0000000..de69684 --- /dev/null +++ b/polaromatic-grooid/src/main/res/layout/main.xml @@ -0,0 +1,12 @@ + + + + diff --git a/polaromatic-grooid/src/main/res/layout/splash_screen.xml b/polaromatic-grooid/src/main/res/layout/splash_screen.xml new file mode 100644 index 0000000..a4a3f5e --- /dev/null +++ b/polaromatic-grooid/src/main/res/layout/splash_screen.xml @@ -0,0 +1,12 @@ + + + + diff --git a/polaromatic-grooid/src/main/res/menu/menu_main.xml b/polaromatic-grooid/src/main/res/menu/menu_main.xml new file mode 100644 index 0000000..947589d --- /dev/null +++ b/polaromatic-grooid/src/main/res/menu/menu_main.xml @@ -0,0 +1,9 @@ + + + diff --git a/polaromatic-grooid/src/main/res/values/dimens.xml b/polaromatic-grooid/src/main/res/values/dimens.xml new file mode 100644 index 0000000..47c8224 --- /dev/null +++ b/polaromatic-grooid/src/main/res/values/dimens.xml @@ -0,0 +1,5 @@ + + + 16dp + 16dp + diff --git a/polaromatic-grooid/src/main/res/values/strings.xml b/polaromatic-grooid/src/main/res/values/strings.xml new file mode 100644 index 0000000..ebc5911 --- /dev/null +++ b/polaromatic-grooid/src/main/res/values/strings.xml @@ -0,0 +1,10 @@ + + + + polaromatic-grooid + Groovy And Android :) + About + Check http://www.groovy-lang.org + This is an Android app written in Groovy + + diff --git a/polaromatic-grooid/src/main/res/values/styles.xml b/polaromatic-grooid/src/main/res/values/styles.xml new file mode 100644 index 0000000..ff6c9d2 --- /dev/null +++ b/polaromatic-grooid/src/main/res/values/styles.xml @@ -0,0 +1,8 @@ + + + + + + From ef086234cfe5dc1be2a52e6eb75e9c7af0096c31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Thu, 1 Jan 2015 20:39:54 +0100 Subject: [PATCH 12/65] Remove splash screen --- .../src/main/AndroidManifest.xml | 8 ++--- .../app/SplashScreenActivity.groovy | 29 ------------------ .../res/drawable-hdpi-v9/splash_screen.png | Bin 39373 -> 0 bytes .../src/main/res/layout/splash_screen.xml | 12 -------- 4 files changed, 2 insertions(+), 47 deletions(-) delete mode 100644 polaromatic-grooid/src/main/groovy/polaromatic/app/SplashScreenActivity.groovy delete mode 100644 polaromatic-grooid/src/main/res/drawable-hdpi-v9/splash_screen.png delete mode 100644 polaromatic-grooid/src/main/res/layout/splash_screen.xml diff --git a/polaromatic-grooid/src/main/AndroidManifest.xml b/polaromatic-grooid/src/main/AndroidManifest.xml index 2a121f8..63227cb 100644 --- a/polaromatic-grooid/src/main/AndroidManifest.xml +++ b/polaromatic-grooid/src/main/AndroidManifest.xml @@ -4,21 +4,17 @@ - - diff --git a/polaromatic-grooid/src/main/groovy/polaromatic/app/SplashScreenActivity.groovy b/polaromatic-grooid/src/main/groovy/polaromatic/app/SplashScreenActivity.groovy deleted file mode 100644 index 7652325..0000000 --- a/polaromatic-grooid/src/main/groovy/polaromatic/app/SplashScreenActivity.groovy +++ /dev/null @@ -1,29 +0,0 @@ -package polaromatic.app - -import android.app.Activity -import android.content.Intent -import android.os.Bundle -import com.arasthel.swissknife.annotations.OnBackground - -import groovy.transform.CompileStatic - -@CompileStatic -class SplashScreenActivity extends Activity { - - static final long DELAY = 3000 - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState) - setContentView(R.layout.splash_screen) - startSomethingElse() - } - - @OnBackground - void startSomethingElse() { - Thread.sleep(DELAY) - startActivity(new Intent(this, MainActivity)) - finish() - } - -} diff --git a/polaromatic-grooid/src/main/res/drawable-hdpi-v9/splash_screen.png b/polaromatic-grooid/src/main/res/drawable-hdpi-v9/splash_screen.png deleted file mode 100644 index 9fa99109cae4257a3029de241ff9a504768195b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39373 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 t{lz4 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 - - - From 95df456d63279789c30a047c986abfb8ddcbed9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Thu, 1 Jan 2015 20:43:47 +0100 Subject: [PATCH 13/65] Change Grooid application logo --- .../groovy/polaromatic/app/MainActivity.groovy | 6 +++--- .../src/main/polaromatic_logo-web.png | Bin 0 -> 27726 bytes .../src/main/res/drawable-hdpi/ic_launcher.png | Bin 2229 -> 0 bytes .../main/res/drawable-hdpi/polaromatic_logo.png | Bin 0 -> 2793 bytes .../src/main/res/drawable-mdpi/ic_launcher.png | Bin 1332 -> 0 bytes .../main/res/drawable-mdpi/polaromatic_logo.png | Bin 0 -> 1842 bytes .../src/main/res/drawable-xhdpi/ic_launcher.png | Bin 3173 -> 0 bytes .../res/drawable-xhdpi/polaromatic_logo.png | Bin 0 -> 3749 bytes .../main/res/drawable-xxhdpi/ic_launcher.png | Bin 5080 -> 0 bytes .../res/drawable-xxhdpi/polaromatic_logo.png | Bin 0 -> 5600 bytes .../src/main/res/values/strings.xml | 2 +- 11 files changed, 4 insertions(+), 4 deletions(-) create mode 100644 polaromatic-grooid/src/main/polaromatic_logo-web.png delete mode 100644 polaromatic-grooid/src/main/res/drawable-hdpi/ic_launcher.png create mode 100644 polaromatic-grooid/src/main/res/drawable-hdpi/polaromatic_logo.png delete mode 100644 polaromatic-grooid/src/main/res/drawable-mdpi/ic_launcher.png create mode 100644 polaromatic-grooid/src/main/res/drawable-mdpi/polaromatic_logo.png delete mode 100644 polaromatic-grooid/src/main/res/drawable-xhdpi/ic_launcher.png create mode 100644 polaromatic-grooid/src/main/res/drawable-xhdpi/polaromatic_logo.png delete mode 100644 polaromatic-grooid/src/main/res/drawable-xxhdpi/ic_launcher.png create mode 100644 polaromatic-grooid/src/main/res/drawable-xxhdpi/polaromatic_logo.png diff --git a/polaromatic-grooid/src/main/groovy/polaromatic/app/MainActivity.groovy b/polaromatic-grooid/src/main/groovy/polaromatic/app/MainActivity.groovy index 2eb2393..d3280de 100644 --- a/polaromatic-grooid/src/main/groovy/polaromatic/app/MainActivity.groovy +++ b/polaromatic-grooid/src/main/groovy/polaromatic/app/MainActivity.groovy @@ -10,7 +10,7 @@ import com.arasthel.swissknife.annotations.OnUIThread @CompileStatic class MainActivity extends Activity { - + @Override void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState) @@ -38,11 +38,11 @@ class MainActivity extends Activity { @OnUIThread void showAbout() { new AlertDialog.Builder(this) - .setIcon(R.drawable.ic_launcher) + .setIcon(R.drawable.polaromatic_logo) .setTitle(R.string.app_name) .setView(layoutInflater.inflate(R.layout.about, null, false)) .create() .show() } - + } diff --git a/polaromatic-grooid/src/main/polaromatic_logo-web.png b/polaromatic-grooid/src/main/polaromatic_logo-web.png new file mode 100644 index 0000000000000000000000000000000000000000..ba2113f081ef5d14c5a586b7d56af05b3c7553c5 GIT binary patch literal 27726 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 E59N6kmjD0& literal 0 HcmV?d00001 diff --git a/polaromatic-grooid/src/main/res/drawable-hdpi/ic_launcher.png b/polaromatic-grooid/src/main/res/drawable-hdpi/ic_launcher.png deleted file mode 100644 index 2595aa3d320073b627bce99ab17d6c164edc32fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2229 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 literal 0 HcmV?d00001 diff --git a/polaromatic-grooid/src/main/res/drawable-mdpi/ic_launcher.png b/polaromatic-grooid/src/main/res/drawable-mdpi/ic_launcher.png deleted file mode 100644 index 319943dd13a9a9c68239af7c1dfb1e7e43824dc1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1332 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 b^!JJdfQZ#njsjl14>X3lruV8~E|~uT&r$~H diff --git a/polaromatic-grooid/src/main/res/drawable-xhdpi/polaromatic_logo.png b/polaromatic-grooid/src/main/res/drawable-xhdpi/polaromatic_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..de464d9cb5d992d145f89a357635dd6144754739 GIT binary patch literal 3749 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�!?h@ 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 diff --git a/polaromatic-grooid/src/main/res/drawable-xxhdpi/polaromatic_logo.png b/polaromatic-grooid/src/main/res/drawable-xxhdpi/polaromatic_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c8cc937119822660d754e560f86dbe9a50f04468 GIT binary patch literal 5600 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 - polaromatic-grooid + Polaromatic Groovy And Android :) About Check http://www.groovy-lang.org From 752568539db53a43fea62090017b33609a44d720 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Thu, 1 Jan 2015 21:05:27 +0100 Subject: [PATCH 14/65] Add usage information to main activity --- .../src/main/AndroidManifest.xml | 18 ++++++++-------- .../app/{ => activity}/MainActivity.groovy | 10 ++++++++- .../src/main/res/layout/main.xml | 21 ++++++++++++++++--- .../src/main/res/values/strings.xml | 2 ++ 4 files changed, 38 insertions(+), 13 deletions(-) rename polaromatic-grooid/src/main/groovy/polaromatic/app/{ => activity}/MainActivity.groovy (85%) diff --git a/polaromatic-grooid/src/main/AndroidManifest.xml b/polaromatic-grooid/src/main/AndroidManifest.xml index 63227cb..bbd863e 100644 --- a/polaromatic-grooid/src/main/AndroidManifest.xml +++ b/polaromatic-grooid/src/main/AndroidManifest.xml @@ -1,18 +1,18 @@ + package="polaromatic.app"> + android:allowBackup="true" + android:icon="@drawable/polaromatic_logo" + android:label="@string/app_name" + android:theme="@style/AppTheme"> + android:name=".activity.MainActivity" + android:label="@string/app_name"> - - + + diff --git a/polaromatic-grooid/src/main/groovy/polaromatic/app/MainActivity.groovy b/polaromatic-grooid/src/main/groovy/polaromatic/app/activity/MainActivity.groovy similarity index 85% rename from polaromatic-grooid/src/main/groovy/polaromatic/app/MainActivity.groovy rename to polaromatic-grooid/src/main/groovy/polaromatic/app/activity/MainActivity.groovy index d3280de..fbc8074 100644 --- a/polaromatic-grooid/src/main/groovy/polaromatic/app/MainActivity.groovy +++ b/polaromatic-grooid/src/main/groovy/polaromatic/app/activity/MainActivity.groovy @@ -1,4 +1,4 @@ -package polaromatic.app +package polaromatic.app.activity import android.app.Activity import android.app.AlertDialog @@ -7,6 +7,7 @@ import android.view.Menu import android.view.MenuItem import groovy.transform.CompileStatic import com.arasthel.swissknife.annotations.OnUIThread +import polaromatic.app.R @CompileStatic class MainActivity extends Activity { @@ -30,6 +31,8 @@ class MainActivity extends Activity { if (id == R.id.action_about) { showAbout() return true + } else if (id == R.id.action_settings) { + showSettings() } return super.onOptionsItemSelected(item) @@ -45,4 +48,9 @@ class MainActivity extends Activity { .show() } + @OnUIThread + void showSettings() { + + } + } diff --git a/polaromatic-grooid/src/main/res/layout/main.xml b/polaromatic-grooid/src/main/res/layout/main.xml index de69684..e758287 100644 --- a/polaromatic-grooid/src/main/res/layout/main.xml +++ b/polaromatic-grooid/src/main/res/layout/main.xml @@ -3,10 +3,25 @@ android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> + + + + android:text="@string/main_1"/> + + + diff --git a/polaromatic-grooid/src/main/res/values/strings.xml b/polaromatic-grooid/src/main/res/values/strings.xml index 8c0e84a..2d0d7fc 100644 --- a/polaromatic-grooid/src/main/res/values/strings.xml +++ b/polaromatic-grooid/src/main/res/values/strings.xml @@ -3,6 +3,8 @@ Polaromatic Groovy And Android :) + You can only use this application sharing a picture from another application + Please check the settings About Check http://www.groovy-lang.org This is an Android app written in Groovy From c6074fe34ba37454787e4233e85c48161fd3c94c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20L=C3=B3pez?= Date: Fri, 2 Jan 2015 00:27:08 +0100 Subject: [PATCH 15/65] Add settings activity and save backend url --- .../src/main/AndroidManifest.xml | 4 ++ .../app/activity/MainActivity.groovy | 5 +- .../app/activity/SettingsActivity.groovy | 49 +++++++++++++++++ .../src/main/res/layout/activity_settings.xml | 54 +++++++++++++++++++ .../src/main/res/menu/menu_main.xml | 15 ++++-- .../src/main/res/values-w820dp/dimens.xml | 6 +++ .../src/main/res/values/strings.xml | 8 +++ .../src/main/res/values/styles.xml | 3 ++ 8 files changed, 138 insertions(+), 6 deletions(-) create mode 100644 polaromatic-grooid/src/main/groovy/polaromatic/app/activity/SettingsActivity.groovy create mode 100644 polaromatic-grooid/src/main/res/layout/activity_settings.xml create mode 100644 polaromatic-grooid/src/main/res/values-w820dp/dimens.xml diff --git a/polaromatic-grooid/src/main/AndroidManifest.xml b/polaromatic-grooid/src/main/AndroidManifest.xml index bbd863e..afd6c44 100644 --- a/polaromatic-grooid/src/main/AndroidManifest.xml +++ b/polaromatic-grooid/src/main/AndroidManifest.xml @@ -15,6 +15,10 @@ + + diff --git a/polaromatic-grooid/src/main/groovy/polaromatic/app/activity/MainActivity.groovy b/polaromatic-grooid/src/main/groovy/polaromatic/app/activity/MainActivity.groovy index fbc8074..e899c84 100644 --- a/polaromatic-grooid/src/main/groovy/polaromatic/app/activity/MainActivity.groovy +++ b/polaromatic-grooid/src/main/groovy/polaromatic/app/activity/MainActivity.groovy @@ -2,11 +2,12 @@ package polaromatic.app.activity import android.app.Activity import android.app.AlertDialog +import android.content.Intent import android.os.Bundle import android.view.Menu import android.view.MenuItem -import groovy.transform.CompileStatic import com.arasthel.swissknife.annotations.OnUIThread +import groovy.transform.CompileStatic import polaromatic.app.R @CompileStatic @@ -50,7 +51,7 @@ class MainActivity extends Activity { @OnUIThread void showSettings() { - + startActivity(new Intent(applicationContext, SettingsActivity)) } } diff --git a/polaromatic-grooid/src/main/groovy/polaromatic/app/activity/SettingsActivity.groovy b/polaromatic-grooid/src/main/groovy/polaromatic/app/activity/SettingsActivity.groovy new file mode 100644 index 0000000..ea8a1d3 --- /dev/null +++ b/polaromatic-grooid/src/main/groovy/polaromatic/app/activity/SettingsActivity.groovy @@ -0,0 +1,49 @@ +package polaromatic.app.activity + +import android.app.Activity +import android.content.SharedPreferences +import android.os.Bundle +import android.widget.EditText +import android.widget.Toast +import com.arasthel.swissknife.SwissKnife +import com.arasthel.swissknife.annotations.InjectView +import com.arasthel.swissknife.annotations.OnClick +import groovy.transform.CompileStatic +import polaromatic.app.R + +@CompileStatic +class SettingsActivity extends Activity { + + private static final String PREFS_NAME = "settings_pref" + private static final String BACKEND_URL = "backend_url" + + @InjectView(R.id.backendUrl) + EditText backendUrlEditText + + @Override + void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_settings) + SwissKnife.inject(this) + + SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0) + String backendUrl = settings.getString(BACKEND_URL, "") + + backendUrlEditText.text = backendUrl ?: getString(R.string.settings_backend_url) + } + + @OnClick(R.id.settings_save_button) + void saveSettings() { + SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0) + SharedPreferences.Editor editor = settings.edit() + + editor.putString(BACKEND_URL, backendUrlEditText.text.toString()) + editor.commit() + + Toast toast = Toast.makeText(this, R.string.settings_saved_ok, Toast.LENGTH_SHORT) + toast.show() + + finish() + } +} + diff --git a/polaromatic-grooid/src/main/res/layout/activity_settings.xml b/polaromatic-grooid/src/main/res/layout/activity_settings.xml new file mode 100644 index 0000000..bcd643a --- /dev/null +++ b/polaromatic-grooid/src/main/res/layout/activity_settings.xml @@ -0,0 +1,54 @@ + + + + + + + + + + + + + +