Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 265052 Details for
Bug 506316
[e4] "EventAdmin Async Event Dispatcher Thread" can be blocked by a UI thread
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
e4 demo patch
org.eclipse.rap.incubator.e4.patch (text/plain), 3.08 KB, created by
Ivan Furnadjiev
on 2016-10-26 07:40:40 EDT
(
hide
)
Description:
e4 demo patch
Filename:
MIME Type:
Creator:
Ivan Furnadjiev
Created:
2016-10-26 07:40:40 EDT
Size:
3.08 KB
patch
obsolete
>diff --git a/demo/org.eclipse.rap.e4.demo/src/org/eclipse/rap/e4/demo/parts/EventSamplePart.java b/demo/org.eclipse.rap.e4.demo/src/org/eclipse/rap/e4/demo/parts/EventSamplePart.java >index 87f10a3..3934ff8 100644 >--- a/demo/org.eclipse.rap.e4.demo/src/org/eclipse/rap/e4/demo/parts/EventSamplePart.java >+++ b/demo/org.eclipse.rap.e4.demo/src/org/eclipse/rap/e4/demo/parts/EventSamplePart.java >@@ -8,6 +8,8 @@ > import org.eclipse.e4.core.services.events.IEventBroker; > import org.eclipse.e4.ui.di.UIEventTopic; > import org.eclipse.e4.ui.di.UISynchronize; >+import org.eclipse.e4.ui.workbench.UIEvents; >+import org.eclipse.jface.dialogs.MessageDialog; > import org.eclipse.jface.viewers.ListViewer; > import org.eclipse.swt.SWT; > import org.eclipse.swt.events.SelectionAdapter; >@@ -17,17 +19,23 @@ > import org.eclipse.swt.widgets.Button; > import org.eclipse.swt.widgets.Composite; > import org.eclipse.swt.widgets.Group; >+import org.eclipse.swt.widgets.MessageBox; >+import org.osgi.service.event.Event; >+import org.osgi.service.event.EventHandler; > > @SuppressWarnings("restriction") > public class EventSamplePart { >+ >+ private static int counter = 0; >+ > @Inject > IEventBroker broker; >- >+ > @Inject > UISynchronize uiSync; >- >+ > private ListViewer listViewer; >- >+ > @PostConstruct > void init(Composite parent) { > parent.setLayout(new GridLayout()); >@@ -35,9 +43,21 @@ > listViewer = new ListViewer(parent); > listViewer.getControl().setLayoutData( > new GridData(GridData.FILL_BOTH)); >- >+ > createSendGroup(parent, "EventTopic"); > createSendGroup(parent, "UIEventTopic"); >+ >+ broker.subscribe(UIEvents.UILifeCycle.APP_STARTUP_COMPLETE, new EventHandler() { >+ @Override >+ public void handleEvent(Event event) { >+ System.out.println(event); >+ broker.unsubscribe(this); >+ if( counter == 0 ) { >+ counter++; >+ MessageDialog.openInformation(parent.getShell(), "Blocking dialog", "Blocked!"); >+ } >+ } >+ }); > } > > private void createSendGroup(Composite parent, final String topicType) { >@@ -45,7 +65,7 @@ > g.setText("@" + topicType); > g.setLayout(new GridLayout(2, true)); > g.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); >- >+ > Button b = new Button(g, SWT.PUSH); > b.setText("Sync sending"); > b.addSelectionListener(new SelectionAdapter() { >@@ -55,7 +75,7 @@ > } > }); > b.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); >- >+ > b = new Button(g, SWT.PUSH); > b.setText("Async sending"); > b.addSelectionListener(new SelectionAdapter() { >@@ -66,7 +86,7 @@ > }); > b.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); > } >- >+ > @Inject > @Optional > void receiveEvent(@EventTopic("rape4/EventTopic") final String eventData) { >@@ -74,15 +94,15 @@ > listViewer.add(eventData); > } else { > uiSync.syncExec(new Runnable() { >- >+ > @Override > public void run() { >- listViewer.add(eventData); >+ listViewer.add(eventData); > } > }); > } > } >- >+ > @Inject > @Optional > void receiveUIEvent(@UIEventTopic("rape4/UIEventTopic") final String eventData) {
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 506316
: 265052