When launching mintsources, timeshift or an app which Exec field (in the desktop file)
starts with pkexec, nothing happens and the output states:
"Refusing to render service to dead parents."
For some reason this does not happen on fresh LMDE 4 and Mint 19.3 installations,
but it happens on LMDE 3 -> LMDE 4 and 19.1 -> 19.3 upgrades.
Similar bugs were fixed in nemo and cinnamon. Pkexec is known to cause issues
depending on how it's launched.
Specifying DO_NOT_REAP_CHILD in the spawn flags helps here. Afaik it makes it so
we're the parent of the pkexec process during launch. Pkexec fails to launch
otherwise.
gather_pid_callback() does nothing, it's just there to ack the pid callback. Afaik
this helps preventing zombie [defunct] processes when they terminate.
* Applications: Fix keypress event handler
* further fix and simplify the keypress handler
* disconnect the keyPress handler when destroying the plugin
When recent plugin is disabled, recentAppBox is None,
resulting in errors in the logs:
org.mate.panel.applet.MintMenuAppletFactory[1038]: File “/usr/lib/linuxmint/mintMenu/plugins/recentHelper.py”, line 130, in applicationButtonClicked
org.mate.panel.applet.MintMenuAppletFactory[1038]: doRecentApps()
org.mate.panel.applet.MintMenuAppletFactory[1038]: File “/usr/lib/linuxmint/mintMenu/plugins/recentHelper.py”, line 112, in doRecentApps
org.mate.panel.applet.MintMenuAppletFactory[1038]: for i in recentAppBox.get_children():
org.mate.panel.applet.MintMenuAppletFactory[1038]: AttributeError: ‘NoneType’ object has no attribute ‘get_children’
This works ootb with recent GTK versions now.
The workaround we used creates problems when run in HiDPI
(the window is misplaced and its size is twice larger).
* Fix menu positioning to account for multiple monitors
It takes into account the orientation of the panel applet. It also
offsets its right/left positioning to avoid clipping.
Fixes#21
* Take into account possible clipping in the top/bottom of the monitor
* Highlight previous search so typing overwrites it
When set to remember the last search, on next opening the menu it would display the last search and put the cursor at the end of it. If you wanted to do a new search you would first have to delete your previous search. More convenient if you starting typing it overwrites the last search and only if you place the cursor with arrow keys or mouse it switches to insert / append text to the last search.
There was existing code that did in fact do that but it was in the wrong place. This patch puts it in the right place. Fixes#86.
* Remove code to set position at end
Because it doesn't do anything when you select all the text.
This fixes#178.
add_apt_filter_results ran a command with keywords from the menu's Search entry without shell escaping. This made it possible to have it run shell commands by using command substitution. E.g. searching for `$(xeyes)` would run xeyes.
When/if mintmenu gets ported to Python3 pipes.quote should be replaced by shlex.quote.