[tk scaling] on undroidwish gives different results than on wish, on the same machine
|User & Date:||anonymous 2019-05-17 11:38:04|
- Change icomment to:
My goal is to present an sdltk window on a desktop PC that accurately emulates the screen of a mobile phone/tablet device. To achieve this I do the following:
- Write down the target device's densitydpi and density, as returned by the command `borg displaymetrics` run on androwish on the mobile device. An example of such result from an actual device is: `densitydpi 240 density 1.5`
- On the PC, run `undroidwish -sdlxdpi <densitydpi>`, where <densitydpi> is the value returned by the above `borg displaymetrics` command.
- Inside undroidwish, run the following code:
- Measure the red rectangular representing the specified tk frame widget. Result: It measures exactly the specified 20mm.
% tk scaling 3.344855967078189 # set `tk scaling` to the <density> value return by `borg displaymetrics` % tk scaling 1.5 # create a shape with specs dependent on device dpi: % pack [frame .f -width 20m -height 20m -bg red] -padx 20m -pady 20m
While tk seems to be correctly set to display the content, the sdltk window borders are scaled by the -sdlxdpi value given at the command line, which seems to be approx. 240.0/72 = 3.333.., in the above example. See this screenshot. The size of the font in the console is not a problem; it will resize properly once the console is redrawn by Tk. But...
I have not found a way to set sdltk's window borders. Tk commands for toplevel windows do not seem to influence sdltk's window decoration in undroidwish. I can make them disappear, e.g. by running `wm overrideredirect`, but then the ability to move the windows around is lost.
How can one change window decoration sizes in sdltk? It seems they should be tied to the `tk scaling` that undroidwish comes up with initially.
- Change login to "anonymous"
- Change mimetype to "text/html"