Re: modRana on Android
Quote:
Originally Posted by 白い熊
(Post 1139951)
The cursor position, and the blue box with directions would disappear for 10-20 seconds at a time, while the underlying map, with the traced route is visible... Anyhow the cursor and blue box would flicker on for a split second, only during this time, if you'd touch the screen, I could access the menu.
Tried to display the tile load times in terminal, that's when I noticed some python cairo errors coming up in the terminal.
I'll capture the full errors in the morning and post.
|
Hmm, it seems "in the morning" translates to in a "month and a half"... :O(
Anyhow, I did capture it finally, and it definitely seems to be pango/cairo based, though no idea what it's about. Am posting the full log of a short run just in case, though the error seems to be one and the same...
Edit: had to cut out some of the error log, as the resultant text is too long to post...
Code:
~ $ modrana
Xlib: extension "RANDR" missing on display ":1.0".
== modRana Starting ==
device string (first parameter): android_chroot
size allocate gtk.gdk.Rectangle(0, 0, 480, 640)
error in screen invalidating function
exception: 'NoneType' object has no attribute 'invalidate_rect'
importing modules:
* messages: Handles messages (10.00 ms)
* markers: A module handling markers on the map. (10.00 ms)
* icons: Draw icons (0.00 ms)
* updateTiles: Update stored map tiles. (0.00 ms)
* cron: A timing and sheduling module for modRana. (20.00 ms)
* route: Routes (30.00 ms)
* mapData: Handle downloading of map data (130.00 ms)
* display: A platform independent display device control module (0.00 ms)
* positionMarker: A sample pyroute module (0.00 ms)
* example: A sample pyroute module (0.00 ms)
* showPOI: Show POI on the map and in the menu. (0.00 ms)
* notification: This module provides notification support. (0.00 ms)
* showGPX: draws a GPX track on the map (10.00 ms)
* projection: Projection code (lat/long to screen conversions) (0.00 ms)
* tracklogManager: Module for managing tracklogs (0.00 ms)
* clickHandler: handle mouse clicks (0.00 ms)
* askMenu: A sample pyroute module (0.00 ms)
* log: A modRana logging module (0.00 ms)
* mapTiles: Display map images (60.00 ms)
* sketch: Sketching functionality (0.00 ms)
* stats: Handles messages (0.00 ms)
* mapView: Controls the view being displayed on the map (0.00 ms)
* search: Search for POI (0.00 ms)
* showOSD: Draw OSD (On Screen Display). (70.00 ms)
* animatedMapView: A sample pyroute module (0.00 ms)
* keys: A keyboard input handling module (10.00 ms)
* textEntry: A module for hadnling text entry. (0.00 ms)
* units: A module handling unit conversions and dispplaying correct units acording
to current settings. (0.00 ms)
* info: A modRana information handling module (10.00 ms)
* voice: Handle text to speach. (0.00 ms)
* onlineServices: Module for communication with various online services. (20.00 ms)
* tracklog: Record tracklogs (0.00 ms)
* menu: Handle menus (10.00 ms)
* routeProfile: Creates a route profile (an elevation chart) (0.00 ms)
* interfaceFeedback: A sample pyroute module (0.00 ms)
* loadTracklogs: A sample pyroute module (0.00 ms)
* options: Handle options (0.00 ms)
* storePOI: Store POI data. (20.00 ms)
* location: Supplies position info from GPSD (0.00 ms)
* input: Handle input from keyboard, buttons, etc. (0.00 ms)
* config: Handle configuration, options, and setup (0.00 ms)
* storeTiles: Single-file-fs tile storage (20.00 ms)
* turnByTurn: A turn by turn navigation module. (0.00 ms)
* device: A Neo FreeRunner modRana device-specific module (0.00 ms)
Loaded all modules in 430.00 ms, initialising
icons: switched theme to: default
storePOI: connection to POI db in /home/shiroikuma/.modrana/poi/modrana_poi.db
estabilshed
location: enabling location
location: gpsd debugging output turned OFF
GPSDConsumer: starting
mapTiles: map folder path: /home/shiroikuma/.modrana/maps
**log: opening stdout log file
**log: redirectiong stdout to log file:\
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
...
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 104, in drawScreenOverlay
self.drawText(cr, text, x1, y1, w/3, h, 0) # draw a reminder
File "modules/mod_menu.py", line 272, in drawText
pg = pangocairo.CairoContext(cr)
cairo.Error: invalid matrix (not invertible)
Traceback (most recent call last):
File "modrana.py", line 1015, in do_expose_event
return self._expose_cairo(event, cr)
File "modrana.py", line 1011, in _expose_cairo
self.draw(cr,event)
File "modrana.py", line 676, in draw
self.currentDrawMethod(cr,event)
File "modrana.py", line 754, in fullDrawMethod
m.drawScreenOverlay(cr)
File "modules/mod_menu.py", line 148, in drawScreenOverlay
self.drawButton(cr, x1, y1, dx, dy, '', minusIcon, "mapView:zoomOut")
File "modules/mod_menu.py", line 309, in drawButton
self.icons.draw(cr,icon,x1,y1,w,h)
File "modules/mod_icons.py", line 346, in draw
self.drawIcon(cr, self.images[cacheName], x, y, w, h)
File "modules/mod_icons.py", line 466, in drawIcon
cr.save()
cairo.Error: invalid matrix (not invertible)
shutdown imminent, commiting all uncommited tiles
storeTiles: sqlite committ OK
all tiles commited, breaking, goodbye :)
mapTiles: automatic tile download management thread shutting down
GPSDConsumer: breaking
GPSDConsumer: stopped
Shuttdown complete
~ $
|