Opened 7 years ago

Closed 6 years ago

#9534 closed bug (fixed)

[ActivityMonitor] Settings can't be opened if Always on top is enabled

Reported by: diver Owned by: leavengood
Priority: normal Milestone: R1
Component: Applications/ActivityMonitor Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: yes Platform: All

Description

See hrev45344.

Attachments (4)

0001-activity-monitor-settings.patch (2.2 KB ) - added by Freeman 6 years ago.
0001-activity-monitor-settings.2.patch (2.1 KB ) - added by Freeman 6 years ago.
0001-activitymonitor-settings.patch (2.2 KB ) - added by Freeman 6 years ago.
0001-activitymonitor-settings.2.patch (1.8 KB ) - added by Freeman 6 years ago.

Download all attachments as: .zip

Change History (19)

comment:1 by Freeman, 6 years ago

Has a Patch: set

comment:2 by dsjonny, 6 years ago

(This is the same in MediaPlayer.)

comment:3 by korli, 6 years ago

Freeman, thanks for the patch. Here are my remarks:

  • I'd just add a method IsAlwaysOnTop() in ActivityWindow.h instead of using a constructor parameter.
  • fAlwaysOnTop is not a boolean but a pointer to a BMenuItem.
  • method or function parameter names begin with a lowercase character.

comment:4 by Freeman, 6 years ago

Do you mean to use the function as the parameter? Like new SettingWindow(this, _IsAlwaysOnTop());

in reply to:  4 ; comment:5 by korli, 6 years ago

Replying to Freeman:

Do you mean to use the function as the parameter? Like new SettingWindow(this, _IsAlwaysOnTop());

No, I mean that IsAlwaysOnTop() can be called in the SettingsWindow constructor.

in reply to:  5 ; comment:6 by Freeman, 6 years ago

Replying to korli:

Replying to Freeman:

Do you mean to use the function as the parameter? Like new SettingWindow(this, _IsAlwaysOnTop());

No, I mean that IsAlwaysOnTop() can be called in the SettingsWindow constructor.

How is the method in ActivityWindow going to be called by the constructor of SettingsWindow?

in reply to:  6 comment:7 by korli, 6 years ago

Replying to Freeman:

How is the method in ActivityWindow going to be called by the constructor of SettingsWindow?

target->IsAlwaysOnTop()

comment:8 by korli, 6 years ago

The build fails with this patch applied.

comment:9 by Freeman, 6 years ago

Yeah I think I messed up my source by using reset --hard. Hold on I'll fix the code.

by Freeman, 6 years ago

comment:10 by korli, 6 years ago

Your patch includes an unneeded modification of the line 41/42 of ActivityWindow.h. Please fix. Also ActivityWindow::IsAlwaysOnTop() should be const.

comment:11 by korli, 6 years ago

On a second thought, the feel shouldn't be changed if the ActivityWindow isn't always on top. Or do you have a good reason for that?

comment:12 by Freeman, 6 years ago

So what should be done at this point?

comment:13 by korli, 6 years ago

Resolution: fixed
Status: newclosed

Edited and applied in hrev46476.

comment:14 by diver, 6 years ago

Resolution: fixed
Status: closedreopened

Something is still not right.

  • Settings->Settings
  • Settings->Always on top

After that you can't open Settings window anymore.

comment:15 by korli, 6 years ago

Resolution: fixed
Status: reopenedclosed

Fixed in hrev46477. Thanks for testing!

BTW having both a settings window and a settings menu for a simple app seems over the top.

Note: See TracTickets for help on using tickets.