Community
Participate
Working Groups
Steps to reproduce: * Open Help->Install New software * click Available Software Sites * change anything (add repo, disable and enable it) * close the dialog *expected work with combo box lists available repositories * actual work with combo box duplicates each repository a couple of times Additional info: happens only if in GTK3 mode, GTK2 works fine.
Following snippet replaces combo items in GTK2, but adds them in GTK3. This is a critical issue. Shell shell = new Shell(); shell.setLayout(new GridLayout()); final Combo combo = new Combo(shell, SWT.DROP_DOWN); combo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); combo.setItems(new String[]{"a","b","c"}); Button button = new Button(shell, SWT.PUSH); button.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); button.setText("reset"); button.addSelectionListener(new SelectionAdapter() { int i; @Override public void widgetSelected(SelectionEvent e) { combo.setItems(new String[]{"click" + i++}); } }); shell.layout(); shell.open(); while(!shell.isDisposed()){ if(!Display.getCurrent().readAndDispatch()){ Display.getCurrent().sleep(); } }
Fixed in master. http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=fd32011a7860d05165130ff95403fe0b8b252577
Silenio, what do you think about backporting such fixes for kepler SR releases?
I am ok back porting the fix, but first we need to fix all references to gtk_combo_box_remove_text() to either call gtk_combo_box_text_remove() or gtk_combo_box_text_remove_all().
Done with http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=0abcaf5e238ad1d67e0ff4fd7f34e24c72e4a2bf . What's the procedure to backport? Just cherrypick? Anything special I need to set in bugzilla, etc?
Looks good. Follow the rules [1], cherrypick, set target milestone to 4.3.1. And since there are native changes, we will have to increment the version and build libraries, but this part is done by our build process. [1] http://www.eclipse.org/eclipse/development/plans/freeze_plan_4_3_1.php
OK, cherry picked and set the target, hope that there is nothing I missed.
Backported to kepler.