Embed clippy.swf with a GWT DataResource
Using a DataResource allows the GWT compiler to manage inserting the binary into the application context. This works in all run modes, making the clippy movie always available, even in GWT hosted debug. Change-Id: I02869d65d9787265ebe40046e0dbf883fd7ea9e1
This commit is contained in:
parent
cad2310922
commit
a8eec02ca1
@ -4,7 +4,10 @@ gwt_module(
|
||||
name = 'Clippy',
|
||||
srcs = glob([SRC + 'clippy/client/*.java']),
|
||||
gwtxml = SRC + 'clippy/Clippy.gwt.xml',
|
||||
resources = [SRC + 'clippy/client/clippy.css'],
|
||||
resources = [
|
||||
SRC + 'clippy/client/clippy.css',
|
||||
SRC + 'clippy/client/clippy.swf',
|
||||
],
|
||||
deps = [
|
||||
':SafeHtml',
|
||||
':UserAgent',
|
||||
@ -14,17 +17,6 @@ gwt_module(
|
||||
visibility = ['PUBLIC'],
|
||||
)
|
||||
|
||||
genrule(
|
||||
name = 'clippy_swf',
|
||||
cmd = 'mkdir $TMP/gerrit_ui;' +
|
||||
'cp $SRCS $TMP/gerrit_ui;' +
|
||||
'cd $TMP;' +
|
||||
'zip -qr $OUT gerrit_ui',
|
||||
srcs = [SRC + 'clippy/public/gwtexpui_clippy1.cache.swf'],
|
||||
out = 'clippy_swf.zip',
|
||||
visibility = ['PUBLIC'],
|
||||
)
|
||||
|
||||
gwt_module(
|
||||
name = 'CSS',
|
||||
srcs = glob([SRC + 'css/rebind/*.java']),
|
||||
|
@ -16,10 +16,16 @@ package com.google.gwtexpui.clippy.client;
|
||||
|
||||
import com.google.gwt.core.client.GWT;
|
||||
import com.google.gwt.resources.client.ClientBundle;
|
||||
import com.google.gwt.resources.client.DataResource;
|
||||
import com.google.gwt.resources.client.DataResource.DoNotEmbed;
|
||||
|
||||
public interface ClippyResources extends ClientBundle {
|
||||
public static final ClippyResources I = GWT.create(ClippyResources.class);
|
||||
|
||||
@Source("clippy.css")
|
||||
ClippyCss css();
|
||||
|
||||
@Source("clippy.swf")
|
||||
@DoNotEmbed
|
||||
DataResource swf();
|
||||
}
|
||||
|
@ -14,7 +14,6 @@
|
||||
|
||||
package com.google.gwtexpui.clippy.client;
|
||||
|
||||
import com.google.gwt.core.client.GWT;
|
||||
import com.google.gwt.core.client.Scheduler;
|
||||
import com.google.gwt.event.dom.client.BlurEvent;
|
||||
import com.google.gwt.event.dom.client.BlurHandler;
|
||||
@ -47,7 +46,6 @@ import com.google.gwtexpui.user.client.UserAgent;
|
||||
public class CopyableLabel extends Composite implements HasText {
|
||||
private static final int SWF_WIDTH = 110;
|
||||
private static final int SWF_HEIGHT = 14;
|
||||
private static String swfUrl;
|
||||
private static boolean flashEnabled = true;
|
||||
|
||||
static {
|
||||
@ -63,10 +61,7 @@ public class CopyableLabel extends Composite implements HasText {
|
||||
}
|
||||
|
||||
private static String swfUrl() {
|
||||
if (swfUrl == null) {
|
||||
swfUrl = GWT.getModuleBaseURL() + "gwtexpui_clippy1.cache.swf";
|
||||
}
|
||||
return swfUrl;
|
||||
return ClippyResources.I.swf().getSafeUri().asString();
|
||||
}
|
||||
|
||||
private final FlowPanel content;
|
||||
|
@ -74,7 +74,6 @@ def gerrit_war(name, ui = 'ui_optdbg', context = []):
|
||||
context = [
|
||||
'//gerrit-main:main_bin.jar',
|
||||
'//gerrit-war:webapp_assets.zip',
|
||||
'//gerrit-gwtexpui:clippy_swf.zip',
|
||||
'//gerrit-gwtui:' + ui + '.zip',
|
||||
] + context,
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user