Xpad - Prevent minimizing of pads

Registered by Arthur Borsboom on 2013-10-18

A configuration option, to prevent Xpad to minimizre when a user asks the OS to "Show Desktop" (for example by pressing Ctrl+Win+D in Ubuntu). This way the user is able to immediately access the XPad notes on the Desktop.

Blueprint information

Status:
Complete
Approver:
None
Priority:
Low
Drafter:
Arthur Borsboom
Direction:
Needs approval
Assignee:
Arthur Borsboom
Definition:
Obsolete
Series goal:
Accepted for trunk
Implementation:
Blocked
Milestone target:
None
Started by
Arthur Borsboom on 2014-06-08
Completed by
Arthur Borsboom on 2015-11-09

Related branches

Sprints

Whiteboard

Design brainstorm for posibilities how to implement this new feature. Feel free to add, discussions, questions, improvements, etc.

Possibility 1
- Add checkbox to Preferences "Prevent minizing pads" (DONE)
- Add functionality which instructs the OS or GTK not to minimize the Xpad windows. (NOT FOUND YET)

Possibility 2
- Add a short-cut to Preferences "Short-cut key for minimization: CTRL-ALT-P" (or whatever key is available).
- Add functionality which instructs the OS to minimize all windows on the desktop and then maximize all xpad windows again. (DOES NOT WORK)

Posiblity 3
- When Window Decorations are diabled for the XPad windows, the following procedure prevents XPad windows from minimizing when doing Show Desktop. But the procedure won't work if Window decorations are enabled.
- In CompizConfig Settings Manager, deselect General > General Options >Hide Skip Taskbar Windows (https://answers.launchpad.net/compiz/+question/258180)

Other ideas: https://answers.launchpad.net/xpad/+question/181840

Posibility 4

Hi Junmin,

I have tried to implement the feature preventing the minimizing of the pads.
Unfortunately, there is a dark side to this feature: keyboard input gets disabled (for some reason).
I implemented this GTK feature in v4.3 in development.

 if (xpad_settings_get_dock(xpad_global_settings))
  gtk_window_set_type_hint (GTK_WINDOW(pad), GDK_WINDOW_TYPE_HINT_DOCK);
 else
  gtk_window_set_type_hint (GTK_WINDOW(pad), GDK_WINDOW_TYPE_HINT_NORMAL);

Does anybody know how to fix this or maybe another way to implement your feature request?

Since I don't know yet how to solve this issue, I am reverting the change and moving this request forward in time to v4.5.

(?)

Work Items

Work items:
Analyze if OS can be instructed to prevent minimizing certain application windows (not possible): DONE
Analyze if OS can be instructed from the application to minimize other applications: TODO
Analyze if GTK offers functionality to instruct one of the two above options: TODO
Design the functions: TODO
Realise (program) the functions: TODO
Implement the functions: TODO
Prepare for release: TODO

This blueprint contains Public information 
Everyone can see this information.