View Issue Details

IDProjectCategoryView StatusLast Update
0019519MMW 5Main Panelpublic2022-11-04 18:02
Reporterrusty Assigned To 
PriorityurgentSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version5.0.4 
Target Version5.0.4Fixed in Version5.0.4 
Summary0019519: Scan completion dialog can appear blank / Optimize Elevation & Firewall prompts
DescriptionUpon doing a fresh installation of MediaMonkey, the scan status bar shows that files are being scanned, but at the same time, a blank scan completion dialog appears! Unless the user knows to click the corner of the dialog (which causes the 'OK' button to display), the user thinks that the scanning process froze.

So to be clear, there seem to be 2 issues associated with this bug:
1) The scanning status continues to display even after it has completed
2) The scan completion dialog that displays is blank

I haven't seen other dialogs exhibiting this behavior, but would appreciate feedback from the devs as to what other dialogs should be tested (i.e. what is special about the scan completion dialog that causes this?).
Tagstodoc-help
Fixed in build2680

Relationships

related to 0019144 closedLudek "Add Windows firewall exception" should not be enabled by default on install 
related to 0017209 closedLudek UAC prompt is shown after every re-install (also in Portable mode) 
related to 0018264 closedLudek Firewall Rules: Auto rules needs to be tweaked in order that MM5 gets discoverable by Devices and MMA 
related to 0019533 closedLudek Custom icons don't appear when importing data from an existing instance of MM 
related to 0019524 closedLudek Welcome page should be rendered after Closing First start Wizard. 
related to 0019537 closedLudek Firewall prompt appears twice on Public network 

Activities

rusty

2022-11-01 14:54

administrator   ~0070073

Note: the first build in which this issue can be replicated is 2664.

rusty

2022-11-01 16:42

administrator   ~0070077

Last edited: 2022-11-01 16:48

It turns out that this isn't a new issue, and whether it occurs depends on whether whether MM UI elements are drawn behind the Windows elevation dialog (or stated differently, it depends on how quickly the user accepts the Windows elevation prompt):

1) With 2663:
1 Run it from the installer
--> Import DB dialog appears. Click Cancel
--> Windows Elevation dialog appears.
2 a) Click 'OK' right away.
--> Firewall dialog with Private networks option pre-checked appears. Click OK.
--> Wizard is drawn as expected
2 b) Wait 10s and then click 'OK' (so that the scan completes and the scan dialog is rendered before the elevation dialog is closed).
--> Firewall dialog with Private networks option pre-checked appears. Click OK.
--> Wizard and MM UI appear as a blank white frames!

2) With 2664 / 2679
1 Run it from the installer
--> Firewall dialog with Private networks option unchecked appears.
2 Check it and Click OK.
--> Wizard and MM dialog are shown (drawn correctly).
3 Go through the wizard making certain to configure it to scan some content... Click 'Done'
--> Windows Elevation dialog appears.
4 a) Click 'OK' right away --> Summary dialog is drawn correctly
. b) Wait 10s and then click 'OK' (i.e. after the scan has already completed and the scan summary dialog has been drawn under the elevation dialog) --> Summary dialog appears in white!

Summary: The bug occurs whenever the MM UI is drawn behind the elevation dialog. The bug existed in earlier builds (prior to 2664) as well, but rarely manifested because the workflow is such that users almost always click 'OK' to the elevation dialog right away. But with build 2664+ users go through a workflow that demands some thought upfront (i.e. the wizard is run before the elevation prompt) and so it's possible (though probably not too common) that they don't respond to the elevation dialog right away.

Please triage: it seems like an issue that should be fixed since such dialogs shouldn't prevent MM from rendering and the issue may occur in other circumstances. On the other hand, it's only likely to occur when the user initially runs MM and scans a very limited number of tracks.

Ludek

2022-11-01 17:33

developer   ~0070079

Last edited: 2022-11-01 17:39

Good catch, it is indeed reproducible while the UAC dialog is shown and MM window is dimmed (while showing the Scan Results dialog).

i.e. was indirectly caused by the workflow change re the Firewall Exception : 0019144

Ludek

2022-11-01 18:25

developer   ~0070081

Last edited: 2022-11-01 18:44

So the solution could be to show the Elevation dialog after step 2 in the Welcome wizard and not after step 3 ? This would also better communicate why the Elevation dialog is shown and that it relates to Sharing and not Scanning.

i.e.
instead of current
Welcome to Media Monkey > Share Media > Next > Done > UAC dialog / Scan Results
use
Welcome to Media Monkey > Share Media > Next > UAC dialog > Done > Scan Results

Assigned to myself to implement this.

rusty

2022-11-01 19:21

administrator   ~0070082

Last edited: 2022-11-01 19:32

Re. 0019519: I would say that the solution is to figure out why rendering is affected by the appearance of the elevation dialog (if it occurs in this case, it wouldn't surprise me if there are other cases in which this might occur).

In terms of a workaround (i.e. if we can't actually fix the problem), here's the current order of configuration:
0 Firewall alert
1 Scan settings
2 Share / Firewall
3 Unlock
4 Elevation prompt

From a usability perspective, the Elevation prompt is where one would expect it to be since the user understands that upon clicking 'Done' the configuration changes are implemented, and since this approach doesn't interrupt the flow of the wizard. BUT, the firewall alert at step 0 is probably a surprise to most users who wonder what MediaMonkey is connecting to!

So from a usability perspective, moving the firewall alert to follow Step 2 could make sense since it relates directly to the firewall configuration mentioned at that step. And as to Per Ludek's suggestion, if we can't fix the usability issue, then we can move the Elevation prompt to follow step 2 as well.

But my preference would be to fix the elevation prompt issue rather than pursuing the workaround of changing its order since having both prompts appear after the same step will cause other problems (e.g. dialogs on top of one another / users not accepting one of the dialogs accidentally, interruption in the flow of the installation wizard, etc.).

p.s. the other question is why is this occurring considering issue 0017209 . i.e. why does the elevation prompt appear at all when MM is running in Portable mode?

Ludek

2022-11-01 20:12

developer   ~0070083

Last edited: 2022-11-01 20:16

1) To figure out why Chromium rendering of a new dialog is affected by UAC prompt might by tricky/hard to find as it is by evidence something between Chromium rendering and Windows.
But maybe Petr has an idea how to workaround it or fix it.. ?

2) Re the Firewall alert dialog, this dialog is automatically shown by Windows when MM makes a connection. I think this shouldn't appear until the Welcom Wizard is completed.
To be figured out which connection is causing this, maybe artwork/lyrics lookup? To be figured out...

3) Per 0017209 the elevation prompt does not appear at all when MM is installing in Portable mode and to the same folder where older version of MM already resides, but it _does_ show on clean install.
Maybe we could change the default on the Welcome Wizard to disable both the firewall exception and Sharing in case of Portable mode ?

Ludek

2022-11-01 20:24

developer   ~0070084

Last edited: 2022-11-01 20:25

2) OK, this seem to happen because of pre-expanded 'Devices & Services' node in order to see connected devices in the tree (per #13767 - item f) -- but this causes also to list media serves available on the LAN, therefore the Firewall alert dialog is shown.

Because the connected devices are already announced via toast messages then we might want to just revert the pre-expanding of 'Devices & Services' node after clean install to supress this issue?

rusty

2022-11-01 20:58

administrator   ~0070085

Last edited: 2022-11-01 21:16

2) (item f) It seems reasonable to delay the firewall prompt until network access is needed--as long as the dialog appears in a manner that makes sense to the user. If we delay it, when would the firewall alert dialog appear for the first time?
- if the user clicks 'Add location' in the install wizard and chooses a network location?
- if the user doesn't scan a network location, then when the user clicks 'Done' and content scanning starts and MM automatically attempts a lookup?

3) I wouldn't disable sharing or the ability to create a firewall prompt on a new portable install. BUT we could improve messaging in the Wizard to explain why system changes are being made.

BUT, I still don't understand, on a clean install, why should enabling sharing trigger elevation? i.e. I would only expect this if the UPnP _service_ was enabled, but if it's not enabled what's the reason?

Ludek

2022-11-01 21:16

developer   ~0070086

Last edited: 2022-11-01 21:19

2f) the firewall prompt is shown only when MM firewall exception hasn't been added and MM is doing SSDP discovery to list available media servers.
The issue is that currently 'Devices & Services' node (after expanding) lists both connected devices, but also available media servers (and this causes the firewall prompt to show).

Possible solutions:
a) Do not auto-expand 'Devices & Services' on clean install -- this is sufficient solution IMO because we already show toast message when a portable device is connected
b) Expand it later after the Welcome wizard is closed

3) Enabling Sharing and the 'Add Windows Firewall exception' needs elevation to write our custom firewall rules to regitry, details in 0018264
Namely (and typicaly) if user just cancels the Firewall prompt dialog (Windows Security Alert) then Windows creates blocking rules and user is not aware why servers aren't discoverable on the network (until our custom rules are created by the exception).

rusty

2022-11-01 21:23

administrator   ~0070087

Last edited: 2022-11-01 21:24

OK, so the proposed solutions sound reasonable as it will result in:
- Elevation prompt after enabling sharing or firewall changes and clicking 'Next' (which the user would expect)
- Firewall prompt after clicking 'Done' (which users could probably understand)

Ludek

2022-11-01 21:46

developer   ~0070088

Fixed in 5.0.4.2680

peke

2022-11-01 22:02

developer   ~0070089

Last edited: 2022-11-01 22:12

Re 2) You are wrong, analyze wireshark packets looks like firewall prompt is shown due the MM default behavior of checking update on startup and query IP Address: 54.39.221.200 which by reverse DNS return result http://ip200.ip-54-39-221.net/ (Opening new bug for Jiri/Rusty to handle as it is ISP/Server ZONE setting) which can easily trick users to say NO due teh fact MM is trying to access unknown IP address. NOTE: Opening http://ip200.ip-54-39-221.net/ in browser opens MM main site. Expected that MM do not check for update on first start

peke

2022-11-01 22:03

developer   ~0070090

image.png (134,889 bytes)   
image.png (134,889 bytes)   

Ludek

2022-11-02 10:56

developer   ~0070100

Last edited: 2022-11-02 10:58

2) Peke, I don't think that I am wrong, I tested this carefully and it is really the UPnP service (SSDP discovery) that is causing the Windows Security Alert, as you can see on your screenshot it is UDP (not TCP) causing this.

Please re-test in 2680 this way:

TEST1: Clean install, start MM5 and ensure that 'Devices & Services' node is collapsed, go to 'Share Media' page of the welcome wizard and uncheck both
[..] Share Media
[..] Add Windows Firewall
to ensure that UPnP is not involved.
Click [Next]
Click [Done] on the Wizard
=> no firewall and no UAC prompt as expected
Go to menu Help > Check for updates
=> no firewall and no UAC prompt as expected
- Expand 'Devices & Services' node
=> Firewall prompt (Windows Security Alert) is shown (because of SSDP discovery for MM5 to list the UPnP/DLNA servers)

But you _need_ to test 2680, because 2679 pre-expands the 'Devices & Services' node before showing the Welcome Wizard -- and this is causing the Windows Security Alert to show!

peke

2022-11-02 20:13

developer   ~0070105

Verified 2680

All is working OK , now UAC prompt is shown after enabling share before continuing to Registration wizard page.

NOTE about 2.: it looks that we were both wrong. Rendering of Welcome Screen can trigger Firewall Prompt (Mostly on Third party apps like Norton, MalwareBytes and other firewall apps that check all outbound traffic for newer installed apps) not SSDP. Added 0019524 for handling that case.