3 new additions

4 views
Skip to first unread message

Arik

unread,
Jul 12, 2008, 10:54:14 AM7/12/08
to mucommander-dev
Hey Maxence, Hey All,

I've uploaded a jar file (mucommander.jar, I forgot to change it's
name..) that contains 3 changes:
1. It contains a "generic popup" similar to the one of IntelliJ. In
this version I used it to show the parents of current directory -
there is a new action "ShowParentsAction" that I also added to the
action_keymap in the jar file - its trigger is "control W".
2. The LocationComboBox was changed - now that the parents of current
directory could be shown in the popup described above, The
LocationComboBox contains the last 10 visited location instead of the
current directory parents.
3. I've started to change the preferences dialog in a way that the
"apply" and "ok" buttons would be disabled unless there was a change
that could be saved - for the moment only the "apply" button is
disabled and it's implemented only at "folder panel", meaning that
only if a change was discovered in one of the "folder panel" 's items,
then the apply button would be enabled (and it the change is canceled,
then the button would disabled again).

Please check those changes and let me know your opinion.

p.s - I had some problems with mucommander under ubuntu so for the
moment I use it only for checkout the project and keep develop under
windows. If you interested I can mention 3 problems I had:
1. when mu commander starts, I got the following printings:

(<unknown>:7747): Gtk-WARNING **: Attempting to add a widget with type
GtkButton to a GtkComboBoxEntry (need an instance of GtkEntry or of a
subclass)

(<unknown>:7747): Gtk-CRITICAL **: gtk_widget_realize: assertion
`GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(<unknown>:7747): Gtk-CRITICAL **: gtk_paint_box: assertion `style-
>depth == gdk_drawable_get_depth (window)' failed

(<unknown>:7747): Gtk-CRITICAL **: gtk_paint_box: assertion `style-
>depth == gdk_drawable_get_depth (window)' failed

I searched and found that it's probably a known issue under ubuntu and
it's not related to mucommander.

2. The preferences dialog could not be loaded - when pressing
"Preferences.." at the menu there are many printings of
"ZipFile.parseCentralDirectory,782 : Entry declared as UTF-8", and
after them:

Exception in thread "AWT-EventQueue-0" java.lang.NoSuchMethodError:
com.ibm.icu.text.CharsetMatch.getConfidence()I
at
com.mucommander.io.EncodingDetector.detectEncoding(EncodingDetector.java:
127)
at
com.mucommander.io.EncodingDetector.detectEncoding(EncodingDetector.java:
83)
at
com.mucommander.file.impl.zip.provider.ZipFile.parseCentralDirectory(ZipFile.java:
890)
at com.mucommander.file.impl.zip.provider.ZipFile.<init>(ZipFile.java:
115)
at
com.mucommander.file.impl.zip.ZipArchiveFile.checkZipFile(ZipArchiveFile.java:
85)
at
com.mucommander.file.impl.zip.ZipArchiveFile.getEntries(ZipArchiveFile.java:
163)
at
com.mucommander.file.AbstractArchiveFile.createEntriesTree(AbstractArchiveFile.java:
100)
at
com.mucommander.file.AbstractArchiveFile.checkEntriesTree(AbstractArchiveFile.java:
124)
at
com.mucommander.file.AbstractArchiveFile.getArchiveEntryFile(AbstractArchiveFile.java:
276)
at
com.mucommander.file.util.ResourceLoader.getResourceAsFile(ResourceLoader.java:
189)
at
com.mucommander.file.util.ResourceLoader.getResourceAsFile(ResourceLoader.java:
158)
at
com.mucommander.ui.theme.ThemeManager.predefinedThemeNames(ThemeManager.java:
139)
at
com.mucommander.ui.theme.ThemeManager.getAvailableThemes(ThemeManager.java:
174)
at
com.mucommander.ui.theme.ThemeManager.availableThemes(ThemeManager.java:
230)
at
com.mucommander.ui.dialog.pref.general.AppearancePanel.populateThemes(AppearancePanel.java:
398)
at
com.mucommander.ui.dialog.pref.general.AppearancePanel.createThemesPanel(AppearancePanel.java:
373)
at
com.mucommander.ui.dialog.pref.general.AppearancePanel.initUI(AppearancePanel.java:
172)
at
com.mucommander.ui.dialog.pref.general.AppearancePanel.<init>(AppearancePanel.java:
152)
at
com.mucommander.ui.dialog.pref.general.GeneralPreferencesDialog.<init>(GeneralPreferencesDialog.java:
101)
at
com.mucommander.ui.dialog.pref.general.GeneralPreferencesDialog.getDialog(GeneralPreferencesDialog.java:
151)
at
com.mucommander.ui.action.ShowPreferencesAction.performAction(ShowPreferencesAction.java:
37)
at com.mucommander.ui.action.MuAction.actionPerformed(MuAction.java:
526)
...

under windows the same jar was executed fine - without throwing this
exception.

3. Many times mucommander got stuck when trying to enter folders - in
undeterministic way.

Could you check mucommander under ubuntu 8.04 with your virtual
machine? The installation of ubuntu was trivial- I don't think I had
something wrong but I didn't see any complains in the forum from the
linux users about those issues so I don't know..

Thanks,

Arik

Maxence Bernard

unread,
Jul 25, 2008, 11:42:25 AM7/25/08
to mucomma...@googlegroups.com
Hi Arik,

> I've uploaded a jar file (mucommander.jar, I forgot to change it's
> name..) that contains 3 changes:
> 1. It contains a "generic popup" similar to the one of IntelliJ. In
> this version I used it to show the parents of current directory -
> there is a new action "ShowParentsAction" that I also added to the
> action_keymap in the jar file - its trigger is "control W".

Awesome, looks and feels great ! I have a few suggestions for
improvements, you know me ;)
- cycle trough the list when the first / last element is reached,
saves time when you want to reach an item that's close to the bottom /
top of the list.
- when the folder has no parent, I think it'd be more consistent to
show the popup with a grayed-out message either message rather than
not showing the popup at all. It took me a short while to figure out
what was going on when I was hitting ctrl+w and nothing was happening
while I was in '/'.
- the parents popup may be more readable if it were centered rather
than left/top-aligned, but maybe that's because I'm so used to the
IntelliJ one.

I can see other use for this component, and I'm sure we'll have plenty
more down the road:
- recently accessed folders (see below)
- recently executed applications
- custom application launcher

Btw, does does the component support icons ?

> 2. The LocationComboBox was changed - now that the parents of current
> directory could be shown in the popup described above, The
> LocationComboBox contains the last 10 visited location instead of the
> current directory parents.

Makes sense but I vote for removing the combo box altogether because
a) it's become a bit confusing since the field got auto-completable b)
it was never all that useful IMO, combo boxes are not very easy to
navigate using the keyboard, at least under OS X c) your popup list is
so much better once you get the hang of it.

What do you think ? (I seem to recall you didn't like it very much
either)

> 3. I've started to change the preferences dialog in a way that the
> "apply" and "ok" buttons would be disabled unless there was a change
> that could be saved - for the moment only the "apply" button is
> disabled and it's implemented only at "folder panel", meaning that
> only if a change was discovered in one of the "folder panel" 's items,
> then the apply button would be enabled (and it the change is canceled,
> then the button would disabled again).

I haven't been able to check that one out because of the
NoSuchMethodError exception you mentioned below.

> Please check those changes and let me know your opinion.
>
> p.s - I had some problems with mucommander under ubuntu so for the
> moment I use it only for checkout the project and keep develop under
> windows. If you interested I can mention 3 problems I had:
> 1. when mu commander starts, I got the following printings:
>
> (<unknown>:7747): Gtk-WARNING **: Attempting to add a widget with type
> GtkButton to a GtkComboBoxEntry (need an instance of GtkEntry or of a
> subclass)

> ...


> I searched and found that it's probably a known issue under ubuntu and
> it's not related to mucommander.

This looks similar to an issue that got previously reported :
http://www.mucommander.com/cgi-bin/bugzilla/show_bug.cgi?id=26

I also believe this error is Gtk/Swing-specific and out of our control.

> 2. The preferences dialog could not be loaded - when pressing
> "Preferences.." at the menu there are many printings of
> "ZipFile.parseCentralDirectory,782 : Entry declared as UTF-8", and
> after them:
>
> Exception in thread "AWT-EventQueue-0" java.lang.NoSuchMethodError:
> com.ibm.icu.text.CharsetMatch.getConfidence()I

> ...
> under windows the same jar was executed fine - without throwing this
> exception.

I can reproduce the error from the JAR file you sent but not from the
trunk. I saw Mariusz commit a fix for a potential NPE on the same
line, but since the exception you get is different, I'm not sure
whether it fixes the problem or not.
Is the exception still there after an svn update ?

> 3. Many times mucommander got stuck when trying to enter folders - in
> undeterministic way.
>
> Could you check mucommander under ubuntu 8.04 with your virtual
> machine? The installation of ubuntu was trivial- I don't think I had
> something wrong but I didn't see any complains in the forum from the
> linux users about those issues so I don't know..

I need to upgrade my aging Ubuntu 7.04 VM. I'll try and reproduce
this. Stress test (ant stress-test) may help reproduce the issue.

Next time this happens, you can try sending a QUIT signal to the
process (kill -s QUIT <PID>) which will print a thread dump to the
standard out, revealing where muCommander is stuck. You can also press
Ctrl+\ in the terminal to send the QUIT signal.
Would you mind filing a bug in Bugzilla just so that we don't forget
about it ?

Last but not least, I'd like to give you commit access to svn, so that
a) I don't slow things unnecessarily and b) to make things easier for
you rather than having to deal with patches.
The only condition is that we discuss new features or any major change
on this list before committing anything. That doesn't include
improvements or fixes to existing features of course.

You're probably OK with that but I thought I'd run this by you before
making the change.

FYI in the next few days, I'll take a shot at the new bugs that were
filed to Bugzilla and plan the next release (0.8.3) -- I'll send an
email about that soon.

Cheers!
Maxence

Reply all
Reply to author
Forward
0 new messages